Home | History | Annotate | Download | only in Hexagon
      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 
     35