brintos

brintos / llvm-project-archived public Read only

0
0
Text · 6.9 KiB · 0d429ae Raw
214 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=aarch64 -run-pass=legalizer -global-isel-abort=1 %s -o - | FileCheck %s3# RUN: llc -mtriple=aarch64 -run-pass=legalizer -mattr=+cssc -global-isel-abort=1 %s -o - | FileCheck %s --check-prefix=CHECK-CSSC4---5name:            abs_s326liveins:7body:             |8  bb.0:9    ; CHECK-LABEL: name: abs_s3210    ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY $w011    ; CHECK-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 012    ; CHECK-NEXT: [[SUB:%[0-9]+]]:_(s32) = G_SUB [[C]], [[COPY]]13    ; CHECK-NEXT: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(sgt), [[COPY]](s32), [[C]]14    ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(s32) = G_SELECT [[ICMP]](s32), [[COPY]], [[SUB]]15    ; CHECK-NEXT: $w0 = COPY [[SELECT]](s32)16    ;17    ; CHECK-CSSC-LABEL: name: abs_s3218    ; CHECK-CSSC: [[COPY:%[0-9]+]]:_(s32) = COPY $w019    ; CHECK-CSSC-NEXT: [[ABS:%[0-9]+]]:_(s32) = G_ABS [[COPY]]20    ; CHECK-CSSC-NEXT: $w0 = COPY [[ABS]](s32)21    %0:_(s32) = COPY $w022    %1:_(s32) = G_ABS %0(s32)23    $w0 = COPY %1(s32)24...25---26name:            abs_s6427liveins:28body:             |29  bb.0:30    ; CHECK-LABEL: name: abs_s6431    ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY $x032    ; CHECK-NEXT: [[C:%[0-9]+]]:_(s64) = G_CONSTANT i64 033    ; CHECK-NEXT: [[SUB:%[0-9]+]]:_(s64) = G_SUB [[C]], [[COPY]]34    ; CHECK-NEXT: [[ICMP:%[0-9]+]]:_(s32) = G_ICMP intpred(sgt), [[COPY]](s64), [[C]]35    ; CHECK-NEXT: [[SELECT:%[0-9]+]]:_(s64) = G_SELECT [[ICMP]](s32), [[COPY]], [[SUB]]36    ; CHECK-NEXT: $x0 = COPY [[SELECT]](s64)37    ;38    ; CHECK-CSSC-LABEL: name: abs_s6439    ; CHECK-CSSC: [[COPY:%[0-9]+]]:_(s64) = COPY $x040    ; CHECK-CSSC-NEXT: [[ABS:%[0-9]+]]:_(s64) = G_ABS [[COPY]]41    ; CHECK-CSSC-NEXT: $x0 = COPY [[ABS]](s64)42    %0:_(s64) = COPY $x043    %1:_(s64) = G_ABS %0(s64)44    $x0 = COPY %1(s64)45...46---47name:            abs_v4s1648tracksRegLiveness: true49body:             |50  bb.0:51    liveins: $d052 53    ; CHECK-LABEL: name: abs_v4s1654    ; CHECK: liveins: $d055    ; CHECK-NEXT: {{  $}}56    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<4 x s16>) = COPY $d057    ; CHECK-NEXT: [[ABS:%[0-9]+]]:_(<4 x s16>) = G_ABS [[COPY]]58    ; CHECK-NEXT: $d0 = COPY [[ABS]](<4 x s16>)59    ; CHECK-NEXT: RET_ReallyLR implicit $d060    ;61    ; CHECK-CSSC-LABEL: name: abs_v4s1662    ; CHECK-CSSC: liveins: $d063    ; CHECK-CSSC-NEXT: {{  $}}64    ; CHECK-CSSC-NEXT: [[COPY:%[0-9]+]]:_(<4 x s16>) = COPY $d065    ; CHECK-CSSC-NEXT: [[ABS:%[0-9]+]]:_(<4 x s16>) = G_ABS [[COPY]]66    ; CHECK-CSSC-NEXT: $d0 = COPY [[ABS]](<4 x s16>)67    ; CHECK-CSSC-NEXT: RET_ReallyLR implicit $d068    %0:_(<4 x s16>) = COPY $d069    %1:_(<4 x s16>) = G_ABS %070    $d0 = COPY %1(<4 x s16>)71    RET_ReallyLR implicit $d072 73...74---75name:            abs_v8s1676tracksRegLiveness: true77body:             |78  bb.0:79    liveins: $q080 81    ; CHECK-LABEL: name: abs_v8s1682    ; CHECK: liveins: $q083    ; CHECK-NEXT: {{  $}}84    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<8 x s16>) = COPY $q085    ; CHECK-NEXT: [[ABS:%[0-9]+]]:_(<8 x s16>) = G_ABS [[COPY]]86    ; CHECK-NEXT: $q0 = COPY [[ABS]](<8 x s16>)87    ; CHECK-NEXT: RET_ReallyLR implicit $q088    ;89    ; CHECK-CSSC-LABEL: name: abs_v8s1690    ; CHECK-CSSC: liveins: $q091    ; CHECK-CSSC-NEXT: {{  $}}92    ; CHECK-CSSC-NEXT: [[COPY:%[0-9]+]]:_(<8 x s16>) = COPY $q093    ; CHECK-CSSC-NEXT: [[ABS:%[0-9]+]]:_(<8 x s16>) = G_ABS [[COPY]]94    ; CHECK-CSSC-NEXT: $q0 = COPY [[ABS]](<8 x s16>)95    ; CHECK-CSSC-NEXT: RET_ReallyLR implicit $q096    %0:_(<8 x s16>) = COPY $q097    %1:_(<8 x s16>) = G_ABS %098    $q0 = COPY %1(<8 x s16>)99    RET_ReallyLR implicit $q0100 101...102---103name:            abs_v2s32104tracksRegLiveness: true105body:             |106  bb.0:107    liveins: $d0108 109    ; CHECK-LABEL: name: abs_v2s32110    ; CHECK: liveins: $d0111    ; CHECK-NEXT: {{  $}}112    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<2 x s32>) = COPY $d0113    ; CHECK-NEXT: [[ABS:%[0-9]+]]:_(<2 x s32>) = G_ABS [[COPY]]114    ; CHECK-NEXT: $d0 = COPY [[ABS]](<2 x s32>)115    ; CHECK-NEXT: RET_ReallyLR implicit $d0116    ;117    ; CHECK-CSSC-LABEL: name: abs_v2s32118    ; CHECK-CSSC: liveins: $d0119    ; CHECK-CSSC-NEXT: {{  $}}120    ; CHECK-CSSC-NEXT: [[COPY:%[0-9]+]]:_(<2 x s32>) = COPY $d0121    ; CHECK-CSSC-NEXT: [[ABS:%[0-9]+]]:_(<2 x s32>) = G_ABS [[COPY]]122    ; CHECK-CSSC-NEXT: $d0 = COPY [[ABS]](<2 x s32>)123    ; CHECK-CSSC-NEXT: RET_ReallyLR implicit $d0124    %0:_(<2 x s32>) = COPY $d0125    %1:_(<2 x s32>) = G_ABS %0126    $d0 = COPY %1(<2 x s32>)127    RET_ReallyLR implicit $d0128 129...130---131name:            abs_v4s32132tracksRegLiveness: true133body:             |134  bb.0:135    liveins: $q0136 137    ; CHECK-LABEL: name: abs_v4s32138    ; CHECK: liveins: $q0139    ; CHECK-NEXT: {{  $}}140    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<4 x s32>) = COPY $q0141    ; CHECK-NEXT: [[ABS:%[0-9]+]]:_(<4 x s32>) = G_ABS [[COPY]]142    ; CHECK-NEXT: $q0 = COPY [[ABS]](<4 x s32>)143    ; CHECK-NEXT: RET_ReallyLR implicit $q0144    ;145    ; CHECK-CSSC-LABEL: name: abs_v4s32146    ; CHECK-CSSC: liveins: $q0147    ; CHECK-CSSC-NEXT: {{  $}}148    ; CHECK-CSSC-NEXT: [[COPY:%[0-9]+]]:_(<4 x s32>) = COPY $q0149    ; CHECK-CSSC-NEXT: [[ABS:%[0-9]+]]:_(<4 x s32>) = G_ABS [[COPY]]150    ; CHECK-CSSC-NEXT: $q0 = COPY [[ABS]](<4 x s32>)151    ; CHECK-CSSC-NEXT: RET_ReallyLR implicit $q0152    %0:_(<4 x s32>) = COPY $q0153    %1:_(<4 x s32>) = G_ABS %0154    $q0 = COPY %1(<4 x s32>)155    RET_ReallyLR implicit $q0156 157...158---159name:            abs_v4s8160tracksRegLiveness: true161body:             |162  bb.0:163    liveins: $d0164 165    ; CHECK-LABEL: name: abs_v4s8166    ; CHECK: liveins: $d0167    ; CHECK-NEXT: {{  $}}168    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<8 x s8>) = COPY $d0169    ; CHECK-NEXT: [[ABS:%[0-9]+]]:_(<8 x s8>) = G_ABS [[COPY]]170    ; CHECK-NEXT: $d0 = COPY [[ABS]](<8 x s8>)171    ; CHECK-NEXT: RET_ReallyLR implicit $d0172    ;173    ; CHECK-CSSC-LABEL: name: abs_v4s8174    ; CHECK-CSSC: liveins: $d0175    ; CHECK-CSSC-NEXT: {{  $}}176    ; CHECK-CSSC-NEXT: [[COPY:%[0-9]+]]:_(<8 x s8>) = COPY $d0177    ; CHECK-CSSC-NEXT: [[ABS:%[0-9]+]]:_(<8 x s8>) = G_ABS [[COPY]]178    ; CHECK-CSSC-NEXT: $d0 = COPY [[ABS]](<8 x s8>)179    ; CHECK-CSSC-NEXT: RET_ReallyLR implicit $d0180    %0:_(<8 x s8>) = COPY $d0181    %1:_(<8 x s8>) = G_ABS %0182    $d0 = COPY %1(<8 x s8>)183    RET_ReallyLR implicit $d0184 185...186---187name:            abs_v16s8188tracksRegLiveness: true189body:             |190  bb.0:191    liveins: $q0192 193    ; CHECK-LABEL: name: abs_v16s8194    ; CHECK: liveins: $q0195    ; CHECK-NEXT: {{  $}}196    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<16 x s8>) = COPY $q0197    ; CHECK-NEXT: [[ABS:%[0-9]+]]:_(<16 x s8>) = G_ABS [[COPY]]198    ; CHECK-NEXT: $q0 = COPY [[ABS]](<16 x s8>)199    ; CHECK-NEXT: RET_ReallyLR implicit $q0200    ;201    ; CHECK-CSSC-LABEL: name: abs_v16s8202    ; CHECK-CSSC: liveins: $q0203    ; CHECK-CSSC-NEXT: {{  $}}204    ; CHECK-CSSC-NEXT: [[COPY:%[0-9]+]]:_(<16 x s8>) = COPY $q0205    ; CHECK-CSSC-NEXT: [[ABS:%[0-9]+]]:_(<16 x s8>) = G_ABS [[COPY]]206    ; CHECK-CSSC-NEXT: $q0 = COPY [[ABS]](<16 x s8>)207    ; CHECK-CSSC-NEXT: RET_ReallyLR implicit $q0208    %0:_(<16 x s8>) = COPY $q0209    %1:_(<16 x s8>) = G_ABS %0210    $q0 = COPY %1(<16 x s8>)211    RET_ReallyLR implicit $q0212 213...214