brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.9 KiB · 21bca9f Raw
117 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn -mcpu=fiji -run-pass=instruction-select -verify-machineinstrs -o - %s  | FileCheck -check-prefix=GFX8 %s3# RUN: llc -mtriple=amdgcn -mcpu=gfx900 -run-pass=instruction-select -verify-machineinstrs -o - %s  | FileCheck -check-prefix=GFX9 %s4# RUN: llc -mtriple=amdgcn -mcpu=gfx1010 -run-pass=instruction-select -verify-machineinstrs -o - %s  | FileCheck -check-prefix=GFX9 %s5# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 -run-pass=instruction-select -verify-machineinstrs -o - %s  | FileCheck -check-prefix=GFX9 %s6 7---8 9name:            or_s32_sgpr_sgpr_sgpr10legalized:       true11regBankSelected: true12tracksRegLiveness: true13 14body: |15  bb.0:16    liveins: $sgpr0, $sgpr1, $sgpr217    ; GFX8-LABEL: name: or_s32_sgpr_sgpr_sgpr18    ; GFX8: liveins: $sgpr0, $sgpr1, $sgpr219    ; GFX8-NEXT: {{  $}}20    ; GFX8-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr021    ; GFX8-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr122    ; GFX8-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $sgpr223    ; GFX8-NEXT: [[S_OR_B32_:%[0-9]+]]:sreg_32 = S_OR_B32 [[COPY]], [[COPY1]], implicit-def dead $scc24    ; GFX8-NEXT: [[S_OR_B32_1:%[0-9]+]]:sreg_32 = S_OR_B32 [[S_OR_B32_]], [[COPY2]], implicit-def dead $scc25    ; GFX8-NEXT: S_ENDPGM 0, implicit [[S_OR_B32_1]]26    ;27    ; GFX9-LABEL: name: or_s32_sgpr_sgpr_sgpr28    ; GFX9: liveins: $sgpr0, $sgpr1, $sgpr229    ; GFX9-NEXT: {{  $}}30    ; GFX9-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr031    ; GFX9-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr132    ; GFX9-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $sgpr233    ; GFX9-NEXT: [[S_OR_B32_:%[0-9]+]]:sreg_32 = S_OR_B32 [[COPY]], [[COPY1]], implicit-def dead $scc34    ; GFX9-NEXT: [[S_OR_B32_1:%[0-9]+]]:sreg_32 = S_OR_B32 [[S_OR_B32_]], [[COPY2]], implicit-def dead $scc35    ; GFX9-NEXT: S_ENDPGM 0, implicit [[S_OR_B32_1]]36    %0:sgpr(s32) = COPY $sgpr037    %1:sgpr(s32) = COPY $sgpr138    %2:sgpr(s32) = COPY $sgpr239    %3:sgpr(s32) = G_OR %0, %140    %4:sgpr(s32) = G_OR %3, %241    S_ENDPGM 0, implicit %442...43 44---45 46name:            or_s32_vgpr_vgpr_vgpr47legalized:       true48regBankSelected: true49tracksRegLiveness: true50 51body: |52  bb.0:53    liveins: $vgpr0, $vgpr1, $vgpr254    ; GFX8-LABEL: name: or_s32_vgpr_vgpr_vgpr55    ; GFX8: liveins: $vgpr0, $vgpr1, $vgpr256    ; GFX8-NEXT: {{  $}}57    ; GFX8-NEXT: [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr058    ; GFX8-NEXT: [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr159    ; GFX8-NEXT: [[COPY2:%[0-9]+]]:vgpr_32 = COPY $vgpr260    ; GFX8-NEXT: [[V_OR_B32_e64_:%[0-9]+]]:vgpr_32 = V_OR_B32_e64 [[COPY]], [[COPY1]], implicit $exec61    ; GFX8-NEXT: [[V_OR_B32_e64_1:%[0-9]+]]:vgpr_32 = V_OR_B32_e64 [[V_OR_B32_e64_]], [[COPY2]], implicit $exec62    ; GFX8-NEXT: S_ENDPGM 0, implicit [[V_OR_B32_e64_1]]63    ;64    ; GFX9-LABEL: name: or_s32_vgpr_vgpr_vgpr65    ; GFX9: liveins: $vgpr0, $vgpr1, $vgpr266    ; GFX9-NEXT: {{  $}}67    ; GFX9-NEXT: [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr068    ; GFX9-NEXT: [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr169    ; GFX9-NEXT: [[COPY2:%[0-9]+]]:vgpr_32 = COPY $vgpr270    ; GFX9-NEXT: [[V_OR3_B32_e64_:%[0-9]+]]:vgpr_32 = V_OR3_B32_e64 [[COPY]], [[COPY1]], [[COPY2]], implicit $exec71    ; GFX9-NEXT: S_ENDPGM 0, implicit [[V_OR3_B32_e64_]]72    %0:vgpr(s32) = COPY $vgpr073    %1:vgpr(s32) = COPY $vgpr174    %2:vgpr(s32) = COPY $vgpr275    %3:vgpr(s32) = G_OR %0, %176    %4:vgpr(s32) = G_OR %3, %277    S_ENDPGM 0, implicit %478...79 80---81 82name:            or_s32_vgpr_vgpr_vgpr_multi_use83legalized:       true84regBankSelected: true85tracksRegLiveness: true86 87body: |88  bb.0:89    liveins: $vgpr0, $vgpr1, $vgpr290    ; GFX8-LABEL: name: or_s32_vgpr_vgpr_vgpr_multi_use91    ; GFX8: liveins: $vgpr0, $vgpr1, $vgpr292    ; GFX8-NEXT: {{  $}}93    ; GFX8-NEXT: [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr094    ; GFX8-NEXT: [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr195    ; GFX8-NEXT: [[COPY2:%[0-9]+]]:vgpr_32 = COPY $vgpr296    ; GFX8-NEXT: [[V_OR_B32_e64_:%[0-9]+]]:vgpr_32 = V_OR_B32_e64 [[COPY]], [[COPY1]], implicit $exec97    ; GFX8-NEXT: [[V_OR_B32_e64_1:%[0-9]+]]:vgpr_32 = V_OR_B32_e64 [[V_OR_B32_e64_]], [[COPY2]], implicit $exec98    ; GFX8-NEXT: S_ENDPGM 0, implicit [[V_OR_B32_e64_1]], implicit [[V_OR_B32_e64_]]99    ;100    ; GFX9-LABEL: name: or_s32_vgpr_vgpr_vgpr_multi_use101    ; GFX9: liveins: $vgpr0, $vgpr1, $vgpr2102    ; GFX9-NEXT: {{  $}}103    ; GFX9-NEXT: [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr0104    ; GFX9-NEXT: [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr1105    ; GFX9-NEXT: [[COPY2:%[0-9]+]]:vgpr_32 = COPY $vgpr2106    ; GFX9-NEXT: [[V_OR_B32_e64_:%[0-9]+]]:vgpr_32 = V_OR_B32_e64 [[COPY]], [[COPY1]], implicit $exec107    ; GFX9-NEXT: [[V_OR_B32_e64_1:%[0-9]+]]:vgpr_32 = V_OR_B32_e64 [[V_OR_B32_e64_]], [[COPY2]], implicit $exec108    ; GFX9-NEXT: S_ENDPGM 0, implicit [[V_OR_B32_e64_1]], implicit [[V_OR_B32_e64_]]109    %0:vgpr(s32) = COPY $vgpr0110    %1:vgpr(s32) = COPY $vgpr1111    %2:vgpr(s32) = COPY $vgpr2112    %3:vgpr(s32) = G_OR %0, %1113    %4:vgpr(s32) = G_OR %3, %2114    S_ENDPGM 0, implicit %4, implicit %3115...116 117