]> git.itanic.dy.fi Git - linux-stable/commitdiff
perf annotate: Add more x86 mov instruction cases
authorNamhyung Kim <namhyung@kernel.org>
Fri, 8 Sep 2023 05:22:16 +0000 (22:22 -0700)
committerNamhyung Kim <namhyung@kernel.org>
Fri, 15 Sep 2023 23:46:40 +0000 (16:46 -0700)
Instructions with sign- and zero- extention like movsbl and movzwq were
not handled properly.  As it can check different size suffix (-b, -w, -l
or -q) we can omit that and add the common parts even though some
combinations are not possible.

Reviewed-by: Ian Rogers <irogers@google.com>
Link: https://lore.kernel.org/r/20230908052216.566148-1-namhyung@kernel.org
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
tools/perf/arch/x86/annotate/instructions.c

index 5f4ac4fc7fcf788d07ac84b3484396d0424542dc..5cdf457f5cbeecb1d5664c45cf334ff2569a4eac 100644 (file)
@@ -74,12 +74,15 @@ static struct ins x86__instructions[] = {
        { .name = "movdqa",     .ops = &mov_ops,  },
        { .name = "movdqu",     .ops = &mov_ops,  },
        { .name = "movsd",      .ops = &mov_ops,  },
-       { .name = "movslq",     .ops = &mov_ops,  },
        { .name = "movss",      .ops = &mov_ops,  },
+       { .name = "movsb",      .ops = &mov_ops,  },
+       { .name = "movsw",      .ops = &mov_ops,  },
+       { .name = "movsl",      .ops = &mov_ops,  },
        { .name = "movupd",     .ops = &mov_ops,  },
        { .name = "movups",     .ops = &mov_ops,  },
-       { .name = "movzbl",     .ops = &mov_ops,  },
-       { .name = "movzwl",     .ops = &mov_ops,  },
+       { .name = "movzb",      .ops = &mov_ops,  },
+       { .name = "movzw",      .ops = &mov_ops,  },
+       { .name = "movzl",      .ops = &mov_ops,  },
        { .name = "mulsd",      .ops = &mov_ops,  },
        { .name = "mulss",      .ops = &mov_ops,  },
        { .name = "nop",        .ops = &nop_ops,  },