[ARM] More MVE compare vector splat combines for ANDs
[llvm-complete.git] / test / CodeGen / ARM / tail-dup-bundle.mir
blobf4760f2d98a8c6d7b0bd0408d26220a25d38f148
1 # RUN: llc -o - %s -run-pass=block-placement -mtriple=thumbv7k-apple-ios8.0.0 -verify-machineinstrs -O3 | FileCheck %s
2 ---
3 # CHECK-LABEL: name: func
4 # Make sure the bundle gets duplicated correctly
5 # CHECK: BUNDLE implicit-def dead $itstate, implicit-def $cpsr, implicit killed $r0, implicit killed $cpsr {
6 # CHECK:   t2IT 1, 24, implicit-def $itstate
7 # CHECK:   t2CMPri killed $r0, 9, 1, killed $cpsr, implicit-def $cpsr, implicit internal killed $itstate
8 # CHECK: }
9 # CHECK: BUNDLE implicit-def dead $itstate, implicit-def $cpsr, implicit killed $r0, implicit killed $cpsr {
10 # CHECK:   t2IT 1, 24, implicit-def $itstate
11 # CHECK:   t2CMPri killed $r0, 9, 1, killed $cpsr, implicit-def $cpsr, implicit internal killed $itstate
12 # CHECK: }
13 name: func
14 tracksRegLiveness: true
15 body: |
16   bb.0:
17     liveins: $r0, $lr, $r7
19   bb.1:
20     liveins: $r0
22     t2CMPri $r0, 32, 14, $noreg, implicit-def $cpsr
23     BUNDLE implicit-def dead $itstate, implicit-def $cpsr, implicit killed $r0, implicit killed $cpsr {
24       t2IT 1, 24, implicit-def $itstate
25       t2CMPri killed $r0, 9, 1, killed $cpsr, implicit-def $cpsr, implicit internal killed $itstate
26     }
27     t2Bcc %bb.3, 1, killed $cpsr
29   bb.2:
30     $r0 = IMPLICIT_DEF
31     t2B %bb.1, 14, $noreg
33   bb.3:
34     $r0 = IMPLICIT_DEF
35     t2B %bb.1, 14, $noreg
36 ...