summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/MIR
diff options
context:
space:
mode:
authorAlex Lorenz <arphaman@gmail.com>2015-08-19 23:31:05 +0000
committerAlex Lorenz <arphaman@gmail.com>2015-08-19 23:31:05 +0000
commitdd13be0bccc888926cb5a5e81912b89b28142669 (patch)
tree7111d88094455929df5f323269a9221a38e8dafa /llvm/test/CodeGen/MIR
parent36593ac51b81952977a83955e82a83df56052db7 (diff)
downloadbcm5719-llvm-dd13be0bccc888926cb5a5e81912b89b28142669.tar.gz
bcm5719-llvm-dd13be0bccc888926cb5a5e81912b89b28142669.zip
MIR Serialization: Serialize unnamed local IR values in memory operands.
llvm-svn: 245521
Diffstat (limited to 'llvm/test/CodeGen/MIR')
-rw-r--r--llvm/test/CodeGen/MIR/X86/memory-operands.mir30
1 files changed, 30 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/MIR/X86/memory-operands.mir b/llvm/test/CodeGen/MIR/X86/memory-operands.mir
index fabea5ebcbf..ba5bcec820e 100644
--- a/llvm/test/CodeGen/MIR/X86/memory-operands.mir
+++ b/llvm/test/CodeGen/MIR/X86/memory-operands.mir
@@ -19,6 +19,15 @@
ret void
}
+ define void @test3(i32*) {
+ entry3:
+ %1 = alloca i32
+ %b = load i32, i32* %0
+ %c = add i32 %b, 1
+ store i32 %c, i32* %1
+ ret void
+ }
+
define i32 @volatile_inc(i32* %x) {
entry:
%0 = load volatile i32, i32* %x
@@ -185,6 +194,27 @@ body: |
RETQ
...
---
+name: test3
+tracksRegLiveness: true
+liveins:
+ - { reg: '%rdi' }
+frameInfo:
+ maxAlignment: 4
+stack:
+ - { id: 0, offset: -12, size: 4, alignment: 4 }
+body: |
+ bb.0.entry3:
+ liveins: %rdi
+ ; Verify that the unnamed local values can be serialized.
+ ; CHECK-LABEL: name: test3
+ ; CHECK: %eax = MOV32rm killed %rdi, 1, _, 0, _ :: (load 4 from %ir.0)
+ ; CHECK: MOV32mr %rsp, 1, _, -4, _, killed %eax :: (store 4 into %ir.1)
+ %eax = MOV32rm killed %rdi, 1, _, 0, _ :: (load 4 from %ir.0)
+ %eax = INC32r killed %eax, implicit-def dead %eflags
+ MOV32mr %rsp, 1, _, -4, _, killed %eax :: (store 4 into %ir.1)
+ RETQ
+...
+---
name: volatile_inc
tracksRegLiveness: true
liveins:
OpenPOWER on IntegriCloud