From: Roland McGrath Date: Mon, 2 Jul 2012 18:12:28 +0000 (+0000) Subject: gas/testsuite/ X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=9fa0f14a97f5588268828ab028464be0307f1a77;p=binutils-gdb.git gas/testsuite/ * gas/i386/rep-suffix.s: Add 'rep nop' case. * gas/i386/x86-64-rep-suffix.s: Likewise. * gas/i386/rep-suffix.d: Updated. * gas/i386/x86-64-rep-suffix.d: Likewise. * gas/i386/ilp32/x86-64-rep-suffix.d: Likewise. opcodes/ * i386-opc.tbl: Add RepPrefixOk to nop. * i386-tbl.h: Regenerate. --- diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 5b4745ccfe8..a55d25e565a 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2012-07-02 Roland McGrath + + * gas/i386/rep-suffix.s: Add 'rep nop' case. + * gas/i386/x86-64-rep-suffix.s: Likewise. + * gas/i386/rep-suffix.d: Updated. + * gas/i386/x86-64-rep-suffix.d: Likewise. + * gas/i386/ilp32/x86-64-rep-suffix.d: Likewise. + 2012-07-02 H.J. Lu * gas/i386/i386.exp: Don't run rep-bsf nor rep-ret. diff --git a/gas/testsuite/gas/i386/ilp32/x86-64-rep-suffix.d b/gas/testsuite/gas/i386/ilp32/x86-64-rep-suffix.d index 241365dbf30..19bb585239b 100644 --- a/gas/testsuite/gas/i386/ilp32/x86-64-rep-suffix.d +++ b/gas/testsuite/gas/i386/ilp32/x86-64-rep-suffix.d @@ -17,5 +17,6 @@ Disassembly of section .text: 11: f3 48 ab[ ]+rep stosq %rax,%es:\(%rdi\) 14: f3 0f bc c1[ ]+tzcntl %ecx,%eax 18: f3 0f bd c1[ ]+lzcntl %ecx,%eax - 1c: f3 c3[ ]+repz retq + 1c: f3 c3[ ]+repz retq\s* + 1e: f3 90[ ]+pause\s* #pass diff --git a/gas/testsuite/gas/i386/rep-suffix.d b/gas/testsuite/gas/i386/rep-suffix.d index 81f8d61fabc..08e02d78c22 100644 --- a/gas/testsuite/gas/i386/rep-suffix.d +++ b/gas/testsuite/gas/i386/rep-suffix.d @@ -14,5 +14,6 @@ Disassembly of section .text: c: f3 ab[ ]+rep stosl %eax,%es:\(%edi\) e: f3 0f bc c1[ ]+tzcntl %ecx,%eax 12: f3 0f bd c1[ ]+lzcntl %ecx,%eax - 16: f3 c3[ ]+repz retl + 16: f3 c3[ ]+repz retl\s* + 18: f3 90[ ]+pause\s* #pass diff --git a/gas/testsuite/gas/i386/rep-suffix.s b/gas/testsuite/gas/i386/rep-suffix.s index 6f53663cf8b..12bdbd032c7 100644 --- a/gas/testsuite/gas/i386/rep-suffix.s +++ b/gas/testsuite/gas/i386/rep-suffix.s @@ -12,3 +12,5 @@ _start: rep bsr %ecx, %eax rep ret + + rep nop diff --git a/gas/testsuite/gas/i386/x86-64-rep-suffix.d b/gas/testsuite/gas/i386/x86-64-rep-suffix.d index 3c3f7ea10d8..bc6346db22a 100644 --- a/gas/testsuite/gas/i386/x86-64-rep-suffix.d +++ b/gas/testsuite/gas/i386/x86-64-rep-suffix.d @@ -16,5 +16,6 @@ Disassembly of section .text: 11: f3 48 ab[ ]+rep stosq %rax,%es:\(%rdi\) 14: f3 0f bc c1[ ]+tzcntl %ecx,%eax 18: f3 0f bd c1[ ]+lzcntl %ecx,%eax - 1c: f3 c3[ ]+repz retq + 1c: f3 c3[ ]+repz retq\s* + 1e: f3 90[ ]+pause\s* #pass diff --git a/gas/testsuite/gas/i386/x86-64-rep-suffix.s b/gas/testsuite/gas/i386/x86-64-rep-suffix.s index 43d71cfcf39..94df9e59d86 100644 --- a/gas/testsuite/gas/i386/x86-64-rep-suffix.s +++ b/gas/testsuite/gas/i386/x86-64-rep-suffix.s @@ -14,3 +14,5 @@ _start: rep bsr %ecx, %eax rep ret + + rep nop diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index adb13e2b53b..953f6cf8968 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,8 @@ +2012-07-02 Roland McGrath + + * i386-opc.tbl: Add RepPrefixOk to nop. + * i386-tbl.h: Regenerate. + 2012-06-28 Nick Clifton * po/vi.po: Updated Vietnamese translation. diff --git a/opcodes/i386-opc.tbl b/opcodes/i386-opc.tbl index 7de61a7c287..54cc0d11d73 100644 --- a/opcodes/i386-opc.tbl +++ b/opcodes/i386-opc.tbl @@ -504,7 +504,7 @@ nop, 1, 0xf1f, 0x0, 2, CpuNop, Modrm|No_bSuf|No_sSuf|No_ldSuf, { Reg16|Reg32|Reg // nop is actually "xchg %ax,%ax" in 16bit mode, "xchg %eax,%eax" in // 32bit mode and "xchg %rax,%rax" in 64bit mode. -nop, 0, 0x90, None, 1, 0, No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { 0 } +nop, 0, 0x90, None, 1, 0, No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|RepPrefixOk, { 0 } // Protection control. arpl, 2, 0x63, None, 1, Cpu286|CpuNo64, Modrm|IgnoreSize|No_bSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { Reg16, Reg16|Word|Unspecified|BaseIndex|Disp8|Disp16|Disp32 } diff --git a/opcodes/i386-tbl.h b/opcodes/i386-tbl.h index 89dfda4e1fb..2248c7bc950 100644 --- a/opcodes/i386-tbl.h +++ b/opcodes/i386-tbl.h @@ -4142,7 +4142,7 @@ const insn_template i386_optab[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, - 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, { { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,