annotate test/CodeGen/Hexagon/livephysregs-lane-masks.mir @ 128:c347d3398279 default tip

fix
author mir3636
date Wed, 06 Dec 2017 14:37:17 +0900
parents 1172e4bd9c6f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
120
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
1 # RUN: llc -march=hexagon -run-pass if-converter -verify-machineinstrs -o - %s | FileCheck %s
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
2
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
3 # CHECK-LABEL: name: foo
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
4 # CHECK: %p0 = C2_cmpeqi %r16, 0
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
5 # Make sure there is no implicit use of r1.
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
6 # CHECK: %r1 = L2_ploadruhf_io %p0, %r29, 6
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
7
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
8 --- |
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
9 define void @foo() {
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
10 ret void
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
11 }
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
12 ...
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
13
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
14
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
15 ---
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
16 name: foo
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
17 tracksRegLiveness: true
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
18
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
19 body: |
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
20 bb.0:
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
21 liveins: %r16
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
22 successors: %bb.1, %bb.2
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
23 %p0 = C2_cmpeqi %r16, 0
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
24 J2_jumpt %p0, %bb.2, implicit-def %pc
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
25
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
26 bb.1:
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
27 ; The lane mask %d0:0002 is equivalent to %r0. LivePhysRegs would ignore
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
28 ; it and treat it as the whole %d0, which is a pair %r1, %r0. The extra
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
29 ; %r1 would cause an (undefined) implicit use to be added during
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
30 ; if-conversion.
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
31 liveins: %d0:0x00000002, %d15:0x00000001, %r16
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
32 successors: %bb.2
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
33 %r1 = L2_loadruh_io %r29, 6
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
34 S2_storeri_io killed %r16, 0, %r1
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
35
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
36 bb.2:
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
37 liveins: %r0
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
38 %d8 = L2_loadrd_io %r29, 8
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
39 L4_return implicit-def %r29, implicit-def %r30, implicit-def %r31, implicit-def %pc, implicit %r30
1172e4bd9c6f update 4.0.0
mir3636
parents:
diff changeset
40