2 %name-prefix "perf_pmu_"
3 %parse-param {struct list_head *format}
4 %parse-param {char *name}
8 #include <linux/compiler.h>
9 #include <linux/list.h>
10 #include <linux/bitmap.h>
14 extern int perf_pmu_lex (void);
16 #define ABORT_ON(val) \
24 %token PP_CONFIG PP_CONFIG1 PP_CONFIG2
25 %token PP_VALUE PP_ERROR
33 DECLARE_BITMAP(bits, PERF_PMU_FORMAT_BITS);
46 ABORT_ON(perf_pmu__new_format(format, name,
47 PERF_PMU_FORMAT_VALUE_CONFIG,
53 ABORT_ON(perf_pmu__new_format(format, name,
54 PERF_PMU_FORMAT_VALUE_CONFIG1,
60 ABORT_ON(perf_pmu__new_format(format, name,
61 PERF_PMU_FORMAT_VALUE_CONFIG2,
68 bitmap_or($$, $1, $3, 64);
73 memcpy($$, $1, sizeof($1));
79 perf_pmu__set_format($$, $1, $3);
84 perf_pmu__set_format($$, $1, 0);
89 void perf_pmu_error(struct list_head *list __used,
91 char const *msg __used)