summaryrefslogtreecommitdiffstats
path: root/llvm/test/MC/X86/index-operations.s
diff options
context:
space:
mode:
authorDavid Woodhouse <dwmw2@infradead.org>2014-01-22 15:08:21 +0000
committerDavid Woodhouse <dwmw2@infradead.org>2014-01-22 15:08:21 +0000
commitb33c2ef215707b5a2d58146933d1b0ddefc185b9 (patch)
treeb23ba9e6ee6cca8e91782e368c78901813f12aa5 /llvm/test/MC/X86/index-operations.s
parent2ef8d9c05cb4133383fda0c8b85f1443b873a758 (diff)
downloadbcm5719-llvm-b33c2ef215707b5a2d58146933d1b0ddefc185b9.tar.gz
bcm5719-llvm-b33c2ef215707b5a2d58146933d1b0ddefc185b9.zip
[x86] Allow address-size overrides for STOS[BWLQ] (PR9385)
llvm-svn: 199804
Diffstat (limited to 'llvm/test/MC/X86/index-operations.s')
-rw-r--r--llvm/test/MC/X86/index-operations.s30
1 files changed, 30 insertions, 0 deletions
diff --git a/llvm/test/MC/X86/index-operations.s b/llvm/test/MC/X86/index-operations.s
index a5dd88b1d48..ffad9596c83 100644
--- a/llvm/test/MC/X86/index-operations.s
+++ b/llvm/test/MC/X86/index-operations.s
@@ -44,3 +44,33 @@ lods (%esi), %ax
// 64: lodsw (%esi), %ax # encoding: [0x66,0x67,0xad]
// 32: lodsw (%esi), %ax # encoding: [0x66,0xad]
// 16: lodsw (%esi), %ax # encoding: [0x67,0xad]
+
+stosw
+// 64: stosw %ax, %es:(%rdi) # encoding: [0x66,0xab]
+// 32: stosw %ax, %es:(%edi) # encoding: [0x66,0xab]
+// 16: stosw %ax, %es:(%di) # encoding: [0xab]
+
+stos %eax, (%edi)
+// 64: stosl %eax, %es:(%edi) # encoding: [0x67,0xab]
+// 32: stosl %eax, %es:(%edi) # encoding: [0xab]
+// 16: stosl %eax, %es:(%edi) # encoding: [0x66,0x67,0xab]
+
+stosb %al, %fs:(%edi)
+// ERR64: invalid operand for instruction
+// ERR32: invalid operand for instruction
+// ERR16: invalid operand for instruction
+
+stosb %al, %es:(%edi)
+// 64: stosb %al, %es:(%edi) # encoding: [0x67,0xaa]
+// 32: stosb %al, %es:(%edi) # encoding: [0xaa]
+// 16: stosb %al, %es:(%edi) # encoding: [0x67,0xaa]
+
+stosq
+// 64: stosq %rax, %es:(%rdi) # encoding: [0x48,0xab]
+// ERR32: 64-bit
+// ERR16: 64-bit
+
+stos %rax, (%edi)
+// 64: stosq %rax, %es:(%edi) # encoding: [0x48,0x67,0xab]
+// ERR32: only available in 64-bit mode
+// ERR16: only available in 64-bit mode
OpenPOWER on IntegriCloud