+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
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\]
+[ ]*[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\]
+[ ]*[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\]
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
+[ ]*[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
+[ ]*[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
.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
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
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\]
+[ ]*[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\]
+[ ]*[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\]
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
+[ ]*[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
+[ ]*[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
.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
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
+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
int havesib;
int havebase;
int haveindex;
+ int needindex;
int base;
int index = 0;
int scale = 0;
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)
/* 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))
{