MIR Serialization: Change MIR syntax - use custom syntax for MBBs.
[oota-llvm.git] / test / CodeGen / MIR / X86 / undef-register-flag.mir
1 # RUN: llc -march=x86-64 -start-after branch-folder -stop-after branch-folder -o /dev/null %s | FileCheck %s
2 # This test ensures that the MIR parser parses the 'undef' register flags
3 # correctly.
4
5 --- |
6
7   define i32 @compute(i32 %a) #0 {
8   body:
9     %c = mul i32 %a, 11
10     ret i32 %c
11   }
12
13   define i32 @foo(i32 %a) #0 {
14   entry:
15     %b = call i32 @compute(i32 %a)
16     ret i32 %b
17   }
18
19   attributes #0 = { "no-frame-pointer-elim"="false" }
20
21 ...
22 ---
23 name:            compute
24 body: |
25   bb.0.body:
26     %eax = IMUL32rri8 %edi, 11, implicit-def %eflags
27     RETQ %eax
28 ...
29 ---
30 name:            foo
31 body: |
32   bb.0.entry:
33     ; CHECK: PUSH64r undef %rax
34     PUSH64r undef %rax, implicit-def %rsp, implicit %rsp
35     CALL64pcrel32 @compute, csr_64, implicit %rsp, implicit %edi, implicit-def %rsp, implicit-def %eax
36     %rdx = POP64r implicit-def %rsp, implicit %rsp
37     RETQ %eax
38 ...