brintos

brintos / llvm-project-archived public Read only

0
0
Text · 72.8 KiB · be84ecc Raw
1174 lines · plain
1# RUN: llc -mtriple=amdgcn -mcpu=gfx1010 -verify-machineinstrs -run-pass si-load-store-opt -o - %s | FileCheck -check-prefix=GFX10 %s2 3# GFX10-LABEL: name: image_sample_l_merged_v1v34# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_L_V4_V3_nsa_gfx10 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)5# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub06# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub37 8name: image_sample_l_merged_v1v39body:             |10  bb.0.entry:11    %0:sgpr_64 = COPY $sgpr0_sgpr112    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 013    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr9914    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 015    %4:vgpr_32 = COPY %2.sub316    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))17    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)18    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)19...20---21# GFX10-LABEL: name: image_sample_l_merged_v1v3_reversed22# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_L_V4_V3_nsa_gfx10 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), addrspace 4)23# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub324# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub0_sub1_sub225 26name: image_sample_l_merged_v1v3_reversed27body:             |28  bb.0.entry:29    %0:sgpr_64 = COPY $sgpr0_sgpr130    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 031    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr9932    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 033    %4:vgpr_32 = COPY %2.sub334    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))35    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)36    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)37...38---39 40# GFX10-LABEL: name: image_sample_l_merged_v2v241# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_L_V4_V3_nsa_gfx10 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), addrspace 4)42# GFX10: %{{[0-9]+}}:vreg_64 = COPY %8.sub0_sub143# GFX10: %{{[0-9]+}}:vreg_64 = COPY killed %8.sub2_sub344 45name: image_sample_l_merged_v2v246body:             |47  bb.0.entry:48    %0:sgpr_64 = COPY $sgpr0_sgpr149    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 050    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr9951    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 052    %4:vgpr_32 = COPY %2.sub353    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))54    %6:vreg_64 = IMAGE_SAMPLE_L_V2_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 3, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s64), align 16, addrspace 4)55    %7:vreg_64 = IMAGE_SAMPLE_L_V2_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 12, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s64), align 16, addrspace 4)56...57---58 59# GFX10-LABEL: name: image_sample_l_merged_v2v2_reversed60# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_L_V4_V3_nsa_gfx10 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), addrspace 4)61# GFX10: %{{[0-9]+}}:vreg_64 = COPY %8.sub2_sub362# GFX10: %{{[0-9]+}}:vreg_64 = COPY killed %8.sub0_sub163 64name: image_sample_l_merged_v2v2_reversed65body:             |66  bb.0.entry:67    %0:sgpr_64 = COPY $sgpr0_sgpr168    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 069    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr9970    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 071    %4:vgpr_32 = COPY %2.sub372    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))73    %6:vreg_64 = IMAGE_SAMPLE_L_V2_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 12, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s64), align 16, addrspace 4)74    %7:vreg_64 = IMAGE_SAMPLE_L_V2_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 3, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s64), align 16, addrspace 4)75...76---77 78# GFX10-LABEL: name: image_sample_l_merged_v3v179# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_L_V4_V3_nsa_gfx10 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), addrspace 4)80# GFX10: %{{[0-9]+}}:vreg_96 = COPY %8.sub0_sub1_sub281# GFX10: %{{[0-9]+}}:vgpr_32 = COPY killed %8.sub382 83name: image_sample_l_merged_v3v184body:             |85  bb.0.entry:86    %0:sgpr_64 = COPY $sgpr0_sgpr187    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 088    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr9989    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 090    %4:vgpr_32 = COPY %2.sub391    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))92    %6:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)93    %7:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)94...95---96 97# GFX10-LABEL: name: image_sample_l_merged_v3v1_reversed98# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_L_V4_V3_nsa_gfx10 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)99# GFX10: %{{[0-9]+}}:vreg_96 = COPY %8.sub1_sub2_sub3100# GFX10: %{{[0-9]+}}:vgpr_32 = COPY killed %8.sub0101 102name: image_sample_l_merged_v3v1_reversed103body:             |104  bb.0.entry:105    %0:sgpr_64 = COPY $sgpr0_sgpr1106    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0107    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99108    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0109    %4:vgpr_32 = COPY %2.sub3110    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))111    %6:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)112    %7:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)113...114---115 116# GFX10-LABEL: name: image_sample_l_divided_merged117# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_L_V4_V3_nsa_gfx10 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), addrspace 4)118 119name: image_sample_l_divided_merged120body:             |121  bb.0.entry:122    %0:sgpr_64 = COPY $sgpr0_sgpr1123    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0124    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99125    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0126    %4:vgpr_32 = COPY %2.sub3127    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))128    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)129    %7:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))130    %8:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))131    %9:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %7:vgpr_32, %7:vgpr_32, %7:vgpr_32, %3:sgpr_256, %2:sgpr_128, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)132    %10:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))133    %11:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)134...135---136 137# GFX10-LABEL: name: image_sample_l_divided_not_merged138# GFX10: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)139# GFX10: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)140 141name: image_sample_l_divided_not_merged142body:             |143  bb.0.entry:144    %0:sgpr_64 = COPY $sgpr0_sgpr1145    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0146    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99147    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0148    %4:vreg_128 = COPY %2149    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))150    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)151    IMAGE_STORE_V4_V2_nsa_gfx10 %4:vreg_128, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (store (s128))152    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)153...154---155 156# GFX10-LABEL: name: image_sample_l_dmask_overlapped_not_merged157# GFX10: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5, %5, %5, %3, %2, 4, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)158# GFX10: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)159 160name: image_sample_l_dmask_overlapped_not_merged161body:             |162  bb.0.entry:163    %0:sgpr_64 = COPY $sgpr0_sgpr1164    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0165    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99166    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0167    %4:vgpr_32 = COPY %2.sub3168    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))169    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 4, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)170    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)171...172---173 174# GFX10-LABEL: name: image_sample_l_dmask_not_disjoint_not_merged175# GFX10: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5, %5, %5, %3, %2, 4, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)176# GFX10: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 11, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)177 178name: image_sample_l_dmask_not_disjoint_not_merged179body:             |180  bb.0.entry:181    %0:sgpr_64 = COPY $sgpr0_sgpr1182    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0183    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99184    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0185    %4:vgpr_32 = COPY %2.sub3186    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))187    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 4, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)188    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 11, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)189...190---191 192# GFX10-LABEL: name: image_sample_l_not_merged_0193# GFX10: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)194# GFX10: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %6, %6, %6, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)195 196name: image_sample_l_not_merged_0197body:             |198  bb.0.entry:199    %0:sgpr_64 = COPY $sgpr0_sgpr1200    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0201    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99202    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0203    %4:vgpr_32 = COPY %2.sub3204    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))205    %6:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 1, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))206    %7:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)207    %8:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %6, %6, %6, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)208...209---210 211# GFX10-LABEL: name: image_sample_l_not_merged_1212# GFX10: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %6, %6, %6, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)213# GFX10: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %6, %6, %6, %4, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)214 215name: image_sample_l_not_merged_1216body:             |217  bb.0.entry:218    %0:sgpr_64 = COPY $sgpr0_sgpr1219    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0220    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99221    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0222    %4:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0223    %5:vgpr_32 = COPY %2.sub3224    %6:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))225    %7:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %6, %6, %6, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)226    %8:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %6, %6, %6, %4, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)227...228---229 230# GFX10-LABEL: name: image_sample_l_not_merged_2231# GFX10: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %6, %6, %6, %4, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)232# GFX10: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %6, %6, %6, %4, %3, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)233 234name: image_sample_l_not_merged_2235body:             |236  bb.0.entry:237    %0:sgpr_64 = COPY $sgpr0_sgpr1238    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0239    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99240    %3:sgpr_128 = COPY $sgpr92_sgpr93_sgpr94_sgpr95241    %4:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0242    %5:vgpr_32 = COPY %2.sub3243    %6:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))244    %7:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %6, %6, %6, %4, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)245    %8:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %6, %6, %6, %4, %3, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)246...247---248 249# GFX10-LABEL: name: image_sample_l_not_merged_3250# GFX10: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)251# GFX10: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 1, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)252 253name: image_sample_l_not_merged_3254body:             |255  bb.0.entry:256    %0:sgpr_64 = COPY $sgpr0_sgpr1257    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0258    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99259    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0260    %4:vgpr_32 = COPY %2.sub3261    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))262    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)263    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 1, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)264...265---266 267# GFX10-LABEL: name: image_sample_l_not_merged_4268# GFX10: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)269# GFX10: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 0, 1, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)270 271name: image_sample_l_not_merged_4272body:             |273  bb.0.entry:274    %0:sgpr_64 = COPY $sgpr0_sgpr1275    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0276    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99277    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0278    %4:vgpr_32 = COPY %2.sub3279    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))280    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)281    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 0, 1, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)282...283---284 285# GFX10-LABEL: name: image_sample_l_not_merged_5286# GFX10: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)287# GFX10: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 1, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)288 289name: image_sample_l_not_merged_5290body:             |291  bb.0.entry:292    %0:sgpr_64 = COPY $sgpr0_sgpr1293    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0294    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99295    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0296    %4:vgpr_32 = COPY %2.sub3297    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))298    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)299    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 1, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)300...301---302 303# GFX10-LABEL: name: image_sample_l_not_merged_6304# GFX10: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)305# GFX10: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 0, 1, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)306 307name: image_sample_l_not_merged_6308body:             |309  bb.0.entry:310    %0:sgpr_64 = COPY $sgpr0_sgpr1311    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0312    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99313    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0314    %4:vgpr_32 = COPY %2.sub3315    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))316    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)317    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 0, 1, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)318...319---320 321# GFX10-LABEL: name: image_sample_l_not_merged_7322# GFX10: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V2_nsa_gfx10 %5, %5, %3, %2, 8, 1, -1, 0, 0, 1, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)323# GFX10: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)324 325name: image_sample_l_not_merged_7326body:             |327  bb.0.entry:328    %0:sgpr_64 = COPY $sgpr0_sgpr1329    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0330    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99331    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0332    %4:vgpr_32 = COPY %2.sub3333    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))334    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V2_nsa_gfx10 %5, %5, %3, %2, 8, 1, -1, 0, 0, 1, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)335    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)336...337---338 339# GFX10-LABEL: name: image_sample_l_not_merged_8340# GFX10: %{{[0-9]+}}:vreg_64 = IMAGE_SAMPLE_L_V2_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 1, 0, 0, implicit $exec :: (dereferenceable load (s64), addrspace 4)341# GFX10: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)342 343name: image_sample_l_not_merged_8344body:             |345  bb.0.entry:346    %0:sgpr_64 = COPY $sgpr0_sgpr1347    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0348    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99349    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0350    %4:vgpr_32 = COPY %2.sub3351    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))352    %6:vreg_64 = IMAGE_SAMPLE_L_V2_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 1, 0, 0, implicit $exec :: (dereferenceable load (s64), addrspace 4)353    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)354...355---356 357# GFX10-LABEL: name: image_sample_l_not_merged_9358# GFX10: %{{[0-9]+}}:vreg_64 = IMAGE_SAMPLE_L_V2_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 1, 0, implicit $exec :: (dereferenceable load (s64), addrspace 4)359# GFX10: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)360 361name: image_sample_l_not_merged_9362body:             |363  bb.0.entry:364    %0:sgpr_64 = COPY $sgpr0_sgpr1365    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0366    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99367    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0368    %4:vgpr_32 = COPY %2.sub3369    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))370    %6:vreg_64 = IMAGE_SAMPLE_L_V2_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 1, 0, implicit $exec :: (dereferenceable load (s64), addrspace 4)371    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)372...373---374 375# GFX10-LABEL: name: image_sample_l_not_merged_10376# GFX10: %{{[0-9]+}}:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)377# GFX10: %{{[0-9]+}}:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 1, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)378 379name: image_sample_l_not_merged_10380body:             |381  bb.0.entry:382    %0:sgpr_64 = COPY $sgpr0_sgpr1383    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0384    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99385    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0386    %4:vgpr_32 = COPY %2.sub3387    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))388    %6:vgpr_32 = IMAGE_SAMPLE_L_V1_V3_nsa_gfx10 %5, %5, %5, %3, %2, 8, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)389    %7:vreg_96 = IMAGE_SAMPLE_L_V3_V3_nsa_gfx10 %5, %5, %5, %3, %2, 7, 1, -1, 0, 0, 0, 0, 0, 1, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)390...391---392 393 394 395 396# GFX10-LABEL: name: image_sample_merged_v1v3397# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_V4_V2_nsa_gfx10 %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)398# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0399# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3400 401name: image_sample_merged_v1v3402body:             |403  bb.0.entry:404    %0:sgpr_64 = COPY $sgpr0_sgpr1405    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0406    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99407    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0408    %4:vgpr_32 = COPY %2.sub3409    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))410    %6:vgpr_32 = IMAGE_SAMPLE_V1_V2_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)411    %7:vreg_96 = IMAGE_SAMPLE_V3_V2_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)412...413---414 415 416# GFX10-LABEL: name: image_sample_b_merged_v1v3417# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_B_V4_V3_nsa_gfx10 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)418# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0419# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3420 421name: image_sample_b_merged_v1v3422body:             |423  bb.0.entry:424    %0:sgpr_64 = COPY $sgpr0_sgpr1425    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0426    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99427    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0428    %4:vgpr_32 = COPY %2.sub3429    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))430    %6:vgpr_32 = IMAGE_SAMPLE_B_V1_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)431    %7:vreg_96 = IMAGE_SAMPLE_B_V3_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)432...433---434 435 436# GFX10-LABEL: name: image_sample_b_cl_merged_v1v3437# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_B_CL_V4_V4_nsa_gfx10 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)438# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0439# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3440 441name: image_sample_b_cl_merged_v1v3442body:             |443  bb.0.entry:444    %0:sgpr_64 = COPY $sgpr0_sgpr1445    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0446    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99447    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0448    %4:vgpr_32 = COPY %2.sub3449    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))450    %6:vgpr_32 = IMAGE_SAMPLE_B_CL_V1_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)451    %7:vreg_96 = IMAGE_SAMPLE_B_CL_V3_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)452...453---454 455 456# GFX10-LABEL: name: image_sample_b_cl_o_merged_v1v3457# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_B_CL_O_V4_V5_nsa_gfx10 %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)458# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0459# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3460 461name: image_sample_b_cl_o_merged_v1v3462body:             |463  bb.0.entry:464    %0:sgpr_64 = COPY $sgpr0_sgpr1465    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0466    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99467    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0468    %4:vgpr_32 = COPY %2.sub3469    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))470    %6:vgpr_32 = IMAGE_SAMPLE_B_CL_O_V1_V5_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)471    %7:vreg_96 = IMAGE_SAMPLE_B_CL_O_V3_V5_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)472...473---474 475 476# GFX10-LABEL: name: image_sample_b_o_merged_v1v3477# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_B_O_V4_V4_nsa_gfx10 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)478# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0479# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3480 481name: image_sample_b_o_merged_v1v3482body:             |483  bb.0.entry:484    %0:sgpr_64 = COPY $sgpr0_sgpr1485    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0486    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99487    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0488    %4:vgpr_32 = COPY %2.sub3489    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))490    %6:vgpr_32 = IMAGE_SAMPLE_B_O_V1_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)491    %7:vreg_96 = IMAGE_SAMPLE_B_O_V3_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)492...493---494 495 496# GFX10-LABEL: name: image_sample_c_merged_v1v3497# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_V4_V3_nsa_gfx10 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)498# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0499# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3500 501name: image_sample_c_merged_v1v3502body:             |503  bb.0.entry:504    %0:sgpr_64 = COPY $sgpr0_sgpr1505    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0506    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99507    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0508    %4:vgpr_32 = COPY %2.sub3509    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))510    %6:vgpr_32 = IMAGE_SAMPLE_C_V1_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)511    %7:vreg_96 = IMAGE_SAMPLE_C_V3_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)512...513---514 515 516# GFX10-LABEL: name: image_sample_cd_merged_v1v3517# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_CD_V4_V6_nsa_gfx10 %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)518# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0519# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3520 521name: image_sample_cd_merged_v1v3522body:             |523  bb.0.entry:524    %0:sgpr_64 = COPY $sgpr0_sgpr1525    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0526    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99527    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0528    %4:vgpr_32 = COPY %2.sub3529    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))530    %6:vgpr_32 = IMAGE_SAMPLE_CD_V1_V6_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)531    %7:vreg_96 = IMAGE_SAMPLE_CD_V3_V6_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)532...533---534 535 536# GFX10-LABEL: name: image_sample_cd_cl_merged_v1v3537# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_CD_CL_V4_V7_nsa_gfx10 %5, %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)538# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0539# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3540 541name: image_sample_cd_cl_merged_v1v3542body:             |543  bb.0.entry:544    %0:sgpr_64 = COPY $sgpr0_sgpr1545    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0546    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99547    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0548    %4:vgpr_32 = COPY %2.sub3549    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))550    %6:vgpr_32 = IMAGE_SAMPLE_CD_CL_V1_V7_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)551    %7:vreg_96 = IMAGE_SAMPLE_CD_CL_V3_V7_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)552...553---554 555 556# GFX10-LABEL: name: image_sample_cd_cl_o_merged_v1v3557# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_CD_CL_O_V4_V8_nsa_gfx10 %5, %5, %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)558# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0559# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3560 561name: image_sample_cd_cl_o_merged_v1v3562body:             |563  bb.0.entry:564    %0:sgpr_64 = COPY $sgpr0_sgpr1565    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0566    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99567    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0568    %4:vgpr_32 = COPY %2.sub3569    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))570    %6:vgpr_32 = IMAGE_SAMPLE_CD_CL_O_V1_V8_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)571    %7:vreg_96 = IMAGE_SAMPLE_CD_CL_O_V3_V8_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)572...573---574 575 576# GFX10-LABEL: name: image_sample_cd_o_merged_v1v3577# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_CD_O_V4_V7_nsa_gfx10 %5, %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)578# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0579# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3580 581name: image_sample_cd_o_merged_v1v3582body:             |583  bb.0.entry:584    %0:sgpr_64 = COPY $sgpr0_sgpr1585    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0586    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99587    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0588    %4:vgpr_32 = COPY %2.sub3589    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))590    %6:vgpr_32 = IMAGE_SAMPLE_CD_O_V1_V7_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)591    %7:vreg_96 = IMAGE_SAMPLE_CD_O_V3_V7_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)592...593---594 595 596# GFX10-LABEL: name: image_sample_cl_merged_v1v3597# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_CL_V4_V3_nsa_gfx10 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)598# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0599# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3600 601name: image_sample_cl_merged_v1v3602body:             |603  bb.0.entry:604    %0:sgpr_64 = COPY $sgpr0_sgpr1605    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0606    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99607    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0608    %4:vgpr_32 = COPY %2.sub3609    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))610    %6:vgpr_32 = IMAGE_SAMPLE_CL_V1_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)611    %7:vreg_96 = IMAGE_SAMPLE_CL_V3_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)612...613---614 615 616# GFX10-LABEL: name: image_sample_cl_o_merged_v1v3617# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_CL_O_V4_V4_nsa_gfx10 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)618# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0619# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3620 621name: image_sample_cl_o_merged_v1v3622body:             |623  bb.0.entry:624    %0:sgpr_64 = COPY $sgpr0_sgpr1625    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0626    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99627    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0628    %4:vgpr_32 = COPY %2.sub3629    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))630    %6:vgpr_32 = IMAGE_SAMPLE_CL_O_V1_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)631    %7:vreg_96 = IMAGE_SAMPLE_CL_O_V3_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)632...633---634 635 636# GFX10-LABEL: name: image_sample_c_b_merged_v1v3637# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_B_V4_V4_nsa_gfx10 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)638# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0639# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3640 641name: image_sample_c_b_merged_v1v3642body:             |643  bb.0.entry:644    %0:sgpr_64 = COPY $sgpr0_sgpr1645    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0646    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99647    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0648    %4:vgpr_32 = COPY %2.sub3649    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))650    %6:vgpr_32 = IMAGE_SAMPLE_C_B_V1_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)651    %7:vreg_96 = IMAGE_SAMPLE_C_B_V3_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)652...653---654 655 656# GFX10-LABEL: name: image_sample_c_b_cl_merged_v1v3657# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_B_CL_V4_V5_nsa_gfx10 %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)658# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0659# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3660 661name: image_sample_c_b_cl_merged_v1v3662body:             |663  bb.0.entry:664    %0:sgpr_64 = COPY $sgpr0_sgpr1665    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0666    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99667    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0668    %4:vgpr_32 = COPY %2.sub3669    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))670    %6:vgpr_32 = IMAGE_SAMPLE_C_B_CL_V1_V5_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)671    %7:vreg_96 = IMAGE_SAMPLE_C_B_CL_V3_V5_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)672...673---674 675 676# GFX10-LABEL: name: image_sample_c_b_cl_o_merged_v1v3677# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_B_CL_O_V4_V6_nsa_gfx10 %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)678# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0679# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3680 681name: image_sample_c_b_cl_o_merged_v1v3682body:             |683  bb.0.entry:684    %0:sgpr_64 = COPY $sgpr0_sgpr1685    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0686    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99687    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0688    %4:vgpr_32 = COPY %2.sub3689    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))690    %6:vgpr_32 = IMAGE_SAMPLE_C_B_CL_O_V1_V6_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)691    %7:vreg_96 = IMAGE_SAMPLE_C_B_CL_O_V3_V6_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)692...693---694 695 696# GFX10-LABEL: name: image_sample_c_b_o_merged_v1v3697# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_B_O_V4_V5_nsa_gfx10 %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)698# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0699# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3700 701name: image_sample_c_b_o_merged_v1v3702body:             |703  bb.0.entry:704    %0:sgpr_64 = COPY $sgpr0_sgpr1705    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0706    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99707    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0708    %4:vgpr_32 = COPY %2.sub3709    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))710    %6:vgpr_32 = IMAGE_SAMPLE_C_B_O_V1_V5_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)711    %7:vreg_96 = IMAGE_SAMPLE_C_B_O_V3_V5_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)712...713---714 715 716# GFX10-LABEL: name: image_sample_c_cd_merged_v1v3717# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_CD_V4_V7_nsa_gfx10 %5, %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)718# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0719# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3720 721name: image_sample_c_cd_merged_v1v3722body:             |723  bb.0.entry:724    %0:sgpr_64 = COPY $sgpr0_sgpr1725    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0726    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99727    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0728    %4:vgpr_32 = COPY %2.sub3729    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))730    %6:vgpr_32 = IMAGE_SAMPLE_C_CD_V1_V7_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)731    %7:vreg_96 = IMAGE_SAMPLE_C_CD_V3_V7_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)732...733---734 735 736# GFX10-LABEL: name: image_sample_c_cd_cl_merged_v1v3737# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_CD_CL_V4_V8_nsa_gfx10 %5, %5, %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)738# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0739# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3740 741name: image_sample_c_cd_cl_merged_v1v3742body:             |743  bb.0.entry:744    %0:sgpr_64 = COPY $sgpr0_sgpr1745    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0746    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99747    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0748    %4:vgpr_32 = COPY %2.sub3749    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))750    %6:vgpr_32 = IMAGE_SAMPLE_C_CD_CL_V1_V8_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)751    %7:vreg_96 = IMAGE_SAMPLE_C_CD_CL_V3_V8_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)752...753---754 755 756# GFX10-LABEL: name: image_sample_c_cd_cl_o_merged_v1v3757# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_CD_CL_O_V4_V9_nsa_gfx10 %5, %5, %5, %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)758# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0759# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3760 761name: image_sample_c_cd_cl_o_merged_v1v3762body:             |763  bb.0.entry:764    %0:sgpr_64 = COPY $sgpr0_sgpr1765    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0766    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99767    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0768    %4:vgpr_32 = COPY %2.sub3769    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))770    %6:vgpr_32 = IMAGE_SAMPLE_C_CD_CL_O_V1_V9_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)771    %7:vreg_96 = IMAGE_SAMPLE_C_CD_CL_O_V3_V9_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)772...773---774 775 776# GFX10-LABEL: name: image_sample_c_cd_o_merged_v1v3777# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_CD_O_V4_V8_nsa_gfx10 %5, %5, %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)778# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0779# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3780 781name: image_sample_c_cd_o_merged_v1v3782body:             |783  bb.0.entry:784    %0:sgpr_64 = COPY $sgpr0_sgpr1785    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0786    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99787    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0788    %4:vgpr_32 = COPY %2.sub3789    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))790    %6:vgpr_32 = IMAGE_SAMPLE_C_CD_O_V1_V8_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)791    %7:vreg_96 = IMAGE_SAMPLE_C_CD_O_V3_V8_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)792...793---794 795 796# GFX10-LABEL: name: image_sample_c_cl_merged_v1v3797# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_CL_V4_V4_nsa_gfx10 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)798# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0799# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3800 801name: image_sample_c_cl_merged_v1v3802body:             |803  bb.0.entry:804    %0:sgpr_64 = COPY $sgpr0_sgpr1805    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0806    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99807    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0808    %4:vgpr_32 = COPY %2.sub3809    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))810    %6:vgpr_32 = IMAGE_SAMPLE_C_CL_V1_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)811    %7:vreg_96 = IMAGE_SAMPLE_C_CL_V3_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)812...813---814 815 816# GFX10-LABEL: name: image_sample_c_cl_o_merged_v1v3817# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_CL_O_V4_V5_nsa_gfx10 %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)818# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0819# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3820 821name: image_sample_c_cl_o_merged_v1v3822body:             |823  bb.0.entry:824    %0:sgpr_64 = COPY $sgpr0_sgpr1825    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0826    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99827    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0828    %4:vgpr_32 = COPY %2.sub3829    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))830    %6:vgpr_32 = IMAGE_SAMPLE_C_CL_O_V1_V5_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)831    %7:vreg_96 = IMAGE_SAMPLE_C_CL_O_V3_V5_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)832...833---834 835 836# GFX10-LABEL: name: image_sample_c_d_merged_v1v3837# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_D_V4_V7_nsa_gfx10 %5, %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)838# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0839# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3840 841name: image_sample_c_d_merged_v1v3842body:             |843  bb.0.entry:844    %0:sgpr_64 = COPY $sgpr0_sgpr1845    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0846    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99847    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0848    %4:vgpr_32 = COPY %2.sub3849    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))850    %6:vgpr_32 = IMAGE_SAMPLE_C_D_V1_V7_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)851    %7:vreg_96 = IMAGE_SAMPLE_C_D_V3_V7_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)852...853---854 855 856# GFX10-LABEL: name: image_sample_c_d_cl_merged_v1v3857# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_D_CL_V4_V8_nsa_gfx10 %5, %5, %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)858# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0859# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3860 861name: image_sample_c_d_cl_merged_v1v3862body:             |863  bb.0.entry:864    %0:sgpr_64 = COPY $sgpr0_sgpr1865    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0866    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99867    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0868    %4:vgpr_32 = COPY %2.sub3869    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))870    %6:vgpr_32 = IMAGE_SAMPLE_C_D_CL_V1_V8_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)871    %7:vreg_96 = IMAGE_SAMPLE_C_D_CL_V3_V8_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)872...873---874 875 876# GFX10-LABEL: name: image_sample_c_d_cl_o_merged_v1v3877# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_D_CL_O_V4_V9_nsa_gfx10 %5, %5, %5, %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)878# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0879# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3880 881name: image_sample_c_d_cl_o_merged_v1v3882body:             |883  bb.0.entry:884    %0:sgpr_64 = COPY $sgpr0_sgpr1885    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0886    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99887    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0888    %4:vgpr_32 = COPY %2.sub3889    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))890    %6:vgpr_32 = IMAGE_SAMPLE_C_D_CL_O_V1_V9_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)891    %7:vreg_96 = IMAGE_SAMPLE_C_D_CL_O_V3_V9_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)892...893---894 895 896# GFX10-LABEL: name: image_sample_c_d_o_merged_v1v3897# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_D_O_V4_V8_nsa_gfx10 %5, %5, %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)898# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0899# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3900 901name: image_sample_c_d_o_merged_v1v3902body:             |903  bb.0.entry:904    %0:sgpr_64 = COPY $sgpr0_sgpr1905    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0906    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99907    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0908    %4:vgpr_32 = COPY %2.sub3909    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))910    %6:vgpr_32 = IMAGE_SAMPLE_C_D_O_V1_V8_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)911    %7:vreg_96 = IMAGE_SAMPLE_C_D_O_V3_V8_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)912...913---914 915 916# GFX10-LABEL: name: image_sample_c_l_merged_v1v3917# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_L_V4_V4_nsa_gfx10 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)918# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0919# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3920 921name: image_sample_c_l_merged_v1v3922body:             |923  bb.0.entry:924    %0:sgpr_64 = COPY $sgpr0_sgpr1925    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0926    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99927    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0928    %4:vgpr_32 = COPY %2.sub3929    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))930    %6:vgpr_32 = IMAGE_SAMPLE_C_L_V1_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)931    %7:vreg_96 = IMAGE_SAMPLE_C_L_V3_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)932...933---934 935 936# GFX10-LABEL: name: image_sample_c_lz_merged_v1v3937# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_LZ_V4_V3_nsa_gfx10 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)938# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0939# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3940 941name: image_sample_c_lz_merged_v1v3942body:             |943  bb.0.entry:944    %0:sgpr_64 = COPY $sgpr0_sgpr1945    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0946    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99947    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0948    %4:vgpr_32 = COPY %2.sub3949    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))950    %6:vgpr_32 = IMAGE_SAMPLE_C_LZ_V1_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)951    %7:vreg_96 = IMAGE_SAMPLE_C_LZ_V3_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)952...953---954 955 956# GFX10-LABEL: name: image_sample_c_lz_o_merged_v1v3957# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_LZ_O_V4_V4_nsa_gfx10 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)958# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0959# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3960 961name: image_sample_c_lz_o_merged_v1v3962body:             |963  bb.0.entry:964    %0:sgpr_64 = COPY $sgpr0_sgpr1965    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0966    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99967    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0968    %4:vgpr_32 = COPY %2.sub3969    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))970    %6:vgpr_32 = IMAGE_SAMPLE_C_LZ_O_V1_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)971    %7:vreg_96 = IMAGE_SAMPLE_C_LZ_O_V3_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)972...973---974 975 976# GFX10-LABEL: name: image_sample_c_l_o_merged_v1v3977# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_L_O_V4_V5_nsa_gfx10 %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)978# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0979# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub3980 981name: image_sample_c_l_o_merged_v1v3982body:             |983  bb.0.entry:984    %0:sgpr_64 = COPY $sgpr0_sgpr1985    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 0986    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr99987    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 0988    %4:vgpr_32 = COPY %2.sub3989    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))990    %6:vgpr_32 = IMAGE_SAMPLE_C_L_O_V1_V5_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)991    %7:vreg_96 = IMAGE_SAMPLE_C_L_O_V3_V5_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)992...993---994 995 996# GFX10-LABEL: name: image_sample_c_o_merged_v1v3997# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_C_O_V4_V4_nsa_gfx10 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)998# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub0999# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub31000 1001name: image_sample_c_o_merged_v1v31002body:             |1003  bb.0.entry:1004    %0:sgpr_64 = COPY $sgpr0_sgpr11005    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 01006    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr991007    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 01008    %4:vgpr_32 = COPY %2.sub31009    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))1010    %6:vgpr_32 = IMAGE_SAMPLE_C_O_V1_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)1011    %7:vreg_96 = IMAGE_SAMPLE_C_O_V3_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)1012...1013---1014 1015 1016# GFX10-LABEL: name: image_sample_d_merged_v1v31017# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_D_V4_V6_nsa_gfx10 %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)1018# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub01019# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub31020 1021name: image_sample_d_merged_v1v31022body:             |1023  bb.0.entry:1024    %0:sgpr_64 = COPY $sgpr0_sgpr11025    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 01026    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr991027    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 01028    %4:vgpr_32 = COPY %2.sub31029    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))1030    %6:vgpr_32 = IMAGE_SAMPLE_D_V1_V6_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)1031    %7:vreg_96 = IMAGE_SAMPLE_D_V3_V6_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)1032...1033---1034 1035 1036# GFX10-LABEL: name: image_sample_d_cl_merged_v1v31037# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_D_CL_V4_V7_nsa_gfx10 %5, %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)1038# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub01039# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub31040 1041name: image_sample_d_cl_merged_v1v31042body:             |1043  bb.0.entry:1044    %0:sgpr_64 = COPY $sgpr0_sgpr11045    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 01046    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr991047    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 01048    %4:vgpr_32 = COPY %2.sub31049    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))1050    %6:vgpr_32 = IMAGE_SAMPLE_D_CL_V1_V7_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)1051    %7:vreg_96 = IMAGE_SAMPLE_D_CL_V3_V7_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)1052...1053---1054 1055 1056# GFX10-LABEL: name: image_sample_d_cl_o_merged_v1v31057# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_D_CL_O_V4_V8_nsa_gfx10 %5, %5, %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)1058# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub01059# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub31060 1061name: image_sample_d_cl_o_merged_v1v31062body:             |1063  bb.0.entry:1064    %0:sgpr_64 = COPY $sgpr0_sgpr11065    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 01066    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr991067    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 01068    %4:vgpr_32 = COPY %2.sub31069    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))1070    %6:vgpr_32 = IMAGE_SAMPLE_D_CL_O_V1_V8_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)1071    %7:vreg_96 = IMAGE_SAMPLE_D_CL_O_V3_V8_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)1072...1073---1074 1075 1076# GFX10-LABEL: name: image_sample_d_o_merged_v1v31077# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_D_O_V4_V7_nsa_gfx10 %5, %5, %5, %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)1078# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub01079# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub31080 1081name: image_sample_d_o_merged_v1v31082body:             |1083  bb.0.entry:1084    %0:sgpr_64 = COPY $sgpr0_sgpr11085    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 01086    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr991087    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 01088    %4:vgpr_32 = COPY %2.sub31089    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))1090    %6:vgpr_32 = IMAGE_SAMPLE_D_O_V1_V7_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)1091    %7:vreg_96 = IMAGE_SAMPLE_D_O_V3_V7_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)1092...1093---1094 1095 1096# GFX10-LABEL: name: image_sample_lz_merged_v1v31097# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_LZ_V4_V2_nsa_gfx10 %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)1098# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub01099# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub31100 1101name: image_sample_lz_merged_v1v31102body:             |1103  bb.0.entry:1104    %0:sgpr_64 = COPY $sgpr0_sgpr11105    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 01106    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr991107    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 01108    %4:vgpr_32 = COPY %2.sub31109    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))1110    %6:vgpr_32 = IMAGE_SAMPLE_LZ_V1_V2_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)1111    %7:vreg_96 = IMAGE_SAMPLE_LZ_V3_V2_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)1112...1113---1114 1115 1116# GFX10-LABEL: name: image_sample_lz_o_merged_v1v31117# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_LZ_O_V4_V3_nsa_gfx10 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)1118# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub01119# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub31120 1121name: image_sample_lz_o_merged_v1v31122body:             |1123  bb.0.entry:1124    %0:sgpr_64 = COPY $sgpr0_sgpr11125    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 01126    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr991127    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 01128    %4:vgpr_32 = COPY %2.sub31129    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))1130    %6:vgpr_32 = IMAGE_SAMPLE_LZ_O_V1_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)1131    %7:vreg_96 = IMAGE_SAMPLE_LZ_O_V3_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)1132...1133---1134 1135 1136# GFX10-LABEL: name: image_sample_l_o_merged_v1v31137# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_L_O_V4_V4_nsa_gfx10 %5, %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)1138# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub01139# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub31140 1141name: image_sample_l_o_merged_v1v31142body:             |1143  bb.0.entry:1144    %0:sgpr_64 = COPY $sgpr0_sgpr11145    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 01146    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr991147    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 01148    %4:vgpr_32 = COPY %2.sub31149    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))1150    %6:vgpr_32 = IMAGE_SAMPLE_L_O_V1_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)1151    %7:vreg_96 = IMAGE_SAMPLE_L_O_V3_V4_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)1152...1153---1154 1155 1156# GFX10-LABEL: name: image_sample_o_merged_v1v31157# GFX10: %{{[0-9]+}}:vreg_128 = IMAGE_SAMPLE_O_V4_V3_nsa_gfx10 %5, %5, %5, %3, %2, 15, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec, implicit $exec :: (dereferenceable load (s128), align 4, addrspace 4)1158# GFX10: %{{[0-9]+}}:vgpr_32 = COPY %8.sub01159# GFX10: %{{[0-9]+}}:vreg_96 = COPY killed %8.sub1_sub2_sub31160 1161name: image_sample_o_merged_v1v31162body:             |1163  bb.0.entry:1164    %0:sgpr_64 = COPY $sgpr0_sgpr11165    %1:sreg_64_xexec = S_LOAD_DWORDX2_IMM %0, 36, 01166    %2:sgpr_128 = COPY $sgpr96_sgpr97_sgpr98_sgpr991167    %3:sgpr_256 = S_LOAD_DWORDX8_IMM %1, 208, 01168    %4:vgpr_32 = COPY %2.sub31169    %5:vgpr_32 = BUFFER_LOAD_DWORD_OFFSET %2:sgpr_128, 0, 0, 0, 0, implicit $exec :: (dereferenceable invariant load (s128))1170    %6:vgpr_32 = IMAGE_SAMPLE_O_V1_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 1, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s32), addrspace 4)1171    %7:vreg_96 = IMAGE_SAMPLE_O_V3_V3_nsa_gfx10 %5:vgpr_32, %5:vgpr_32, %5:vgpr_32, %3:sgpr_256, %2:sgpr_128, 14, 1, -1, 0, 0, 0, 0, 0, 0, implicit $exec :: (dereferenceable load (s96), align 16, addrspace 4)1172...1173---1174