perf annotate: Handle x86 instruction suffix generally
authorNamhyung Kim <namhyung@kernel.org>
Wed, 24 May 2023 20:50:53 +0000 (13:50 -0700)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Fri, 9 Jun 2023 13:56:05 +0000 (10:56 -0300)
commitd0b35979986e3bd03cb2f2e887e0b8036ae06198
tree9cb6ec320f5f247e327727a733157f58bae2b1db
parente6570967775bbc62a19920bbc4f13bfa73936218
perf annotate: Handle x86 instruction suffix generally

In AT&T asm syntax, most of x86 instructions can have size suffix like
b, w, l or q.  Instead of adding all these instructions in the table,
we can handle them in a general way.

For example, it can try to find an instruction as is.  If not found,
assuming it has a suffix and it'd try again without the suffix if it's
one of the allowed suffixes.  This way, we can reduce the instruction
table size for duplicated entries of the same instructions with a
different suffix.

If an instruction xyz and others like xyz<suffix> are completely
different ones, then they both need to be listed in the table so that
they can be found before the second attempt (without the suffix).

Reviewed-by: Adrian Hunter <adrian.hunter@intel.com>
Reviewed-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Ian Rogers <irogers@google.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: https://lore.kernel.org/r/20230524205054.3087004-1-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/annotate.c