xref: /openbmc/linux/tools/perf/util/pmu.l (revision 7effbd18)
1 %option prefix="perf_pmu_"
2 
3 %{
4 #include <stdlib.h>
5 #include <linux/bitops.h>
6 #include "pmu.h"
7 #include "pmu-bison.h"
8 
9 static int value(int base)
10 {
11 	long num;
12 
13 	errno = 0;
14 	num = strtoul(perf_pmu_text, NULL, base);
15 	if (errno)
16 		return PP_ERROR;
17 
18 	perf_pmu_lval.num = num;
19 	return PP_VALUE;
20 }
21 
22 %}
23 
24 num_dec         [0-9]+
25 
26 %%
27 
28 {num_dec}	{ return value(10); }
29 config		{ return PP_CONFIG; }
30 -		{ return '-'; }
31 :		{ return ':'; }
32 ,		{ return ','; }
33 .		{ ; }
34 \n		{ ; }
35 
36 %%
37 
38 int perf_pmu_wrap(void)
39 {
40 	return 1;
41 }
42