parse-events.l (6fd1e5191591f9d55afe4d23fa35af2a5cf8f81f) | parse-events.l (5ea8f2ccffb23983f02012a2731464586b10fbf3) |
---|---|
1 2%option reentrant 3%option bison-bridge 4%option prefix="parse_events_" 5%option stack 6%option bison-locations 7%option yylineno 8%option reject --- 135 unchanged lines hidden (view full) --- 144static int term(yyscan_t scanner, int type) 145{ 146 YYSTYPE *yylval = parse_events_get_lval(scanner); 147 148 yylval->num = type; 149 return PE_TERM; 150} 151 | 1 2%option reentrant 3%option bison-bridge 4%option prefix="parse_events_" 5%option stack 6%option bison-locations 7%option yylineno 8%option reject --- 135 unchanged lines hidden (view full) --- 144static int term(yyscan_t scanner, int type) 145{ 146 YYSTYPE *yylval = parse_events_get_lval(scanner); 147 148 yylval->num = type; 149 return PE_TERM; 150} 151 |
152static int hw_term(yyscan_t scanner, int config) 153{ 154 YYSTYPE *yylval = parse_events_get_lval(scanner); 155 char *text = parse_events_get_text(scanner); 156 157 yylval->hardware_term.str = strdup(text); 158 yylval->hardware_term.num = PERF_TYPE_HARDWARE + config; 159 return PE_TERM_HW; 160} 161 |
|
152#define YY_USER_ACTION \ 153do { \ 154 yylloc->last_column = yylloc->first_column; \ 155 yylloc->first_column = yycolumn; \ 156 yycolumn += yyleng; \ 157} while (0); 158 159#define USER_REJECT \ --- 104 unchanged lines hidden (view full) --- 264inherit { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_INHERIT); } 265no-inherit { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_NOINHERIT); } 266overwrite { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_OVERWRITE); } 267no-overwrite { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_NOOVERWRITE); } 268percore { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_PERCORE); } 269aux-output { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_AUX_OUTPUT); } 270aux-sample-size { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_AUX_SAMPLE_SIZE); } 271metric-id { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_METRIC_ID); } | 162#define YY_USER_ACTION \ 163do { \ 164 yylloc->last_column = yylloc->first_column; \ 165 yylloc->first_column = yycolumn; \ 166 yycolumn += yyleng; \ 167} while (0); 168 169#define USER_REJECT \ --- 104 unchanged lines hidden (view full) --- 274inherit { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_INHERIT); } 275no-inherit { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_NOINHERIT); } 276overwrite { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_OVERWRITE); } 277no-overwrite { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_NOOVERWRITE); } 278percore { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_PERCORE); } 279aux-output { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_AUX_OUTPUT); } 280aux-sample-size { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_AUX_SAMPLE_SIZE); } 281metric-id { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_METRIC_ID); } |
282cpu-cycles|cycles { return hw_term(yyscanner, PERF_COUNT_HW_CPU_CYCLES); } 283stalled-cycles-frontend|idle-cycles-frontend { return hw_term(yyscanner, PERF_COUNT_HW_STALLED_CYCLES_FRONTEND); } 284stalled-cycles-backend|idle-cycles-backend { return hw_term(yyscanner, PERF_COUNT_HW_STALLED_CYCLES_BACKEND); } 285instructions { return hw_term(yyscanner, PERF_COUNT_HW_INSTRUCTIONS); } 286cache-references { return hw_term(yyscanner, PERF_COUNT_HW_CACHE_REFERENCES); } 287cache-misses { return hw_term(yyscanner, PERF_COUNT_HW_CACHE_MISSES); } 288branch-instructions|branches { return hw_term(yyscanner, PERF_COUNT_HW_BRANCH_INSTRUCTIONS); } 289branch-misses { return hw_term(yyscanner, PERF_COUNT_HW_BRANCH_MISSES); } 290bus-cycles { return hw_term(yyscanner, PERF_COUNT_HW_BUS_CYCLES); } 291ref-cycles { return hw_term(yyscanner, PERF_COUNT_HW_REF_CPU_CYCLES); } |
|
272r{num_raw_hex} { return str(yyscanner, PE_RAW); } 273r0x{num_raw_hex} { return str(yyscanner, PE_RAW); } 274, { return ','; } 275"/" { BEGIN(INITIAL); return '/'; } 276{lc_type} { return lc_str(yyscanner, _parse_state); } 277{lc_type}-{lc_op_result} { return lc_str(yyscanner, _parse_state); } 278{lc_type}-{lc_op_result}-{lc_op_result} { return lc_str(yyscanner, _parse_state); } 279{name_minus} { return str(yyscanner, PE_NAME); } --- 79 unchanged lines hidden --- | 292r{num_raw_hex} { return str(yyscanner, PE_RAW); } 293r0x{num_raw_hex} { return str(yyscanner, PE_RAW); } 294, { return ','; } 295"/" { BEGIN(INITIAL); return '/'; } 296{lc_type} { return lc_str(yyscanner, _parse_state); } 297{lc_type}-{lc_op_result} { return lc_str(yyscanner, _parse_state); } 298{lc_type}-{lc_op_result}-{lc_op_result} { return lc_str(yyscanner, _parse_state); } 299{name_minus} { return str(yyscanner, PE_NAME); } --- 79 unchanged lines hidden --- |