Index: test/NaCl/X86/asm_memory.ll |
diff --git a/test/NaCl/X86/asm_memory.ll b/test/NaCl/X86/asm_memory.ll |
new file mode 100644 |
index 0000000000000000000000000000000000000000..af08d364f94dfe3cf7a738ad1731d5ff78a7d922 |
--- /dev/null |
+++ b/test/NaCl/X86/asm_memory.ll |
@@ -0,0 +1,15 @@ |
+; RUN: pnacl-llc -mtriple=x86_64-unknown-nacl -filetype=asm %s -o - \ |
+; RUN: | FileCheck %s |
+ |
+; CHECK: func: |
+define void @func(i32* %i) { |
+entry: |
+ %0 = load i32* %i, align 4 |
+; Check that the inline asm expression is correctly transformed to NaCl |
+; pseudo-segment memory operand syntax. |
+; CHECK: movl %e{{[a-z]+}}, %e[[REG:[a-z]{2}]] |
+; CHECK: movl %nacl:(%r15,%r[[REG]]), %eax |
+ call void asm sideeffect "mov $0, %eax", "*m,~{dirflag},~{fpsr},~{flags}"(i32* %i) |
+ ret void |
+} |
+ |