summaryrefslogtreecommitdiff
path: root/test/CodeGen/MIR/X86/basic-block-liveins.mir
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeGen/MIR/X86/basic-block-liveins.mir')
-rw-r--r--test/CodeGen/MIR/X86/basic-block-liveins.mir57
1 files changed, 47 insertions, 10 deletions
diff --git a/test/CodeGen/MIR/X86/basic-block-liveins.mir b/test/CodeGen/MIR/X86/basic-block-liveins.mir
index d749a05244223..00732975495d5 100644
--- a/test/CodeGen/MIR/X86/basic-block-liveins.mir
+++ b/test/CodeGen/MIR/X86/basic-block-liveins.mir
@@ -9,17 +9,54 @@
ret i32 %c
}
+ define i32 @test2(i32 %a, i32 %b) {
+ body:
+ %c = add i32 %a, %b
+ ret i32 %c
+ }
+
+ define i32 @test3() {
+ body:
+ ret i32 0
+ }
+
...
---
name: test
-body:
- # CHECK: name: body
- # CHECK: liveins: [ '%edi', '%esi' ]
- # CHECK-NEXT: instructions:
- - id: 0
- name: body
- liveins: [ '%edi', '%esi' ]
- instructions:
- - '%eax = LEA64_32r killed %rdi, 1, killed %rsi, 0, _'
- - 'RETQ %eax'
+body: |
+ ; CHECK-LABEL: bb.0.body:
+ ; CHECK-NEXT: liveins: %edi, %esi
+ bb.0.body:
+ liveins: %edi, %esi
+
+ %eax = LEA64_32r killed %rdi, 1, killed %rsi, 0, _
+ RETQ %eax
+...
+---
+name: test2
+body: |
+ ; CHECK-LABEL: name: test2
+ ; Verify that we can have multiple lists of liveins that will be merged into
+ ; one.
+ ; CHECK: bb.0.body:
+ ; CHECK-NEXT: liveins: %edi, %esi
+ bb.0.body:
+ liveins: %edi
+ liveins: %esi
+
+ %eax = LEA64_32r killed %rdi, 1, killed %rsi, 0, _
+ RETQ %eax
+...
+---
+name: test3
+body: |
+ ; Verify that we can have an empty list of liveins.
+ ; CHECK-LABEL: name: test3
+ ; CHECK: bb.0.body:
+ ; CHECK-NEXT: %eax = MOV32r0 implicit-def dead %eflags
+ bb.0.body:
+ liveins:
+
+ %eax = MOV32r0 implicit-def dead %eflags
+ RETQ killed %eax
...