aboutsummaryrefslogtreecommitdiff
path: root/gas/config/tc-i386.c
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2024-01-19 10:16:00 +0100
committerJan Beulich <jbeulich@suse.com>2024-01-19 13:25:14 +0100
commiteabdfeb103570aa6dafa95673dff00af25d9f983 (patch)
treefc9176b3661999112949cdd6cd5dd7fd8f79ffd3 /gas/config/tc-i386.c
parentd7114f04073806faa9316fb5fd81658a7d8856e0 (diff)
downloadgdb-eabdfeb103570aa6dafa95673dff00af25d9f983.zip
gdb-eabdfeb103570aa6dafa95673dff00af25d9f983.tar.gz
gdb-eabdfeb103570aa6dafa95673dff00af25d9f983.tar.bz2
x86: support APX forms of U{RD,WR}MSR
This was missed in 6177c84d5edc ("Support APX GPR32 with extend evex prefix").
Diffstat (limited to 'gas/config/tc-i386.c')
-rw-r--r--gas/config/tc-i386.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index 455e5a3..4262e1e 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -1950,7 +1950,7 @@ cpu_flags_match (const insn_template *t)
&& (any.bitfield.cpubmi || any.bitfield.cpubmi2
|| any.bitfield.cpuavx512f || any.bitfield.cpuavx512bw
|| any.bitfield.cpuavx512dq || any.bitfield.cpuamx_tile
- || any.bitfield.cpucmpccxadd))
+ || any.bitfield.cpucmpccxadd || any.bitfield.cpuuser_msr))
{
/* These checks (verifying that APX_F() was properly used in the
opcode table entry) make sure there's no need for an "else" to
@@ -3752,7 +3752,7 @@ install_template (const insn_template *t)
if ((maybe_cpu (t, CpuCMPCCXADD) || maybe_cpu (t, CpuAMX_TILE)
|| maybe_cpu (t, CpuAVX512F) || maybe_cpu (t, CpuAVX512DQ)
|| maybe_cpu (t, CpuAVX512BW) || maybe_cpu (t, CpuBMI)
- || maybe_cpu (t, CpuBMI2))
+ || maybe_cpu (t, CpuBMI2) || maybe_cpu (t, CpuUSER_MSR))
&& maybe_cpu (t, CpuAPX_F))
{
if (need_evex_encoding (t))
@@ -4070,7 +4070,7 @@ build_evex_prefix (void)
/* The high 3 bits of the second EVEX byte are 1's compliment of RXB
bits from REX. */
gas_assert (i.tm.opcode_space >= SPACE_0F);
- gas_assert (i.tm.opcode_space <= SPACE_EVEXMAP6);
+ gas_assert (i.tm.opcode_space <= SPACE_VEXMAP7);
i.vex.bytes[1] = ((~i.rex & 7) << 5)
| (!dot_insn () ? i.tm.opcode_space
: i.insn_opcode_space);