xref: /llvm-project/llvm/test/CodeGen/ARM/GlobalISel/thumb-select-br.mir (revision 7efabe5c7de46fe190638741c6ee81ae13255e38)
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2# RUN: llc -O0 -mtriple thumb-- -mattr=+v6t2 -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck %s
3--- |
4  define void @test_br() { ret void }
5...
6---
7name:            test_br
8legalized:       true
9regBankSelected: true
10selected:        false
11registers:
12  - { id: 0, class: gprb }
13  - { id: 1, class: gprb }
14body:             |
15  ; CHECK-LABEL: name: test_br
16  ; CHECK: bb.0:
17  ; CHECK:   successors: %bb.1(0x40000000), %bb.2(0x40000000)
18  ; CHECK:   [[COPY:%[0-9]+]]:gpr = COPY $r0
19  ; CHECK:   [[COPY1:%[0-9]+]]:rgpr = COPY [[COPY]]
20  ; CHECK:   t2TSTri [[COPY1]], 1, 14 /* CC::al */, $noreg, implicit-def $cpsr
21  ; CHECK:   t2Bcc %bb.1, 1 /* CC::ne */, $cpsr
22  ; CHECK:   t2B %bb.2, 14 /* CC::al */, $noreg
23  ; CHECK: bb.1:
24  ; CHECK:   successors: %bb.2(0x80000000)
25  ; CHECK:   t2B %bb.2, 14 /* CC::al */, $noreg
26  ; CHECK: bb.2:
27  ; CHECK:   tBX_RET 14 /* CC::al */, $noreg
28  bb.0:
29    successors: %bb.1(0x40000000), %bb.2(0x40000000)
30    liveins: $r0
31
32    %0(s32) = COPY $r0
33    %1(s1) = G_TRUNC %0(s32)
34
35    G_BRCOND %1(s1), %bb.1
36    G_BR %bb.2
37
38  bb.1:
39    successors: %bb.2(0x80000000)
40
41    G_BR %bb.2
42
43  bb.2:
44
45    tBX_RET 14, $noreg
46...
47