]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
gdb/record: support more AVX arithmetic instructions
authorGuinevere Larsen <guinevere@redhat.com>
Wed, 26 Feb 2025 19:15:33 +0000 (16:15 -0300)
committerGuinevere Larsen <guinevere@redhat.com>
Fri, 11 Jul 2025 14:55:33 +0000 (11:55 -0300)
commit77a7df4756cd4b07bc1c3efbae774498fcebc77e
tree76066e9e49d35a3f57178861bf44ed2dbea3ee9f
parent87dcc3ddd648bf5b9de965d9eb572e7f91beeeef
gdb/record: support more AVX arithmetic instructions

This commit adds support to the following AVX/AVX2 instructions:
* VPADD[B|W|D|Q]
* VPMUL[LW|LD|HW|HUW|UDQ]
* VXORP[S|D]
* VPAND[|N]

This required some reworking on the loop that processes instruction
prefixes, because the opcode for VPMULLD overlapped with a valid
instruction prefix. To fix that, rather than using "goto out_prefixes",
this commit changes the infinite loop to only run while we don't find
another VEX prefix. That should be OK, as the intel manual (page 526 on
the March 2024 edition) says that the VEX prefix is always the last one.
gdb/i386-tdep.c
gdb/testsuite/gdb.reverse/i386-avx-reverse.c
gdb/testsuite/gdb.reverse/i386-avx-reverse.exp