]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/CodeGen/Hexagon/cext-opt-shifted-range.mir
Vendor import of llvm trunk r338150:
[FreeBSD/FreeBSD.git] / test / CodeGen / Hexagon / cext-opt-shifted-range.mir
1 # RUN: llc -march=hexagon -run-pass hexagon-cext-opt %s -o - | FileCheck %s
2
3 # Check that "misaligned" extended offsets are handled correctly, that is
4 # that the non-extended offsets are still aligned.
5
6 # CHECK: %[[B:[0-9]+]]:intregs = A2_addi %{{[0-9]+}}, @array + 174
7 # CHECK-DAG: S2_storerd_io %[[B]], 0,
8 # CHECK-DAG: S2_storerd_io %[[B]], 8,
9 # CHECK-DAG: S2_storerd_io %[[B]], 24,
10 # CHECK-DAG: S2_storerd_io %[[B]], 16,
11
12 --- |
13   define void @fred() {
14     ret void
15   }
16
17   @array = external global [10000 x i16], align 8
18 ...
19
20 ---
21 name: fred
22 tracksRegLiveness: true
23 body: |
24   bb.0:
25     liveins: $r0
26       %0:intregs = COPY $r0
27       %1:intregs = S4_ori_asl_ri 2, %0, 1
28       %2:doubleregs = A2_tfrpi 0
29       S2_storerd_io %1, @array + 174, %2
30       S2_storerd_io %1, @array + 182, %2
31       S2_storerd_io %1, @array + 198, %2
32       S2_storerd_io %1, @array + 190, %2
33 ...
34