Lines Matching refs:term
300 static int parse_events__is_name_term(struct parse_events_term *term) in parse_events__is_name_term() argument
302 return term->type_term == PARSE_EVENTS__TERM_TYPE_NAME; in parse_events__is_name_term()
307 struct parse_events_term *term; in get_config_name() local
312 list_for_each_entry(term, head_terms, list) in get_config_name()
313 if (parse_events__is_name_term(term)) in get_config_name()
314 return term->val.str; in get_config_name()
396 struct parse_events_term *term,
399 struct parse_events_term *term,
741 struct parse_events_term *term; in parse_events_config_bpf() local
747 list_for_each_entry(term, head_config, list) { in parse_events_config_bpf()
751 if (term->type_term != PARSE_EVENTS__TERM_TYPE_USER) { in parse_events_config_bpf()
756 parse_state->error->idx = term->err_term; in parse_events_config_bpf()
761 err = bpf__config_obj(obj, term, parse_state->evlist, &error_pos); in parse_events_config_bpf()
763 bpf__strerror_config_obj(obj, term, parse_state->evlist, in parse_events_config_bpf()
775 parse_state->error->idx = term->err_val; in parse_events_config_bpf()
777 parse_state->error->idx = term->err_term + error_pos; in parse_events_config_bpf()
798 struct parse_events_term *term, *temp; in split_bpf_config_terms() local
808 list_for_each_entry_safe(term, temp, evt_head_config, list) in split_bpf_config_terms()
809 if (!parse_events__is_hardcoded_term(term)) in split_bpf_config_terms()
810 list_move_tail(&term->list, obj_head_config); in split_bpf_config_terms()
927 static int check_type_val(struct parse_events_term *term, in check_type_val() argument
931 if (type == term->type_val) in check_type_val()
935 err->idx = term->err_val; in check_type_val()
1008 struct parse_events_term *term, in config_term_common() argument
1013 if (check_type_val(term, err, PARSE_EVENTS__TERM_TYPE_ ## type)) \ in config_term_common()
1017 switch (term->type_term) { in config_term_common()
1020 attr->config = term->val.num; in config_term_common()
1024 attr->config1 = term->val.num; in config_term_common()
1028 attr->config2 = term->val.num; in config_term_common()
1038 if (strcmp(term->val.str, "no") && in config_term_common()
1039 parse_branch_str(term->val.str, &attr->branch_sample_type)) { in config_term_common()
1041 err->idx = term->err_val; in config_term_common()
1047 if (term->val.num > 1) { in config_term_common()
1049 err->idx = term->err_val; in config_term_common()
1082 if ((unsigned int)term->val.num > 1) { in config_term_common()
1084 err->idx = term->err_val; in config_term_common()
1093 err->idx = term->err_term; in config_term_common()
1107 if (!config_term_avail(term->type_term, err)) in config_term_common()
1114 struct parse_events_term *term, in config_term_pmu() argument
1117 if (term->type_term == PARSE_EVENTS__TERM_TYPE_USER || in config_term_pmu()
1118 term->type_term == PARSE_EVENTS__TERM_TYPE_DRV_CFG) in config_term_pmu()
1125 return config_term_common(attr, term, err); in config_term_pmu()
1129 struct parse_events_term *term, in config_term_tracepoint() argument
1132 switch (term->type_term) { in config_term_tracepoint()
1142 return config_term_common(attr, term, err); in config_term_tracepoint()
1145 err->idx = term->err_term; in config_term_tracepoint()
1160 struct parse_events_term *term; in config_attr() local
1162 list_for_each_entry(term, head, list) in config_attr()
1163 if (config_term(attr, term, err)) in config_attr()
1183 __t->weak = term->weak; \ in get_config_terms()
1187 struct parse_events_term *term; in get_config_terms() local
1189 list_for_each_entry(term, head_config, list) { in get_config_terms()
1190 switch (term->type_term) { in get_config_terms()
1192 ADD_CONFIG_TERM(PERIOD, period, term->val.num); in get_config_terms()
1195 ADD_CONFIG_TERM(FREQ, freq, term->val.num); in get_config_terms()
1198 ADD_CONFIG_TERM(TIME, time, term->val.num); in get_config_terms()
1201 ADD_CONFIG_TERM(CALLGRAPH, callgraph, term->val.str); in get_config_terms()
1204 ADD_CONFIG_TERM(BRANCH, branch, term->val.str); in get_config_terms()
1207 ADD_CONFIG_TERM(STACK_USER, stack_user, term->val.num); in get_config_terms()
1210 ADD_CONFIG_TERM(INHERIT, inherit, term->val.num ? 1 : 0); in get_config_terms()
1213 ADD_CONFIG_TERM(INHERIT, inherit, term->val.num ? 0 : 1); in get_config_terms()
1216 ADD_CONFIG_TERM(MAX_STACK, max_stack, term->val.num); in get_config_terms()
1219 ADD_CONFIG_TERM(MAX_EVENTS, max_events, term->val.num); in get_config_terms()
1222 ADD_CONFIG_TERM(OVERWRITE, overwrite, term->val.num ? 1 : 0); in get_config_terms()
1225 ADD_CONFIG_TERM(OVERWRITE, overwrite, term->val.num ? 0 : 1); in get_config_terms()
1228 ADD_CONFIG_TERM(DRV_CFG, drv_cfg, term->val.str); in get_config_terms()
1232 term->val.num ? true : false); in get_config_terms()
1235 ADD_CONFIG_TERM(AUX_OUTPUT, aux_output, term->val.num ? 1 : 0); in get_config_terms()
1300 struct perf_evsel_config_term *term; in config_term_percore() local
1302 list_for_each_entry(term, config_terms, list) { in config_term_percore()
1303 if (term->type == PERF_EVSEL__CONFIG_TERM_PERCORE) in config_term_percore()
1304 return term->val.percore; in config_term_percore()
1393 struct parse_events_term *term; in parse_events_multi_pmu_add() local
1413 if (parse_events_term__num(&term, PARSE_EVENTS__TERM_TYPE_USER, in parse_events_multi_pmu_add()
1416 list_add_tail(&term->list, head); in parse_events_multi_pmu_add()
2644 int parse_events__is_hardcoded_term(struct parse_events_term *term) in parse_events__is_hardcoded_term() argument
2646 return term->type_term != PARSE_EVENTS__TERM_TYPE_USER; in parse_events__is_hardcoded_term()
2653 struct parse_events_term *term; in new_term() local
2655 term = malloc(sizeof(*term)); in new_term()
2656 if (!term) in new_term()
2659 *term = *temp; in new_term()
2660 INIT_LIST_HEAD(&term->list); in new_term()
2661 term->weak = false; in new_term()
2663 switch (term->type_val) { in new_term()
2665 term->val.num = num; in new_term()
2668 term->val.str = str; in new_term()
2671 free(term); in new_term()
2675 *_term = term; in new_term()
2679 int parse_events_term__num(struct parse_events_term **term, in parse_events_term__num() argument
2696 return new_term(term, &temp, NULL, num); in parse_events_term__num()
2699 int parse_events_term__str(struct parse_events_term **term, in parse_events_term__str() argument
2714 return new_term(term, &temp, str, 0); in parse_events_term__str()
2717 int parse_events_term__sym_hw(struct parse_events_term **term, in parse_events_term__sym_hw() argument
2730 return new_term(term, &temp, (char *) sym->symbol, 0); in parse_events_term__sym_hw()
2734 struct parse_events_term *term) in parse_events_term__clone() argument
2737 .type_val = term->type_val, in parse_events_term__clone()
2738 .type_term = term->type_term, in parse_events_term__clone()
2739 .config = term->config, in parse_events_term__clone()
2740 .err_term = term->err_term, in parse_events_term__clone()
2741 .err_val = term->err_val, in parse_events_term__clone()
2744 return new_term(new, &temp, term->val.str, term->val.num); in parse_events_term__clone()
2750 struct parse_events_term *term, *n; in parse_events_copy_term_list() local
2763 list_for_each_entry (term, old, list) { in parse_events_copy_term_list()
2764 ret = parse_events_term__clone(&n, term); in parse_events_copy_term_list()
2774 struct parse_events_term *term, *h; in parse_events_terms__purge() local
2776 list_for_each_entry_safe(term, h, terms, list) { in parse_events_terms__purge()
2777 if (term->array.nr_ranges) in parse_events_terms__purge()
2778 zfree(&term->array.ranges); in parse_events_terms__purge()
2779 list_del_init(&term->list); in parse_events_terms__purge()
2780 free(term); in parse_events_terms__purge()