mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-13 08:20:40 -04:00
perf parse-events: Handle PE_TERM_HW in name_or_raw
Avoid duplicate logic for name_or_raw and PE_TERM_HW by having a rule to turn PE_TERM_HW into a name_or_raw. Signed-off-by: Ian Rogers <irogers@google.com> Reviewed-by: Kan Liang <kan.liang@linux.intel.com> Tested-by: Atish Patra <atishp@rivosinc.com> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Beeman Strong <beeman@rivosinc.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: James Clark <james.clark@arm.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Link: https://lore.kernel.org/r/20240416061533.921723-8-irogers@google.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
committed by
Arnaldo Carvalho de Melo
parent
62593394f6
commit
9d0dba2398
@@ -603,6 +603,11 @@ event_term
|
||||
}
|
||||
|
||||
name_or_raw: PE_RAW | PE_NAME | PE_LEGACY_CACHE
|
||||
|
|
||||
PE_TERM_HW
|
||||
{
|
||||
$$ = $1.str;
|
||||
}
|
||||
|
||||
event_term:
|
||||
PE_RAW
|
||||
@@ -644,20 +649,6 @@ name_or_raw '=' PE_VALUE
|
||||
$$ = term;
|
||||
}
|
||||
|
|
||||
name_or_raw '=' PE_TERM_HW
|
||||
{
|
||||
struct parse_events_term *term;
|
||||
int err = parse_events_term__str(&term, PARSE_EVENTS__TERM_TYPE_USER,
|
||||
$1, $3.str, &@1, &@3);
|
||||
|
||||
if (err) {
|
||||
free($1);
|
||||
free($3.str);
|
||||
PE_ABORT(err);
|
||||
}
|
||||
$$ = term;
|
||||
}
|
||||
|
|
||||
PE_LEGACY_CACHE
|
||||
{
|
||||
struct parse_events_term *term;
|
||||
@@ -710,18 +701,6 @@ PE_TERM '=' name_or_raw
|
||||
$$ = term;
|
||||
}
|
||||
|
|
||||
PE_TERM '=' PE_TERM_HW
|
||||
{
|
||||
struct parse_events_term *term;
|
||||
int err = parse_events_term__str(&term, $1, /*config=*/NULL, $3.str, &@1, &@3);
|
||||
|
||||
if (err) {
|
||||
free($3.str);
|
||||
PE_ABORT(err);
|
||||
}
|
||||
$$ = term;
|
||||
}
|
||||
|
|
||||
PE_TERM '=' PE_TERM
|
||||
{
|
||||
struct parse_events_term *term;
|
||||
|
||||
Reference in New Issue
Block a user