gas/testsuite/

2007-09-20  H.J. Lu  <hongjiu.lu@intel.com>

	* gas/i386/sib.s: Add more eiz tests.
	* gas/i386/x86-64-sib.s: Add more riz tests.

	* gas/i386/sib-intel.d: Updated.
	* gas/i386/sib.d: Likewise.
	* gas/i386/x86-64-sib-intel.d: Likewise.
	* gas/i386/x86-64-sib.d: Likewise.

opcodes/

2007-09-20  H.J. Lu  <hongjiu.lu@intel.com>

	* i386-dis.c (OP_E_extended): Display eiz for [eiz*1 + offset].
This commit is contained in:
H.J. Lu
2007-09-20 20:13:26 +00:00
parent f3b1e08efe
commit 20afcfb756
9 changed files with 219 additions and 1 deletions

View File

@@ -1,3 +1,13 @@
2007-09-20 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/sib.s: Add more eiz tests.
* gas/i386/x86-64-sib.s: Add more riz tests.
* gas/i386/sib-intel.d: Updated.
* gas/i386/sib.d: Likewise.
* gas/i386/x86-64-sib-intel.d: Likewise.
* gas/i386/x86-64-sib.d: Likewise.
2007-09-20 H.J. Lu <hongjiu.lu@intel.com>
PR 658

View File

@@ -7,8 +7,21 @@
Disassembly of section .text:
0+ <foo>:
[ ]*[a-f0-9]+: 8b 1d e2 ff ff ff mov ebx,DWORD PTR ds:0xffffffe2
[ ]*[a-f0-9]+: 8b 1c 25 e2 ff ff ff mov ebx,DWORD PTR \[eiz\*1-0x1e\]
[ ]*[a-f0-9]+: 8b 04 25 e2 ff ff ff mov eax,DWORD PTR \[eiz\*1-0x1e\]
[ ]*[a-f0-9]+: 8b 04 65 e2 ff ff ff mov eax,DWORD PTR \[eiz\*2-0x1e\]
[ ]*[a-f0-9]+: 8b 04 a5 e2 ff ff ff mov eax,DWORD PTR \[eiz\*4-0x1e\]
[ ]*[a-f0-9]+: 8b 04 e5 e2 ff ff ff mov eax,DWORD PTR \[eiz\*8-0x1e\]
[ ]*[a-f0-9]+: a1 1e 00 00 00 mov eax,ds:0x1e
[ ]*[a-f0-9]+: 8b 04 25 1e 00 00 00 mov eax,DWORD PTR \[eiz\*1\+0x1e\]
[ ]*[a-f0-9]+: 8b 04 25 1e 00 00 00 mov eax,DWORD PTR \[eiz\*1\+0x1e\]
[ ]*[a-f0-9]+: 8b 04 65 1e 00 00 00 mov eax,DWORD PTR \[eiz\*2\+0x1e\]
[ ]*[a-f0-9]+: 8b 04 a5 1e 00 00 00 mov eax,DWORD PTR \[eiz\*4\+0x1e\]
[ ]*[a-f0-9]+: 8b 04 e5 1e 00 00 00 mov eax,DWORD PTR \[eiz\*8\+0x1e\]
[ ]*[a-f0-9]+: 8b 03 mov eax,DWORD PTR \[ebx\]
[ ]*[a-f0-9]+: 8b 04 23 mov eax,DWORD PTR \[ebx\+eiz\*1\]
[ ]*[a-f0-9]+: 8b 04 23 mov eax,DWORD PTR \[ebx\+eiz\*1\]
[ ]*[a-f0-9]+: 8b 04 63 mov eax,DWORD PTR \[ebx\+eiz\*2\]
[ ]*[a-f0-9]+: 8b 04 a3 mov eax,DWORD PTR \[ebx\+eiz\*4\]
[ ]*[a-f0-9]+: 8b 04 e3 mov eax,DWORD PTR \[ebx\+eiz\*8\]
@@ -17,4 +30,23 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: 8b 04 64 mov eax,DWORD PTR \[esp\+eiz\*2\]
[ ]*[a-f0-9]+: 8b 04 a4 mov eax,DWORD PTR \[esp\+eiz\*4\]
[ ]*[a-f0-9]+: 8b 04 e4 mov eax,DWORD PTR \[esp\+eiz\*8\]
[ ]*[a-f0-9]+: 8b 04 25 e2 ff ff ff mov eax,DWORD PTR \[eiz\*1-0x1e\]
[ ]*[a-f0-9]+: 8b 04 65 e2 ff ff ff mov eax,DWORD PTR \[eiz\*2-0x1e\]
[ ]*[a-f0-9]+: 8b 04 a5 e2 ff ff ff mov eax,DWORD PTR \[eiz\*4-0x1e\]
[ ]*[a-f0-9]+: 8b 04 e5 e2 ff ff ff mov eax,DWORD PTR \[eiz\*8-0x1e\]
[ ]*[a-f0-9]+: 8b 04 25 1e 00 00 00 mov eax,DWORD PTR \[eiz\*1\+0x1e\]
[ ]*[a-f0-9]+: 8b 04 65 1e 00 00 00 mov eax,DWORD PTR \[eiz\*2\+0x1e\]
[ ]*[a-f0-9]+: 8b 04 a5 1e 00 00 00 mov eax,DWORD PTR \[eiz\*4\+0x1e\]
[ ]*[a-f0-9]+: 8b 04 e5 1e 00 00 00 mov eax,DWORD PTR \[eiz\*8\+0x1e\]
[ ]*[a-f0-9]+: 8b 04 23 mov eax,DWORD PTR \[ebx\+eiz\*1\]
[ ]*[a-f0-9]+: 8b 04 23 mov eax,DWORD PTR \[ebx\+eiz\*1\]
[ ]*[a-f0-9]+: 8b 04 63 mov eax,DWORD PTR \[ebx\+eiz\*2\]
[ ]*[a-f0-9]+: 8b 04 a3 mov eax,DWORD PTR \[ebx\+eiz\*4\]
[ ]*[a-f0-9]+: 8b 04 e3 mov eax,DWORD PTR \[ebx\+eiz\*8\]
[ ]*[a-f0-9]+: 8b 04 24 mov eax,DWORD PTR \[esp\]
[ ]*[a-f0-9]+: 8b 04 24 mov eax,DWORD PTR \[esp\]
[ ]*[a-f0-9]+: 8b 04 24 mov eax,DWORD PTR \[esp\]
[ ]*[a-f0-9]+: 8b 04 64 mov eax,DWORD PTR \[esp\+eiz\*2\]
[ ]*[a-f0-9]+: 8b 04 a4 mov eax,DWORD PTR \[esp\+eiz\*4\]
[ ]*[a-f0-9]+: 8b 04 e4 mov eax,DWORD PTR \[esp\+eiz\*8\]
#pass

View File

@@ -6,8 +6,21 @@
Disassembly of section .text:
0+ <foo>:
[ ]*[a-f0-9]+: 8b 1d e2 ff ff ff mov 0xffffffe2,%ebx
[ ]*[a-f0-9]+: 8b 1c 25 e2 ff ff ff mov -0x1e\(,%eiz,1\),%ebx
[ ]*[a-f0-9]+: 8b 04 25 e2 ff ff ff mov -0x1e\(,%eiz,1\),%eax
[ ]*[a-f0-9]+: 8b 04 65 e2 ff ff ff mov -0x1e\(,%eiz,2\),%eax
[ ]*[a-f0-9]+: 8b 04 a5 e2 ff ff ff mov -0x1e\(,%eiz,4\),%eax
[ ]*[a-f0-9]+: 8b 04 e5 e2 ff ff ff mov -0x1e\(,%eiz,8\),%eax
[ ]*[a-f0-9]+: a1 1e 00 00 00 mov 0x1e,%eax
[ ]*[a-f0-9]+: 8b 04 25 1e 00 00 00 mov 0x1e\(,%eiz,1\),%eax
[ ]*[a-f0-9]+: 8b 04 25 1e 00 00 00 mov 0x1e\(,%eiz,1\),%eax
[ ]*[a-f0-9]+: 8b 04 65 1e 00 00 00 mov 0x1e\(,%eiz,2\),%eax
[ ]*[a-f0-9]+: 8b 04 a5 1e 00 00 00 mov 0x1e\(,%eiz,4\),%eax
[ ]*[a-f0-9]+: 8b 04 e5 1e 00 00 00 mov 0x1e\(,%eiz,8\),%eax
[ ]*[a-f0-9]+: 8b 03 mov \(%ebx\),%eax
[ ]*[a-f0-9]+: 8b 04 23 mov \(%ebx,%eiz,1\),%eax
[ ]*[a-f0-9]+: 8b 04 23 mov \(%ebx,%eiz,1\),%eax
[ ]*[a-f0-9]+: 8b 04 63 mov \(%ebx,%eiz,2\),%eax
[ ]*[a-f0-9]+: 8b 04 a3 mov \(%ebx,%eiz,4\),%eax
[ ]*[a-f0-9]+: 8b 04 e3 mov \(%ebx,%eiz,8\),%eax
@@ -16,4 +29,23 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: 8b 04 64 mov \(%esp,%eiz,2\),%eax
[ ]*[a-f0-9]+: 8b 04 a4 mov \(%esp,%eiz,4\),%eax
[ ]*[a-f0-9]+: 8b 04 e4 mov \(%esp,%eiz,8\),%eax
[ ]*[a-f0-9]+: 8b 04 25 e2 ff ff ff mov -0x1e\(,%eiz,1\),%eax
[ ]*[a-f0-9]+: 8b 04 65 e2 ff ff ff mov -0x1e\(,%eiz,2\),%eax
[ ]*[a-f0-9]+: 8b 04 a5 e2 ff ff ff mov -0x1e\(,%eiz,4\),%eax
[ ]*[a-f0-9]+: 8b 04 e5 e2 ff ff ff mov -0x1e\(,%eiz,8\),%eax
[ ]*[a-f0-9]+: 8b 04 25 1e 00 00 00 mov 0x1e\(,%eiz,1\),%eax
[ ]*[a-f0-9]+: 8b 04 65 1e 00 00 00 mov 0x1e\(,%eiz,2\),%eax
[ ]*[a-f0-9]+: 8b 04 a5 1e 00 00 00 mov 0x1e\(,%eiz,4\),%eax
[ ]*[a-f0-9]+: 8b 04 e5 1e 00 00 00 mov 0x1e\(,%eiz,8\),%eax
[ ]*[a-f0-9]+: 8b 04 23 mov \(%ebx,%eiz,1\),%eax
[ ]*[a-f0-9]+: 8b 04 23 mov \(%ebx,%eiz,1\),%eax
[ ]*[a-f0-9]+: 8b 04 63 mov \(%ebx,%eiz,2\),%eax
[ ]*[a-f0-9]+: 8b 04 a3 mov \(%ebx,%eiz,4\),%eax
[ ]*[a-f0-9]+: 8b 04 e3 mov \(%ebx,%eiz,8\),%eax
[ ]*[a-f0-9]+: 8b 04 24 mov \(%esp\),%eax
[ ]*[a-f0-9]+: 8b 04 24 mov \(%esp\),%eax
[ ]*[a-f0-9]+: 8b 04 24 mov \(%esp\),%eax
[ ]*[a-f0-9]+: 8b 04 64 mov \(%esp,%eiz,2\),%eax
[ ]*[a-f0-9]+: 8b 04 a4 mov \(%esp,%eiz,4\),%eax
[ ]*[a-f0-9]+: 8b 04 e4 mov \(%esp,%eiz,8\),%eax
#pass

View File

@@ -3,7 +3,20 @@
.text
.allow_index_reg
foo:
mov -30,%ebx
mov -30(,%eiz),%ebx
mov -30(,%eiz,1),%eax
mov -30(,%eiz,2),%eax
mov -30(,%eiz,4),%eax
mov -30(,%eiz,8),%eax
mov 30,%eax
mov 30(,%eiz),%eax
mov 30(,%eiz,1),%eax
mov 30(,%eiz,2),%eax
mov 30(,%eiz,4),%eax
mov 30(,%eiz,8),%eax
mov (%ebx),%eax
mov (%ebx,%eiz),%eax
mov (%ebx,%eiz,1),%eax
mov (%ebx,%eiz,2),%eax
mov (%ebx,%eiz,4),%eax
@@ -13,4 +26,24 @@ foo:
mov (%esp,%eiz,2),%eax
mov (%esp,%eiz,4),%eax
mov (%esp,%eiz,8),%eax
.intel_syntax noprefix
mov eax,DWORD PTR [eiz*1-30]
mov eax,DWORD PTR [eiz*2-30]
mov eax,DWORD PTR [eiz*4-30]
mov eax,DWORD PTR [eiz*8-30]
mov eax,DWORD PTR [eiz*1+30]
mov eax,DWORD PTR [eiz*2+30]
mov eax,DWORD PTR [eiz*4+30]
mov eax,DWORD PTR [eiz*8+30]
mov eax,DWORD PTR [ebx+eiz]
mov eax,DWORD PTR [ebx+eiz*1]
mov eax,DWORD PTR [ebx+eiz*2]
mov eax,DWORD PTR [ebx+eiz*4]
mov eax,DWORD PTR [ebx+eiz*8]
mov eax,DWORD PTR [esp]
mov eax,DWORD PTR [esp+eiz]
mov eax,DWORD PTR [esp+eiz*1]
mov eax,DWORD PTR [esp+eiz*2]
mov eax,DWORD PTR [esp+eiz*4]
mov eax,DWORD PTR [esp+eiz*8]
.p2align 4

View File

@@ -8,8 +8,21 @@
Disassembly of section .text:
0+ <foo>:
[ ]*[a-f0-9]+: 8b 1c 25 e2 ff ff ff mov ebx,DWORD PTR ds:0xffffffffffffffe2
[ ]*[a-f0-9]+: 8b 1c 25 e2 ff ff ff mov ebx,DWORD PTR ds:0xffffffffffffffe2
[ ]*[a-f0-9]+: 8b 04 25 e2 ff ff ff mov eax,DWORD PTR ds:0xffffffffffffffe2
[ ]*[a-f0-9]+: 8b 04 65 e2 ff ff ff mov eax,DWORD PTR \[riz\*2-0x1e\]
[ ]*[a-f0-9]+: 8b 04 a5 e2 ff ff ff mov eax,DWORD PTR \[riz\*4-0x1e\]
[ ]*[a-f0-9]+: 8b 04 e5 e2 ff ff ff mov eax,DWORD PTR \[riz\*8-0x1e\]
[ ]*[a-f0-9]+: 8b 04 25 1e 00 00 00 mov eax,DWORD PTR ds:0x1e
[ ]*[a-f0-9]+: 8b 04 25 1e 00 00 00 mov eax,DWORD PTR ds:0x1e
[ ]*[a-f0-9]+: 8b 04 25 1e 00 00 00 mov eax,DWORD PTR ds:0x1e
[ ]*[a-f0-9]+: 8b 04 65 1e 00 00 00 mov eax,DWORD PTR \[riz\*2\+0x1e\]
[ ]*[a-f0-9]+: 8b 04 a5 1e 00 00 00 mov eax,DWORD PTR \[riz\*4\+0x1e\]
[ ]*[a-f0-9]+: 8b 04 e5 1e 00 00 00 mov eax,DWORD PTR \[riz\*8\+0x1e\]
[ ]*[a-f0-9]+: 8b 03 mov eax,DWORD PTR \[rbx\]
[ ]*[a-f0-9]+: 8b 04 23 mov eax,DWORD PTR \[rbx\+riz\*1\]
[ ]*[a-f0-9]+: 8b 04 23 mov eax,DWORD PTR \[rbx\+riz\*1\]
[ ]*[a-f0-9]+: 8b 04 63 mov eax,DWORD PTR \[rbx\+riz\*2\]
[ ]*[a-f0-9]+: 8b 04 a3 mov eax,DWORD PTR \[rbx\+riz\*4\]
[ ]*[a-f0-9]+: 8b 04 e3 mov eax,DWORD PTR \[rbx\+riz\*8\]
@@ -18,4 +31,23 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: 8b 04 64 mov eax,DWORD PTR \[rsp\+riz\*2\]
[ ]*[a-f0-9]+: 8b 04 a4 mov eax,DWORD PTR \[rsp\+riz\*4\]
[ ]*[a-f0-9]+: 8b 04 e4 mov eax,DWORD PTR \[rsp\+riz\*8\]
[ ]*[a-f0-9]+: 8b 04 25 e2 ff ff ff mov eax,DWORD PTR ds:0xffffffffffffffe2
[ ]*[a-f0-9]+: 8b 04 65 e2 ff ff ff mov eax,DWORD PTR \[riz\*2-0x1e\]
[ ]*[a-f0-9]+: 8b 04 a5 e2 ff ff ff mov eax,DWORD PTR \[riz\*4-0x1e\]
[ ]*[a-f0-9]+: 8b 04 e5 e2 ff ff ff mov eax,DWORD PTR \[riz\*8-0x1e\]
[ ]*[a-f0-9]+: 8b 04 25 1e 00 00 00 mov eax,DWORD PTR ds:0x1e
[ ]*[a-f0-9]+: 8b 04 65 1e 00 00 00 mov eax,DWORD PTR \[riz\*2\+0x1e\]
[ ]*[a-f0-9]+: 8b 04 a5 1e 00 00 00 mov eax,DWORD PTR \[riz\*4\+0x1e\]
[ ]*[a-f0-9]+: 8b 04 e5 1e 00 00 00 mov eax,DWORD PTR \[riz\*8\+0x1e\]
[ ]*[a-f0-9]+: 8b 04 23 mov eax,DWORD PTR \[rbx\+riz\*1\]
[ ]*[a-f0-9]+: 8b 04 23 mov eax,DWORD PTR \[rbx\+riz\*1\]
[ ]*[a-f0-9]+: 8b 04 63 mov eax,DWORD PTR \[rbx\+riz\*2\]
[ ]*[a-f0-9]+: 8b 04 a3 mov eax,DWORD PTR \[rbx\+riz\*4\]
[ ]*[a-f0-9]+: 8b 04 e3 mov eax,DWORD PTR \[rbx\+riz\*8\]
[ ]*[a-f0-9]+: 8b 04 24 mov eax,DWORD PTR \[rsp\]
[ ]*[a-f0-9]+: 8b 04 24 mov eax,DWORD PTR \[rsp\]
[ ]*[a-f0-9]+: 8b 04 24 mov eax,DWORD PTR \[rsp\]
[ ]*[a-f0-9]+: 8b 04 64 mov eax,DWORD PTR \[rsp\+riz\*2\]
[ ]*[a-f0-9]+: 8b 04 a4 mov eax,DWORD PTR \[rsp\+riz\*4\]
[ ]*[a-f0-9]+: 8b 04 e4 mov eax,DWORD PTR \[rsp\+riz\*8\]
#pass

View File

@@ -7,8 +7,21 @@
Disassembly of section .text:
0+ <foo>:
[ ]*[a-f0-9]+: 8b 1c 25 e2 ff ff ff mov 0xffffffffffffffe2,%ebx
[ ]*[a-f0-9]+: 8b 1c 25 e2 ff ff ff mov 0xffffffffffffffe2,%ebx
[ ]*[a-f0-9]+: 8b 04 25 e2 ff ff ff mov 0xffffffffffffffe2,%eax
[ ]*[a-f0-9]+: 8b 04 65 e2 ff ff ff mov -0x1e\(,%riz,2\),%eax
[ ]*[a-f0-9]+: 8b 04 a5 e2 ff ff ff mov -0x1e\(,%riz,4\),%eax
[ ]*[a-f0-9]+: 8b 04 e5 e2 ff ff ff mov -0x1e\(,%riz,8\),%eax
[ ]*[a-f0-9]+: 8b 04 25 1e 00 00 00 mov 0x1e,%eax
[ ]*[a-f0-9]+: 8b 04 25 1e 00 00 00 mov 0x1e,%eax
[ ]*[a-f0-9]+: 8b 04 25 1e 00 00 00 mov 0x1e,%eax
[ ]*[a-f0-9]+: 8b 04 65 1e 00 00 00 mov 0x1e\(,%riz,2\),%eax
[ ]*[a-f0-9]+: 8b 04 a5 1e 00 00 00 mov 0x1e\(,%riz,4\),%eax
[ ]*[a-f0-9]+: 8b 04 e5 1e 00 00 00 mov 0x1e\(,%riz,8\),%eax
[ ]*[a-f0-9]+: 8b 03 mov \(%rbx\),%eax
[ ]*[a-f0-9]+: 8b 04 23 mov \(%rbx,%riz,1\),%eax
[ ]*[a-f0-9]+: 8b 04 23 mov \(%rbx,%riz,1\),%eax
[ ]*[a-f0-9]+: 8b 04 63 mov \(%rbx,%riz,2\),%eax
[ ]*[a-f0-9]+: 8b 04 a3 mov \(%rbx,%riz,4\),%eax
[ ]*[a-f0-9]+: 8b 04 e3 mov \(%rbx,%riz,8\),%eax
@@ -17,4 +30,23 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: 8b 04 64 mov \(%rsp,%riz,2\),%eax
[ ]*[a-f0-9]+: 8b 04 a4 mov \(%rsp,%riz,4\),%eax
[ ]*[a-f0-9]+: 8b 04 e4 mov \(%rsp,%riz,8\),%eax
[ ]*[a-f0-9]+: 8b 04 25 e2 ff ff ff mov 0xffffffffffffffe2,%eax
[ ]*[a-f0-9]+: 8b 04 65 e2 ff ff ff mov -0x1e\(,%riz,2\),%eax
[ ]*[a-f0-9]+: 8b 04 a5 e2 ff ff ff mov -0x1e\(,%riz,4\),%eax
[ ]*[a-f0-9]+: 8b 04 e5 e2 ff ff ff mov -0x1e\(,%riz,8\),%eax
[ ]*[a-f0-9]+: 8b 04 25 1e 00 00 00 mov 0x1e,%eax
[ ]*[a-f0-9]+: 8b 04 65 1e 00 00 00 mov 0x1e\(,%riz,2\),%eax
[ ]*[a-f0-9]+: 8b 04 a5 1e 00 00 00 mov 0x1e\(,%riz,4\),%eax
[ ]*[a-f0-9]+: 8b 04 e5 1e 00 00 00 mov 0x1e\(,%riz,8\),%eax
[ ]*[a-f0-9]+: 8b 04 23 mov \(%rbx,%riz,1\),%eax
[ ]*[a-f0-9]+: 8b 04 23 mov \(%rbx,%riz,1\),%eax
[ ]*[a-f0-9]+: 8b 04 63 mov \(%rbx,%riz,2\),%eax
[ ]*[a-f0-9]+: 8b 04 a3 mov \(%rbx,%riz,4\),%eax
[ ]*[a-f0-9]+: 8b 04 e3 mov \(%rbx,%riz,8\),%eax
[ ]*[a-f0-9]+: 8b 04 24 mov \(%rsp\),%eax
[ ]*[a-f0-9]+: 8b 04 24 mov \(%rsp\),%eax
[ ]*[a-f0-9]+: 8b 04 24 mov \(%rsp\),%eax
[ ]*[a-f0-9]+: 8b 04 64 mov \(%rsp,%riz,2\),%eax
[ ]*[a-f0-9]+: 8b 04 a4 mov \(%rsp,%riz,4\),%eax
[ ]*[a-f0-9]+: 8b 04 e4 mov \(%rsp,%riz,8\),%eax
#pass

View File

@@ -3,7 +3,20 @@
.text
.allow_index_reg
foo:
mov -30,%ebx
mov -30(,%riz),%ebx
mov -30(,%riz,1),%eax
mov -30(,%riz,2),%eax
mov -30(,%riz,4),%eax
mov -30(,%riz,8),%eax
mov 30,%eax
mov 30(,%riz),%eax
mov 30(,%riz,1),%eax
mov 30(,%riz,2),%eax
mov 30(,%riz,4),%eax
mov 30(,%riz,8),%eax
mov (%rbx),%eax
mov (%rbx,%riz),%eax
mov (%rbx,%riz,1),%eax
mov (%rbx,%riz,2),%eax
mov (%rbx,%riz,4),%eax
@@ -13,4 +26,24 @@ foo:
mov (%rsp,%riz,2),%eax
mov (%rsp,%riz,4),%eax
mov (%rsp,%riz,8),%eax
.intel_syntax noprefix
mov eax,DWORD PTR [riz*1-30]
mov eax,DWORD PTR [riz*2-30]
mov eax,DWORD PTR [riz*4-30]
mov eax,DWORD PTR [riz*8-30]
mov eax,DWORD PTR [riz*1+30]
mov eax,DWORD PTR [riz*2+30]
mov eax,DWORD PTR [riz*4+30]
mov eax,DWORD PTR [riz*8+30]
mov eax,DWORD PTR [rbx+riz]
mov eax,DWORD PTR [rbx+riz*1]
mov eax,DWORD PTR [rbx+riz*2]
mov eax,DWORD PTR [rbx+riz*4]
mov eax,DWORD PTR [rbx+riz*8]
mov eax,DWORD PTR [rsp]
mov eax,DWORD PTR [rsp+riz]
mov eax,DWORD PTR [rsp+riz*1]
mov eax,DWORD PTR [rsp+riz*2]
mov eax,DWORD PTR [rsp+riz*4]
mov eax,DWORD PTR [rsp+riz*8]
.p2align 4

View File

@@ -1,3 +1,7 @@
2007-09-20 H.J. Lu <hongjiu.lu@intel.com>
* i386-dis.c (OP_E_extended): Display eiz for [eiz*1 + offset].
2007-09-20 H.J. Lu <hongjiu.lu@intel.com>
PR 658

View File

@@ -6314,6 +6314,7 @@ OP_E_extended (int bytemode, int sizeflag, int has_drex)
int havesib;
int havebase;
int haveindex;
int needindex;
int base;
int index = 0;
int scale = 0;
@@ -6368,7 +6369,15 @@ OP_E_extended (int bytemode, int sizeflag, int has_drex)
break;
}
havedisp = havebase || (havesib && (haveindex || scale != 0));
/* In 32bit mode, we need index register to tell [offset] from
[eiz*1 + offset]. */
needindex = (havesib
&& !havebase
&& !haveindex
&& address_mode == mode_32bit);
havedisp = (havebase
|| needindex
|| (havesib && (haveindex || scale != 0)));
if (!intel_syntax)
if (modrm.mod != 0 || (base & 7) == 5)
@@ -6402,6 +6411,7 @@ OP_E_extended (int bytemode, int sizeflag, int has_drex)
/* ESP/RSP won't allow index. If base isn't ESP/RSP,
print index to tell base + index from base. */
if (scale != 0
|| needindex
|| haveindex
|| (havebase && base != ESP_REG_NUM))
{