aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2025-02-14 09:32:35 +0100
committerJan Beulich <jbeulich@suse.com>2025-02-14 09:32:35 +0100
commit298a68339718add09a0026aeda4c427df7924372 (patch)
treeb0778c4898c3a3c2bba3c13e1028ced20015ccb1 /gdb
parent539f21cf4a3084810db649c5c6e7068b4dedbe30 (diff)
downloadbinutils-298a68339718add09a0026aeda4c427df7924372.zip
binutils-298a68339718add09a0026aeda4c427df7924372.tar.gz
binutils-298a68339718add09a0026aeda4c427df7924372.tar.bz2
x86/APX: make .insn extended-EVEX capable
So far tricks had to be played to use .insn to encode extended-EVEX insns; the X4 bit couldn't be controlled at all. Extend the syntax just enough to cover all features, taking care to reject invalid feature combinations (albeit aiming at being as lax there as possible, to offer users as much flexibility as we can - we don't, after all, know what future will bring). In a pre-existing testcase replace all but one .byte; the one that needs to remain wants to have EVEX.U clear in a way that's neither controllable via AVX10/256 embedded rounding (would otherwise also set EVEX.ND), nor via the index register (EVEX.X4), as there's no memory operand. For one of the converted instances ModR/M.mod needs correcting: An 8-bit displacement requires that to be 1, not 2. Also adjust source comments to better represent what the bad insns mimic.
Diffstat (limited to 'gdb')
0 files changed, 0 insertions, 0 deletions