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 config1 { return PP_CONFIG1; } 31 config2 { return PP_CONFIG2; } 32 - { return '-'; } 33 : { return ':'; } 34 , { return ','; } 35 . { ; } 36 \n { ; } 37 38 %% 39 40 int perf_pmu_wrap(void) 41 { 42 return 1; 43 } 44