aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/config/tc-i386.c4
-rw-r--r--gas/testsuite/gas/i386/x86-64-apx-ndd-optimize.d2
-rw-r--r--gas/testsuite/gas/i386/x86-64-apx-ndd-optimize.s3
3 files changed, 7 insertions, 2 deletions
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index b8911c0..e94b937 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -8683,8 +8683,8 @@ check_Rex_required (void)
return true;
}
- if ((i.index_reg && (i.index_reg->reg_flags & (RegRex | RegRex64)))
- || (i.base_reg && (i.base_reg->reg_flags & (RegRex | RegRex64))))
+ if ((i.index_reg && (i.index_reg->reg_flags & RegRex))
+ || (i.base_reg && (i.base_reg->reg_flags & RegRex)))
return true;
/* Check pseudo prefix {rex} are valid. */
diff --git a/gas/testsuite/gas/i386/x86-64-apx-ndd-optimize.d b/gas/testsuite/gas/i386/x86-64-apx-ndd-optimize.d
index 8069799..762d78b 100644
--- a/gas/testsuite/gas/i386/x86-64-apx-ndd-optimize.d
+++ b/gas/testsuite/gas/i386/x86-64-apx-ndd-optimize.d
@@ -127,10 +127,12 @@ Disassembly of section .text:
\s*[a-f0-9]+:\s*62 74 3d 18 66 c0 adcx %eax,%r8d,%r8d
\s*[a-f0-9]+:\s*62 d4 7d 18 66 c7 adcx %r15d,%eax,%eax
\s*[a-f0-9]+:\s*67 66 0f 38 f6 04 0a adcx \(%edx,%ecx,1\),%eax
+\s*[a-f0-9]+:\s*66 0f 38 f6 04 22 adcx \(%rdx,%riz,1\),%eax
\s*[a-f0-9]+:\s*f3 0f 38 f6 c3 adox %ebx,%eax
\s*[a-f0-9]+:\s*f3 0f 38 f6 c3 adox %ebx,%eax
\s*[a-f0-9]+:\s*62 f4 fe 18 66 c3 adox %rbx,%rax,%rax
\s*[a-f0-9]+:\s*62 74 3e 18 66 c0 adox %eax,%r8d,%r8d
\s*[a-f0-9]+:\s*62 d4 7e 18 66 c7 adox %r15d,%eax,%eax
\s*[a-f0-9]+:\s*67 f3 0f 38 f6 04 0a adox \(%edx,%ecx,1\),%eax
+\s*[a-f0-9]+:\s*f3 0f 38 f6 05 00 00 00 00 adox (0x)?0\(%rip\),%eax[ ]+# .* sym.*
#pass
diff --git a/gas/testsuite/gas/i386/x86-64-apx-ndd-optimize.s b/gas/testsuite/gas/i386/x86-64-apx-ndd-optimize.s
index c83e119..bf75e64 100644
--- a/gas/testsuite/gas/i386/x86-64-apx-ndd-optimize.s
+++ b/gas/testsuite/gas/i386/x86-64-apx-ndd-optimize.s
@@ -1,5 +1,6 @@
# Check 64bit APX NDD instructions with optimized encoding
+ .allow_index_reg
.text
_start:
add %r31,%r8,%r8
@@ -120,9 +121,11 @@ adcx %rbx,%rax,%rax
adcx %eax,%r8d,%r8d
adcx %r15d,%eax,%eax
adcx (%edx,%ecx,1),%eax,%eax
+adcx (%rdx,%riz,1),%eax,%eax
adox %ebx,%eax,%eax
adox %eax,%ebx,%eax
adox %rbx,%rax,%rax
adox %eax,%r8d,%r8d
adox %r15d,%eax,%eax
adox (%edx,%ecx,1),%eax,%eax
+adox sym(%rip),%eax,%eax