1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py 2# RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=fiji -run-pass=legalizer -o - %s | FileCheck %s 3# RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=tahiti -run-pass=legalizer -o - %s | FileCheck %s 4 5--- 6name: test_sextload_private_i32_i8 7body: | 8 bb.0: 9 liveins: $vgpr0 10 11 ; CHECK-LABEL: name: test_sextload_private_i32_i8 12 ; CHECK: [[COPY:%[0-9]+]]:_(p5) = COPY $vgpr0 13 ; CHECK: [[SEXTLOAD:%[0-9]+]]:_(s32) = G_SEXTLOAD [[COPY]](p5) :: (load 1, addrspace 5) 14 ; CHECK: $vgpr0 = COPY [[SEXTLOAD]](s32) 15 %0:_(p5) = COPY $vgpr0 16 %1:_(s32) = G_SEXTLOAD %0 :: (load 1, addrspace 5) 17 18 $vgpr0 = COPY %1 19... 20--- 21name: test_sextload_private_i32_i16 22body: | 23 bb.0: 24 liveins: $vgpr0 25 26 ; CHECK-LABEL: name: test_sextload_private_i32_i16 27 ; CHECK: [[COPY:%[0-9]+]]:_(p5) = COPY $vgpr0 28 ; CHECK: [[SEXTLOAD:%[0-9]+]]:_(s32) = G_SEXTLOAD [[COPY]](p5) :: (load 2, addrspace 5) 29 ; CHECK: $vgpr0 = COPY [[SEXTLOAD]](s32) 30 %0:_(p5) = COPY $vgpr0 31 %1:_(s32) = G_SEXTLOAD %0 :: (load 2, addrspace 5) 32 $vgpr0 = COPY %1 33... 34--- 35name: test_sextload_private_i31_i8 36body: | 37 bb.0: 38 liveins: $vgpr0 39 40 ; CHECK-LABEL: name: test_sextload_private_i31_i8 41 ; CHECK: [[COPY:%[0-9]+]]:_(p5) = COPY $vgpr0 42 ; CHECK: [[SEXTLOAD:%[0-9]+]]:_(s32) = G_SEXTLOAD [[COPY]](p5) :: (load 1, addrspace 5) 43 ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY [[SEXTLOAD]](s32) 44 ; CHECK: $vgpr0 = COPY [[COPY1]](s32) 45 %0:_(p5) = COPY $vgpr0 46 %1:_(s31) = G_SEXTLOAD %0 :: (load 1, addrspace 5) 47 %2:_(s32) = G_ANYEXT %1 48 $vgpr0 = COPY %2 49... 50--- 51name: test_sextload_private_i64_i8 52body: | 53 bb.0: 54 liveins: $vgpr0 55 56 ; CHECK-LABEL: name: test_sextload_private_i64_i8 57 ; CHECK: [[COPY:%[0-9]+]]:_(p5) = COPY $vgpr0 58 ; CHECK: [[SEXTLOAD:%[0-9]+]]:_(s32) = G_SEXTLOAD [[COPY]](p5) :: (load 1, addrspace 5) 59 ; CHECK: [[SEXT:%[0-9]+]]:_(s64) = G_SEXT [[SEXTLOAD]](s32) 60 ; CHECK: $vgpr0_vgpr1 = COPY [[SEXT]](s64) 61 %0:_(p5) = COPY $vgpr0 62 %1:_(s64) = G_SEXTLOAD %0 :: (load 1, addrspace 5) 63 $vgpr0_vgpr1 = COPY %1 64... 65--- 66name: test_sextload_private_i64_i16 67body: | 68 bb.0: 69 liveins: $vgpr0 70 71 ; CHECK-LABEL: name: test_sextload_private_i64_i16 72 ; CHECK: [[COPY:%[0-9]+]]:_(p5) = COPY $vgpr0 73 ; CHECK: [[SEXTLOAD:%[0-9]+]]:_(s32) = G_SEXTLOAD [[COPY]](p5) :: (load 2, addrspace 5) 74 ; CHECK: [[SEXT:%[0-9]+]]:_(s64) = G_SEXT [[SEXTLOAD]](s32) 75 ; CHECK: $vgpr0_vgpr1 = COPY [[SEXT]](s64) 76 %0:_(p5) = COPY $vgpr0 77 %1:_(s64) = G_SEXTLOAD %0 :: (load 2, addrspace 5) 78 $vgpr0_vgpr1 = COPY %1 79... 80--- 81name: test_sextload_private_i64_i32 82body: | 83 bb.0: 84 liveins: $vgpr0_vgpr1 85 86 ; CHECK-LABEL: name: test_sextload_private_i64_i32 87 ; CHECK: [[COPY:%[0-9]+]]:_(p5) = COPY $vgpr0 88 ; CHECK: [[LOAD:%[0-9]+]]:_(s32) = G_LOAD [[COPY]](p5) :: (load 4, addrspace 5) 89 ; CHECK: [[SEXT:%[0-9]+]]:_(s64) = G_SEXT [[LOAD]](s32) 90 ; CHECK: $vgpr0_vgpr1 = COPY [[SEXT]](s64) 91 %0:_(p5) = COPY $vgpr0 92 %1:_(s64) = G_SEXTLOAD %0 :: (load 4, addrspace 5) 93 $vgpr0_vgpr1 = COPY %1 94... 95