MIR Serialization: Change MIR syntax - use custom syntax for MBBs.
[oota-llvm.git] / test / CodeGen / MIR / Generic / machine-function.mir
1 # RUN: llc -start-after branch-folder -stop-after branch-folder -o /dev/null %s | FileCheck %s
2 # This test ensures that the MIR parser parses machine functions correctly.
3
4 --- |
5
6   define i32 @foo() {
7     ret i32 0
8   }
9
10   define i32 @bar() {
11     ret i32 0
12   }
13
14   define i32 @func() {
15     ret i32 0
16   }
17
18   define i32 @func2() {
19     ret i32 0
20   }
21   
22 ...
23 ---
24 # CHECK: name: foo
25 # CHECK-NEXT: alignment:
26 # CHECK-NEXT: exposesReturnsTwice: false
27 # CHECK-NEXT: hasInlineAsm: false
28 # CHECK: ...
29 name:            foo
30 body: |
31   bb.0:
32 ...
33 ---
34 # CHECK: name: bar
35 # CHECK-NEXT: alignment:
36 # CHECK-NEXT: exposesReturnsTwice: false
37 # CHECK-NEXT: hasInlineAsm: false
38 # CHECK: ...
39 name:            bar
40 body: |
41   bb.0:
42 ...
43 ---
44 # CHECK: name: func
45 # CHECK-NEXT: alignment: 8
46 # CHECK-NEXT: exposesReturnsTwice: false
47 # CHECK-NEXT: hasInlineAsm: false
48 # CHECK: ...
49 name:            func
50 alignment:       8
51 body: |
52   bb.0:
53 ...
54 ---
55 # CHECK: name: func2
56 # CHECK-NEXT: alignment: 16
57 # CHECK-NEXT: exposesReturnsTwice: true
58 # CHECK-NEXT: hasInlineAsm: true
59 # CHECK: ...
60 name:            func2
61 alignment:       16
62 exposesReturnsTwice: true
63 hasInlineAsm:    true
64 body: |
65   bb.0:
66 ...