81 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -run-pass=si-shrink-instructions -verify-machineinstrs -o - %s | FileCheck %s3# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -passes=si-shrink-instructions -verify-machineinstrs -o - %s | FileCheck %s4 5---6name: undef_and_operand_to_bitset07tracksRegLiveness: true8body: |9 bb.0:10 ; CHECK-LABEL: name: undef_and_operand_to_bitset011 ; CHECK: renamable $sgpr4 = S_BITSET0_B32 31, undef $sgpr412 ; CHECK-NEXT: S_ENDPGM 0, implicit $sgpr413 renamable $sgpr4 = S_AND_B32 undef renamable $sgpr4, 2147483647, implicit-def dead $scc14 S_ENDPGM 0, implicit $sgpr415 16...17 18---19name: undef_or_operand_to_orn220tracksRegLiveness: true21body: |22 bb.0:23 ; CHECK-LABEL: name: undef_or_operand_to_orn224 ; CHECK: renamable $sgpr4 = S_ORN2_B32 undef renamable $sgpr4, 16, implicit-def dead $scc25 ; CHECK-NEXT: S_ENDPGM 0, implicit $sgpr426 renamable $sgpr4 = S_OR_B32 undef renamable $sgpr4, -17, implicit-def dead $scc27 S_ENDPGM 0, implicit $sgpr428 29...30 31---32name: undef_xor_operand_to_orn233tracksRegLiveness: true34body: |35 bb.0:36 ; CHECK-LABEL: name: undef_xor_operand_to_orn237 ; CHECK: renamable $sgpr4 = S_XNOR_B32 undef renamable $sgpr4, 16, implicit-def dead $scc38 ; CHECK-NEXT: S_ENDPGM 0, implicit $sgpr439 renamable $sgpr4 = S_XOR_B32 undef renamable $sgpr4, -17, implicit-def dead $scc40 S_ENDPGM 0, implicit $sgpr441 42...43 44---45name: kill_and_operand_to_bitset046tracksRegLiveness: true47body: |48 bb.0:49 liveins: $sgpr450 ; CHECK-LABEL: name: kill_and_operand_to_bitset051 ; CHECK: liveins: $sgpr452 ; CHECK-NEXT: {{ $}}53 ; CHECK-NEXT: renamable $sgpr4 = S_BITSET0_B32 31, killed $sgpr454 ; CHECK-NEXT: S_ENDPGM 0, implicit $sgpr455 renamable $sgpr4 = S_AND_B32 killed renamable $sgpr4, 2147483647, implicit-def dead $scc56 S_ENDPGM 0, implicit $sgpr457 58...59 60# Make sure we don't clobber the live value in scc by replacing the61# s_mov_b32 imm with s_not_b32 ~imm62---63name: scalar_immediate_bitwise_not_live_scc64tracksRegLiveness: true65body: |66 bb.0:67 liveins: $sgpr4, $sgpr568 ; CHECK-LABEL: name: scalar_immediate_bitwise_not_live_scc69 ; CHECK: liveins: $sgpr4, $sgpr570 ; CHECK-NEXT: {{ $}}71 ; CHECK-NEXT: S_CMP_EQ_U32 killed renamable $sgpr4, killed renamable $sgpr5, implicit-def $scc72 ; CHECK-NEXT: $sgpr6 = S_MOV_B32 -106535321773 ; CHECK-NEXT: $sgpr7 = S_CSELECT_B32 1, 2, implicit $scc74 ; CHECK-NEXT: S_ENDPGM 0, implicit $sgpr675 S_CMP_EQ_U32 killed renamable $sgpr4, killed renamable $sgpr5, implicit-def $scc76 $sgpr6 = S_MOV_B32 -106535321777 $sgpr7 = S_CSELECT_B32 1, 2, implicit $scc78 S_ENDPGM 0, implicit $sgpr679 80...81