~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/tools/perf/util/pmu.y

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /tools/perf/util/pmu.y (Version linux-6.12-rc7) and /tools/perf/util/pmu.y (Version linux-4.16.18)


  1 %define api.pure full                          << 
  2 %parse-param {void *format}                    << 
  3 %parse-param {void *scanner}                   << 
  4 %lex-param {void* scanner}                     << 
  5                                                     1 
  6 %{                                             !!   2 %parse-param {struct list_head *format}
                                                   >>   3 %parse-param {char *name}
  7                                                     4 
  8 #ifndef NDEBUG                                 !!   5 %{
  9 #define YYDEBUG 1                              << 
 10 #endif                                         << 
 11                                                     6 
 12 #include <linux/compiler.h>                         7 #include <linux/compiler.h>
 13 #include <linux/list.h>                             8 #include <linux/list.h>
 14 #include <linux/bitmap.h>                           9 #include <linux/bitmap.h>
 15 #include <string.h>                                10 #include <string.h>
 16 #include "pmu.h"                                   11 #include "pmu.h"
 17 #include "pmu-bison.h"                         << 
 18                                                    12 
 19 int perf_pmu_lex(YYSTYPE * yylval_param , void !!  13 extern int perf_pmu_lex (void);
 20                                                    14 
 21 #define ABORT_ON(val) \                            15 #define ABORT_ON(val) \
 22 do { \                                             16 do { \
 23         if (val) \                                 17         if (val) \
 24                 YYABORT; \                         18                 YYABORT; \
 25 } while (0)                                        19 } while (0)
 26                                                    20 
 27 static void perf_pmu_error(void *format, void  << 
 28                                                << 
 29 static void perf_pmu__set_format(unsigned long << 
 30 {                                              << 
 31         long b;                                << 
 32                                                << 
 33         if (!to)                               << 
 34                 to = from;                     << 
 35                                                << 
 36         memset(bits, 0, BITS_TO_BYTES(PERF_PMU << 
 37         for (b = from; b <= to; b++)           << 
 38                 __set_bit(b, bits);            << 
 39 }                                              << 
 40                                                << 
 41 %}                                                 21 %}
 42                                                    22 
 43 %token PP_CONFIG                               !!  23 %token PP_CONFIG PP_CONFIG1 PP_CONFIG2
 44 %token PP_VALUE PP_ERROR                           24 %token PP_VALUE PP_ERROR
 45 %type <num> PP_VALUE                               25 %type <num> PP_VALUE
 46 %type <bits> bit_term                              26 %type <bits> bit_term
 47 %type <bits> bits                                  27 %type <bits> bits
 48                                                    28 
 49 %union                                             29 %union
 50 {                                                  30 {
 51         unsigned long num;                         31         unsigned long num;
 52         DECLARE_BITMAP(bits, PERF_PMU_FORMAT_B     32         DECLARE_BITMAP(bits, PERF_PMU_FORMAT_BITS);
 53 }                                                  33 }
 54                                                    34 
 55 %%                                                 35 %%
 56                                                    36 
 57 format:                                            37 format:
 58 format format_term                                 38 format format_term
 59 |                                                  39 |
 60 format_term                                        40 format_term
 61                                                    41 
 62 format_term:                                       42 format_term:
 63 PP_CONFIG ':' bits                                 43 PP_CONFIG ':' bits
 64 {                                                  44 {
 65         perf_pmu_format__set_value(format, PER !!  45         ABORT_ON(perf_pmu__new_format(format, name,
                                                   >>  46                                       PERF_PMU_FORMAT_VALUE_CONFIG,
                                                   >>  47                                       $3));
                                                   >>  48 }
                                                   >>  49 |
                                                   >>  50 PP_CONFIG1 ':' bits
                                                   >>  51 {
                                                   >>  52         ABORT_ON(perf_pmu__new_format(format, name,
                                                   >>  53                                       PERF_PMU_FORMAT_VALUE_CONFIG1,
                                                   >>  54                                       $3));
 66 }                                                  55 }
 67 |                                                  56 |
 68 PP_CONFIG PP_VALUE ':' bits                    !!  57 PP_CONFIG2 ':' bits
 69 {                                                  58 {
 70         perf_pmu_format__set_value(format, $2, !!  59         ABORT_ON(perf_pmu__new_format(format, name,
                                                   >>  60                                       PERF_PMU_FORMAT_VALUE_CONFIG2,
                                                   >>  61                                       $3));
 71 }                                                  62 }
 72                                                    63 
 73 bits:                                              64 bits:
 74 bits ',' bit_term                                  65 bits ',' bit_term
 75 {                                                  66 {
 76         bitmap_or($$, $1, $3, 64);                 67         bitmap_or($$, $1, $3, 64);
 77 }                                                  68 }
 78 |                                                  69 |
 79 bit_term                                           70 bit_term
 80 {                                                  71 {
 81         memcpy($$, $1, sizeof($1));                72         memcpy($$, $1, sizeof($1));
 82 }                                                  73 }
 83                                                    74 
 84 bit_term:                                          75 bit_term:
 85 PP_VALUE '-' PP_VALUE                              76 PP_VALUE '-' PP_VALUE
 86 {                                                  77 {
 87         perf_pmu__set_format($$, $1, $3);          78         perf_pmu__set_format($$, $1, $3);
 88 }                                                  79 }
 89 |                                                  80 |
 90 PP_VALUE                                           81 PP_VALUE
 91 {                                                  82 {
 92         perf_pmu__set_format($$, $1, 0);           83         perf_pmu__set_format($$, $1, 0);
 93 }                                                  84 }
 94                                                    85 
 95 %%                                                 86 %%
 96                                                    87 
 97 static void perf_pmu_error(void *format __mayb !!  88 void perf_pmu_error(struct list_head *list __maybe_unused,
 98                            void *scanner __may !!  89                     char *name __maybe_unused,
 99                            const char *msg __m !!  90                     char const *msg __maybe_unused)
100 {                                                  91 {
101 }                                                  92 }
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php