diff options
author | Chad Rosier <mcrosier@apple.com> | 2013-03-27 21:49:56 +0000 |
---|---|---|
committer | Chad Rosier <mcrosier@apple.com> | 2013-03-27 21:49:56 +0000 |
commit | dd40e8cd54805aa81c8548ac8c87755c562c1723 (patch) | |
tree | 1b09110b1abbc56688c041d73c7fd9a5fc85534d /test | |
parent | f25f93b685a6cb91d8370ae5dc1436a863a670d2 (diff) | |
download | external_llvm-dd40e8cd54805aa81c8548ac8c87755c562c1723.zip external_llvm-dd40e8cd54805aa81c8548ac8c87755c562c1723.tar.gz external_llvm-dd40e8cd54805aa81c8548ac8c87755c562c1723.tar.bz2 |
[ms-inline asm] Add support of imm displacement before bracketed memory
expression. Specifically, this syntax:
ImmDisp [ BaseReg + Scale*IndexReg + Disp ]
We don't currently support:
ImmDisp [ Symbol ]
rdar://13518671
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178186 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r-- | test/MC/X86/x86-32-ms-inline-asm.s | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/test/MC/X86/x86-32-ms-inline-asm.s b/test/MC/X86/x86-32-ms-inline-asm.s index 5524c70..d912915 100644 --- a/test/MC/X86/x86-32-ms-inline-asm.s +++ b/test/MC/X86/x86-32-ms-inline-asm.s @@ -57,6 +57,26 @@ _t21: ## @t21 // CHECK: movl 4(%esi,%eax,2), %eax // CHECK: # encoding: [0x8b,0x44,0x46,0x04] + mov eax, 4[esi + 2*eax + 4] +// CHECK: movl 8(%esi,%eax,2), %eax +// CHECK: # encoding: [0x8b,0x44,0x46,0x08] + mov eax, 4[esi][2*eax + 4] +// CHECK: movl 8(%esi,%eax,2), %eax +// CHECK: # encoding: [0x8b,0x44,0x46,0x08] + mov eax, 4[esi + 2*eax][4] +// CHECK: movl 8(%esi,%eax,2), %eax +// CHECK: # encoding: [0x8b,0x44,0x46,0x08] + mov eax, 4[esi][2*eax][4] +// CHECK: movl 8(%esi,%eax,2), %eax +// CHECK: # encoding: [0x8b,0x44,0x46,0x08] + mov eax, 4[esi][2*eax][4][8] +// CHECK: movl 16(%esi,%eax,2), %eax +// CHECK: # encoding: [0x8b,0x44,0x46,0x10] + + prefetchnta 64[eax] +// CHECK: prefetchnta 64(%eax) +// CHECK: # encoding: [0x0f,0x18,0x40,0x40] + pusha // CHECK: pushal // CHECK: # encoding: [0x60] |