]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
gdb/aarch64: Add record support for MOPS instructions.
authorThiago Jung Bauermann <thiago.bauermann@linaro.org>
Sun, 21 Apr 2024 02:18:26 +0000 (23:18 -0300)
committerThiago Jung Bauermann <thiago.bauermann@linaro.org>
Fri, 7 Jun 2024 21:42:58 +0000 (18:42 -0300)
commit8fb41483be64f5e606c0e8e22652960535406cb4
treef14e918e3cd3cbb7a3fcaaa62151626712939c5e
parent8215789c478d3fc006a94d4e7c1273329aa8c773
gdb/aarch64: Add record support for MOPS instructions.

There are two kinds of MOPS instructions: set instructions and copy
instructions.  Within each group there are variants with minor
differences in how they read or write to memory — e.g., non-temporal
read and/or write, unprivileged read and/or write and permutations of
those — but they work in the same way in terms of the registers and
regions of memory that they modify.

The new gdb.reverse/aarch64-mops.exp testcase verifies that MOPS
instructions are recorded and correctly reversed.  Not all variants of the
copy and set instructions are tested, since there are many and the record
and replay target processes them in the same way.

PR tdep/31666
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=31666
Approved-By: Luis Machado <luis.machado@arm.com>
Tested-By: Luis Machado <luis.machado@arm.com>
(cherry picked from commit ebd06ca6b9bb2327e1269b52eb99b2f012faabf9)
gdb/aarch64-tdep.c
gdb/testsuite/gdb.reverse/aarch64-mops.c [new file with mode: 0644]
gdb/testsuite/gdb.reverse/aarch64-mops.exp [new file with mode: 0644]