Lines Matching defs:parse_state
434 bool parse_events__filter_pmu(const struct parse_events_state *parse_state,
437 if (parse_state->pmu_filter == NULL)
440 return strcmp(parse_state->pmu_filter, pmu->name) != 0;
444 struct parse_events_state *parse_state,
458 if (parse_events__filter_pmu(parse_state, pmu))
471 if (config_attr(&attr, head_config, parse_state->error, config_term_common))
680 int parse_events_add_breakpoint(struct parse_events_state *parse_state,
709 if (config_attr(&attr, head_config, parse_state->error,
719 return add_event(list, &parse_state->idx, &attr, name, /*mertic_id=*/NULL,
1284 static int __parse_events_add_numeric(struct parse_events_state *parse_state,
1303 if (config_attr(&attr, head_config, parse_state->error,
1313 ret = __add_event(list, &parse_state->idx, &attr, /*init_attr*/true, name,
1320 int parse_events_add_numeric(struct parse_events_state *parse_state,
1335 if (parse_events__filter_pmu(parse_state, pmu))
1338 ret = __parse_events_add_numeric(parse_state, list, pmu,
1347 return __parse_events_add_numeric(parse_state, list, perf_pmus__find_by_type(type),
1351 int parse_events_add_tool(struct parse_events_state *parse_state,
1355 return add_event_tool(list, &parse_state->idx, tool_event);
1370 int parse_events_add_pmu(struct parse_events_state *parse_state,
1379 struct parse_events_error *err = parse_state->error;
1383 pmu = parse_state->fake_pmu ?: perf_pmus__find(name);
1421 evsel = __add_event(list, &parse_state->idx, &attr,
1429 if (!parse_state->fake_pmu && perf_pmu__check_alias(pmu, head_config, &info, err))
1445 if (config_attr(&attr, head_config, parse_state->error, config_term_pmu))
1458 if (!parse_state->fake_pmu && perf_pmu__config(pmu, &attr, head_config, parse_state->error)) {
1463 evsel = __add_event(list, &parse_state->idx, &attr, /*init_attr=*/true,
1475 if (parse_state->fake_pmu)
1486 int parse_events_multi_pmu_add(struct parse_events_state *parse_state,
1530 if (parse_events__filter_pmu(parse_state, pmu))
1538 if (!parse_events_add_pmu(parse_state, list, pmu->name,
1551 if (parse_state->fake_pmu) {
1552 if (!parse_events_add_pmu(parse_state, list, str, head,
1803 struct parse_events_state *parse_state)
1809 ret = parse_events_lex_init_extra(parse_state, &scanner);
1822 ret = parse_events_parse(parse_state, scanner);
1837 struct parse_events_state parse_state = {
1843 ret = parse_events__scanner(str, input, &parse_state);
1846 list_splice(parse_state.terms, terms);
1847 zfree(&parse_state.terms);
1851 parse_events_terms__delete(parse_state.terms);
2083 struct parse_events_state parse_state = {
2084 .list = LIST_HEAD_INIT(parse_state.list),
2094 ret = parse_events__scanner(str, /*input=*/ NULL, &parse_state);
2096 if (!ret && list_empty(&parse_state.list)) {
2101 ret2 = parse_events__sort_events_and_fix_groups(&parse_state.list);
2105 if (ret2 && warn_if_reordered && !parse_state.wild_card_pmus)
2111 evlist__splice_list_tail(evlist, &parse_state.list);
2633 void parse_events_evlist_error(struct parse_events_state *parse_state,
2636 if (!parse_state->error)
2639 parse_events_error__handle(parse_state->error, idx, strdup(str), NULL);