brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.5 KiB · 30c958f Raw
103 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn -mcpu=fiji -run-pass=amdgpu-regbankselect,amdgpu-regbanklegalize %s -verify-machineinstrs -o - | FileCheck %s3---4name: add_s16_ss5legalized: true6 7body: |8  bb.0:9    liveins: $sgpr0, $sgpr110    ; CHECK-LABEL: name: add_s16_ss11    ; CHECK: liveins: $sgpr0, $sgpr112    ; CHECK-NEXT: {{  $}}13    ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(s32) = COPY $sgpr014    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:sgpr(s32) = COPY $sgpr115    ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:sgpr(s16) = G_TRUNC [[COPY]](s32)16    ; CHECK-NEXT: [[TRUNC1:%[0-9]+]]:sgpr(s16) = G_TRUNC [[COPY1]](s32)17    ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:sgpr(s32) = G_ANYEXT [[TRUNC]](s16)18    ; CHECK-NEXT: [[ANYEXT1:%[0-9]+]]:sgpr(s32) = G_ANYEXT [[TRUNC1]](s16)19    ; CHECK-NEXT: [[ADD:%[0-9]+]]:sgpr(s32) = G_ADD [[ANYEXT]], [[ANYEXT1]]20    ; CHECK-NEXT: [[TRUNC2:%[0-9]+]]:sgpr(s16) = G_TRUNC [[ADD]](s32)21    ; CHECK-NEXT: [[AND:%[0-9]+]]:sgpr(s16) = G_AND [[TRUNC2]], [[TRUNC2]]22    %0:_(s32) = COPY $sgpr023    %1:_(s32) = COPY $sgpr124    %2:_(s16) = G_TRUNC %025    %3:_(s16) = G_TRUNC %126    %4:_(s16) = G_ADD %2, %327    %5:_(s16) = G_AND %4, %428...29 30---31name: add_s16_sv32legalized: true33 34body: |35  bb.0:36    liveins: $sgpr0, $vgpr037    ; CHECK-LABEL: name: add_s16_sv38    ; CHECK: liveins: $sgpr0, $vgpr039    ; CHECK-NEXT: {{  $}}40    ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(s32) = COPY $sgpr041    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:vgpr(s32) = COPY $vgpr042    ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:sgpr(s16) = G_TRUNC [[COPY]](s32)43    ; CHECK-NEXT: [[TRUNC1:%[0-9]+]]:vgpr(s16) = G_TRUNC [[COPY1]](s32)44    ; CHECK-NEXT: [[COPY2:%[0-9]+]]:vgpr(s16) = COPY [[TRUNC]](s16)45    ; CHECK-NEXT: [[ADD:%[0-9]+]]:vgpr(s16) = G_ADD [[COPY2]], [[TRUNC1]]46    ; CHECK-NEXT: [[AND:%[0-9]+]]:vgpr(s16) = G_AND [[ADD]], [[ADD]]47    %0:_(s32) = COPY $sgpr048    %1:_(s32) = COPY $vgpr049    %2:_(s16) = G_TRUNC %050    %3:_(s16) = G_TRUNC %151    %4:_(s16) = G_ADD %2, %352    %5:_(s16) = G_AND %4, %453...54 55---56name: add_s16_vs57legalized: true58 59body: |60  bb.0:61    liveins: $sgpr0, $vgpr062    ; CHECK-LABEL: name: add_s16_vs63    ; CHECK: liveins: $sgpr0, $vgpr064    ; CHECK-NEXT: {{  $}}65    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vgpr(s32) = COPY $vgpr066    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:sgpr(s32) = COPY $sgpr067    ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:vgpr(s16) = G_TRUNC [[COPY]](s32)68    ; CHECK-NEXT: [[TRUNC1:%[0-9]+]]:sgpr(s16) = G_TRUNC [[COPY1]](s32)69    ; CHECK-NEXT: [[COPY2:%[0-9]+]]:vgpr(s16) = COPY [[TRUNC1]](s16)70    ; CHECK-NEXT: [[ADD:%[0-9]+]]:vgpr(s16) = G_ADD [[TRUNC]], [[COPY2]]71    ; CHECK-NEXT: [[AND:%[0-9]+]]:vgpr(s16) = G_AND [[ADD]], [[ADD]]72    %0:_(s32) = COPY $vgpr073    %1:_(s32) = COPY $sgpr074    %2:_(s16) = G_TRUNC %075    %3:_(s16) = G_TRUNC %176    %4:_(s16) = G_ADD %2, %377    %5:_(s16) = G_AND %4, %478...79 80---81name: add_s16_vv82legalized: true83 84body: |85  bb.0:86    liveins: $vgpr0, $vgpr187    ; CHECK-LABEL: name: add_s16_vv88    ; CHECK: liveins: $vgpr0, $vgpr189    ; CHECK-NEXT: {{  $}}90    ; CHECK-NEXT: [[COPY:%[0-9]+]]:vgpr(s32) = COPY $vgpr091    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:vgpr(s32) = COPY $vgpr192    ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:vgpr(s16) = G_TRUNC [[COPY]](s32)93    ; CHECK-NEXT: [[TRUNC1:%[0-9]+]]:vgpr(s16) = G_TRUNC [[COPY1]](s32)94    ; CHECK-NEXT: [[ADD:%[0-9]+]]:vgpr(s16) = G_ADD [[TRUNC]], [[TRUNC1]]95    ; CHECK-NEXT: [[AND:%[0-9]+]]:vgpr(s16) = G_AND [[ADD]], [[ADD]]96    %0:_(s32) = COPY $vgpr097    %1:_(s32) = COPY $vgpr198    %2:_(s16) = G_TRUNC %099    %3:_(s16) = G_TRUNC %1100    %4:_(s16) = G_ADD %2, %3101    %5:_(s16) = G_AND %4, %4102...103