xref: /llvm-project/llvm/test/tools/llvm-reduce/mir/preserve-block-info.mir (revision cfd2c5ce580fce744f6fd6ba34e869cab05e94c3)
1# REQUIRES: amdgpu-registered-target
2# RUN: llvm-reduce -abort-on-invalid-reduction -simplify-mir --delta-passes=instructions -mtriple=amdgcn-amd-amdhsa --test FileCheck --test-arg --check-prefix=CHECK-INTERESTINGNESS --test-arg %s --test-arg --input-file %s -o %t 2> %t.log
3# RUN: FileCheck --match-full-lines --check-prefix=RESULT %s < %t
4
5# CHECK-INTERESTINGNESS: V_MOV_B32
6
7
8# RESULT: bb.0.entry:
9# RESULT: %{{[0-9]+}}:vgpr_32 = V_MOV_B32_e32 0, implicit $exec
10
11# RESULT: bb.1 (ir-block-address-taken %ir-block.exitblock, align 8):
12# RESULT: bb.2 (landing-pad, align 16):
13# RESULT: bb.3 (inlineasm-br-indirect-target):
14# RESULT: bb.4 (ehfunclet-entry):
15# RESULT: bb.5 (bbsections 1):
16# RESULT: bb.6 (bbsections 2):
17# RESULT: bb.7 (bbsections 3):
18# RESULT: bb.8:
19# RESULT-NEXT: successors: %bb.9(0x66666666), %bb.10(0x1999999a)
20# RESULT: bb.9:
21# RESULT: bb.10.exitblock:
22# RESULT: bb.11 (machine-block-address-taken):
23
24--- |
25  define void @func(i32 %size)  {
26  entry:
27    br label %exitblock
28
29  exitblock:
30    ret void
31  }
32
33...
34
35---
36name: func
37alignment:       32
38exposesReturnsTwice: true
39legalized:       true
40regBankSelected: true
41selected:        true
42failedISel:      true
43tracksRegLiveness: true
44hasWinCFI:       true
45failsVerification: true
46tracksDebugUserValues: true
47body:             |
48  bb.0.entry:
49    S_NOP 0
50    %0:vgpr_32 = V_MOV_B32_e32 0, implicit $exec
51
52  bb.1 (ir-block-address-taken %ir-block.exitblock, align 8):
53
54  bb.2 (landing-pad, align 16):
55
56  bb.3 (inlineasm-br-indirect-target):
57
58  bb.4 (ehfunclet-entry):
59
60  bb.5 (bbsections 1):
61  bb.6 (bbsections 2):
62  bb.7 (bbsections 3):
63
64  bb.8:
65    successors: %bb.9(4), %bb.10(1)
66    S_CBRANCH_SCC1 %bb.10, implicit undef $scc
67    S_BRANCH %bb.9
68
69  bb.9:
70
71  bb.10.exitblock:
72    S_ENDPGM 0, implicit %0
73
74  bb.11 (machine-block-address-taken):
75...
76