brintos

brintos / llvm-project-archived public Read only

0
0
Text · 494.1 KiB · 81e407d Raw
11534 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 22; RUN: llc -mtriple=amdgcn-- < %s | FileCheck -check-prefix=GFX6 %s3; RUN: llc -mtriple=amdgcn-- -mcpu=tonga < %s | FileCheck -check-prefix=GFX8 %s4; RUN: llc -mtriple=r600-- -mcpu=cypress < %s | FileCheck -check-prefix=EG %s5; RUN: llc -mtriple=amdgcn -mcpu=gfx1200 < %s | FileCheck -check-prefix=GFX12 %s6; RUN: llc -mtriple=amdgcn -mcpu=gfx1250 < %s | FileCheck -check-prefix=GFX1250 %s7 8define amdgpu_kernel void @constant_load_i1(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {9; GFX6-LABEL: constant_load_i1:10; GFX6:       ; %bb.0:11; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x912; GFX6-NEXT:    s_mov_b32 s7, 0xf00013; GFX6-NEXT:    s_mov_b32 s6, -114; GFX6-NEXT:    s_mov_b32 s10, s615; GFX6-NEXT:    s_mov_b32 s11, s716; GFX6-NEXT:    s_waitcnt lgkmcnt(0)17; GFX6-NEXT:    s_mov_b32 s8, s218; GFX6-NEXT:    s_mov_b32 s9, s319; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 020; GFX6-NEXT:    s_mov_b32 s4, s021; GFX6-NEXT:    s_mov_b32 s5, s122; GFX6-NEXT:    s_waitcnt vmcnt(0)23; GFX6-NEXT:    v_and_b32_e32 v0, 1, v024; GFX6-NEXT:    buffer_store_byte v0, off, s[4:7], 025; GFX6-NEXT:    s_endpgm26;27; GFX8-LABEL: constant_load_i1:28; GFX8:       ; %bb.0:29; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x2430; GFX8-NEXT:    s_waitcnt lgkmcnt(0)31; GFX8-NEXT:    v_mov_b32_e32 v0, s232; GFX8-NEXT:    v_mov_b32_e32 v1, s333; GFX8-NEXT:    flat_load_ubyte v2, v[0:1]34; GFX8-NEXT:    v_mov_b32_e32 v0, s035; GFX8-NEXT:    v_mov_b32_e32 v1, s136; GFX8-NEXT:    s_waitcnt vmcnt(0)37; GFX8-NEXT:    v_and_b32_e32 v2, 1, v238; GFX8-NEXT:    flat_store_byte v[0:1], v239; GFX8-NEXT:    s_endpgm40;41; EG-LABEL: constant_load_i1:42; EG:       ; %bb.0:43; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]44; EG-NEXT:    TEX 0 @645; EG-NEXT:    ALU 11, @9, KC0[CB0:0-32], KC1[]46; EG-NEXT:    MEM_RAT MSKOR T0.XW, T1.X47; EG-NEXT:    CF_END48; EG-NEXT:    PAD49; EG-NEXT:    Fetch clause starting at 6:50; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #151; EG-NEXT:    ALU clause starting at 8:52; EG-NEXT:     MOV * T0.X, KC0[2].Z,53; EG-NEXT:    ALU clause starting at 9:54; EG-NEXT:     AND_INT T0.W, KC0[2].Y, literal.x,55; EG-NEXT:     AND_INT * T1.W, T0.X, 1,56; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)57; EG-NEXT:     LSHL * T0.W, PV.W, literal.x,58; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)59; EG-NEXT:     LSHL T0.X, T1.W, PV.W,60; EG-NEXT:     LSHL * T0.W, literal.x, PV.W,61; EG-NEXT:    255(3.573311e-43), 0(0.000000e+00)62; EG-NEXT:     MOV T0.Y, 0.0,63; EG-NEXT:     MOV * T0.Z, 0.0,64; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,65; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)66;67; GFX12-LABEL: constant_load_i1:68; GFX12:       ; %bb.0:69; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x2470; GFX12-NEXT:    s_wait_kmcnt 0x071; GFX12-NEXT:    s_load_u8 s2, s[2:3], 0x072; GFX12-NEXT:    s_wait_kmcnt 0x073; GFX12-NEXT:    s_and_b32 s2, s2, 174; GFX12-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)75; GFX12-NEXT:    v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, s276; GFX12-NEXT:    global_store_b8 v0, v1, s[0:1]77; GFX12-NEXT:    s_endpgm78;79; GFX1250-LABEL: constant_load_i1:80; GFX1250:       ; %bb.0:81; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 182; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x2483; GFX1250-NEXT:    s_wait_kmcnt 0x084; GFX1250-NEXT:    s_load_u8 s2, s[2:3], 0x085; GFX1250-NEXT:    s_wait_kmcnt 0x086; GFX1250-NEXT:    s_and_b32 s2, s2, 187; GFX1250-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)88; GFX1250-NEXT:    v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, s289; GFX1250-NEXT:    global_store_b8 v0, v1, s[0:1]90; GFX1250-NEXT:    s_endpgm91  %load = load i1, ptr addrspace(4) %in92  store i1 %load, ptr addrspace(1) %out93  ret void94}95 96define amdgpu_kernel void @constant_load_v2i1(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {97; GFX6-LABEL: constant_load_v2i1:98; GFX6:       ; %bb.0:99; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x9100; GFX6-NEXT:    s_mov_b32 s7, 0xf000101; GFX6-NEXT:    s_mov_b32 s6, -1102; GFX6-NEXT:    s_mov_b32 s10, s6103; GFX6-NEXT:    s_mov_b32 s11, s7104; GFX6-NEXT:    s_waitcnt lgkmcnt(0)105; GFX6-NEXT:    s_mov_b32 s8, s2106; GFX6-NEXT:    s_mov_b32 s9, s3107; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 0108; GFX6-NEXT:    s_mov_b32 s4, s0109; GFX6-NEXT:    s_mov_b32 s5, s1110; GFX6-NEXT:    s_waitcnt vmcnt(0)111; GFX6-NEXT:    buffer_store_byte v0, off, s[4:7], 0112; GFX6-NEXT:    s_endpgm113;114; GFX8-LABEL: constant_load_v2i1:115; GFX8:       ; %bb.0:116; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x24117; GFX8-NEXT:    s_waitcnt lgkmcnt(0)118; GFX8-NEXT:    v_mov_b32_e32 v0, s2119; GFX8-NEXT:    v_mov_b32_e32 v1, s3120; GFX8-NEXT:    flat_load_ubyte v2, v[0:1]121; GFX8-NEXT:    v_mov_b32_e32 v0, s0122; GFX8-NEXT:    v_mov_b32_e32 v1, s1123; GFX8-NEXT:    s_waitcnt vmcnt(0)124; GFX8-NEXT:    flat_store_byte v[0:1], v2125; GFX8-NEXT:    s_endpgm126;127; EG-LABEL: constant_load_v2i1:128; EG:       ; %bb.0:129; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]130; EG-NEXT:    TEX 0 @6131; EG-NEXT:    ALU 11, @9, KC0[CB0:0-32], KC1[]132; EG-NEXT:    MEM_RAT MSKOR T0.XW, T1.X133; EG-NEXT:    CF_END134; EG-NEXT:    PAD135; EG-NEXT:    Fetch clause starting at 6:136; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #1137; EG-NEXT:    ALU clause starting at 8:138; EG-NEXT:     MOV * T0.X, KC0[2].Z,139; EG-NEXT:    ALU clause starting at 9:140; EG-NEXT:     AND_INT T0.W, KC0[2].Y, literal.x,141; EG-NEXT:     AND_INT * T1.W, T0.X, literal.x,142; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)143; EG-NEXT:     LSHL * T0.W, PV.W, literal.x,144; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)145; EG-NEXT:     LSHL T0.X, T1.W, PV.W,146; EG-NEXT:     LSHL * T0.W, literal.x, PV.W,147; EG-NEXT:    255(3.573311e-43), 0(0.000000e+00)148; EG-NEXT:     MOV T0.Y, 0.0,149; EG-NEXT:     MOV * T0.Z, 0.0,150; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,151; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)152;153; GFX12-LABEL: constant_load_v2i1:154; GFX12:       ; %bb.0:155; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24156; GFX12-NEXT:    v_mov_b32_e32 v0, 0157; GFX12-NEXT:    s_wait_kmcnt 0x0158; GFX12-NEXT:    global_load_u8 v1, v0, s[2:3]159; GFX12-NEXT:    s_wait_loadcnt 0x0160; GFX12-NEXT:    global_store_b8 v0, v1, s[0:1]161; GFX12-NEXT:    s_endpgm162;163; GFX1250-LABEL: constant_load_v2i1:164; GFX1250:       ; %bb.0:165; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 1166; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24167; GFX1250-NEXT:    v_mov_b32_e32 v0, 0168; GFX1250-NEXT:    s_wait_kmcnt 0x0169; GFX1250-NEXT:    global_load_u8 v1, v0, s[2:3]170; GFX1250-NEXT:    s_wait_loadcnt 0x0171; GFX1250-NEXT:    global_store_b8 v0, v1, s[0:1]172; GFX1250-NEXT:    s_endpgm173  %load = load <2 x i1>, ptr addrspace(4) %in174  store <2 x i1> %load, ptr addrspace(1) %out175  ret void176}177 178define amdgpu_kernel void @constant_load_v3i1(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {179; GFX6-LABEL: constant_load_v3i1:180; GFX6:       ; %bb.0:181; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x9182; GFX6-NEXT:    s_mov_b32 s7, 0xf000183; GFX6-NEXT:    s_mov_b32 s6, -1184; GFX6-NEXT:    s_mov_b32 s10, s6185; GFX6-NEXT:    s_mov_b32 s11, s7186; GFX6-NEXT:    s_waitcnt lgkmcnt(0)187; GFX6-NEXT:    s_mov_b32 s8, s2188; GFX6-NEXT:    s_mov_b32 s9, s3189; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 0190; GFX6-NEXT:    s_mov_b32 s4, s0191; GFX6-NEXT:    s_mov_b32 s5, s1192; GFX6-NEXT:    s_waitcnt vmcnt(0)193; GFX6-NEXT:    buffer_store_byte v0, off, s[4:7], 0194; GFX6-NEXT:    s_endpgm195;196; GFX8-LABEL: constant_load_v3i1:197; GFX8:       ; %bb.0:198; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x24199; GFX8-NEXT:    s_waitcnt lgkmcnt(0)200; GFX8-NEXT:    v_mov_b32_e32 v0, s2201; GFX8-NEXT:    v_mov_b32_e32 v1, s3202; GFX8-NEXT:    flat_load_ubyte v2, v[0:1]203; GFX8-NEXT:    v_mov_b32_e32 v0, s0204; GFX8-NEXT:    v_mov_b32_e32 v1, s1205; GFX8-NEXT:    s_waitcnt vmcnt(0)206; GFX8-NEXT:    flat_store_byte v[0:1], v2207; GFX8-NEXT:    s_endpgm208;209; EG-LABEL: constant_load_v3i1:210; EG:       ; %bb.0:211; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]212; EG-NEXT:    TEX 0 @6213; EG-NEXT:    ALU 10, @9, KC0[CB0:0-32], KC1[]214; EG-NEXT:    MEM_RAT MSKOR T0.XW, T1.X215; EG-NEXT:    CF_END216; EG-NEXT:    PAD217; EG-NEXT:    Fetch clause starting at 6:218; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #1219; EG-NEXT:    ALU clause starting at 8:220; EG-NEXT:     MOV * T0.X, KC0[2].Z,221; EG-NEXT:    ALU clause starting at 9:222; EG-NEXT:     AND_INT * T0.W, KC0[2].Y, literal.x,223; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)224; EG-NEXT:     LSHL * T0.W, PV.W, literal.x,225; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)226; EG-NEXT:     LSHL T0.X, T0.X, PV.W,227; EG-NEXT:     LSHL * T0.W, literal.x, PV.W,228; EG-NEXT:    255(3.573311e-43), 0(0.000000e+00)229; EG-NEXT:     MOV T0.Y, 0.0,230; EG-NEXT:     MOV * T0.Z, 0.0,231; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,232; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)233;234; GFX12-LABEL: constant_load_v3i1:235; GFX12:       ; %bb.0:236; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24237; GFX12-NEXT:    v_mov_b32_e32 v0, 0238; GFX12-NEXT:    s_wait_kmcnt 0x0239; GFX12-NEXT:    global_load_u8 v1, v0, s[2:3]240; GFX12-NEXT:    s_wait_loadcnt 0x0241; GFX12-NEXT:    global_store_b8 v0, v1, s[0:1]242; GFX12-NEXT:    s_endpgm243;244; GFX1250-LABEL: constant_load_v3i1:245; GFX1250:       ; %bb.0:246; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 1247; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24248; GFX1250-NEXT:    v_mov_b32_e32 v0, 0249; GFX1250-NEXT:    s_wait_kmcnt 0x0250; GFX1250-NEXT:    global_load_u8 v1, v0, s[2:3]251; GFX1250-NEXT:    s_wait_loadcnt 0x0252; GFX1250-NEXT:    global_store_b8 v0, v1, s[0:1]253; GFX1250-NEXT:    s_endpgm254  %load = load <3 x i1>, ptr addrspace(4) %in255  store <3 x i1> %load, ptr addrspace(1) %out256  ret void257}258 259define amdgpu_kernel void @constant_load_v4i1(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {260; GFX6-LABEL: constant_load_v4i1:261; GFX6:       ; %bb.0:262; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x9263; GFX6-NEXT:    s_mov_b32 s7, 0xf000264; GFX6-NEXT:    s_mov_b32 s6, -1265; GFX6-NEXT:    s_mov_b32 s10, s6266; GFX6-NEXT:    s_mov_b32 s11, s7267; GFX6-NEXT:    s_waitcnt lgkmcnt(0)268; GFX6-NEXT:    s_mov_b32 s8, s2269; GFX6-NEXT:    s_mov_b32 s9, s3270; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 0271; GFX6-NEXT:    s_mov_b32 s4, s0272; GFX6-NEXT:    s_mov_b32 s5, s1273; GFX6-NEXT:    s_waitcnt vmcnt(0)274; GFX6-NEXT:    buffer_store_byte v0, off, s[4:7], 0275; GFX6-NEXT:    s_endpgm276;277; GFX8-LABEL: constant_load_v4i1:278; GFX8:       ; %bb.0:279; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x24280; GFX8-NEXT:    s_waitcnt lgkmcnt(0)281; GFX8-NEXT:    v_mov_b32_e32 v0, s2282; GFX8-NEXT:    v_mov_b32_e32 v1, s3283; GFX8-NEXT:    flat_load_ubyte v2, v[0:1]284; GFX8-NEXT:    v_mov_b32_e32 v0, s0285; GFX8-NEXT:    v_mov_b32_e32 v1, s1286; GFX8-NEXT:    s_waitcnt vmcnt(0)287; GFX8-NEXT:    flat_store_byte v[0:1], v2288; GFX8-NEXT:    s_endpgm289;290; EG-LABEL: constant_load_v4i1:291; EG:       ; %bb.0:292; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]293; EG-NEXT:    TEX 0 @6294; EG-NEXT:    ALU 11, @9, KC0[CB0:0-32], KC1[]295; EG-NEXT:    MEM_RAT MSKOR T0.XW, T1.X296; EG-NEXT:    CF_END297; EG-NEXT:    PAD298; EG-NEXT:    Fetch clause starting at 6:299; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #1300; EG-NEXT:    ALU clause starting at 8:301; EG-NEXT:     MOV * T0.X, KC0[2].Z,302; EG-NEXT:    ALU clause starting at 9:303; EG-NEXT:     AND_INT T0.W, KC0[2].Y, literal.x,304; EG-NEXT:     AND_INT * T1.W, T0.X, literal.y,305; EG-NEXT:    3(4.203895e-45), 15(2.101948e-44)306; EG-NEXT:     LSHL * T0.W, PV.W, literal.x,307; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)308; EG-NEXT:     LSHL T0.X, T1.W, PV.W,309; EG-NEXT:     LSHL * T0.W, literal.x, PV.W,310; EG-NEXT:    255(3.573311e-43), 0(0.000000e+00)311; EG-NEXT:     MOV T0.Y, 0.0,312; EG-NEXT:     MOV * T0.Z, 0.0,313; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,314; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)315;316; GFX12-LABEL: constant_load_v4i1:317; GFX12:       ; %bb.0:318; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24319; GFX12-NEXT:    v_mov_b32_e32 v0, 0320; GFX12-NEXT:    s_wait_kmcnt 0x0321; GFX12-NEXT:    global_load_u8 v1, v0, s[2:3]322; GFX12-NEXT:    s_wait_loadcnt 0x0323; GFX12-NEXT:    global_store_b8 v0, v1, s[0:1]324; GFX12-NEXT:    s_endpgm325;326; GFX1250-LABEL: constant_load_v4i1:327; GFX1250:       ; %bb.0:328; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 1329; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24330; GFX1250-NEXT:    v_mov_b32_e32 v0, 0331; GFX1250-NEXT:    s_wait_kmcnt 0x0332; GFX1250-NEXT:    global_load_u8 v1, v0, s[2:3]333; GFX1250-NEXT:    s_wait_loadcnt 0x0334; GFX1250-NEXT:    global_store_b8 v0, v1, s[0:1]335; GFX1250-NEXT:    s_endpgm336  %load = load <4 x i1>, ptr addrspace(4) %in337  store <4 x i1> %load, ptr addrspace(1) %out338  ret void339}340 341define amdgpu_kernel void @constant_load_v8i1(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {342; GFX6-LABEL: constant_load_v8i1:343; GFX6:       ; %bb.0:344; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x9345; GFX6-NEXT:    s_mov_b32 s7, 0xf000346; GFX6-NEXT:    s_mov_b32 s6, -1347; GFX6-NEXT:    s_mov_b32 s10, s6348; GFX6-NEXT:    s_mov_b32 s11, s7349; GFX6-NEXT:    s_waitcnt lgkmcnt(0)350; GFX6-NEXT:    s_mov_b32 s8, s2351; GFX6-NEXT:    s_mov_b32 s9, s3352; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 0353; GFX6-NEXT:    s_mov_b32 s4, s0354; GFX6-NEXT:    s_mov_b32 s5, s1355; GFX6-NEXT:    s_waitcnt vmcnt(0)356; GFX6-NEXT:    buffer_store_byte v0, off, s[4:7], 0357; GFX6-NEXT:    s_endpgm358;359; GFX8-LABEL: constant_load_v8i1:360; GFX8:       ; %bb.0:361; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x24362; GFX8-NEXT:    s_waitcnt lgkmcnt(0)363; GFX8-NEXT:    v_mov_b32_e32 v0, s2364; GFX8-NEXT:    v_mov_b32_e32 v1, s3365; GFX8-NEXT:    flat_load_ubyte v2, v[0:1]366; GFX8-NEXT:    v_mov_b32_e32 v0, s0367; GFX8-NEXT:    v_mov_b32_e32 v1, s1368; GFX8-NEXT:    s_waitcnt vmcnt(0)369; GFX8-NEXT:    flat_store_byte v[0:1], v2370; GFX8-NEXT:    s_endpgm371;372; EG-LABEL: constant_load_v8i1:373; EG:       ; %bb.0:374; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]375; EG-NEXT:    TEX 0 @6376; EG-NEXT:    ALU 11, @9, KC0[CB0:0-32], KC1[]377; EG-NEXT:    MEM_RAT MSKOR T0.XW, T1.X378; EG-NEXT:    CF_END379; EG-NEXT:    PAD380; EG-NEXT:    Fetch clause starting at 6:381; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #1382; EG-NEXT:    ALU clause starting at 8:383; EG-NEXT:     MOV * T0.X, KC0[2].Z,384; EG-NEXT:    ALU clause starting at 9:385; EG-NEXT:     AND_INT T0.W, KC0[2].Y, literal.x,386; EG-NEXT:     AND_INT * T1.W, T0.X, literal.y,387; EG-NEXT:    3(4.203895e-45), 255(3.573311e-43)388; EG-NEXT:     LSHL * T0.W, PV.W, literal.x,389; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)390; EG-NEXT:     LSHL T0.X, T1.W, PV.W,391; EG-NEXT:     LSHL * T0.W, literal.x, PV.W,392; EG-NEXT:    255(3.573311e-43), 0(0.000000e+00)393; EG-NEXT:     MOV T0.Y, 0.0,394; EG-NEXT:     MOV * T0.Z, 0.0,395; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,396; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)397;398; GFX12-LABEL: constant_load_v8i1:399; GFX12:       ; %bb.0:400; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24401; GFX12-NEXT:    v_mov_b32_e32 v0, 0402; GFX12-NEXT:    s_wait_kmcnt 0x0403; GFX12-NEXT:    global_load_u8 v1, v0, s[2:3]404; GFX12-NEXT:    s_wait_loadcnt 0x0405; GFX12-NEXT:    global_store_b8 v0, v1, s[0:1]406; GFX12-NEXT:    s_endpgm407;408; GFX1250-LABEL: constant_load_v8i1:409; GFX1250:       ; %bb.0:410; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 1411; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24412; GFX1250-NEXT:    v_mov_b32_e32 v0, 0413; GFX1250-NEXT:    s_wait_kmcnt 0x0414; GFX1250-NEXT:    global_load_u8 v1, v0, s[2:3]415; GFX1250-NEXT:    s_wait_loadcnt 0x0416; GFX1250-NEXT:    global_store_b8 v0, v1, s[0:1]417; GFX1250-NEXT:    s_endpgm418  %load = load <8 x i1>, ptr addrspace(4) %in419  store <8 x i1> %load, ptr addrspace(1) %out420  ret void421}422 423define amdgpu_kernel void @constant_load_v16i1(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {424; GFX6-LABEL: constant_load_v16i1:425; GFX6:       ; %bb.0:426; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x9427; GFX6-NEXT:    s_mov_b32 s7, 0xf000428; GFX6-NEXT:    s_mov_b32 s6, -1429; GFX6-NEXT:    s_mov_b32 s10, s6430; GFX6-NEXT:    s_mov_b32 s11, s7431; GFX6-NEXT:    s_waitcnt lgkmcnt(0)432; GFX6-NEXT:    s_mov_b32 s8, s2433; GFX6-NEXT:    s_mov_b32 s9, s3434; GFX6-NEXT:    buffer_load_ushort v0, off, s[8:11], 0435; GFX6-NEXT:    s_mov_b32 s4, s0436; GFX6-NEXT:    s_mov_b32 s5, s1437; GFX6-NEXT:    s_waitcnt vmcnt(0)438; GFX6-NEXT:    buffer_store_short v0, off, s[4:7], 0439; GFX6-NEXT:    s_endpgm440;441; GFX8-LABEL: constant_load_v16i1:442; GFX8:       ; %bb.0:443; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x24444; GFX8-NEXT:    s_waitcnt lgkmcnt(0)445; GFX8-NEXT:    v_mov_b32_e32 v0, s2446; GFX8-NEXT:    v_mov_b32_e32 v1, s3447; GFX8-NEXT:    flat_load_ushort v2, v[0:1]448; GFX8-NEXT:    v_mov_b32_e32 v0, s0449; GFX8-NEXT:    v_mov_b32_e32 v1, s1450; GFX8-NEXT:    s_waitcnt vmcnt(0)451; GFX8-NEXT:    flat_store_short v[0:1], v2452; GFX8-NEXT:    s_endpgm453;454; EG-LABEL: constant_load_v16i1:455; EG:       ; %bb.0:456; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]457; EG-NEXT:    TEX 0 @6458; EG-NEXT:    ALU 11, @9, KC0[CB0:0-32], KC1[]459; EG-NEXT:    MEM_RAT MSKOR T0.XW, T1.X460; EG-NEXT:    CF_END461; EG-NEXT:    PAD462; EG-NEXT:    Fetch clause starting at 6:463; EG-NEXT:     VTX_READ_16 T0.X, T0.X, 0, #1464; EG-NEXT:    ALU clause starting at 8:465; EG-NEXT:     MOV * T0.X, KC0[2].Z,466; EG-NEXT:    ALU clause starting at 9:467; EG-NEXT:     AND_INT T0.W, KC0[2].Y, literal.x,468; EG-NEXT:     AND_INT * T1.W, T0.X, literal.y,469; EG-NEXT:    3(4.203895e-45), 65535(9.183409e-41)470; EG-NEXT:     LSHL * T0.W, PV.W, literal.x,471; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)472; EG-NEXT:     LSHL T0.X, T1.W, PV.W,473; EG-NEXT:     LSHL * T0.W, literal.x, PV.W,474; EG-NEXT:    65535(9.183409e-41), 0(0.000000e+00)475; EG-NEXT:     MOV T0.Y, 0.0,476; EG-NEXT:     MOV * T0.Z, 0.0,477; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,478; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)479;480; GFX12-LABEL: constant_load_v16i1:481; GFX12:       ; %bb.0:482; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24483; GFX12-NEXT:    v_mov_b32_e32 v0, 0484; GFX12-NEXT:    s_wait_kmcnt 0x0485; GFX12-NEXT:    global_load_u16 v1, v0, s[2:3]486; GFX12-NEXT:    s_wait_loadcnt 0x0487; GFX12-NEXT:    global_store_b16 v0, v1, s[0:1]488; GFX12-NEXT:    s_endpgm489;490; GFX1250-LABEL: constant_load_v16i1:491; GFX1250:       ; %bb.0:492; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 1493; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24494; GFX1250-NEXT:    v_mov_b32_e32 v0, 0495; GFX1250-NEXT:    s_wait_kmcnt 0x0496; GFX1250-NEXT:    global_load_u16 v1, v0, s[2:3]497; GFX1250-NEXT:    s_wait_loadcnt 0x0498; GFX1250-NEXT:    global_store_b16 v0, v1, s[0:1]499; GFX1250-NEXT:    s_endpgm500  %load = load <16 x i1>, ptr addrspace(4) %in501  store <16 x i1> %load, ptr addrspace(1) %out502  ret void503}504 505define amdgpu_kernel void @constant_load_v32i1(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {506; GFX6-LABEL: constant_load_v32i1:507; GFX6:       ; %bb.0:508; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x9509; GFX6-NEXT:    s_waitcnt lgkmcnt(0)510; GFX6-NEXT:    s_load_dword s4, s[2:3], 0x0511; GFX6-NEXT:    s_mov_b32 s3, 0xf000512; GFX6-NEXT:    s_mov_b32 s2, -1513; GFX6-NEXT:    s_waitcnt lgkmcnt(0)514; GFX6-NEXT:    v_mov_b32_e32 v0, s4515; GFX6-NEXT:    buffer_store_dword v0, off, s[0:3], 0516; GFX6-NEXT:    s_endpgm517;518; GFX8-LABEL: constant_load_v32i1:519; GFX8:       ; %bb.0:520; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x24521; GFX8-NEXT:    s_waitcnt lgkmcnt(0)522; GFX8-NEXT:    s_load_dword s2, s[2:3], 0x0523; GFX8-NEXT:    v_mov_b32_e32 v0, s0524; GFX8-NEXT:    v_mov_b32_e32 v1, s1525; GFX8-NEXT:    s_waitcnt lgkmcnt(0)526; GFX8-NEXT:    v_mov_b32_e32 v2, s2527; GFX8-NEXT:    flat_store_dword v[0:1], v2528; GFX8-NEXT:    s_endpgm529;530; EG-LABEL: constant_load_v32i1:531; EG:       ; %bb.0:532; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]533; EG-NEXT:    TEX 0 @6534; EG-NEXT:    ALU 1, @9, KC0[CB0:0-32], KC1[]535; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.X, T1.X, 1536; EG-NEXT:    CF_END537; EG-NEXT:    PAD538; EG-NEXT:    Fetch clause starting at 6:539; EG-NEXT:     VTX_READ_32 T0.X, T0.X, 0, #1540; EG-NEXT:    ALU clause starting at 8:541; EG-NEXT:     MOV * T0.X, KC0[2].Z,542; EG-NEXT:    ALU clause starting at 9:543; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,544; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)545;546; GFX12-LABEL: constant_load_v32i1:547; GFX12:       ; %bb.0:548; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24549; GFX12-NEXT:    s_wait_kmcnt 0x0550; GFX12-NEXT:    s_load_b32 s2, s[2:3], 0x0551; GFX12-NEXT:    s_wait_kmcnt 0x0552; GFX12-NEXT:    v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, s2553; GFX12-NEXT:    global_store_b32 v0, v1, s[0:1]554; GFX12-NEXT:    s_endpgm555;556; GFX1250-LABEL: constant_load_v32i1:557; GFX1250:       ; %bb.0:558; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 1559; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24560; GFX1250-NEXT:    s_wait_kmcnt 0x0561; GFX1250-NEXT:    s_load_b32 s2, s[2:3], 0x0562; GFX1250-NEXT:    s_wait_kmcnt 0x0563; GFX1250-NEXT:    v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, s2564; GFX1250-NEXT:    global_store_b32 v0, v1, s[0:1]565; GFX1250-NEXT:    s_endpgm566  %load = load <32 x i1>, ptr addrspace(4) %in567  store <32 x i1> %load, ptr addrspace(1) %out568  ret void569}570 571define amdgpu_kernel void @constant_load_v64i1(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {572; GFX6-LABEL: constant_load_v64i1:573; GFX6:       ; %bb.0:574; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x9575; GFX6-NEXT:    s_waitcnt lgkmcnt(0)576; GFX6-NEXT:    s_load_dwordx2 s[4:5], s[2:3], 0x0577; GFX6-NEXT:    s_mov_b32 s3, 0xf000578; GFX6-NEXT:    s_mov_b32 s2, -1579; GFX6-NEXT:    s_waitcnt lgkmcnt(0)580; GFX6-NEXT:    v_mov_b32_e32 v0, s4581; GFX6-NEXT:    v_mov_b32_e32 v1, s5582; GFX6-NEXT:    buffer_store_dwordx2 v[0:1], off, s[0:3], 0583; GFX6-NEXT:    s_endpgm584;585; GFX8-LABEL: constant_load_v64i1:586; GFX8:       ; %bb.0:587; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x24588; GFX8-NEXT:    s_waitcnt lgkmcnt(0)589; GFX8-NEXT:    s_load_dwordx2 s[2:3], s[2:3], 0x0590; GFX8-NEXT:    v_mov_b32_e32 v0, s0591; GFX8-NEXT:    v_mov_b32_e32 v1, s1592; GFX8-NEXT:    s_waitcnt lgkmcnt(0)593; GFX8-NEXT:    v_mov_b32_e32 v2, s2594; GFX8-NEXT:    v_mov_b32_e32 v3, s3595; GFX8-NEXT:    flat_store_dwordx2 v[0:1], v[2:3]596; GFX8-NEXT:    s_endpgm597;598; EG-LABEL: constant_load_v64i1:599; EG:       ; %bb.0:600; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]601; EG-NEXT:    TEX 0 @6602; EG-NEXT:    ALU 1, @9, KC0[CB0:0-32], KC1[]603; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1604; EG-NEXT:    CF_END605; EG-NEXT:    PAD606; EG-NEXT:    Fetch clause starting at 6:607; EG-NEXT:     VTX_READ_64 T0.XY, T0.X, 0, #1608; EG-NEXT:    ALU clause starting at 8:609; EG-NEXT:     MOV * T0.X, KC0[2].Z,610; EG-NEXT:    ALU clause starting at 9:611; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,612; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)613;614; GFX12-LABEL: constant_load_v64i1:615; GFX12:       ; %bb.0:616; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24617; GFX12-NEXT:    s_wait_kmcnt 0x0618; GFX12-NEXT:    s_load_b64 s[2:3], s[2:3], 0x0619; GFX12-NEXT:    v_mov_b32_e32 v2, 0620; GFX12-NEXT:    s_wait_kmcnt 0x0621; GFX12-NEXT:    v_dual_mov_b32 v0, s2 :: v_dual_mov_b32 v1, s3622; GFX12-NEXT:    global_store_b64 v2, v[0:1], s[0:1]623; GFX12-NEXT:    s_endpgm624;625; GFX1250-LABEL: constant_load_v64i1:626; GFX1250:       ; %bb.0:627; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 1628; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24629; GFX1250-NEXT:    v_mov_b32_e32 v2, 0630; GFX1250-NEXT:    s_wait_kmcnt 0x0631; GFX1250-NEXT:    s_load_b64 s[2:3], s[2:3], 0x0632; GFX1250-NEXT:    s_wait_kmcnt 0x0633; GFX1250-NEXT:    v_mov_b64_e32 v[0:1], s[2:3]634; GFX1250-NEXT:    global_store_b64 v2, v[0:1], s[0:1]635; GFX1250-NEXT:    s_endpgm636  %load = load <64 x i1>, ptr addrspace(4) %in637  store <64 x i1> %load, ptr addrspace(1) %out638  ret void639}640 641define amdgpu_kernel void @constant_zextload_i1_to_i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {642; GFX6-LABEL: constant_zextload_i1_to_i32:643; GFX6:       ; %bb.0:644; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x9645; GFX6-NEXT:    s_mov_b32 s7, 0xf000646; GFX6-NEXT:    s_mov_b32 s6, -1647; GFX6-NEXT:    s_mov_b32 s10, s6648; GFX6-NEXT:    s_mov_b32 s11, s7649; GFX6-NEXT:    s_waitcnt lgkmcnt(0)650; GFX6-NEXT:    s_mov_b32 s8, s2651; GFX6-NEXT:    s_mov_b32 s9, s3652; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 0653; GFX6-NEXT:    s_mov_b32 s4, s0654; GFX6-NEXT:    s_mov_b32 s5, s1655; GFX6-NEXT:    s_waitcnt vmcnt(0)656; GFX6-NEXT:    buffer_store_dword v0, off, s[4:7], 0657; GFX6-NEXT:    s_endpgm658;659; GFX8-LABEL: constant_zextload_i1_to_i32:660; GFX8:       ; %bb.0:661; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x24662; GFX8-NEXT:    s_waitcnt lgkmcnt(0)663; GFX8-NEXT:    v_mov_b32_e32 v0, s2664; GFX8-NEXT:    v_mov_b32_e32 v1, s3665; GFX8-NEXT:    flat_load_ubyte v2, v[0:1]666; GFX8-NEXT:    v_mov_b32_e32 v0, s0667; GFX8-NEXT:    v_mov_b32_e32 v1, s1668; GFX8-NEXT:    s_waitcnt vmcnt(0)669; GFX8-NEXT:    flat_store_dword v[0:1], v2670; GFX8-NEXT:    s_endpgm671;672; EG-LABEL: constant_zextload_i1_to_i32:673; EG:       ; %bb.0:674; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]675; EG-NEXT:    TEX 0 @6676; EG-NEXT:    ALU 1, @9, KC0[CB0:0-32], KC1[]677; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.X, T1.X, 1678; EG-NEXT:    CF_END679; EG-NEXT:    PAD680; EG-NEXT:    Fetch clause starting at 6:681; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #1682; EG-NEXT:    ALU clause starting at 8:683; EG-NEXT:     MOV * T0.X, KC0[2].Z,684; EG-NEXT:    ALU clause starting at 9:685; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,686; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)687;688; GFX12-LABEL: constant_zextload_i1_to_i32:689; GFX12:       ; %bb.0:690; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24691; GFX12-NEXT:    s_wait_kmcnt 0x0692; GFX12-NEXT:    s_load_u8 s2, s[2:3], 0x0693; GFX12-NEXT:    s_wait_kmcnt 0x0694; GFX12-NEXT:    v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, s2695; GFX12-NEXT:    global_store_b32 v0, v1, s[0:1]696; GFX12-NEXT:    s_endpgm697;698; GFX1250-LABEL: constant_zextload_i1_to_i32:699; GFX1250:       ; %bb.0:700; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 1701; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24702; GFX1250-NEXT:    s_wait_kmcnt 0x0703; GFX1250-NEXT:    s_load_u8 s2, s[2:3], 0x0704; GFX1250-NEXT:    s_wait_kmcnt 0x0705; GFX1250-NEXT:    v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, s2706; GFX1250-NEXT:    global_store_b32 v0, v1, s[0:1]707; GFX1250-NEXT:    s_endpgm708  %a = load i1, ptr addrspace(4) %in709  %ext = zext i1 %a to i32710  store i32 %ext, ptr addrspace(1) %out711  ret void712}713 714define amdgpu_kernel void @constant_sextload_i1_to_i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {715; GFX6-LABEL: constant_sextload_i1_to_i32:716; GFX6:       ; %bb.0:717; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x9718; GFX6-NEXT:    s_mov_b32 s7, 0xf000719; GFX6-NEXT:    s_mov_b32 s6, -1720; GFX6-NEXT:    s_mov_b32 s10, s6721; GFX6-NEXT:    s_mov_b32 s11, s7722; GFX6-NEXT:    s_waitcnt lgkmcnt(0)723; GFX6-NEXT:    s_mov_b32 s8, s2724; GFX6-NEXT:    s_mov_b32 s9, s3725; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 0726; GFX6-NEXT:    s_mov_b32 s4, s0727; GFX6-NEXT:    s_mov_b32 s5, s1728; GFX6-NEXT:    s_waitcnt vmcnt(0)729; GFX6-NEXT:    v_bfe_i32 v0, v0, 0, 1730; GFX6-NEXT:    buffer_store_dword v0, off, s[4:7], 0731; GFX6-NEXT:    s_endpgm732;733; GFX8-LABEL: constant_sextload_i1_to_i32:734; GFX8:       ; %bb.0:735; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x24736; GFX8-NEXT:    s_waitcnt lgkmcnt(0)737; GFX8-NEXT:    v_mov_b32_e32 v0, s2738; GFX8-NEXT:    v_mov_b32_e32 v1, s3739; GFX8-NEXT:    flat_load_ubyte v2, v[0:1]740; GFX8-NEXT:    v_mov_b32_e32 v0, s0741; GFX8-NEXT:    v_mov_b32_e32 v1, s1742; GFX8-NEXT:    s_waitcnt vmcnt(0)743; GFX8-NEXT:    v_bfe_i32 v2, v2, 0, 1744; GFX8-NEXT:    flat_store_dword v[0:1], v2745; GFX8-NEXT:    s_endpgm746;747; EG-LABEL: constant_sextload_i1_to_i32:748; EG:       ; %bb.0:749; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]750; EG-NEXT:    TEX 0 @6751; EG-NEXT:    ALU 2, @9, KC0[CB0:0-32], KC1[]752; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.X, T1.X, 1753; EG-NEXT:    CF_END754; EG-NEXT:    PAD755; EG-NEXT:    Fetch clause starting at 6:756; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #1757; EG-NEXT:    ALU clause starting at 8:758; EG-NEXT:     MOV * T0.X, KC0[2].Z,759; EG-NEXT:    ALU clause starting at 9:760; EG-NEXT:     BFE_INT T0.X, T0.X, 0.0, 1,761; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,762; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)763;764; GFX12-LABEL: constant_sextload_i1_to_i32:765; GFX12:       ; %bb.0:766; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24767; GFX12-NEXT:    s_wait_kmcnt 0x0768; GFX12-NEXT:    s_load_u8 s2, s[2:3], 0x0769; GFX12-NEXT:    s_wait_kmcnt 0x0770; GFX12-NEXT:    s_bfe_i32 s2, s2, 0x10000771; GFX12-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)772; GFX12-NEXT:    v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, s2773; GFX12-NEXT:    global_store_b32 v0, v1, s[0:1]774; GFX12-NEXT:    s_endpgm775;776; GFX1250-LABEL: constant_sextload_i1_to_i32:777; GFX1250:       ; %bb.0:778; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 1779; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24780; GFX1250-NEXT:    s_wait_kmcnt 0x0781; GFX1250-NEXT:    s_load_u8 s2, s[2:3], 0x0782; GFX1250-NEXT:    s_wait_kmcnt 0x0783; GFX1250-NEXT:    s_bfe_i32 s2, s2, 0x10000784; GFX1250-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)785; GFX1250-NEXT:    v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, s2786; GFX1250-NEXT:    global_store_b32 v0, v1, s[0:1]787; GFX1250-NEXT:    s_endpgm788  %a = load i1, ptr addrspace(4) %in789  %ext = sext i1 %a to i32790  store i32 %ext, ptr addrspace(1) %out791  ret void792}793 794define amdgpu_kernel void @constant_zextload_v1i1_to_v1i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {795; GFX6-LABEL: constant_zextload_v1i1_to_v1i32:796; GFX6:       ; %bb.0:797; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x9798; GFX6-NEXT:    s_mov_b32 s7, 0xf000799; GFX6-NEXT:    s_mov_b32 s6, -1800; GFX6-NEXT:    s_mov_b32 s10, s6801; GFX6-NEXT:    s_mov_b32 s11, s7802; GFX6-NEXT:    s_waitcnt lgkmcnt(0)803; GFX6-NEXT:    s_mov_b32 s8, s2804; GFX6-NEXT:    s_mov_b32 s9, s3805; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 0806; GFX6-NEXT:    s_mov_b32 s4, s0807; GFX6-NEXT:    s_mov_b32 s5, s1808; GFX6-NEXT:    s_waitcnt vmcnt(0)809; GFX6-NEXT:    buffer_store_dword v0, off, s[4:7], 0810; GFX6-NEXT:    s_endpgm811;812; GFX8-LABEL: constant_zextload_v1i1_to_v1i32:813; GFX8:       ; %bb.0:814; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x24815; GFX8-NEXT:    s_waitcnt lgkmcnt(0)816; GFX8-NEXT:    v_mov_b32_e32 v0, s2817; GFX8-NEXT:    v_mov_b32_e32 v1, s3818; GFX8-NEXT:    flat_load_ubyte v2, v[0:1]819; GFX8-NEXT:    v_mov_b32_e32 v0, s0820; GFX8-NEXT:    v_mov_b32_e32 v1, s1821; GFX8-NEXT:    s_waitcnt vmcnt(0)822; GFX8-NEXT:    flat_store_dword v[0:1], v2823; GFX8-NEXT:    s_endpgm824;825; EG-LABEL: constant_zextload_v1i1_to_v1i32:826; EG:       ; %bb.0:827; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]828; EG-NEXT:    TEX 0 @6829; EG-NEXT:    ALU 1, @9, KC0[CB0:0-32], KC1[]830; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.X, T1.X, 1831; EG-NEXT:    CF_END832; EG-NEXT:    PAD833; EG-NEXT:    Fetch clause starting at 6:834; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #1835; EG-NEXT:    ALU clause starting at 8:836; EG-NEXT:     MOV * T0.X, KC0[2].Z,837; EG-NEXT:    ALU clause starting at 9:838; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,839; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)840;841; GFX12-LABEL: constant_zextload_v1i1_to_v1i32:842; GFX12:       ; %bb.0:843; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24844; GFX12-NEXT:    s_wait_kmcnt 0x0845; GFX12-NEXT:    s_load_u8 s2, s[2:3], 0x0846; GFX12-NEXT:    s_wait_kmcnt 0x0847; GFX12-NEXT:    v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, s2848; GFX12-NEXT:    global_store_b32 v0, v1, s[0:1]849; GFX12-NEXT:    s_endpgm850;851; GFX1250-LABEL: constant_zextload_v1i1_to_v1i32:852; GFX1250:       ; %bb.0:853; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 1854; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24855; GFX1250-NEXT:    s_wait_kmcnt 0x0856; GFX1250-NEXT:    s_load_u8 s2, s[2:3], 0x0857; GFX1250-NEXT:    s_wait_kmcnt 0x0858; GFX1250-NEXT:    v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, s2859; GFX1250-NEXT:    global_store_b32 v0, v1, s[0:1]860; GFX1250-NEXT:    s_endpgm861  %load = load <1 x i1>, ptr addrspace(4) %in862  %ext = zext <1 x i1> %load to <1 x i32>863  store <1 x i32> %ext, ptr addrspace(1) %out864  ret void865}866 867define amdgpu_kernel void @constant_sextload_v1i1_to_v1i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {868; GFX6-LABEL: constant_sextload_v1i1_to_v1i32:869; GFX6:       ; %bb.0:870; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x9871; GFX6-NEXT:    s_mov_b32 s7, 0xf000872; GFX6-NEXT:    s_mov_b32 s6, -1873; GFX6-NEXT:    s_mov_b32 s10, s6874; GFX6-NEXT:    s_mov_b32 s11, s7875; GFX6-NEXT:    s_waitcnt lgkmcnt(0)876; GFX6-NEXT:    s_mov_b32 s8, s2877; GFX6-NEXT:    s_mov_b32 s9, s3878; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 0879; GFX6-NEXT:    s_mov_b32 s4, s0880; GFX6-NEXT:    s_mov_b32 s5, s1881; GFX6-NEXT:    s_waitcnt vmcnt(0)882; GFX6-NEXT:    v_bfe_i32 v0, v0, 0, 1883; GFX6-NEXT:    buffer_store_dword v0, off, s[4:7], 0884; GFX6-NEXT:    s_endpgm885;886; GFX8-LABEL: constant_sextload_v1i1_to_v1i32:887; GFX8:       ; %bb.0:888; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x24889; GFX8-NEXT:    s_waitcnt lgkmcnt(0)890; GFX8-NEXT:    v_mov_b32_e32 v0, s2891; GFX8-NEXT:    v_mov_b32_e32 v1, s3892; GFX8-NEXT:    flat_load_ubyte v2, v[0:1]893; GFX8-NEXT:    v_mov_b32_e32 v0, s0894; GFX8-NEXT:    v_mov_b32_e32 v1, s1895; GFX8-NEXT:    s_waitcnt vmcnt(0)896; GFX8-NEXT:    v_bfe_i32 v2, v2, 0, 1897; GFX8-NEXT:    flat_store_dword v[0:1], v2898; GFX8-NEXT:    s_endpgm899;900; EG-LABEL: constant_sextload_v1i1_to_v1i32:901; EG:       ; %bb.0:902; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]903; EG-NEXT:    TEX 0 @6904; EG-NEXT:    ALU 2, @9, KC0[CB0:0-32], KC1[]905; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.X, T1.X, 1906; EG-NEXT:    CF_END907; EG-NEXT:    PAD908; EG-NEXT:    Fetch clause starting at 6:909; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #1910; EG-NEXT:    ALU clause starting at 8:911; EG-NEXT:     MOV * T0.X, KC0[2].Z,912; EG-NEXT:    ALU clause starting at 9:913; EG-NEXT:     BFE_INT T0.X, T0.X, 0.0, 1,914; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,915; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)916;917; GFX12-LABEL: constant_sextload_v1i1_to_v1i32:918; GFX12:       ; %bb.0:919; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24920; GFX12-NEXT:    s_wait_kmcnt 0x0921; GFX12-NEXT:    s_load_u8 s2, s[2:3], 0x0922; GFX12-NEXT:    s_wait_kmcnt 0x0923; GFX12-NEXT:    s_bfe_i32 s2, s2, 0x10000924; GFX12-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)925; GFX12-NEXT:    v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, s2926; GFX12-NEXT:    global_store_b32 v0, v1, s[0:1]927; GFX12-NEXT:    s_endpgm928;929; GFX1250-LABEL: constant_sextload_v1i1_to_v1i32:930; GFX1250:       ; %bb.0:931; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 1932; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24933; GFX1250-NEXT:    s_wait_kmcnt 0x0934; GFX1250-NEXT:    s_load_u8 s2, s[2:3], 0x0935; GFX1250-NEXT:    s_wait_kmcnt 0x0936; GFX1250-NEXT:    s_bfe_i32 s2, s2, 0x10000937; GFX1250-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)938; GFX1250-NEXT:    v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, s2939; GFX1250-NEXT:    global_store_b32 v0, v1, s[0:1]940; GFX1250-NEXT:    s_endpgm941  %load = load <1 x i1>, ptr addrspace(4) %in942  %ext = sext <1 x i1> %load to <1 x i32>943  store <1 x i32> %ext, ptr addrspace(1) %out944  ret void945}946 947define amdgpu_kernel void @constant_zextload_v2i1_to_v2i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {948; GFX6-LABEL: constant_zextload_v2i1_to_v2i32:949; GFX6:       ; %bb.0:950; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x9951; GFX6-NEXT:    s_mov_b32 s7, 0xf000952; GFX6-NEXT:    s_mov_b32 s6, -1953; GFX6-NEXT:    s_mov_b32 s10, s6954; GFX6-NEXT:    s_mov_b32 s11, s7955; GFX6-NEXT:    s_waitcnt lgkmcnt(0)956; GFX6-NEXT:    s_mov_b32 s8, s2957; GFX6-NEXT:    s_mov_b32 s9, s3958; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 0959; GFX6-NEXT:    s_mov_b32 s4, s0960; GFX6-NEXT:    s_mov_b32 s5, s1961; GFX6-NEXT:    s_waitcnt vmcnt(0)962; GFX6-NEXT:    v_lshrrev_b32_e32 v1, 1, v0963; GFX6-NEXT:    v_and_b32_e32 v0, 1, v0964; GFX6-NEXT:    buffer_store_dwordx2 v[0:1], off, s[4:7], 0965; GFX6-NEXT:    s_endpgm966;967; GFX8-LABEL: constant_zextload_v2i1_to_v2i32:968; GFX8:       ; %bb.0:969; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x24970; GFX8-NEXT:    v_mov_b32_e32 v3, 1971; GFX8-NEXT:    s_waitcnt lgkmcnt(0)972; GFX8-NEXT:    v_mov_b32_e32 v0, s2973; GFX8-NEXT:    v_mov_b32_e32 v1, s3974; GFX8-NEXT:    flat_load_ubyte v2, v[0:1]975; GFX8-NEXT:    v_mov_b32_e32 v0, s0976; GFX8-NEXT:    v_mov_b32_e32 v1, s1977; GFX8-NEXT:    s_waitcnt vmcnt(0)978; GFX8-NEXT:    v_lshrrev_b32_sdwa v3, v3, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:WORD_0979; GFX8-NEXT:    v_and_b32_e32 v2, 1, v2980; GFX8-NEXT:    flat_store_dwordx2 v[0:1], v[2:3]981; GFX8-NEXT:    s_endpgm982;983; EG-LABEL: constant_zextload_v2i1_to_v2i32:984; EG:       ; %bb.0:985; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]986; EG-NEXT:    TEX 0 @6987; EG-NEXT:    ALU 3, @9, KC0[CB0:0-32], KC1[]988; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 1989; EG-NEXT:    CF_END990; EG-NEXT:    PAD991; EG-NEXT:    Fetch clause starting at 6:992; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #1993; EG-NEXT:    ALU clause starting at 8:994; EG-NEXT:     MOV * T0.X, KC0[2].Z,995; EG-NEXT:    ALU clause starting at 9:996; EG-NEXT:     BFE_UINT * T0.Y, T0.X, 1, 1,997; EG-NEXT:     AND_INT T0.X, T0.X, 1,998; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,999; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)1000;1001; GFX12-LABEL: constant_zextload_v2i1_to_v2i32:1002; GFX12:       ; %bb.0:1003; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241004; GFX12-NEXT:    v_mov_b32_e32 v2, 01005; GFX12-NEXT:    s_wait_kmcnt 0x01006; GFX12-NEXT:    global_load_u8 v0, v2, s[2:3]1007; GFX12-NEXT:    s_wait_loadcnt 0x01008; GFX12-NEXT:    v_and_b32_e32 v1, 0xffff, v01009; GFX12-NEXT:    v_and_b32_e32 v0, 1, v01010; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_2)1011; GFX12-NEXT:    v_lshrrev_b32_e32 v1, 1, v11012; GFX12-NEXT:    global_store_b64 v2, v[0:1], s[0:1]1013; GFX12-NEXT:    s_endpgm1014;1015; GFX1250-LABEL: constant_zextload_v2i1_to_v2i32:1016; GFX1250:       ; %bb.0:1017; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 11018; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241019; GFX1250-NEXT:    v_mov_b32_e32 v2, 01020; GFX1250-NEXT:    s_wait_kmcnt 0x01021; GFX1250-NEXT:    global_load_u8 v0, v2, s[2:3]1022; GFX1250-NEXT:    s_wait_loadcnt 0x01023; GFX1250-NEXT:    v_and_b32_e32 v1, 0xffff, v01024; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_1)1025; GFX1250-NEXT:    v_dual_lshrrev_b32 v1, 1, v1 :: v_dual_bitop2_b32 v0, 1, v0 bitop3:0x401026; GFX1250-NEXT:    global_store_b64 v2, v[0:1], s[0:1]1027; GFX1250-NEXT:    s_endpgm1028  %load = load <2 x i1>, ptr addrspace(4) %in1029  %ext = zext <2 x i1> %load to <2 x i32>1030  store <2 x i32> %ext, ptr addrspace(1) %out1031  ret void1032}1033 1034define amdgpu_kernel void @constant_sextload_v2i1_to_v2i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {1035; GFX6-LABEL: constant_sextload_v2i1_to_v2i32:1036; GFX6:       ; %bb.0:1037; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x91038; GFX6-NEXT:    s_mov_b32 s7, 0xf0001039; GFX6-NEXT:    s_mov_b32 s6, -11040; GFX6-NEXT:    s_mov_b32 s10, s61041; GFX6-NEXT:    s_mov_b32 s11, s71042; GFX6-NEXT:    s_waitcnt lgkmcnt(0)1043; GFX6-NEXT:    s_mov_b32 s8, s21044; GFX6-NEXT:    s_mov_b32 s9, s31045; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 01046; GFX6-NEXT:    s_mov_b32 s4, s01047; GFX6-NEXT:    s_mov_b32 s5, s11048; GFX6-NEXT:    s_waitcnt vmcnt(0)1049; GFX6-NEXT:    v_bfe_i32 v1, v0, 1, 11050; GFX6-NEXT:    v_bfe_i32 v0, v0, 0, 11051; GFX6-NEXT:    buffer_store_dwordx2 v[0:1], off, s[4:7], 01052; GFX6-NEXT:    s_endpgm1053;1054; GFX8-LABEL: constant_sextload_v2i1_to_v2i32:1055; GFX8:       ; %bb.0:1056; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x241057; GFX8-NEXT:    s_waitcnt lgkmcnt(0)1058; GFX8-NEXT:    v_mov_b32_e32 v0, s21059; GFX8-NEXT:    v_mov_b32_e32 v1, s31060; GFX8-NEXT:    flat_load_ubyte v2, v[0:1]1061; GFX8-NEXT:    v_mov_b32_e32 v0, s01062; GFX8-NEXT:    v_mov_b32_e32 v1, s11063; GFX8-NEXT:    s_waitcnt vmcnt(0)1064; GFX8-NEXT:    v_bfe_i32 v3, v2, 1, 11065; GFX8-NEXT:    v_bfe_i32 v2, v2, 0, 11066; GFX8-NEXT:    flat_store_dwordx2 v[0:1], v[2:3]1067; GFX8-NEXT:    s_endpgm1068;1069; EG-LABEL: constant_sextload_v2i1_to_v2i32:1070; EG:       ; %bb.0:1071; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]1072; EG-NEXT:    TEX 0 @61073; EG-NEXT:    ALU 4, @9, KC0[CB0:0-32], KC1[]1074; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T1.XY, T0.X, 11075; EG-NEXT:    CF_END1076; EG-NEXT:    PAD1077; EG-NEXT:    Fetch clause starting at 6:1078; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #11079; EG-NEXT:    ALU clause starting at 8:1080; EG-NEXT:     MOV * T0.X, KC0[2].Z,1081; EG-NEXT:    ALU clause starting at 9:1082; EG-NEXT:     BFE_INT T1.X, T0.X, 0.0, 1,1083; EG-NEXT:     LSHR T0.W, T0.X, 1,1084; EG-NEXT:     LSHR * T0.X, KC0[2].Y, literal.x,1085; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)1086; EG-NEXT:     BFE_INT * T1.Y, PV.W, 0.0, 1,1087;1088; GFX12-LABEL: constant_sextload_v2i1_to_v2i32:1089; GFX12:       ; %bb.0:1090; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241091; GFX12-NEXT:    s_wait_kmcnt 0x01092; GFX12-NEXT:    s_load_u8 s2, s[2:3], 0x01093; GFX12-NEXT:    s_wait_kmcnt 0x01094; GFX12-NEXT:    s_bfe_i32 s3, s2, 0x100001095; GFX12-NEXT:    s_bfe_i32 s2, s2, 0x100011096; GFX12-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)1097; GFX12-NEXT:    v_dual_mov_b32 v2, 0 :: v_dual_mov_b32 v1, s21098; GFX12-NEXT:    v_mov_b32_e32 v0, s31099; GFX12-NEXT:    global_store_b64 v2, v[0:1], s[0:1]1100; GFX12-NEXT:    s_endpgm1101;1102; GFX1250-LABEL: constant_sextload_v2i1_to_v2i32:1103; GFX1250:       ; %bb.0:1104; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 11105; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241106; GFX1250-NEXT:    s_wait_kmcnt 0x01107; GFX1250-NEXT:    s_load_u8 s2, s[2:3], 0x01108; GFX1250-NEXT:    s_wait_kmcnt 0x01109; GFX1250-NEXT:    s_bfe_i32 s3, s2, 0x100001110; GFX1250-NEXT:    s_bfe_i32 s2, s2, 0x100011111; GFX1250-NEXT:    v_dual_mov_b32 v2, 0 :: v_dual_mov_b32 v0, s31112; GFX1250-NEXT:    v_mov_b32_e32 v1, s21113; GFX1250-NEXT:    global_store_b64 v2, v[0:1], s[0:1]1114; GFX1250-NEXT:    s_endpgm1115  %load = load <2 x i1>, ptr addrspace(4) %in1116  %ext = sext <2 x i1> %load to <2 x i32>1117  store <2 x i32> %ext, ptr addrspace(1) %out1118  ret void1119}1120 1121define amdgpu_kernel void @constant_zextload_v3i1_to_v3i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {1122; GFX6-LABEL: constant_zextload_v3i1_to_v3i32:1123; GFX6:       ; %bb.0:1124; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x91125; GFX6-NEXT:    s_mov_b32 s7, 0xf0001126; GFX6-NEXT:    s_mov_b32 s6, -11127; GFX6-NEXT:    s_mov_b32 s10, s61128; GFX6-NEXT:    s_mov_b32 s11, s71129; GFX6-NEXT:    s_waitcnt lgkmcnt(0)1130; GFX6-NEXT:    s_mov_b32 s8, s21131; GFX6-NEXT:    s_mov_b32 s9, s31132; GFX6-NEXT:    buffer_load_ubyte v2, off, s[8:11], 01133; GFX6-NEXT:    s_mov_b32 s4, s01134; GFX6-NEXT:    s_mov_b32 s5, s11135; GFX6-NEXT:    s_waitcnt vmcnt(0)1136; GFX6-NEXT:    v_and_b32_e32 v0, 1, v21137; GFX6-NEXT:    v_bfe_u32 v1, v2, 1, 11138; GFX6-NEXT:    v_lshrrev_b32_e32 v2, 2, v21139; GFX6-NEXT:    buffer_store_dword v2, off, s[4:7], 0 offset:81140; GFX6-NEXT:    buffer_store_dwordx2 v[0:1], off, s[4:7], 01141; GFX6-NEXT:    s_endpgm1142;1143; GFX8-LABEL: constant_zextload_v3i1_to_v3i32:1144; GFX8:       ; %bb.0:1145; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x241146; GFX8-NEXT:    s_waitcnt lgkmcnt(0)1147; GFX8-NEXT:    v_mov_b32_e32 v0, s21148; GFX8-NEXT:    v_mov_b32_e32 v1, s31149; GFX8-NEXT:    flat_load_ubyte v1, v[0:1]1150; GFX8-NEXT:    v_mov_b32_e32 v0, 21151; GFX8-NEXT:    v_mov_b32_e32 v3, s01152; GFX8-NEXT:    v_mov_b32_e32 v4, s11153; GFX8-NEXT:    s_waitcnt vmcnt(0)1154; GFX8-NEXT:    v_lshrrev_b32_sdwa v2, v0, v1 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:WORD_01155; GFX8-NEXT:    v_and_b32_e32 v0, 1, v11156; GFX8-NEXT:    v_bfe_u32 v1, v1, 1, 11157; GFX8-NEXT:    flat_store_dwordx3 v[3:4], v[0:2]1158; GFX8-NEXT:    s_endpgm1159;1160; EG-LABEL: constant_zextload_v3i1_to_v3i32:1161; EG:       ; %bb.0:1162; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]1163; EG-NEXT:    TEX 0 @61164; EG-NEXT:    ALU 8, @9, KC0[CB0:0-32], KC1[]1165; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.X, T3.X, 01166; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T1.XY, T2.X, 11167; EG-NEXT:    CF_END1168; EG-NEXT:    Fetch clause starting at 6:1169; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #11170; EG-NEXT:    ALU clause starting at 8:1171; EG-NEXT:     MOV * T0.X, KC0[2].Z,1172; EG-NEXT:    ALU clause starting at 9:1173; EG-NEXT:     BFE_UINT * T1.Y, T0.X, 1, 1,1174; EG-NEXT:     AND_INT T1.X, T0.X, 1,1175; EG-NEXT:     LSHR * T2.X, KC0[2].Y, literal.x,1176; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)1177; EG-NEXT:     LSHR T0.X, T0.X, literal.x,1178; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,1179; EG-NEXT:    2(2.802597e-45), 8(1.121039e-44)1180; EG-NEXT:     LSHR * T3.X, PV.W, literal.x,1181; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)1182;1183; GFX12-LABEL: constant_zextload_v3i1_to_v3i32:1184; GFX12:       ; %bb.0:1185; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241186; GFX12-NEXT:    v_mov_b32_e32 v3, 01187; GFX12-NEXT:    s_wait_kmcnt 0x01188; GFX12-NEXT:    global_load_u8 v1, v3, s[2:3]1189; GFX12-NEXT:    s_wait_loadcnt 0x01190; GFX12-NEXT:    v_and_b32_e32 v0, 0xffff, v11191; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_2) | instid1(VALU_DEP_3)1192; GFX12-NEXT:    v_lshrrev_b32_e32 v2, 2, v01193; GFX12-NEXT:    v_and_b32_e32 v0, 1, v11194; GFX12-NEXT:    v_bfe_u32 v1, v1, 1, 11195; GFX12-NEXT:    v_and_b32_e32 v2, 0xffff, v21196; GFX12-NEXT:    global_store_b96 v3, v[0:2], s[0:1]1197; GFX12-NEXT:    s_endpgm1198;1199; GFX1250-LABEL: constant_zextload_v3i1_to_v3i32:1200; GFX1250:       ; %bb.0:1201; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 11202; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241203; GFX1250-NEXT:    v_mov_b32_e32 v3, 01204; GFX1250-NEXT:    s_wait_kmcnt 0x01205; GFX1250-NEXT:    global_load_u8 v1, v3, s[2:3]1206; GFX1250-NEXT:    s_wait_loadcnt 0x01207; GFX1250-NEXT:    v_and_b32_e32 v0, 0xffff, v11208; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_2)1209; GFX1250-NEXT:    v_dual_lshrrev_b32 v2, 2, v0 :: v_dual_bitop2_b32 v0, 1, v1 bitop3:0x401210; GFX1250-NEXT:    v_bfe_u32 v1, v1, 1, 11211; GFX1250-NEXT:    v_and_b32_e32 v2, 0xffff, v21212; GFX1250-NEXT:    global_store_b96 v3, v[0:2], s[0:1]1213; GFX1250-NEXT:    s_endpgm1214  %load = load <3 x i1>, ptr addrspace(4) %in1215  %ext = zext <3 x i1> %load to <3 x i32>1216  store <3 x i32> %ext, ptr addrspace(1) %out1217  ret void1218}1219 1220define amdgpu_kernel void @constant_sextload_v3i1_to_v3i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {1221; GFX6-LABEL: constant_sextload_v3i1_to_v3i32:1222; GFX6:       ; %bb.0:1223; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x91224; GFX6-NEXT:    s_mov_b32 s7, 0xf0001225; GFX6-NEXT:    s_mov_b32 s6, -11226; GFX6-NEXT:    s_mov_b32 s10, s61227; GFX6-NEXT:    s_mov_b32 s11, s71228; GFX6-NEXT:    s_waitcnt lgkmcnt(0)1229; GFX6-NEXT:    s_mov_b32 s8, s21230; GFX6-NEXT:    s_mov_b32 s9, s31231; GFX6-NEXT:    buffer_load_ubyte v2, off, s[8:11], 01232; GFX6-NEXT:    s_mov_b32 s4, s01233; GFX6-NEXT:    s_mov_b32 s5, s11234; GFX6-NEXT:    s_waitcnt vmcnt(0)1235; GFX6-NEXT:    v_bfe_i32 v1, v2, 1, 11236; GFX6-NEXT:    v_bfe_i32 v0, v2, 0, 11237; GFX6-NEXT:    v_bfe_i32 v2, v2, 2, 11238; GFX6-NEXT:    buffer_store_dword v2, off, s[4:7], 0 offset:81239; GFX6-NEXT:    buffer_store_dwordx2 v[0:1], off, s[4:7], 01240; GFX6-NEXT:    s_endpgm1241;1242; GFX8-LABEL: constant_sextload_v3i1_to_v3i32:1243; GFX8:       ; %bb.0:1244; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x241245; GFX8-NEXT:    s_waitcnt lgkmcnt(0)1246; GFX8-NEXT:    v_mov_b32_e32 v0, s21247; GFX8-NEXT:    v_mov_b32_e32 v1, s31248; GFX8-NEXT:    flat_load_ubyte v0, v[0:1]1249; GFX8-NEXT:    v_mov_b32_e32 v3, s01250; GFX8-NEXT:    v_mov_b32_e32 v4, s11251; GFX8-NEXT:    s_waitcnt vmcnt(0)1252; GFX8-NEXT:    v_bfe_i32 v2, v0, 2, 11253; GFX8-NEXT:    v_bfe_i32 v1, v0, 1, 11254; GFX8-NEXT:    v_bfe_i32 v0, v0, 0, 11255; GFX8-NEXT:    flat_store_dwordx3 v[3:4], v[0:2]1256; GFX8-NEXT:    s_endpgm1257;1258; EG-LABEL: constant_sextload_v3i1_to_v3i32:1259; EG:       ; %bb.0:1260; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]1261; EG-NEXT:    TEX 0 @61262; EG-NEXT:    ALU 10, @9, KC0[CB0:0-32], KC1[]1263; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T2.X, T0.X, 01264; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T3.XY, T1.X, 11265; EG-NEXT:    CF_END1266; EG-NEXT:    Fetch clause starting at 6:1267; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #11268; EG-NEXT:    ALU clause starting at 8:1269; EG-NEXT:     MOV * T0.X, KC0[2].Z,1270; EG-NEXT:    ALU clause starting at 9:1271; EG-NEXT:     LSHR T1.X, KC0[2].Y, literal.x,1272; EG-NEXT:     LSHR * T0.W, T0.X, literal.x,1273; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)1274; EG-NEXT:     BFE_INT * T2.X, PV.W, 0.0, 1,1275; EG-NEXT:     BFE_INT T3.X, T0.X, 0.0, 1,1276; EG-NEXT:     LSHR T0.W, T0.X, 1,1277; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.x,1278; EG-NEXT:    8(1.121039e-44), 0(0.000000e+00)1279; EG-NEXT:     LSHR T0.X, PS, literal.x,1280; EG-NEXT:     BFE_INT * T3.Y, PV.W, 0.0, 1,1281; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)1282;1283; GFX12-LABEL: constant_sextload_v3i1_to_v3i32:1284; GFX12:       ; %bb.0:1285; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241286; GFX12-NEXT:    s_wait_kmcnt 0x01287; GFX12-NEXT:    s_load_u8 s2, s[2:3], 0x01288; GFX12-NEXT:    s_wait_kmcnt 0x01289; GFX12-NEXT:    s_bfe_i32 s3, s2, 0x100021290; GFX12-NEXT:    s_bfe_i32 s4, s2, 0x100001291; GFX12-NEXT:    s_bfe_i32 s2, s2, 0x100011292; GFX12-NEXT:    v_dual_mov_b32 v3, 0 :: v_dual_mov_b32 v0, s41293; GFX12-NEXT:    v_dual_mov_b32 v1, s2 :: v_dual_mov_b32 v2, s31294; GFX12-NEXT:    global_store_b96 v3, v[0:2], s[0:1]1295; GFX12-NEXT:    s_endpgm1296;1297; GFX1250-LABEL: constant_sextload_v3i1_to_v3i32:1298; GFX1250:       ; %bb.0:1299; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 11300; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241301; GFX1250-NEXT:    s_wait_kmcnt 0x01302; GFX1250-NEXT:    s_load_u8 s2, s[2:3], 0x01303; GFX1250-NEXT:    s_wait_kmcnt 0x01304; GFX1250-NEXT:    s_bfe_i32 s3, s2, 0x100021305; GFX1250-NEXT:    s_bfe_i32 s4, s2, 0x100001306; GFX1250-NEXT:    s_bfe_i32 s2, s2, 0x100011307; GFX1250-NEXT:    v_dual_mov_b32 v3, 0 :: v_dual_mov_b32 v0, s41308; GFX1250-NEXT:    v_dual_mov_b32 v1, s2 :: v_dual_mov_b32 v2, s31309; GFX1250-NEXT:    global_store_b96 v3, v[0:2], s[0:1]1310; GFX1250-NEXT:    s_endpgm1311  %load = load <3 x i1>, ptr addrspace(4) %in1312  %ext = sext <3 x i1> %load to <3 x i32>1313  store <3 x i32> %ext, ptr addrspace(1) %out1314  ret void1315}1316 1317define amdgpu_kernel void @constant_zextload_v4i1_to_v4i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {1318; GFX6-LABEL: constant_zextload_v4i1_to_v4i32:1319; GFX6:       ; %bb.0:1320; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x91321; GFX6-NEXT:    s_mov_b32 s7, 0xf0001322; GFX6-NEXT:    s_mov_b32 s6, -11323; GFX6-NEXT:    s_mov_b32 s10, s61324; GFX6-NEXT:    s_mov_b32 s11, s71325; GFX6-NEXT:    s_waitcnt lgkmcnt(0)1326; GFX6-NEXT:    s_mov_b32 s8, s21327; GFX6-NEXT:    s_mov_b32 s9, s31328; GFX6-NEXT:    buffer_load_ubyte v1, off, s[8:11], 01329; GFX6-NEXT:    s_mov_b32 s4, s01330; GFX6-NEXT:    s_mov_b32 s5, s11331; GFX6-NEXT:    s_waitcnt vmcnt(0)1332; GFX6-NEXT:    v_lshrrev_b32_e32 v3, 3, v11333; GFX6-NEXT:    v_and_b32_e32 v0, 1, v11334; GFX6-NEXT:    v_bfe_u32 v2, v1, 2, 11335; GFX6-NEXT:    v_bfe_u32 v1, v1, 1, 11336; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[4:7], 01337; GFX6-NEXT:    s_endpgm1338;1339; GFX8-LABEL: constant_zextload_v4i1_to_v4i32:1340; GFX8:       ; %bb.0:1341; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x241342; GFX8-NEXT:    s_waitcnt lgkmcnt(0)1343; GFX8-NEXT:    v_mov_b32_e32 v0, s21344; GFX8-NEXT:    v_mov_b32_e32 v1, s31345; GFX8-NEXT:    flat_load_ubyte v1, v[0:1]1346; GFX8-NEXT:    v_mov_b32_e32 v0, 31347; GFX8-NEXT:    v_mov_b32_e32 v4, s01348; GFX8-NEXT:    v_mov_b32_e32 v5, s11349; GFX8-NEXT:    s_waitcnt vmcnt(0)1350; GFX8-NEXT:    v_lshrrev_b32_sdwa v3, v0, v1 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:WORD_01351; GFX8-NEXT:    v_and_b32_e32 v0, 1, v11352; GFX8-NEXT:    v_bfe_u32 v2, v1, 2, 11353; GFX8-NEXT:    v_bfe_u32 v1, v1, 1, 11354; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]1355; GFX8-NEXT:    s_endpgm1356;1357; EG-LABEL: constant_zextload_v4i1_to_v4i32:1358; EG:       ; %bb.0:1359; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]1360; EG-NEXT:    TEX 0 @61361; EG-NEXT:    ALU 7, @9, KC0[CB0:0-32], KC1[]1362; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.XYZW, T1.X, 11363; EG-NEXT:    CF_END1364; EG-NEXT:    PAD1365; EG-NEXT:    Fetch clause starting at 6:1366; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #11367; EG-NEXT:    ALU clause starting at 8:1368; EG-NEXT:     MOV * T0.X, KC0[2].Z,1369; EG-NEXT:    ALU clause starting at 9:1370; EG-NEXT:     BFE_UINT * T0.W, T0.X, literal.x, 1,1371; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)1372; EG-NEXT:     BFE_UINT * T0.Z, T0.X, literal.x, 1,1373; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)1374; EG-NEXT:     BFE_UINT * T0.Y, T0.X, 1, 1,1375; EG-NEXT:     AND_INT T0.X, T0.X, 1,1376; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,1377; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)1378;1379; GFX12-LABEL: constant_zextload_v4i1_to_v4i32:1380; GFX12:       ; %bb.0:1381; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241382; GFX12-NEXT:    v_mov_b32_e32 v4, 01383; GFX12-NEXT:    s_wait_kmcnt 0x01384; GFX12-NEXT:    global_load_u8 v1, v4, s[2:3]1385; GFX12-NEXT:    s_wait_loadcnt 0x01386; GFX12-NEXT:    v_and_b32_e32 v3, 0xffff, v11387; GFX12-NEXT:    v_and_b32_e32 v0, 1, v11388; GFX12-NEXT:    v_bfe_u32 v2, v1, 2, 11389; GFX12-NEXT:    v_bfe_u32 v1, v1, 1, 11390; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_4)1391; GFX12-NEXT:    v_lshrrev_b32_e32 v3, 3, v31392; GFX12-NEXT:    global_store_b128 v4, v[0:3], s[0:1]1393; GFX12-NEXT:    s_endpgm1394;1395; GFX1250-LABEL: constant_zextload_v4i1_to_v4i32:1396; GFX1250:       ; %bb.0:1397; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 11398; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241399; GFX1250-NEXT:    v_mov_b32_e32 v4, 01400; GFX1250-NEXT:    s_wait_kmcnt 0x01401; GFX1250-NEXT:    global_load_u8 v1, v4, s[2:3]1402; GFX1250-NEXT:    s_wait_loadcnt 0x01403; GFX1250-NEXT:    v_and_b32_e32 v3, 0xffff, v11404; GFX1250-NEXT:    v_and_b32_e32 v0, 1, v11405; GFX1250-NEXT:    v_bfe_u32 v2, v1, 2, 11406; GFX1250-NEXT:    v_bfe_u32 v1, v1, 1, 11407; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_4)1408; GFX1250-NEXT:    v_lshrrev_b32_e32 v3, 3, v31409; GFX1250-NEXT:    global_store_b128 v4, v[0:3], s[0:1]1410; GFX1250-NEXT:    s_endpgm1411  %load = load <4 x i1>, ptr addrspace(4) %in1412  %ext = zext <4 x i1> %load to <4 x i32>1413  store <4 x i32> %ext, ptr addrspace(1) %out1414  ret void1415}1416 1417define amdgpu_kernel void @constant_sextload_v4i1_to_v4i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {1418; GFX6-LABEL: constant_sextload_v4i1_to_v4i32:1419; GFX6:       ; %bb.0:1420; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x91421; GFX6-NEXT:    s_mov_b32 s7, 0xf0001422; GFX6-NEXT:    s_mov_b32 s6, -11423; GFX6-NEXT:    s_mov_b32 s10, s61424; GFX6-NEXT:    s_mov_b32 s11, s71425; GFX6-NEXT:    s_waitcnt lgkmcnt(0)1426; GFX6-NEXT:    s_mov_b32 s8, s21427; GFX6-NEXT:    s_mov_b32 s9, s31428; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 01429; GFX6-NEXT:    s_mov_b32 s4, s01430; GFX6-NEXT:    s_mov_b32 s5, s11431; GFX6-NEXT:    s_waitcnt vmcnt(0)1432; GFX6-NEXT:    v_bfe_i32 v3, v0, 3, 11433; GFX6-NEXT:    v_bfe_i32 v2, v0, 2, 11434; GFX6-NEXT:    v_bfe_i32 v1, v0, 1, 11435; GFX6-NEXT:    v_bfe_i32 v0, v0, 0, 11436; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[4:7], 01437; GFX6-NEXT:    s_endpgm1438;1439; GFX8-LABEL: constant_sextload_v4i1_to_v4i32:1440; GFX8:       ; %bb.0:1441; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x241442; GFX8-NEXT:    s_waitcnt lgkmcnt(0)1443; GFX8-NEXT:    v_mov_b32_e32 v0, s21444; GFX8-NEXT:    v_mov_b32_e32 v1, s31445; GFX8-NEXT:    flat_load_ubyte v0, v[0:1]1446; GFX8-NEXT:    v_mov_b32_e32 v4, s01447; GFX8-NEXT:    v_mov_b32_e32 v5, s11448; GFX8-NEXT:    s_waitcnt vmcnt(0)1449; GFX8-NEXT:    v_bfe_i32 v3, v0, 3, 11450; GFX8-NEXT:    v_bfe_i32 v2, v0, 2, 11451; GFX8-NEXT:    v_bfe_i32 v1, v0, 1, 11452; GFX8-NEXT:    v_bfe_i32 v0, v0, 0, 11453; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]1454; GFX8-NEXT:    s_endpgm1455;1456; EG-LABEL: constant_sextload_v4i1_to_v4i32:1457; EG:       ; %bb.0:1458; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]1459; EG-NEXT:    TEX 0 @61460; EG-NEXT:    ALU 10, @9, KC0[CB0:0-32], KC1[]1461; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T1.XYZW, T0.X, 11462; EG-NEXT:    CF_END1463; EG-NEXT:    PAD1464; EG-NEXT:    Fetch clause starting at 6:1465; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #11466; EG-NEXT:    ALU clause starting at 8:1467; EG-NEXT:     MOV * T0.X, KC0[2].Z,1468; EG-NEXT:    ALU clause starting at 9:1469; EG-NEXT:     BFE_INT T1.X, T0.X, 0.0, 1,1470; EG-NEXT:     LSHR * T0.W, T0.X, literal.x,1471; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)1472; EG-NEXT:     BFE_INT T1.W, PV.W, 0.0, 1,1473; EG-NEXT:     LSHR * T0.W, T0.X, literal.x,1474; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)1475; EG-NEXT:     BFE_INT T1.Z, PS, 0.0, 1,1476; EG-NEXT:     LSHR * T0.W, T0.X, 1,1477; EG-NEXT:     LSHR T0.X, KC0[2].Y, literal.x,1478; EG-NEXT:     BFE_INT * T1.Y, PV.W, 0.0, 1,1479; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)1480;1481; GFX12-LABEL: constant_sextload_v4i1_to_v4i32:1482; GFX12:       ; %bb.0:1483; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241484; GFX12-NEXT:    s_wait_kmcnt 0x01485; GFX12-NEXT:    s_load_u8 s2, s[2:3], 0x01486; GFX12-NEXT:    s_wait_kmcnt 0x01487; GFX12-NEXT:    s_bfe_i32 s3, s2, 0x100031488; GFX12-NEXT:    s_bfe_i32 s4, s2, 0x100021489; GFX12-NEXT:    s_bfe_i32 s5, s2, 0x100001490; GFX12-NEXT:    s_bfe_i32 s2, s2, 0x100011491; GFX12-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)1492; GFX12-NEXT:    v_dual_mov_b32 v4, 0 :: v_dual_mov_b32 v1, s21493; GFX12-NEXT:    v_dual_mov_b32 v0, s5 :: v_dual_mov_b32 v3, s31494; GFX12-NEXT:    v_mov_b32_e32 v2, s41495; GFX12-NEXT:    global_store_b128 v4, v[0:3], s[0:1]1496; GFX12-NEXT:    s_endpgm1497;1498; GFX1250-LABEL: constant_sextload_v4i1_to_v4i32:1499; GFX1250:       ; %bb.0:1500; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 11501; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241502; GFX1250-NEXT:    s_wait_kmcnt 0x01503; GFX1250-NEXT:    s_load_u8 s2, s[2:3], 0x01504; GFX1250-NEXT:    s_wait_kmcnt 0x01505; GFX1250-NEXT:    s_bfe_i32 s3, s2, 0x100031506; GFX1250-NEXT:    s_bfe_i32 s4, s2, 0x100021507; GFX1250-NEXT:    s_bfe_i32 s5, s2, 0x100001508; GFX1250-NEXT:    s_bfe_i32 s2, s2, 0x100011509; GFX1250-NEXT:    v_dual_mov_b32 v4, 0 :: v_dual_mov_b32 v0, s51510; GFX1250-NEXT:    v_dual_mov_b32 v1, s2 :: v_dual_mov_b32 v2, s41511; GFX1250-NEXT:    v_mov_b32_e32 v3, s31512; GFX1250-NEXT:    global_store_b128 v4, v[0:3], s[0:1]1513; GFX1250-NEXT:    s_endpgm1514  %load = load <4 x i1>, ptr addrspace(4) %in1515  %ext = sext <4 x i1> %load to <4 x i32>1516  store <4 x i32> %ext, ptr addrspace(1) %out1517  ret void1518}1519 1520define amdgpu_kernel void @constant_zextload_v8i1_to_v8i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {1521; GFX6-LABEL: constant_zextload_v8i1_to_v8i32:1522; GFX6:       ; %bb.0:1523; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x91524; GFX6-NEXT:    s_mov_b32 s7, 0xf0001525; GFX6-NEXT:    s_mov_b32 s6, -11526; GFX6-NEXT:    s_mov_b32 s10, s61527; GFX6-NEXT:    s_mov_b32 s11, s71528; GFX6-NEXT:    s_waitcnt lgkmcnt(0)1529; GFX6-NEXT:    s_mov_b32 s8, s21530; GFX6-NEXT:    s_mov_b32 s9, s31531; GFX6-NEXT:    buffer_load_ubyte v4, off, s[8:11], 01532; GFX6-NEXT:    s_mov_b32 s4, s01533; GFX6-NEXT:    s_mov_b32 s5, s11534; GFX6-NEXT:    s_waitcnt vmcnt(0)1535; GFX6-NEXT:    v_bfe_u32 v3, v4, 3, 11536; GFX6-NEXT:    v_bfe_u32 v1, v4, 1, 11537; GFX6-NEXT:    v_lshrrev_b32_e32 v7, 7, v41538; GFX6-NEXT:    v_bfe_u32 v5, v4, 5, 11539; GFX6-NEXT:    v_and_b32_e32 v0, 1, v41540; GFX6-NEXT:    v_bfe_u32 v2, v4, 2, 11541; GFX6-NEXT:    v_bfe_u32 v6, v4, 6, 11542; GFX6-NEXT:    v_bfe_u32 v4, v4, 4, 11543; GFX6-NEXT:    buffer_store_dwordx4 v[4:7], off, s[4:7], 0 offset:161544; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[4:7], 01545; GFX6-NEXT:    s_endpgm1546;1547; GFX8-LABEL: constant_zextload_v8i1_to_v8i32:1548; GFX8:       ; %bb.0:1549; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x241550; GFX8-NEXT:    s_waitcnt lgkmcnt(0)1551; GFX8-NEXT:    v_mov_b32_e32 v0, s21552; GFX8-NEXT:    v_mov_b32_e32 v1, s31553; GFX8-NEXT:    flat_load_ubyte v0, v[0:1]1554; GFX8-NEXT:    v_mov_b32_e32 v9, s11555; GFX8-NEXT:    v_mov_b32_e32 v8, s01556; GFX8-NEXT:    s_waitcnt vmcnt(0)1557; GFX8-NEXT:    v_readfirstlane_b32 s2, v01558; GFX8-NEXT:    s_bfe_u32 s3, s2, 0x100031559; GFX8-NEXT:    s_bfe_u32 s4, s2, 0x100011560; GFX8-NEXT:    s_bfe_u32 s5, s2, 0x100051561; GFX8-NEXT:    s_and_b32 s6, s2, 11562; GFX8-NEXT:    s_bfe_u32 s7, s2, 0x100021563; GFX8-NEXT:    s_bfe_u32 s2, s2, 0x100041564; GFX8-NEXT:    s_add_u32 s0, s0, 161565; GFX8-NEXT:    s_addc_u32 s1, s1, 01566; GFX8-NEXT:    v_and_b32_e32 v0, 0xffff, v01567; GFX8-NEXT:    v_mov_b32_e32 v11, s11568; GFX8-NEXT:    v_lshrrev_b32_e32 v3, 7, v01569; GFX8-NEXT:    v_bfe_u32 v2, v0, 6, 11570; GFX8-NEXT:    v_mov_b32_e32 v0, s21571; GFX8-NEXT:    v_mov_b32_e32 v1, s51572; GFX8-NEXT:    v_mov_b32_e32 v10, s01573; GFX8-NEXT:    v_mov_b32_e32 v4, s61574; GFX8-NEXT:    v_mov_b32_e32 v5, s41575; GFX8-NEXT:    v_mov_b32_e32 v6, s71576; GFX8-NEXT:    v_mov_b32_e32 v7, s31577; GFX8-NEXT:    flat_store_dwordx4 v[10:11], v[0:3]1578; GFX8-NEXT:    flat_store_dwordx4 v[8:9], v[4:7]1579; GFX8-NEXT:    s_endpgm1580;1581; EG-LABEL: constant_zextload_v8i1_to_v8i32:1582; EG:       ; %bb.0:1583; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]1584; EG-NEXT:    TEX 0 @61585; EG-NEXT:    ALU 17, @9, KC0[CB0:0-32], KC1[]1586; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T5.XYZW, T8.X, 01587; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T6.XYZW, T7.X, 11588; EG-NEXT:    CF_END1589; EG-NEXT:    Fetch clause starting at 6:1590; EG-NEXT:     VTX_READ_8 T5.X, T5.X, 0, #11591; EG-NEXT:    ALU clause starting at 8:1592; EG-NEXT:     MOV * T5.X, KC0[2].Z,1593; EG-NEXT:    ALU clause starting at 9:1594; EG-NEXT:     BFE_UINT * T6.W, T5.X, literal.x, 1,1595; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)1596; EG-NEXT:     BFE_UINT * T6.Z, T5.X, literal.x, 1,1597; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)1598; EG-NEXT:     BFE_UINT T6.Y, T5.X, 1, 1,1599; EG-NEXT:     BFE_UINT * T5.W, T5.X, literal.x, 1,1600; EG-NEXT:    7(9.809089e-45), 0(0.000000e+00)1601; EG-NEXT:     AND_INT T6.X, T5.X, 1,1602; EG-NEXT:     BFE_UINT T5.Z, T5.X, literal.x, 1,1603; EG-NEXT:     LSHR * T7.X, KC0[2].Y, literal.y,1604; EG-NEXT:    6(8.407791e-45), 2(2.802597e-45)1605; EG-NEXT:     BFE_UINT * T5.Y, T5.X, literal.x, 1,1606; EG-NEXT:    5(7.006492e-45), 0(0.000000e+00)1607; EG-NEXT:     BFE_UINT T5.X, T5.X, literal.x, 1,1608; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,1609; EG-NEXT:    4(5.605194e-45), 16(2.242078e-44)1610; EG-NEXT:     LSHR * T8.X, PV.W, literal.x,1611; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)1612;1613; GFX12-LABEL: constant_zextload_v8i1_to_v8i32:1614; GFX12:       ; %bb.0:1615; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241616; GFX12-NEXT:    v_mov_b32_e32 v8, 01617; GFX12-NEXT:    s_wait_kmcnt 0x01618; GFX12-NEXT:    global_load_u8 v0, v8, s[2:3]1619; GFX12-NEXT:    s_wait_loadcnt 0x01620; GFX12-NEXT:    v_readfirstlane_b32 s2, v01621; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100011622; GFX12-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)1623; GFX12-NEXT:    v_dual_mov_b32 v5, s4 :: v_dual_and_b32 v0, 0xffff, v01624; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100031625; GFX12-NEXT:    s_bfe_u32 s5, s2, 0x100051626; GFX12-NEXT:    s_and_b32 s6, s2, 11627; GFX12-NEXT:    s_bfe_u32 s7, s2, 0x100021628; GFX12-NEXT:    s_bfe_u32 s2, s2, 0x100041629; GFX12-NEXT:    v_lshrrev_b32_e32 v3, 7, v01630; GFX12-NEXT:    v_bfe_u32 v2, v0, 6, 11631; GFX12-NEXT:    v_dual_mov_b32 v0, s2 :: v_dual_mov_b32 v7, s31632; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)1633; GFX12-NEXT:    v_dual_mov_b32 v1, s5 :: v_dual_mov_b32 v4, s61634; GFX12-NEXT:    v_mov_b32_e32 v6, s71635; GFX12-NEXT:    s_clause 0x11636; GFX12-NEXT:    global_store_b128 v8, v[0:3], s[0:1] offset:161637; GFX12-NEXT:    global_store_b128 v8, v[4:7], s[0:1]1638; GFX12-NEXT:    s_endpgm1639;1640; GFX1250-LABEL: constant_zextload_v8i1_to_v8i32:1641; GFX1250:       ; %bb.0:1642; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 11643; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241644; GFX1250-NEXT:    v_mov_b32_e32 v8, 01645; GFX1250-NEXT:    s_wait_kmcnt 0x01646; GFX1250-NEXT:    global_load_u8 v0, v8, s[2:3]1647; GFX1250-NEXT:    s_wait_loadcnt 0x01648; GFX1250-NEXT:    v_readfirstlane_b32 s2, v01649; GFX1250-NEXT:    v_and_b32_e32 v0, 0xffff, v01650; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100031651; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100011652; GFX1250-NEXT:    s_bfe_u32 s5, s2, 0x100051653; GFX1250-NEXT:    s_and_b32 s6, s2, 11654; GFX1250-NEXT:    s_bfe_u32 s7, s2, 0x100021655; GFX1250-NEXT:    s_bfe_u32 s2, s2, 0x100041656; GFX1250-NEXT:    v_lshrrev_b32_e32 v3, 7, v01657; GFX1250-NEXT:    v_bfe_u32 v2, v0, 6, 11658; GFX1250-NEXT:    v_dual_mov_b32 v0, s2 :: v_dual_mov_b32 v1, s51659; GFX1250-NEXT:    v_dual_mov_b32 v4, s6 :: v_dual_mov_b32 v5, s41660; GFX1250-NEXT:    v_dual_mov_b32 v6, s7 :: v_dual_mov_b32 v7, s31661; GFX1250-NEXT:    s_clause 0x11662; GFX1250-NEXT:    global_store_b128 v8, v[0:3], s[0:1] offset:161663; GFX1250-NEXT:    global_store_b128 v8, v[4:7], s[0:1]1664; GFX1250-NEXT:    s_endpgm1665  %load = load <8 x i1>, ptr addrspace(4) %in1666  %ext = zext <8 x i1> %load to <8 x i32>1667  store <8 x i32> %ext, ptr addrspace(1) %out1668  ret void1669}1670 1671define amdgpu_kernel void @constant_sextload_v8i1_to_v8i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {1672; GFX6-LABEL: constant_sextload_v8i1_to_v8i32:1673; GFX6:       ; %bb.0:1674; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x91675; GFX6-NEXT:    s_mov_b32 s7, 0xf0001676; GFX6-NEXT:    s_mov_b32 s6, -11677; GFX6-NEXT:    s_mov_b32 s10, s61678; GFX6-NEXT:    s_mov_b32 s11, s71679; GFX6-NEXT:    s_waitcnt lgkmcnt(0)1680; GFX6-NEXT:    s_mov_b32 s8, s21681; GFX6-NEXT:    s_mov_b32 s9, s31682; GFX6-NEXT:    buffer_load_ubyte v4, off, s[8:11], 01683; GFX6-NEXT:    s_mov_b32 s4, s01684; GFX6-NEXT:    s_mov_b32 s5, s11685; GFX6-NEXT:    s_waitcnt vmcnt(0)1686; GFX6-NEXT:    v_bfe_i32 v3, v4, 3, 11687; GFX6-NEXT:    v_bfe_i32 v2, v4, 2, 11688; GFX6-NEXT:    v_bfe_i32 v1, v4, 1, 11689; GFX6-NEXT:    v_bfe_i32 v0, v4, 0, 11690; GFX6-NEXT:    v_bfe_i32 v7, v4, 7, 11691; GFX6-NEXT:    v_bfe_i32 v6, v4, 6, 11692; GFX6-NEXT:    v_bfe_i32 v5, v4, 5, 11693; GFX6-NEXT:    v_bfe_i32 v4, v4, 4, 11694; GFX6-NEXT:    buffer_store_dwordx4 v[4:7], off, s[4:7], 0 offset:161695; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[4:7], 01696; GFX6-NEXT:    s_endpgm1697;1698; GFX8-LABEL: constant_sextload_v8i1_to_v8i32:1699; GFX8:       ; %bb.0:1700; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x241701; GFX8-NEXT:    s_waitcnt lgkmcnt(0)1702; GFX8-NEXT:    v_mov_b32_e32 v0, s21703; GFX8-NEXT:    v_mov_b32_e32 v1, s31704; GFX8-NEXT:    flat_load_ubyte v4, v[0:1]1705; GFX8-NEXT:    s_add_u32 s2, s0, 161706; GFX8-NEXT:    s_addc_u32 s3, s1, 01707; GFX8-NEXT:    v_mov_b32_e32 v11, s31708; GFX8-NEXT:    v_mov_b32_e32 v9, s11709; GFX8-NEXT:    v_mov_b32_e32 v10, s21710; GFX8-NEXT:    v_mov_b32_e32 v8, s01711; GFX8-NEXT:    s_waitcnt vmcnt(0)1712; GFX8-NEXT:    v_bfe_i32 v3, v4, 3, 11713; GFX8-NEXT:    v_bfe_i32 v2, v4, 2, 11714; GFX8-NEXT:    v_bfe_i32 v1, v4, 1, 11715; GFX8-NEXT:    v_bfe_i32 v0, v4, 0, 11716; GFX8-NEXT:    v_bfe_i32 v7, v4, 7, 11717; GFX8-NEXT:    v_bfe_i32 v6, v4, 6, 11718; GFX8-NEXT:    v_bfe_i32 v5, v4, 5, 11719; GFX8-NEXT:    v_bfe_i32 v4, v4, 4, 11720; GFX8-NEXT:    flat_store_dwordx4 v[10:11], v[4:7]1721; GFX8-NEXT:    flat_store_dwordx4 v[8:9], v[0:3]1722; GFX8-NEXT:    s_endpgm1723;1724; EG-LABEL: constant_sextload_v8i1_to_v8i32:1725; EG:       ; %bb.0:1726; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]1727; EG-NEXT:    TEX 0 @61728; EG-NEXT:    ALU 23, @9, KC0[CB0:0-32], KC1[]1729; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T6.XYZW, T5.X, 01730; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T7.XYZW, T8.X, 11731; EG-NEXT:    CF_END1732; EG-NEXT:    Fetch clause starting at 6:1733; EG-NEXT:     VTX_READ_8 T5.X, T5.X, 0, #11734; EG-NEXT:    ALU clause starting at 8:1735; EG-NEXT:     MOV * T5.X, KC0[2].Z,1736; EG-NEXT:    ALU clause starting at 9:1737; EG-NEXT:     LSHR * T0.W, T5.X, literal.x,1738; EG-NEXT:    7(9.809089e-45), 0(0.000000e+00)1739; EG-NEXT:     BFE_INT T6.W, PV.W, 0.0, 1,1740; EG-NEXT:     LSHR * T0.W, T5.X, literal.x,1741; EG-NEXT:    6(8.407791e-45), 0(0.000000e+00)1742; EG-NEXT:     BFE_INT T7.X, T5.X, 0.0, 1,1743; EG-NEXT:     BFE_INT T6.Z, PS, 0.0, 1,1744; EG-NEXT:     LSHR T0.W, T5.X, literal.x,1745; EG-NEXT:     LSHR * T1.W, T5.X, literal.y,1746; EG-NEXT:    3(4.203895e-45), 5(7.006492e-45)1747; EG-NEXT:     LSHR T8.X, KC0[2].Y, literal.x,1748; EG-NEXT:     BFE_INT T6.Y, PS, 0.0, 1,1749; EG-NEXT:     LSHR T0.Z, T5.X, literal.x,1750; EG-NEXT:     BFE_INT T7.W, PV.W, 0.0, 1,1751; EG-NEXT:     LSHR * T0.W, T5.X, literal.y,1752; EG-NEXT:    2(2.802597e-45), 4(5.605194e-45)1753; EG-NEXT:     BFE_INT T6.X, PS, 0.0, 1,1754; EG-NEXT:     BFE_INT T7.Z, PV.Z, 0.0, 1,1755; EG-NEXT:     LSHR T0.W, T5.X, 1,1756; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.x,1757; EG-NEXT:    16(2.242078e-44), 0(0.000000e+00)1758; EG-NEXT:     LSHR T5.X, PS, literal.x,1759; EG-NEXT:     BFE_INT * T7.Y, PV.W, 0.0, 1,1760; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)1761;1762; GFX12-LABEL: constant_sextload_v8i1_to_v8i32:1763; GFX12:       ; %bb.0:1764; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241765; GFX12-NEXT:    s_wait_kmcnt 0x01766; GFX12-NEXT:    s_load_u8 s2, s[2:3], 0x01767; GFX12-NEXT:    s_wait_kmcnt 0x01768; GFX12-NEXT:    s_bfe_i32 s3, s2, 0x100031769; GFX12-NEXT:    s_bfe_i32 s4, s2, 0x100021770; GFX12-NEXT:    s_bfe_i32 s5, s2, 0x100011771; GFX12-NEXT:    s_bfe_i32 s6, s2, 0x100001772; GFX12-NEXT:    s_bfe_i32 s7, s2, 0x100071773; GFX12-NEXT:    s_bfe_i32 s8, s2, 0x100061774; GFX12-NEXT:    s_bfe_i32 s9, s2, 0x100041775; GFX12-NEXT:    s_bfe_i32 s2, s2, 0x100051776; GFX12-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)1777; GFX12-NEXT:    v_dual_mov_b32 v8, 0 :: v_dual_mov_b32 v1, s21778; GFX12-NEXT:    v_dual_mov_b32 v0, s9 :: v_dual_mov_b32 v3, s71779; GFX12-NEXT:    v_dual_mov_b32 v2, s8 :: v_dual_mov_b32 v5, s51780; GFX12-NEXT:    v_dual_mov_b32 v4, s6 :: v_dual_mov_b32 v7, s31781; GFX12-NEXT:    v_mov_b32_e32 v6, s41782; GFX12-NEXT:    s_clause 0x11783; GFX12-NEXT:    global_store_b128 v8, v[0:3], s[0:1] offset:161784; GFX12-NEXT:    global_store_b128 v8, v[4:7], s[0:1]1785; GFX12-NEXT:    s_endpgm1786;1787; GFX1250-LABEL: constant_sextload_v8i1_to_v8i32:1788; GFX1250:       ; %bb.0:1789; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 11790; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241791; GFX1250-NEXT:    s_wait_kmcnt 0x01792; GFX1250-NEXT:    s_load_u8 s2, s[2:3], 0x01793; GFX1250-NEXT:    s_wait_kmcnt 0x01794; GFX1250-NEXT:    s_bfe_i32 s3, s2, 0x100031795; GFX1250-NEXT:    s_bfe_i32 s4, s2, 0x100021796; GFX1250-NEXT:    s_bfe_i32 s5, s2, 0x100011797; GFX1250-NEXT:    s_bfe_i32 s6, s2, 0x100001798; GFX1250-NEXT:    s_bfe_i32 s7, s2, 0x100071799; GFX1250-NEXT:    s_bfe_i32 s8, s2, 0x100061800; GFX1250-NEXT:    s_bfe_i32 s9, s2, 0x100041801; GFX1250-NEXT:    s_bfe_i32 s2, s2, 0x100051802; GFX1250-NEXT:    v_dual_mov_b32 v8, 0 :: v_dual_mov_b32 v0, s91803; GFX1250-NEXT:    v_dual_mov_b32 v1, s2 :: v_dual_mov_b32 v2, s81804; GFX1250-NEXT:    v_dual_mov_b32 v3, s7 :: v_dual_mov_b32 v4, s61805; GFX1250-NEXT:    v_dual_mov_b32 v5, s5 :: v_dual_mov_b32 v6, s41806; GFX1250-NEXT:    v_mov_b32_e32 v7, s31807; GFX1250-NEXT:    s_clause 0x11808; GFX1250-NEXT:    global_store_b128 v8, v[0:3], s[0:1] offset:161809; GFX1250-NEXT:    global_store_b128 v8, v[4:7], s[0:1]1810; GFX1250-NEXT:    s_endpgm1811  %load = load <8 x i1>, ptr addrspace(4) %in1812  %ext = sext <8 x i1> %load to <8 x i32>1813  store <8 x i32> %ext, ptr addrspace(1) %out1814  ret void1815}1816 1817define amdgpu_kernel void @constant_zextload_v16i1_to_v16i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {1818; GFX6-LABEL: constant_zextload_v16i1_to_v16i32:1819; GFX6:       ; %bb.0:1820; GFX6-NEXT:    s_load_dwordx4 s[4:7], s[4:5], 0x91821; GFX6-NEXT:    s_mov_b32 s3, 0xf0001822; GFX6-NEXT:    s_mov_b32 s2, -11823; GFX6-NEXT:    s_mov_b32 s10, s21824; GFX6-NEXT:    s_mov_b32 s11, s31825; GFX6-NEXT:    s_waitcnt lgkmcnt(0)1826; GFX6-NEXT:    s_mov_b32 s8, s61827; GFX6-NEXT:    s_mov_b32 s9, s71828; GFX6-NEXT:    buffer_load_ushort v12, off, s[8:11], 01829; GFX6-NEXT:    s_mov_b32 s0, s41830; GFX6-NEXT:    s_mov_b32 s1, s51831; GFX6-NEXT:    s_waitcnt vmcnt(0)1832; GFX6-NEXT:    v_bfe_u32 v3, v12, 3, 11833; GFX6-NEXT:    v_bfe_u32 v1, v12, 1, 11834; GFX6-NEXT:    v_bfe_u32 v7, v12, 7, 11835; GFX6-NEXT:    v_bfe_u32 v5, v12, 5, 11836; GFX6-NEXT:    v_bfe_u32 v11, v12, 11, 11837; GFX6-NEXT:    v_bfe_u32 v9, v12, 9, 11838; GFX6-NEXT:    v_lshrrev_b32_e32 v15, 15, v121839; GFX6-NEXT:    v_bfe_u32 v13, v12, 13, 11840; GFX6-NEXT:    v_and_b32_e32 v0, 1, v121841; GFX6-NEXT:    v_bfe_u32 v2, v12, 2, 11842; GFX6-NEXT:    v_bfe_u32 v6, v12, 6, 11843; GFX6-NEXT:    v_bfe_u32 v4, v12, 4, 11844; GFX6-NEXT:    v_bfe_u32 v10, v12, 10, 11845; GFX6-NEXT:    v_bfe_u32 v8, v12, 8, 11846; GFX6-NEXT:    v_bfe_u32 v14, v12, 14, 11847; GFX6-NEXT:    v_bfe_u32 v12, v12, 12, 11848; GFX6-NEXT:    buffer_store_dwordx4 v[12:15], off, s[0:3], 0 offset:481849; GFX6-NEXT:    buffer_store_dwordx4 v[8:11], off, s[0:3], 0 offset:321850; GFX6-NEXT:    buffer_store_dwordx4 v[4:7], off, s[0:3], 0 offset:161851; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 01852; GFX6-NEXT:    s_endpgm1853;1854; GFX8-LABEL: constant_zextload_v16i1_to_v16i32:1855; GFX8:       ; %bb.0:1856; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x241857; GFX8-NEXT:    s_waitcnt lgkmcnt(0)1858; GFX8-NEXT:    v_mov_b32_e32 v0, s21859; GFX8-NEXT:    v_mov_b32_e32 v1, s31860; GFX8-NEXT:    flat_load_ushort v0, v[0:1]1861; GFX8-NEXT:    v_mov_b32_e32 v17, s11862; GFX8-NEXT:    v_mov_b32_e32 v16, s01863; GFX8-NEXT:    s_waitcnt vmcnt(0)1864; GFX8-NEXT:    v_readfirstlane_b32 s2, v01865; GFX8-NEXT:    s_and_b32 s6, 0xffff, s21866; GFX8-NEXT:    s_bfe_u32 s3, s2, 0x100031867; GFX8-NEXT:    s_bfe_u32 s4, s2, 0x100011868; GFX8-NEXT:    s_bfe_u32 s5, s2, 0x100071869; GFX8-NEXT:    s_bfe_u32 s7, s2, 0x100091870; GFX8-NEXT:    s_bfe_u32 s8, s2, 0x1000d1871; GFX8-NEXT:    s_and_b32 s9, s2, 11872; GFX8-NEXT:    s_bfe_u32 s10, s2, 0x1000a1873; GFX8-NEXT:    s_bfe_u32 s2, s2, 0x1000c1874; GFX8-NEXT:    s_bfe_u32 s11, s6, 0x100051875; GFX8-NEXT:    s_bfe_u32 s12, s6, 0x1000b1876; GFX8-NEXT:    s_lshr_b32 s13, s6, 151877; GFX8-NEXT:    s_bfe_u32 s14, s6, 0x100021878; GFX8-NEXT:    s_bfe_u32 s15, s6, 0x100061879; GFX8-NEXT:    s_bfe_u32 s16, s6, 0x100041880; GFX8-NEXT:    s_bfe_u32 s17, s6, 0x100081881; GFX8-NEXT:    s_bfe_u32 s6, s6, 0x1000e1882; GFX8-NEXT:    v_mov_b32_e32 v0, s21883; GFX8-NEXT:    s_add_u32 s2, s0, 481884; GFX8-NEXT:    v_mov_b32_e32 v15, s31885; GFX8-NEXT:    s_addc_u32 s3, s1, 01886; GFX8-NEXT:    v_mov_b32_e32 v19, s31887; GFX8-NEXT:    v_mov_b32_e32 v1, s81888; GFX8-NEXT:    v_mov_b32_e32 v2, s61889; GFX8-NEXT:    v_mov_b32_e32 v3, s131890; GFX8-NEXT:    v_mov_b32_e32 v18, s21891; GFX8-NEXT:    s_add_u32 s2, s0, 321892; GFX8-NEXT:    flat_store_dwordx4 v[18:19], v[0:3]1893; GFX8-NEXT:    s_addc_u32 s3, s1, 01894; GFX8-NEXT:    v_mov_b32_e32 v0, s21895; GFX8-NEXT:    v_mov_b32_e32 v5, s71896; GFX8-NEXT:    v_mov_b32_e32 v6, s101897; GFX8-NEXT:    v_mov_b32_e32 v4, s171898; GFX8-NEXT:    v_mov_b32_e32 v7, s121899; GFX8-NEXT:    v_mov_b32_e32 v1, s31900; GFX8-NEXT:    s_add_u32 s0, s0, 161901; GFX8-NEXT:    flat_store_dwordx4 v[0:1], v[4:7]1902; GFX8-NEXT:    s_addc_u32 s1, s1, 01903; GFX8-NEXT:    v_mov_b32_e32 v0, s01904; GFX8-NEXT:    v_mov_b32_e32 v11, s51905; GFX8-NEXT:    v_mov_b32_e32 v8, s161906; GFX8-NEXT:    v_mov_b32_e32 v9, s111907; GFX8-NEXT:    v_mov_b32_e32 v10, s151908; GFX8-NEXT:    v_mov_b32_e32 v1, s11909; GFX8-NEXT:    v_mov_b32_e32 v12, s91910; GFX8-NEXT:    v_mov_b32_e32 v13, s41911; GFX8-NEXT:    v_mov_b32_e32 v14, s141912; GFX8-NEXT:    flat_store_dwordx4 v[0:1], v[8:11]1913; GFX8-NEXT:    flat_store_dwordx4 v[16:17], v[12:15]1914; GFX8-NEXT:    s_endpgm1915;1916; EG-LABEL: constant_zextload_v16i1_to_v16i32:1917; EG:       ; %bb.0:1918; EG-NEXT:    ALU 0, @10, KC0[CB0:0-32], KC1[]1919; EG-NEXT:    TEX 0 @81920; EG-NEXT:    ALU 36, @11, KC0[CB0:0-32], KC1[]1921; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T7.XYZW, T14.X, 01922; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T11.XYZW, T13.X, 01923; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T9.XYZW, T12.X, 01924; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T8.XYZW, T10.X, 11925; EG-NEXT:    CF_END1926; EG-NEXT:    Fetch clause starting at 8:1927; EG-NEXT:     VTX_READ_16 T7.X, T7.X, 0, #11928; EG-NEXT:    ALU clause starting at 10:1929; EG-NEXT:     MOV * T7.X, KC0[2].Z,1930; EG-NEXT:    ALU clause starting at 11:1931; EG-NEXT:     BFE_UINT * T8.W, T7.X, literal.x, 1,1932; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)1933; EG-NEXT:     BFE_UINT * T8.Z, T7.X, literal.x, 1,1934; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)1935; EG-NEXT:     BFE_UINT T8.Y, T7.X, 1, 1,1936; EG-NEXT:     BFE_UINT * T9.W, T7.X, literal.x, 1,1937; EG-NEXT:    7(9.809089e-45), 0(0.000000e+00)1938; EG-NEXT:     AND_INT T8.X, T7.X, 1,1939; EG-NEXT:     BFE_UINT T9.Z, T7.X, literal.x, 1,1940; EG-NEXT:     LSHR * T10.X, KC0[2].Y, literal.y,1941; EG-NEXT:    6(8.407791e-45), 2(2.802597e-45)1942; EG-NEXT:     BFE_UINT T9.Y, T7.X, literal.x, 1,1943; EG-NEXT:     BFE_UINT * T11.W, T7.X, literal.y, 1,1944; EG-NEXT:    5(7.006492e-45), 11(1.541428e-44)1945; EG-NEXT:     BFE_UINT T9.X, T7.X, literal.x, 1,1946; EG-NEXT:     BFE_UINT T11.Z, T7.X, literal.y, 1,1947; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,1948; EG-NEXT:    4(5.605194e-45), 10(1.401298e-44)1949; EG-NEXT:    16(2.242078e-44), 0(0.000000e+00)1950; EG-NEXT:     LSHR T12.X, PV.W, literal.x,1951; EG-NEXT:     BFE_UINT T11.Y, T7.X, literal.y, 1,1952; EG-NEXT:     LSHR * T7.W, T7.X, literal.z,1953; EG-NEXT:    2(2.802597e-45), 9(1.261169e-44)1954; EG-NEXT:    15(2.101948e-44), 0(0.000000e+00)1955; EG-NEXT:     BFE_UINT T11.X, T7.X, literal.x, 1,1956; EG-NEXT:     BFE_UINT T7.Z, T7.X, literal.y, 1,1957; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,1958; EG-NEXT:    8(1.121039e-44), 14(1.961818e-44)1959; EG-NEXT:    32(4.484155e-44), 0(0.000000e+00)1960; EG-NEXT:     LSHR T13.X, PV.W, literal.x,1961; EG-NEXT:     BFE_UINT * T7.Y, T7.X, literal.y, 1,1962; EG-NEXT:    2(2.802597e-45), 13(1.821688e-44)1963; EG-NEXT:     BFE_UINT T7.X, T7.X, literal.x, 1,1964; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,1965; EG-NEXT:    12(1.681558e-44), 48(6.726233e-44)1966; EG-NEXT:     LSHR * T14.X, PV.W, literal.x,1967; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)1968;1969; GFX12-LABEL: constant_zextload_v16i1_to_v16i32:1970; GFX12:       ; %bb.0:1971; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241972; GFX12-NEXT:    v_mov_b32_e32 v16, 01973; GFX12-NEXT:    s_wait_kmcnt 0x01974; GFX12-NEXT:    global_load_u16 v0, v16, s[2:3]1975; GFX12-NEXT:    s_wait_loadcnt 0x01976; GFX12-NEXT:    v_readfirstlane_b32 s2, v01977; GFX12-NEXT:    s_and_b32 s6, 0xffff, s21978; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100031979; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100011980; GFX12-NEXT:    s_bfe_u32 s5, s2, 0x100071981; GFX12-NEXT:    s_bfe_u32 s7, s2, 0x100091982; GFX12-NEXT:    s_bfe_u32 s8, s2, 0x1000d1983; GFX12-NEXT:    s_and_b32 s9, s2, 11984; GFX12-NEXT:    s_bfe_u32 s10, s2, 0x1000a1985; GFX12-NEXT:    s_bfe_u32 s2, s2, 0x1000c1986; GFX12-NEXT:    s_bfe_u32 s11, s6, 0x100051987; GFX12-NEXT:    s_bfe_u32 s12, s6, 0x1000b1988; GFX12-NEXT:    s_lshr_b32 s13, s6, 151989; GFX12-NEXT:    s_bfe_u32 s14, s6, 0x100021990; GFX12-NEXT:    s_bfe_u32 s15, s6, 0x100061991; GFX12-NEXT:    s_bfe_u32 s16, s6, 0x100041992; GFX12-NEXT:    s_bfe_u32 s17, s6, 0x100081993; GFX12-NEXT:    s_bfe_u32 s6, s6, 0x1000e1994; GFX12-NEXT:    v_dual_mov_b32 v0, s2 :: v_dual_mov_b32 v5, s71995; GFX12-NEXT:    v_mov_b32_e32 v1, s81996; GFX12-NEXT:    v_dual_mov_b32 v15, s3 :: v_dual_mov_b32 v2, s61997; GFX12-NEXT:    v_dual_mov_b32 v3, s13 :: v_dual_mov_b32 v4, s171998; GFX12-NEXT:    v_dual_mov_b32 v6, s10 :: v_dual_mov_b32 v11, s51999; GFX12-NEXT:    v_dual_mov_b32 v7, s12 :: v_dual_mov_b32 v8, s162000; GFX12-NEXT:    v_dual_mov_b32 v9, s11 :: v_dual_mov_b32 v10, s152001; GFX12-NEXT:    v_dual_mov_b32 v12, s9 :: v_dual_mov_b32 v13, s42002; GFX12-NEXT:    v_mov_b32_e32 v14, s142003; GFX12-NEXT:    s_clause 0x32004; GFX12-NEXT:    global_store_b128 v16, v[0:3], s[0:1] offset:482005; GFX12-NEXT:    global_store_b128 v16, v[4:7], s[0:1] offset:322006; GFX12-NEXT:    global_store_b128 v16, v[8:11], s[0:1] offset:162007; GFX12-NEXT:    global_store_b128 v16, v[12:15], s[0:1]2008; GFX12-NEXT:    s_endpgm2009;2010; GFX1250-LABEL: constant_zextload_v16i1_to_v16i32:2011; GFX1250:       ; %bb.0:2012; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 12013; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x242014; GFX1250-NEXT:    v_mov_b32_e32 v16, 02015; GFX1250-NEXT:    s_wait_kmcnt 0x02016; GFX1250-NEXT:    global_load_u16 v0, v16, s[2:3]2017; GFX1250-NEXT:    s_wait_loadcnt 0x02018; GFX1250-NEXT:    v_readfirstlane_b32 s2, v02019; GFX1250-NEXT:    s_and_b32 s6, 0xffff, s22020; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100032021; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100012022; GFX1250-NEXT:    s_bfe_u32 s5, s2, 0x100072023; GFX1250-NEXT:    s_bfe_u32 s7, s2, 0x100092024; GFX1250-NEXT:    s_bfe_u32 s8, s2, 0x1000d2025; GFX1250-NEXT:    s_and_b32 s9, s2, 12026; GFX1250-NEXT:    s_bfe_u32 s10, s2, 0x1000a2027; GFX1250-NEXT:    s_bfe_u32 s2, s2, 0x1000c2028; GFX1250-NEXT:    s_bfe_u32 s11, s6, 0x100052029; GFX1250-NEXT:    s_bfe_u32 s12, s6, 0x1000b2030; GFX1250-NEXT:    s_lshr_b32 s13, s6, 152031; GFX1250-NEXT:    s_bfe_u32 s14, s6, 0x100022032; GFX1250-NEXT:    s_bfe_u32 s15, s6, 0x100062033; GFX1250-NEXT:    s_bfe_u32 s16, s6, 0x100042034; GFX1250-NEXT:    s_bfe_u32 s17, s6, 0x100082035; GFX1250-NEXT:    s_bfe_u32 s6, s6, 0x1000e2036; GFX1250-NEXT:    v_dual_mov_b32 v0, s2 :: v_dual_mov_b32 v1, s82037; GFX1250-NEXT:    v_dual_mov_b32 v5, s7 :: v_dual_mov_b32 v15, s32038; GFX1250-NEXT:    v_dual_mov_b32 v2, s6 :: v_dual_mov_b32 v3, s132039; GFX1250-NEXT:    v_dual_mov_b32 v4, s17 :: v_dual_mov_b32 v6, s102040; GFX1250-NEXT:    v_dual_mov_b32 v11, s5 :: v_dual_mov_b32 v7, s122041; GFX1250-NEXT:    v_dual_mov_b32 v8, s16 :: v_dual_mov_b32 v9, s112042; GFX1250-NEXT:    v_dual_mov_b32 v10, s15 :: v_dual_mov_b32 v12, s92043; GFX1250-NEXT:    v_dual_mov_b32 v13, s4 :: v_dual_mov_b32 v14, s142044; GFX1250-NEXT:    s_clause 0x32045; GFX1250-NEXT:    global_store_b128 v16, v[0:3], s[0:1] offset:482046; GFX1250-NEXT:    global_store_b128 v16, v[4:7], s[0:1] offset:322047; GFX1250-NEXT:    global_store_b128 v16, v[8:11], s[0:1] offset:162048; GFX1250-NEXT:    global_store_b128 v16, v[12:15], s[0:1]2049; GFX1250-NEXT:    s_endpgm2050  %load = load <16 x i1>, ptr addrspace(4) %in2051  %ext = zext <16 x i1> %load to <16 x i32>2052  store <16 x i32> %ext, ptr addrspace(1) %out2053  ret void2054}2055 2056define amdgpu_kernel void @constant_sextload_v16i1_to_v16i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {2057; GFX6-LABEL: constant_sextload_v16i1_to_v16i32:2058; GFX6:       ; %bb.0:2059; GFX6-NEXT:    s_load_dwordx4 s[4:7], s[4:5], 0x92060; GFX6-NEXT:    s_mov_b32 s3, 0xf0002061; GFX6-NEXT:    s_mov_b32 s2, -12062; GFX6-NEXT:    s_mov_b32 s10, s22063; GFX6-NEXT:    s_mov_b32 s11, s32064; GFX6-NEXT:    s_waitcnt lgkmcnt(0)2065; GFX6-NEXT:    s_mov_b32 s8, s62066; GFX6-NEXT:    s_mov_b32 s9, s72067; GFX6-NEXT:    buffer_load_ushort v12, off, s[8:11], 02068; GFX6-NEXT:    s_mov_b32 s0, s42069; GFX6-NEXT:    s_mov_b32 s1, s52070; GFX6-NEXT:    s_waitcnt vmcnt(0)2071; GFX6-NEXT:    v_bfe_i32 v3, v12, 3, 12072; GFX6-NEXT:    v_bfe_i32 v2, v12, 2, 12073; GFX6-NEXT:    v_bfe_i32 v1, v12, 1, 12074; GFX6-NEXT:    v_bfe_i32 v0, v12, 0, 12075; GFX6-NEXT:    v_bfe_i32 v7, v12, 7, 12076; GFX6-NEXT:    v_bfe_i32 v6, v12, 6, 12077; GFX6-NEXT:    v_bfe_i32 v5, v12, 5, 12078; GFX6-NEXT:    v_bfe_i32 v4, v12, 4, 12079; GFX6-NEXT:    v_bfe_i32 v11, v12, 11, 12080; GFX6-NEXT:    v_bfe_i32 v10, v12, 10, 12081; GFX6-NEXT:    v_bfe_i32 v9, v12, 9, 12082; GFX6-NEXT:    v_bfe_i32 v8, v12, 8, 12083; GFX6-NEXT:    v_bfe_i32 v15, v12, 15, 12084; GFX6-NEXT:    v_bfe_i32 v14, v12, 14, 12085; GFX6-NEXT:    v_bfe_i32 v13, v12, 13, 12086; GFX6-NEXT:    v_bfe_i32 v12, v12, 12, 12087; GFX6-NEXT:    buffer_store_dwordx4 v[12:15], off, s[0:3], 0 offset:482088; GFX6-NEXT:    buffer_store_dwordx4 v[8:11], off, s[0:3], 0 offset:322089; GFX6-NEXT:    buffer_store_dwordx4 v[4:7], off, s[0:3], 0 offset:162090; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 02091; GFX6-NEXT:    s_endpgm2092;2093; GFX8-LABEL: constant_sextload_v16i1_to_v16i32:2094; GFX8:       ; %bb.0:2095; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x242096; GFX8-NEXT:    s_waitcnt lgkmcnt(0)2097; GFX8-NEXT:    v_mov_b32_e32 v0, s22098; GFX8-NEXT:    v_mov_b32_e32 v1, s32099; GFX8-NEXT:    flat_load_ushort v18, v[0:1]2100; GFX8-NEXT:    s_add_u32 s2, s0, 482101; GFX8-NEXT:    s_addc_u32 s3, s1, 02102; GFX8-NEXT:    v_mov_b32_e32 v9, s32103; GFX8-NEXT:    v_mov_b32_e32 v8, s22104; GFX8-NEXT:    s_add_u32 s2, s0, 322105; GFX8-NEXT:    v_mov_b32_e32 v13, s12106; GFX8-NEXT:    s_addc_u32 s3, s1, 02107; GFX8-NEXT:    v_mov_b32_e32 v12, s02108; GFX8-NEXT:    s_add_u32 s0, s0, 162109; GFX8-NEXT:    v_mov_b32_e32 v15, s32110; GFX8-NEXT:    s_addc_u32 s1, s1, 02111; GFX8-NEXT:    v_mov_b32_e32 v14, s22112; GFX8-NEXT:    v_mov_b32_e32 v17, s12113; GFX8-NEXT:    v_mov_b32_e32 v16, s02114; GFX8-NEXT:    s_waitcnt vmcnt(0)2115; GFX8-NEXT:    v_bfe_i32 v7, v18, 15, 12116; GFX8-NEXT:    v_bfe_i32 v6, v18, 14, 12117; GFX8-NEXT:    v_bfe_i32 v5, v18, 13, 12118; GFX8-NEXT:    v_bfe_i32 v4, v18, 12, 12119; GFX8-NEXT:    flat_store_dwordx4 v[8:9], v[4:7]2120; GFX8-NEXT:    v_bfe_i32 v11, v18, 11, 12121; GFX8-NEXT:    v_bfe_i32 v10, v18, 10, 12122; GFX8-NEXT:    v_bfe_i32 v9, v18, 9, 12123; GFX8-NEXT:    v_bfe_i32 v8, v18, 8, 12124; GFX8-NEXT:    v_bfe_i32 v3, v18, 3, 12125; GFX8-NEXT:    v_bfe_i32 v2, v18, 2, 12126; GFX8-NEXT:    v_bfe_i32 v1, v18, 1, 12127; GFX8-NEXT:    v_bfe_i32 v0, v18, 0, 12128; GFX8-NEXT:    v_bfe_i32 v7, v18, 7, 12129; GFX8-NEXT:    v_bfe_i32 v6, v18, 6, 12130; GFX8-NEXT:    v_bfe_i32 v5, v18, 5, 12131; GFX8-NEXT:    v_bfe_i32 v4, v18, 4, 12132; GFX8-NEXT:    flat_store_dwordx4 v[14:15], v[8:11]2133; GFX8-NEXT:    flat_store_dwordx4 v[16:17], v[4:7]2134; GFX8-NEXT:    flat_store_dwordx4 v[12:13], v[0:3]2135; GFX8-NEXT:    s_endpgm2136;2137; EG-LABEL: constant_sextload_v16i1_to_v16i32:2138; EG:       ; %bb.0:2139; EG-NEXT:    ALU 0, @10, KC0[CB0:0-32], KC1[]2140; EG-NEXT:    TEX 0 @82141; EG-NEXT:    ALU 51, @11, KC0[CB0:0-32], KC1[]2142; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T12.XYZW, T7.X, 02143; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T10.XYZW, T14.X, 02144; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T8.XYZW, T11.X, 02145; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T13.XYZW, T9.X, 12146; EG-NEXT:    CF_END2147; EG-NEXT:    Fetch clause starting at 8:2148; EG-NEXT:     VTX_READ_16 T7.X, T7.X, 0, #12149; EG-NEXT:    ALU clause starting at 10:2150; EG-NEXT:     MOV * T7.X, KC0[2].Z,2151; EG-NEXT:    ALU clause starting at 11:2152; EG-NEXT:     LSHR * T0.W, T7.X, literal.x,2153; EG-NEXT:    7(9.809089e-45), 0(0.000000e+00)2154; EG-NEXT:     BFE_INT T8.W, PV.W, 0.0, 1,2155; EG-NEXT:     LSHR * T0.W, T7.X, literal.x,2156; EG-NEXT:    6(8.407791e-45), 0(0.000000e+00)2157; EG-NEXT:     BFE_INT T8.Z, PS, 0.0, 1,2158; EG-NEXT:     LSHR T0.W, T7.X, literal.x,2159; EG-NEXT:     LSHR * T1.W, T7.X, literal.y,2160; EG-NEXT:    11(1.541428e-44), 5(7.006492e-45)2161; EG-NEXT:     LSHR T9.X, KC0[2].Y, literal.x,2162; EG-NEXT:     BFE_INT T8.Y, PS, 0.0, 1,2163; EG-NEXT:     LSHR T0.Z, T7.X, literal.y,2164; EG-NEXT:     BFE_INT T10.W, PV.W, 0.0, 1,2165; EG-NEXT:     LSHR * T0.W, T7.X, literal.z,2166; EG-NEXT:    2(2.802597e-45), 10(1.401298e-44)2167; EG-NEXT:    4(5.605194e-45), 0(0.000000e+00)2168; EG-NEXT:     BFE_INT T8.X, PS, 0.0, 1,2169; EG-NEXT:     BFE_INT T10.Z, PV.Z, 0.0, 1,2170; EG-NEXT:     LSHR T0.W, T7.X, literal.x,2171; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.y,2172; EG-NEXT:    9(1.261169e-44), 16(2.242078e-44)2173; EG-NEXT:     LSHR T11.X, PS, literal.x,2174; EG-NEXT:     BFE_INT T10.Y, PV.W, 0.0, 1,2175; EG-NEXT:     LSHR T0.W, T7.X, literal.y,2176; EG-NEXT:     LSHR * T1.W, T7.X, literal.z,2177; EG-NEXT:    2(2.802597e-45), 15(2.101948e-44)2178; EG-NEXT:    8(1.121039e-44), 0(0.000000e+00)2179; EG-NEXT:     BFE_INT T10.X, PS, 0.0, 1,2180; EG-NEXT:     BFE_INT T12.W, PV.W, 0.0, 1,2181; EG-NEXT:     LSHR * T0.W, T7.X, literal.x,2182; EG-NEXT:    14(1.961818e-44), 0(0.000000e+00)2183; EG-NEXT:     BFE_INT T13.X, T7.X, 0.0, 1,2184; EG-NEXT:     LSHR T0.Y, T7.X, literal.x,2185; EG-NEXT:     BFE_INT T12.Z, PS, 0.0, 1,2186; EG-NEXT:     LSHR T0.W, T7.X, literal.y,2187; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.z,2188; EG-NEXT:    3(4.203895e-45), 13(1.821688e-44)2189; EG-NEXT:    32(4.484155e-44), 0(0.000000e+00)2190; EG-NEXT:     LSHR T14.X, PS, literal.x,2191; EG-NEXT:     BFE_INT T12.Y, PV.W, 0.0, 1,2192; EG-NEXT:     LSHR T0.Z, T7.X, literal.x,2193; EG-NEXT:     BFE_INT T13.W, PV.Y, 0.0, 1,2194; EG-NEXT:     LSHR * T0.W, T7.X, literal.y,2195; EG-NEXT:    2(2.802597e-45), 12(1.681558e-44)2196; EG-NEXT:     BFE_INT T12.X, PS, 0.0, 1,2197; EG-NEXT:     BFE_INT T13.Z, PV.Z, 0.0, 1,2198; EG-NEXT:     LSHR T0.W, T7.X, 1,2199; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.x,2200; EG-NEXT:    48(6.726233e-44), 0(0.000000e+00)2201; EG-NEXT:     LSHR T7.X, PS, literal.x,2202; EG-NEXT:     BFE_INT * T13.Y, PV.W, 0.0, 1,2203; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)2204;2205; GFX12-LABEL: constant_sextload_v16i1_to_v16i32:2206; GFX12:       ; %bb.0:2207; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x242208; GFX12-NEXT:    s_wait_kmcnt 0x02209; GFX12-NEXT:    s_load_u16 s2, s[2:3], 0x02210; GFX12-NEXT:    s_wait_kmcnt 0x02211; GFX12-NEXT:    s_bfe_i32 s3, s2, 0x100032212; GFX12-NEXT:    s_bfe_i32 s4, s2, 0x100022213; GFX12-NEXT:    s_bfe_i32 s5, s2, 0x100012214; GFX12-NEXT:    s_bfe_i32 s6, s2, 0x100002215; GFX12-NEXT:    s_bfe_i32 s7, s2, 0x100072216; GFX12-NEXT:    s_bfe_i32 s8, s2, 0x100062217; GFX12-NEXT:    s_bfe_i32 s9, s2, 0x100052218; GFX12-NEXT:    s_bfe_i32 s10, s2, 0x100042219; GFX12-NEXT:    s_bfe_i32 s11, s2, 0x1000b2220; GFX12-NEXT:    s_bfe_i32 s12, s2, 0x1000a2221; GFX12-NEXT:    s_bfe_i32 s13, s2, 0x100092222; GFX12-NEXT:    s_bfe_i32 s14, s2, 0x100082223; GFX12-NEXT:    s_bfe_i32 s15, s2, 0x1000f2224; GFX12-NEXT:    s_bfe_i32 s16, s2, 0x1000e2225; GFX12-NEXT:    s_bfe_i32 s17, s2, 0x1000c2226; GFX12-NEXT:    s_bfe_i32 s2, s2, 0x1000d2227; GFX12-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)2228; GFX12-NEXT:    v_dual_mov_b32 v16, 0 :: v_dual_mov_b32 v1, s22229; GFX12-NEXT:    v_dual_mov_b32 v0, s17 :: v_dual_mov_b32 v3, s152230; GFX12-NEXT:    v_dual_mov_b32 v2, s16 :: v_dual_mov_b32 v5, s132231; GFX12-NEXT:    v_dual_mov_b32 v4, s14 :: v_dual_mov_b32 v7, s112232; GFX12-NEXT:    v_dual_mov_b32 v6, s12 :: v_dual_mov_b32 v9, s92233; GFX12-NEXT:    v_dual_mov_b32 v8, s10 :: v_dual_mov_b32 v11, s72234; GFX12-NEXT:    v_dual_mov_b32 v10, s8 :: v_dual_mov_b32 v13, s52235; GFX12-NEXT:    v_dual_mov_b32 v12, s6 :: v_dual_mov_b32 v15, s32236; GFX12-NEXT:    v_mov_b32_e32 v14, s42237; GFX12-NEXT:    s_clause 0x32238; GFX12-NEXT:    global_store_b128 v16, v[0:3], s[0:1] offset:482239; GFX12-NEXT:    global_store_b128 v16, v[4:7], s[0:1] offset:322240; GFX12-NEXT:    global_store_b128 v16, v[8:11], s[0:1] offset:162241; GFX12-NEXT:    global_store_b128 v16, v[12:15], s[0:1]2242; GFX12-NEXT:    s_endpgm2243;2244; GFX1250-LABEL: constant_sextload_v16i1_to_v16i32:2245; GFX1250:       ; %bb.0:2246; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 12247; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x242248; GFX1250-NEXT:    s_wait_kmcnt 0x02249; GFX1250-NEXT:    s_load_u16 s2, s[2:3], 0x02250; GFX1250-NEXT:    s_wait_kmcnt 0x02251; GFX1250-NEXT:    s_bfe_i32 s3, s2, 0x100032252; GFX1250-NEXT:    s_bfe_i32 s4, s2, 0x100022253; GFX1250-NEXT:    s_bfe_i32 s5, s2, 0x100012254; GFX1250-NEXT:    s_bfe_i32 s6, s2, 0x100002255; GFX1250-NEXT:    s_bfe_i32 s7, s2, 0x100072256; GFX1250-NEXT:    s_bfe_i32 s8, s2, 0x100062257; GFX1250-NEXT:    s_bfe_i32 s9, s2, 0x100052258; GFX1250-NEXT:    s_bfe_i32 s10, s2, 0x100042259; GFX1250-NEXT:    s_bfe_i32 s11, s2, 0x1000b2260; GFX1250-NEXT:    s_bfe_i32 s12, s2, 0x1000a2261; GFX1250-NEXT:    s_bfe_i32 s13, s2, 0x100092262; GFX1250-NEXT:    s_bfe_i32 s14, s2, 0x100082263; GFX1250-NEXT:    s_bfe_i32 s15, s2, 0x1000f2264; GFX1250-NEXT:    s_bfe_i32 s16, s2, 0x1000e2265; GFX1250-NEXT:    s_bfe_i32 s17, s2, 0x1000c2266; GFX1250-NEXT:    s_bfe_i32 s2, s2, 0x1000d2267; GFX1250-NEXT:    v_dual_mov_b32 v16, 0 :: v_dual_mov_b32 v0, s172268; GFX1250-NEXT:    v_dual_mov_b32 v1, s2 :: v_dual_mov_b32 v2, s162269; GFX1250-NEXT:    v_dual_mov_b32 v3, s15 :: v_dual_mov_b32 v4, s142270; GFX1250-NEXT:    v_dual_mov_b32 v5, s13 :: v_dual_mov_b32 v6, s122271; GFX1250-NEXT:    v_dual_mov_b32 v7, s11 :: v_dual_mov_b32 v8, s102272; GFX1250-NEXT:    v_dual_mov_b32 v9, s9 :: v_dual_mov_b32 v10, s82273; GFX1250-NEXT:    v_dual_mov_b32 v11, s7 :: v_dual_mov_b32 v12, s62274; GFX1250-NEXT:    v_dual_mov_b32 v13, s5 :: v_dual_mov_b32 v14, s42275; GFX1250-NEXT:    v_mov_b32_e32 v15, s32276; GFX1250-NEXT:    s_clause 0x32277; GFX1250-NEXT:    global_store_b128 v16, v[0:3], s[0:1] offset:482278; GFX1250-NEXT:    global_store_b128 v16, v[4:7], s[0:1] offset:322279; GFX1250-NEXT:    global_store_b128 v16, v[8:11], s[0:1] offset:162280; GFX1250-NEXT:    global_store_b128 v16, v[12:15], s[0:1]2281; GFX1250-NEXT:    s_endpgm2282  %load = load <16 x i1>, ptr addrspace(4) %in2283  %ext = sext <16 x i1> %load to <16 x i32>2284  store <16 x i32> %ext, ptr addrspace(1) %out2285  ret void2286}2287 2288define amdgpu_kernel void @constant_zextload_v32i1_to_v32i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {2289; GFX6-LABEL: constant_zextload_v32i1_to_v32i32:2290; GFX6:       ; %bb.0:2291; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x92292; GFX6-NEXT:    s_waitcnt lgkmcnt(0)2293; GFX6-NEXT:    s_load_dword s4, s[2:3], 0x02294; GFX6-NEXT:    s_mov_b32 s3, 0xf0002295; GFX6-NEXT:    s_mov_b32 s2, -12296; GFX6-NEXT:    s_waitcnt lgkmcnt(0)2297; GFX6-NEXT:    s_bfe_u32 s5, s4, 0x100032298; GFX6-NEXT:    s_bfe_u32 s6, s4, 0x100012299; GFX6-NEXT:    s_bfe_u32 s7, s4, 0x100072300; GFX6-NEXT:    s_bfe_u32 s8, s4, 0x100052301; GFX6-NEXT:    s_bfe_u32 s9, s4, 0x1000b2302; GFX6-NEXT:    s_bfe_u32 s10, s4, 0x100092303; GFX6-NEXT:    s_bfe_u32 s11, s4, 0x1000f2304; GFX6-NEXT:    s_bfe_u32 s12, s4, 0x1000d2305; GFX6-NEXT:    s_bfe_u32 s13, s4, 0x100132306; GFX6-NEXT:    s_bfe_u32 s14, s4, 0x100112307; GFX6-NEXT:    s_bfe_u32 s15, s4, 0x100172308; GFX6-NEXT:    s_bfe_u32 s16, s4, 0x100152309; GFX6-NEXT:    s_bfe_u32 s17, s4, 0x1001b2310; GFX6-NEXT:    s_bfe_u32 s18, s4, 0x100192311; GFX6-NEXT:    s_lshr_b32 s19, s4, 312312; GFX6-NEXT:    s_bfe_u32 s20, s4, 0x1001d2313; GFX6-NEXT:    s_and_b32 s21, s4, 12314; GFX6-NEXT:    s_bfe_u32 s22, s4, 0x100022315; GFX6-NEXT:    s_bfe_u32 s23, s4, 0x100062316; GFX6-NEXT:    s_bfe_u32 s24, s4, 0x100042317; GFX6-NEXT:    s_bfe_u32 s25, s4, 0x1000a2318; GFX6-NEXT:    s_bfe_u32 s26, s4, 0x100082319; GFX6-NEXT:    s_bfe_u32 s27, s4, 0x1000e2320; GFX6-NEXT:    s_bfe_u32 s28, s4, 0x1000c2321; GFX6-NEXT:    s_bfe_u32 s29, s4, 0x100122322; GFX6-NEXT:    s_bfe_u32 s30, s4, 0x100102323; GFX6-NEXT:    s_bfe_u32 s31, s4, 0x100162324; GFX6-NEXT:    s_bfe_u32 s33, s4, 0x100142325; GFX6-NEXT:    s_bfe_u32 s34, s4, 0x1001a2326; GFX6-NEXT:    s_bfe_u32 s35, s4, 0x1001e2327; GFX6-NEXT:    s_bfe_u32 s36, s4, 0x1001c2328; GFX6-NEXT:    s_bfe_u32 s4, s4, 0x100182329; GFX6-NEXT:    v_mov_b32_e32 v0, s362330; GFX6-NEXT:    v_mov_b32_e32 v1, s202331; GFX6-NEXT:    v_mov_b32_e32 v2, s352332; GFX6-NEXT:    v_mov_b32_e32 v3, s192333; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1122334; GFX6-NEXT:    s_waitcnt expcnt(0)2335; GFX6-NEXT:    v_mov_b32_e32 v0, s42336; GFX6-NEXT:    v_mov_b32_e32 v1, s182337; GFX6-NEXT:    v_mov_b32_e32 v2, s342338; GFX6-NEXT:    v_mov_b32_e32 v3, s172339; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:962340; GFX6-NEXT:    s_waitcnt expcnt(0)2341; GFX6-NEXT:    v_mov_b32_e32 v0, s332342; GFX6-NEXT:    v_mov_b32_e32 v1, s162343; GFX6-NEXT:    v_mov_b32_e32 v2, s312344; GFX6-NEXT:    v_mov_b32_e32 v3, s152345; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:802346; GFX6-NEXT:    s_waitcnt expcnt(0)2347; GFX6-NEXT:    v_mov_b32_e32 v0, s302348; GFX6-NEXT:    v_mov_b32_e32 v1, s142349; GFX6-NEXT:    v_mov_b32_e32 v2, s292350; GFX6-NEXT:    v_mov_b32_e32 v3, s132351; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:642352; GFX6-NEXT:    s_waitcnt expcnt(0)2353; GFX6-NEXT:    v_mov_b32_e32 v0, s282354; GFX6-NEXT:    v_mov_b32_e32 v1, s122355; GFX6-NEXT:    v_mov_b32_e32 v2, s272356; GFX6-NEXT:    v_mov_b32_e32 v3, s112357; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:482358; GFX6-NEXT:    s_waitcnt expcnt(0)2359; GFX6-NEXT:    v_mov_b32_e32 v0, s262360; GFX6-NEXT:    v_mov_b32_e32 v1, s102361; GFX6-NEXT:    v_mov_b32_e32 v2, s252362; GFX6-NEXT:    v_mov_b32_e32 v3, s92363; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:322364; GFX6-NEXT:    s_waitcnt expcnt(0)2365; GFX6-NEXT:    v_mov_b32_e32 v0, s242366; GFX6-NEXT:    v_mov_b32_e32 v1, s82367; GFX6-NEXT:    v_mov_b32_e32 v2, s232368; GFX6-NEXT:    v_mov_b32_e32 v3, s72369; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:162370; GFX6-NEXT:    s_waitcnt expcnt(0)2371; GFX6-NEXT:    v_mov_b32_e32 v0, s212372; GFX6-NEXT:    v_mov_b32_e32 v1, s62373; GFX6-NEXT:    v_mov_b32_e32 v2, s222374; GFX6-NEXT:    v_mov_b32_e32 v3, s52375; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 02376; GFX6-NEXT:    s_endpgm2377;2378; GFX8-LABEL: constant_zextload_v32i1_to_v32i32:2379; GFX8:       ; %bb.0:2380; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x242381; GFX8-NEXT:    s_waitcnt lgkmcnt(0)2382; GFX8-NEXT:    s_load_dword s2, s[2:3], 0x02383; GFX8-NEXT:    s_waitcnt lgkmcnt(0)2384; GFX8-NEXT:    s_bfe_u32 s4, s2, 0x100032385; GFX8-NEXT:    s_bfe_u32 s5, s2, 0x100012386; GFX8-NEXT:    s_bfe_u32 s6, s2, 0x100072387; GFX8-NEXT:    s_bfe_u32 s7, s2, 0x100052388; GFX8-NEXT:    s_bfe_u32 s8, s2, 0x1000b2389; GFX8-NEXT:    s_bfe_u32 s9, s2, 0x100092390; GFX8-NEXT:    s_bfe_u32 s10, s2, 0x1000f2391; GFX8-NEXT:    s_bfe_u32 s11, s2, 0x1000d2392; GFX8-NEXT:    s_bfe_u32 s12, s2, 0x100132393; GFX8-NEXT:    s_bfe_u32 s13, s2, 0x100112394; GFX8-NEXT:    s_bfe_u32 s14, s2, 0x100172395; GFX8-NEXT:    s_bfe_u32 s15, s2, 0x1001b2396; GFX8-NEXT:    s_bfe_u32 s16, s2, 0x100192397; GFX8-NEXT:    s_lshr_b32 s3, s2, 312398; GFX8-NEXT:    s_bfe_u32 s17, s2, 0x1001d2399; GFX8-NEXT:    s_and_b32 s18, s2, 12400; GFX8-NEXT:    s_bfe_u32 s19, s2, 0x100022401; GFX8-NEXT:    s_bfe_u32 s20, s2, 0x100062402; GFX8-NEXT:    s_bfe_u32 s21, s2, 0x100042403; GFX8-NEXT:    s_bfe_u32 s22, s2, 0x1000a2404; GFX8-NEXT:    s_bfe_u32 s23, s2, 0x100082405; GFX8-NEXT:    s_bfe_u32 s24, s2, 0x1000e2406; GFX8-NEXT:    s_bfe_u32 s25, s2, 0x1000c2407; GFX8-NEXT:    s_bfe_u32 s26, s2, 0x100122408; GFX8-NEXT:    s_bfe_u32 s27, s2, 0x100102409; GFX8-NEXT:    s_bfe_u32 s28, s2, 0x100162410; GFX8-NEXT:    s_bfe_u32 s29, s2, 0x100152411; GFX8-NEXT:    s_bfe_u32 s30, s2, 0x100142412; GFX8-NEXT:    s_bfe_u32 s31, s2, 0x1001a2413; GFX8-NEXT:    s_bfe_u32 s33, s2, 0x100182414; GFX8-NEXT:    s_bfe_u32 s34, s2, 0x1001e2415; GFX8-NEXT:    s_bfe_u32 s2, s2, 0x1001c2416; GFX8-NEXT:    v_mov_b32_e32 v0, s22417; GFX8-NEXT:    s_add_u32 s2, s0, 0x702418; GFX8-NEXT:    v_mov_b32_e32 v3, s32419; GFX8-NEXT:    s_addc_u32 s3, s1, 02420; GFX8-NEXT:    v_mov_b32_e32 v5, s32421; GFX8-NEXT:    v_mov_b32_e32 v4, s22422; GFX8-NEXT:    s_add_u32 s2, s0, 0x602423; GFX8-NEXT:    v_mov_b32_e32 v1, s172424; GFX8-NEXT:    v_mov_b32_e32 v2, s342425; GFX8-NEXT:    s_addc_u32 s3, s1, 02426; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]2427; GFX8-NEXT:    v_mov_b32_e32 v5, s32428; GFX8-NEXT:    v_mov_b32_e32 v4, s22429; GFX8-NEXT:    s_add_u32 s2, s0, 0x502430; GFX8-NEXT:    v_mov_b32_e32 v0, s332431; GFX8-NEXT:    v_mov_b32_e32 v1, s162432; GFX8-NEXT:    v_mov_b32_e32 v2, s312433; GFX8-NEXT:    v_mov_b32_e32 v3, s152434; GFX8-NEXT:    s_addc_u32 s3, s1, 02435; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]2436; GFX8-NEXT:    v_mov_b32_e32 v5, s32437; GFX8-NEXT:    v_mov_b32_e32 v4, s22438; GFX8-NEXT:    s_add_u32 s2, s0, 642439; GFX8-NEXT:    v_mov_b32_e32 v0, s302440; GFX8-NEXT:    v_mov_b32_e32 v1, s292441; GFX8-NEXT:    v_mov_b32_e32 v2, s282442; GFX8-NEXT:    v_mov_b32_e32 v3, s142443; GFX8-NEXT:    s_addc_u32 s3, s1, 02444; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]2445; GFX8-NEXT:    v_mov_b32_e32 v5, s32446; GFX8-NEXT:    v_mov_b32_e32 v4, s22447; GFX8-NEXT:    s_add_u32 s2, s0, 482448; GFX8-NEXT:    v_mov_b32_e32 v0, s272449; GFX8-NEXT:    v_mov_b32_e32 v1, s132450; GFX8-NEXT:    v_mov_b32_e32 v2, s262451; GFX8-NEXT:    v_mov_b32_e32 v3, s122452; GFX8-NEXT:    s_addc_u32 s3, s1, 02453; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]2454; GFX8-NEXT:    v_mov_b32_e32 v5, s32455; GFX8-NEXT:    v_mov_b32_e32 v4, s22456; GFX8-NEXT:    s_add_u32 s2, s0, 322457; GFX8-NEXT:    v_mov_b32_e32 v0, s252458; GFX8-NEXT:    v_mov_b32_e32 v1, s112459; GFX8-NEXT:    v_mov_b32_e32 v2, s242460; GFX8-NEXT:    v_mov_b32_e32 v3, s102461; GFX8-NEXT:    s_addc_u32 s3, s1, 02462; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]2463; GFX8-NEXT:    v_mov_b32_e32 v5, s32464; GFX8-NEXT:    v_mov_b32_e32 v4, s22465; GFX8-NEXT:    s_add_u32 s2, s0, 162466; GFX8-NEXT:    v_mov_b32_e32 v0, s232467; GFX8-NEXT:    v_mov_b32_e32 v1, s92468; GFX8-NEXT:    v_mov_b32_e32 v2, s222469; GFX8-NEXT:    v_mov_b32_e32 v3, s82470; GFX8-NEXT:    s_addc_u32 s3, s1, 02471; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]2472; GFX8-NEXT:    v_mov_b32_e32 v5, s32473; GFX8-NEXT:    v_mov_b32_e32 v0, s212474; GFX8-NEXT:    v_mov_b32_e32 v1, s72475; GFX8-NEXT:    v_mov_b32_e32 v2, s202476; GFX8-NEXT:    v_mov_b32_e32 v3, s62477; GFX8-NEXT:    v_mov_b32_e32 v4, s22478; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]2479; GFX8-NEXT:    v_mov_b32_e32 v5, s12480; GFX8-NEXT:    v_mov_b32_e32 v0, s182481; GFX8-NEXT:    v_mov_b32_e32 v1, s52482; GFX8-NEXT:    v_mov_b32_e32 v2, s192483; GFX8-NEXT:    v_mov_b32_e32 v3, s42484; GFX8-NEXT:    v_mov_b32_e32 v4, s02485; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]2486; GFX8-NEXT:    s_endpgm2487;2488; EG-LABEL: constant_zextload_v32i1_to_v32i32:2489; EG:       ; %bb.0:2490; EG-NEXT:    ALU 0, @14, KC0[CB0:0-32], KC1[]2491; EG-NEXT:    TEX 0 @122492; EG-NEXT:    ALU 76, @15, KC0[CB0:0-32], KC1[]2493; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T11.XYZW, T26.X, 02494; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T23.XYZW, T25.X, 02495; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T21.XYZW, T24.X, 02496; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T19.XYZW, T22.X, 02497; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T17.XYZW, T20.X, 02498; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T15.XYZW, T18.X, 02499; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T13.XYZW, T16.X, 02500; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T12.XYZW, T14.X, 12501; EG-NEXT:    CF_END2502; EG-NEXT:    Fetch clause starting at 12:2503; EG-NEXT:     VTX_READ_32 T11.X, T11.X, 0, #12504; EG-NEXT:    ALU clause starting at 14:2505; EG-NEXT:     MOV * T11.X, KC0[2].Z,2506; EG-NEXT:    ALU clause starting at 15:2507; EG-NEXT:     BFE_UINT * T12.W, T11.X, literal.x, 1,2508; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)2509; EG-NEXT:     BFE_UINT * T12.Z, T11.X, literal.x, 1,2510; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)2511; EG-NEXT:     BFE_UINT T12.Y, T11.X, 1, 1,2512; EG-NEXT:     BFE_UINT * T13.W, T11.X, literal.x, 1,2513; EG-NEXT:    7(9.809089e-45), 0(0.000000e+00)2514; EG-NEXT:     AND_INT T12.X, T11.X, 1,2515; EG-NEXT:     BFE_UINT T13.Z, T11.X, literal.x, 1,2516; EG-NEXT:     LSHR * T14.X, KC0[2].Y, literal.y,2517; EG-NEXT:    6(8.407791e-45), 2(2.802597e-45)2518; EG-NEXT:     BFE_UINT T13.Y, T11.X, literal.x, 1,2519; EG-NEXT:     BFE_UINT * T15.W, T11.X, literal.y, 1,2520; EG-NEXT:    5(7.006492e-45), 11(1.541428e-44)2521; EG-NEXT:     BFE_UINT T13.X, T11.X, literal.x, 1,2522; EG-NEXT:     BFE_UINT T15.Z, T11.X, literal.y, 1,2523; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,2524; EG-NEXT:    4(5.605194e-45), 10(1.401298e-44)2525; EG-NEXT:    16(2.242078e-44), 0(0.000000e+00)2526; EG-NEXT:     LSHR T16.X, PV.W, literal.x,2527; EG-NEXT:     BFE_UINT T15.Y, T11.X, literal.y, 1,2528; EG-NEXT:     BFE_UINT * T17.W, T11.X, literal.z, 1,2529; EG-NEXT:    2(2.802597e-45), 9(1.261169e-44)2530; EG-NEXT:    15(2.101948e-44), 0(0.000000e+00)2531; EG-NEXT:     BFE_UINT T15.X, T11.X, literal.x, 1,2532; EG-NEXT:     BFE_UINT T17.Z, T11.X, literal.y, 1,2533; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,2534; EG-NEXT:    8(1.121039e-44), 14(1.961818e-44)2535; EG-NEXT:    32(4.484155e-44), 0(0.000000e+00)2536; EG-NEXT:     LSHR T18.X, PV.W, literal.x,2537; EG-NEXT:     BFE_UINT T17.Y, T11.X, literal.y, 1,2538; EG-NEXT:     BFE_UINT * T19.W, T11.X, literal.z, 1,2539; EG-NEXT:    2(2.802597e-45), 13(1.821688e-44)2540; EG-NEXT:    19(2.662467e-44), 0(0.000000e+00)2541; EG-NEXT:     BFE_UINT T17.X, T11.X, literal.x, 1,2542; EG-NEXT:     BFE_UINT T19.Z, T11.X, literal.y, 1,2543; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,2544; EG-NEXT:    12(1.681558e-44), 18(2.522337e-44)2545; EG-NEXT:    48(6.726233e-44), 0(0.000000e+00)2546; EG-NEXT:     LSHR T20.X, PV.W, literal.x,2547; EG-NEXT:     BFE_UINT T19.Y, T11.X, literal.y, 1,2548; EG-NEXT:     BFE_UINT * T21.W, T11.X, literal.z, 1,2549; EG-NEXT:    2(2.802597e-45), 17(2.382207e-44)2550; EG-NEXT:    23(3.222986e-44), 0(0.000000e+00)2551; EG-NEXT:     BFE_UINT T19.X, T11.X, literal.x, 1,2552; EG-NEXT:     BFE_UINT T21.Z, T11.X, literal.y, 1,2553; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,2554; EG-NEXT:    16(2.242078e-44), 22(3.082857e-44)2555; EG-NEXT:    64(8.968310e-44), 0(0.000000e+00)2556; EG-NEXT:     LSHR T22.X, PV.W, literal.x,2557; EG-NEXT:     BFE_UINT T21.Y, T11.X, literal.y, 1,2558; EG-NEXT:     BFE_UINT * T23.W, T11.X, literal.z, 1,2559; EG-NEXT:    2(2.802597e-45), 21(2.942727e-44)2560; EG-NEXT:    27(3.783506e-44), 0(0.000000e+00)2561; EG-NEXT:     BFE_UINT T21.X, T11.X, literal.x, 1,2562; EG-NEXT:     BFE_UINT T23.Z, T11.X, literal.y, 1,2563; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,2564; EG-NEXT:    20(2.802597e-44), 26(3.643376e-44)2565; EG-NEXT:    80(1.121039e-43), 0(0.000000e+00)2566; EG-NEXT:     LSHR T24.X, PV.W, literal.x,2567; EG-NEXT:     BFE_UINT T23.Y, T11.X, literal.y, 1,2568; EG-NEXT:     LSHR * T11.W, T11.X, literal.z,2569; EG-NEXT:    2(2.802597e-45), 25(3.503246e-44)2570; EG-NEXT:    31(4.344025e-44), 0(0.000000e+00)2571; EG-NEXT:     BFE_UINT T23.X, T11.X, literal.x, 1,2572; EG-NEXT:     BFE_UINT T11.Z, T11.X, literal.y, 1,2573; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,2574; EG-NEXT:    24(3.363116e-44), 30(4.203895e-44)2575; EG-NEXT:    96(1.345247e-43), 0(0.000000e+00)2576; EG-NEXT:     LSHR T25.X, PV.W, literal.x,2577; EG-NEXT:     BFE_UINT * T11.Y, T11.X, literal.y, 1,2578; EG-NEXT:    2(2.802597e-45), 29(4.063766e-44)2579; EG-NEXT:     BFE_UINT T11.X, T11.X, literal.x, 1,2580; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,2581; EG-NEXT:    28(3.923636e-44), 112(1.569454e-43)2582; EG-NEXT:     LSHR * T26.X, PV.W, literal.x,2583; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)2584;2585; GFX12-LABEL: constant_zextload_v32i1_to_v32i32:2586; GFX12:       ; %bb.0:2587; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x242588; GFX12-NEXT:    s_wait_kmcnt 0x02589; GFX12-NEXT:    s_load_b32 s2, s[2:3], 0x02590; GFX12-NEXT:    s_wait_kmcnt 0x02591; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100032592; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100012593; GFX12-NEXT:    s_bfe_u32 s5, s2, 0x100072594; GFX12-NEXT:    s_bfe_u32 s6, s2, 0x100052595; GFX12-NEXT:    s_bfe_u32 s7, s2, 0x1000b2596; GFX12-NEXT:    s_bfe_u32 s8, s2, 0x100092597; GFX12-NEXT:    s_bfe_u32 s9, s2, 0x1000f2598; GFX12-NEXT:    s_bfe_u32 s10, s2, 0x1000d2599; GFX12-NEXT:    s_bfe_u32 s11, s2, 0x100132600; GFX12-NEXT:    s_bfe_u32 s12, s2, 0x100112601; GFX12-NEXT:    s_bfe_u32 s13, s2, 0x100172602; GFX12-NEXT:    s_bfe_u32 s14, s2, 0x1001b2603; GFX12-NEXT:    s_bfe_u32 s15, s2, 0x100192604; GFX12-NEXT:    s_lshr_b32 s16, s2, 312605; GFX12-NEXT:    s_bfe_u32 s17, s2, 0x1001d2606; GFX12-NEXT:    s_and_b32 s18, s2, 12607; GFX12-NEXT:    s_bfe_u32 s19, s2, 0x100022608; GFX12-NEXT:    s_bfe_u32 s20, s2, 0x100062609; GFX12-NEXT:    s_bfe_u32 s21, s2, 0x100042610; GFX12-NEXT:    s_bfe_u32 s22, s2, 0x1000a2611; GFX12-NEXT:    s_bfe_u32 s23, s2, 0x100082612; GFX12-NEXT:    s_bfe_u32 s24, s2, 0x1000e2613; GFX12-NEXT:    s_bfe_u32 s25, s2, 0x1000c2614; GFX12-NEXT:    s_bfe_u32 s26, s2, 0x100122615; GFX12-NEXT:    s_bfe_u32 s27, s2, 0x100102616; GFX12-NEXT:    s_bfe_u32 s28, s2, 0x100162617; GFX12-NEXT:    s_bfe_u32 s29, s2, 0x100152618; GFX12-NEXT:    s_bfe_u32 s30, s2, 0x100142619; GFX12-NEXT:    s_bfe_u32 s31, s2, 0x1001a2620; GFX12-NEXT:    s_bfe_u32 s33, s2, 0x100182621; GFX12-NEXT:    s_bfe_u32 s34, s2, 0x1001c2622; GFX12-NEXT:    s_bfe_u32 s2, s2, 0x1001e2623; GFX12-NEXT:    v_dual_mov_b32 v24, 0 :: v_dual_mov_b32 v1, s172624; GFX12-NEXT:    v_dual_mov_b32 v0, s34 :: v_dual_mov_b32 v3, s162625; GFX12-NEXT:    v_dual_mov_b32 v2, s2 :: v_dual_mov_b32 v5, s152626; GFX12-NEXT:    v_dual_mov_b32 v4, s33 :: v_dual_mov_b32 v7, s142627; GFX12-NEXT:    v_dual_mov_b32 v6, s31 :: v_dual_mov_b32 v9, s292628; GFX12-NEXT:    v_dual_mov_b32 v8, s30 :: v_dual_mov_b32 v11, s132629; GFX12-NEXT:    v_mov_b32_e32 v10, s282630; GFX12-NEXT:    s_clause 0x12631; GFX12-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:1122632; GFX12-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:962633; GFX12-NEXT:    v_dual_mov_b32 v0, s27 :: v_dual_mov_b32 v3, s112634; GFX12-NEXT:    v_dual_mov_b32 v1, s12 :: v_dual_mov_b32 v2, s262635; GFX12-NEXT:    v_dual_mov_b32 v5, s10 :: v_dual_mov_b32 v4, s252636; GFX12-NEXT:    v_dual_mov_b32 v7, s9 :: v_dual_mov_b32 v6, s242637; GFX12-NEXT:    v_dual_mov_b32 v13, s8 :: v_dual_mov_b32 v12, s232638; GFX12-NEXT:    v_dual_mov_b32 v15, s7 :: v_dual_mov_b32 v14, s222639; GFX12-NEXT:    v_dual_mov_b32 v17, s6 :: v_dual_mov_b32 v16, s212640; GFX12-NEXT:    v_dual_mov_b32 v19, s5 :: v_dual_mov_b32 v18, s202641; GFX12-NEXT:    v_dual_mov_b32 v21, s4 :: v_dual_mov_b32 v20, s182642; GFX12-NEXT:    v_dual_mov_b32 v23, s3 :: v_dual_mov_b32 v22, s192643; GFX12-NEXT:    s_clause 0x52644; GFX12-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:802645; GFX12-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:642646; GFX12-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:482647; GFX12-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:322648; GFX12-NEXT:    global_store_b128 v24, v[16:19], s[0:1] offset:162649; GFX12-NEXT:    global_store_b128 v24, v[20:23], s[0:1]2650; GFX12-NEXT:    s_endpgm2651;2652; GFX1250-LABEL: constant_zextload_v32i1_to_v32i32:2653; GFX1250:       ; %bb.0:2654; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 12655; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x242656; GFX1250-NEXT:    s_wait_kmcnt 0x02657; GFX1250-NEXT:    s_load_b32 s2, s[2:3], 0x02658; GFX1250-NEXT:    s_wait_kmcnt 0x02659; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100032660; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100012661; GFX1250-NEXT:    s_bfe_u32 s5, s2, 0x100072662; GFX1250-NEXT:    s_bfe_u32 s6, s2, 0x100052663; GFX1250-NEXT:    s_bfe_u32 s7, s2, 0x1000b2664; GFX1250-NEXT:    s_bfe_u32 s8, s2, 0x100092665; GFX1250-NEXT:    s_bfe_u32 s9, s2, 0x1000f2666; GFX1250-NEXT:    s_bfe_u32 s10, s2, 0x1000d2667; GFX1250-NEXT:    s_bfe_u32 s11, s2, 0x100132668; GFX1250-NEXT:    s_bfe_u32 s12, s2, 0x100112669; GFX1250-NEXT:    s_bfe_u32 s13, s2, 0x100172670; GFX1250-NEXT:    s_bfe_u32 s14, s2, 0x1001b2671; GFX1250-NEXT:    s_bfe_u32 s15, s2, 0x100192672; GFX1250-NEXT:    s_lshr_b32 s16, s2, 312673; GFX1250-NEXT:    s_bfe_u32 s17, s2, 0x1001d2674; GFX1250-NEXT:    s_and_b32 s18, s2, 12675; GFX1250-NEXT:    s_bfe_u32 s19, s2, 0x100022676; GFX1250-NEXT:    s_bfe_u32 s20, s2, 0x100062677; GFX1250-NEXT:    s_bfe_u32 s21, s2, 0x100042678; GFX1250-NEXT:    s_bfe_u32 s22, s2, 0x1000a2679; GFX1250-NEXT:    s_bfe_u32 s23, s2, 0x100082680; GFX1250-NEXT:    s_bfe_u32 s24, s2, 0x1000e2681; GFX1250-NEXT:    s_bfe_u32 s25, s2, 0x1000c2682; GFX1250-NEXT:    s_bfe_u32 s26, s2, 0x100122683; GFX1250-NEXT:    s_bfe_u32 s27, s2, 0x100102684; GFX1250-NEXT:    s_bfe_u32 s28, s2, 0x100162685; GFX1250-NEXT:    s_bfe_u32 s29, s2, 0x100152686; GFX1250-NEXT:    s_bfe_u32 s30, s2, 0x100142687; GFX1250-NEXT:    s_bfe_u32 s31, s2, 0x1001a2688; GFX1250-NEXT:    s_bfe_u32 s33, s2, 0x100182689; GFX1250-NEXT:    s_bfe_u32 s34, s2, 0x1001c2690; GFX1250-NEXT:    s_bfe_u32 s2, s2, 0x1001e2691; GFX1250-NEXT:    v_dual_mov_b32 v24, 0 :: v_dual_mov_b32 v0, s342692; GFX1250-NEXT:    v_dual_mov_b32 v1, s17 :: v_dual_mov_b32 v2, s22693; GFX1250-NEXT:    v_dual_mov_b32 v3, s16 :: v_dual_mov_b32 v4, s332694; GFX1250-NEXT:    v_dual_mov_b32 v5, s15 :: v_dual_mov_b32 v6, s312695; GFX1250-NEXT:    v_dual_mov_b32 v7, s14 :: v_dual_mov_b32 v8, s302696; GFX1250-NEXT:    v_dual_mov_b32 v9, s29 :: v_dual_mov_b32 v10, s282697; GFX1250-NEXT:    v_mov_b32_e32 v11, s132698; GFX1250-NEXT:    s_clause 0x12699; GFX1250-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:1122700; GFX1250-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:962701; GFX1250-NEXT:    s_wait_xcnt 0x12702; GFX1250-NEXT:    v_dual_mov_b32 v0, s27 :: v_dual_mov_b32 v1, s122703; GFX1250-NEXT:    v_dual_mov_b32 v2, s26 :: v_dual_mov_b32 v3, s112704; GFX1250-NEXT:    s_wait_xcnt 0x02705; GFX1250-NEXT:    v_dual_mov_b32 v4, s25 :: v_dual_mov_b32 v5, s102706; GFX1250-NEXT:    v_dual_mov_b32 v6, s24 :: v_dual_mov_b32 v7, s92707; GFX1250-NEXT:    v_dual_mov_b32 v12, s23 :: v_dual_mov_b32 v13, s82708; GFX1250-NEXT:    v_dual_mov_b32 v14, s22 :: v_dual_mov_b32 v15, s72709; GFX1250-NEXT:    v_dual_mov_b32 v16, s21 :: v_dual_mov_b32 v17, s62710; GFX1250-NEXT:    v_dual_mov_b32 v18, s20 :: v_dual_mov_b32 v19, s52711; GFX1250-NEXT:    v_dual_mov_b32 v20, s18 :: v_dual_mov_b32 v21, s42712; GFX1250-NEXT:    v_dual_mov_b32 v22, s19 :: v_dual_mov_b32 v23, s32713; GFX1250-NEXT:    s_clause 0x52714; GFX1250-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:802715; GFX1250-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:642716; GFX1250-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:482717; GFX1250-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:322718; GFX1250-NEXT:    global_store_b128 v24, v[16:19], s[0:1] offset:162719; GFX1250-NEXT:    global_store_b128 v24, v[20:23], s[0:1]2720; GFX1250-NEXT:    s_endpgm2721  %load = load <32 x i1>, ptr addrspace(4) %in2722  %ext = zext <32 x i1> %load to <32 x i32>2723  store <32 x i32> %ext, ptr addrspace(1) %out2724  ret void2725}2726 2727define amdgpu_kernel void @constant_sextload_v32i1_to_v32i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {2728; GFX6-LABEL: constant_sextload_v32i1_to_v32i32:2729; GFX6:       ; %bb.0:2730; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x92731; GFX6-NEXT:    s_waitcnt lgkmcnt(0)2732; GFX6-NEXT:    s_load_dword s4, s[2:3], 0x02733; GFX6-NEXT:    s_mov_b32 s3, 0xf0002734; GFX6-NEXT:    s_mov_b32 s2, -12735; GFX6-NEXT:    s_waitcnt lgkmcnt(0)2736; GFX6-NEXT:    s_bfe_i32 s5, s4, 0x100032737; GFX6-NEXT:    s_bfe_i32 s6, s4, 0x100022738; GFX6-NEXT:    s_bfe_i32 s7, s4, 0x100012739; GFX6-NEXT:    s_bfe_i32 s8, s4, 0x100002740; GFX6-NEXT:    s_bfe_i32 s9, s4, 0x100072741; GFX6-NEXT:    s_bfe_i32 s10, s4, 0x100062742; GFX6-NEXT:    s_bfe_i32 s11, s4, 0x100052743; GFX6-NEXT:    s_bfe_i32 s12, s4, 0x100042744; GFX6-NEXT:    s_bfe_i32 s13, s4, 0x1000b2745; GFX6-NEXT:    s_bfe_i32 s14, s4, 0x1000a2746; GFX6-NEXT:    s_bfe_i32 s15, s4, 0x100092747; GFX6-NEXT:    s_bfe_i32 s16, s4, 0x100082748; GFX6-NEXT:    s_bfe_i32 s17, s4, 0x1000f2749; GFX6-NEXT:    s_bfe_i32 s18, s4, 0x1000e2750; GFX6-NEXT:    s_bfe_i32 s19, s4, 0x1000d2751; GFX6-NEXT:    s_bfe_i32 s20, s4, 0x1000c2752; GFX6-NEXT:    s_bfe_i32 s21, s4, 0x100132753; GFX6-NEXT:    s_bfe_i32 s22, s4, 0x100122754; GFX6-NEXT:    s_bfe_i32 s23, s4, 0x100112755; GFX6-NEXT:    s_bfe_i32 s24, s4, 0x100102756; GFX6-NEXT:    s_bfe_i32 s25, s4, 0x100172757; GFX6-NEXT:    s_bfe_i32 s26, s4, 0x100162758; GFX6-NEXT:    s_bfe_i32 s27, s4, 0x100152759; GFX6-NEXT:    s_bfe_i32 s28, s4, 0x100142760; GFX6-NEXT:    s_bfe_i32 s29, s4, 0x1001b2761; GFX6-NEXT:    s_bfe_i32 s30, s4, 0x1001a2762; GFX6-NEXT:    s_bfe_i32 s31, s4, 0x100192763; GFX6-NEXT:    s_ashr_i32 s33, s4, 312764; GFX6-NEXT:    s_bfe_i32 s34, s4, 0x1001e2765; GFX6-NEXT:    s_bfe_i32 s35, s4, 0x1001d2766; GFX6-NEXT:    s_bfe_i32 s36, s4, 0x1001c2767; GFX6-NEXT:    s_bfe_i32 s4, s4, 0x100182768; GFX6-NEXT:    v_mov_b32_e32 v0, s362769; GFX6-NEXT:    v_mov_b32_e32 v1, s352770; GFX6-NEXT:    v_mov_b32_e32 v2, s342771; GFX6-NEXT:    v_mov_b32_e32 v3, s332772; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1122773; GFX6-NEXT:    s_waitcnt expcnt(0)2774; GFX6-NEXT:    v_mov_b32_e32 v0, s42775; GFX6-NEXT:    v_mov_b32_e32 v1, s312776; GFX6-NEXT:    v_mov_b32_e32 v2, s302777; GFX6-NEXT:    v_mov_b32_e32 v3, s292778; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:962779; GFX6-NEXT:    s_waitcnt expcnt(0)2780; GFX6-NEXT:    v_mov_b32_e32 v0, s282781; GFX6-NEXT:    v_mov_b32_e32 v1, s272782; GFX6-NEXT:    v_mov_b32_e32 v2, s262783; GFX6-NEXT:    v_mov_b32_e32 v3, s252784; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:802785; GFX6-NEXT:    s_waitcnt expcnt(0)2786; GFX6-NEXT:    v_mov_b32_e32 v0, s242787; GFX6-NEXT:    v_mov_b32_e32 v1, s232788; GFX6-NEXT:    v_mov_b32_e32 v2, s222789; GFX6-NEXT:    v_mov_b32_e32 v3, s212790; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:642791; GFX6-NEXT:    s_waitcnt expcnt(0)2792; GFX6-NEXT:    v_mov_b32_e32 v0, s202793; GFX6-NEXT:    v_mov_b32_e32 v1, s192794; GFX6-NEXT:    v_mov_b32_e32 v2, s182795; GFX6-NEXT:    v_mov_b32_e32 v3, s172796; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:482797; GFX6-NEXT:    s_waitcnt expcnt(0)2798; GFX6-NEXT:    v_mov_b32_e32 v0, s162799; GFX6-NEXT:    v_mov_b32_e32 v1, s152800; GFX6-NEXT:    v_mov_b32_e32 v2, s142801; GFX6-NEXT:    v_mov_b32_e32 v3, s132802; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:322803; GFX6-NEXT:    s_waitcnt expcnt(0)2804; GFX6-NEXT:    v_mov_b32_e32 v0, s122805; GFX6-NEXT:    v_mov_b32_e32 v1, s112806; GFX6-NEXT:    v_mov_b32_e32 v2, s102807; GFX6-NEXT:    v_mov_b32_e32 v3, s92808; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:162809; GFX6-NEXT:    s_waitcnt expcnt(0)2810; GFX6-NEXT:    v_mov_b32_e32 v0, s82811; GFX6-NEXT:    v_mov_b32_e32 v1, s72812; GFX6-NEXT:    v_mov_b32_e32 v2, s62813; GFX6-NEXT:    v_mov_b32_e32 v3, s52814; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 02815; GFX6-NEXT:    s_endpgm2816;2817; GFX8-LABEL: constant_sextload_v32i1_to_v32i32:2818; GFX8:       ; %bb.0:2819; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x242820; GFX8-NEXT:    s_waitcnt lgkmcnt(0)2821; GFX8-NEXT:    s_load_dword s2, s[2:3], 0x02822; GFX8-NEXT:    s_waitcnt lgkmcnt(0)2823; GFX8-NEXT:    s_bfe_i32 s4, s2, 0x100032824; GFX8-NEXT:    s_bfe_i32 s5, s2, 0x100022825; GFX8-NEXT:    s_bfe_i32 s6, s2, 0x100012826; GFX8-NEXT:    s_bfe_i32 s7, s2, 0x100002827; GFX8-NEXT:    s_bfe_i32 s8, s2, 0x100072828; GFX8-NEXT:    s_bfe_i32 s9, s2, 0x100062829; GFX8-NEXT:    s_bfe_i32 s10, s2, 0x100052830; GFX8-NEXT:    s_bfe_i32 s11, s2, 0x100042831; GFX8-NEXT:    s_bfe_i32 s12, s2, 0x1000b2832; GFX8-NEXT:    s_bfe_i32 s13, s2, 0x1000a2833; GFX8-NEXT:    s_bfe_i32 s14, s2, 0x100092834; GFX8-NEXT:    s_bfe_i32 s15, s2, 0x100082835; GFX8-NEXT:    s_bfe_i32 s16, s2, 0x1000f2836; GFX8-NEXT:    s_bfe_i32 s17, s2, 0x1000e2837; GFX8-NEXT:    s_bfe_i32 s18, s2, 0x1000d2838; GFX8-NEXT:    s_bfe_i32 s19, s2, 0x1000c2839; GFX8-NEXT:    s_bfe_i32 s20, s2, 0x100132840; GFX8-NEXT:    s_bfe_i32 s21, s2, 0x100122841; GFX8-NEXT:    s_bfe_i32 s22, s2, 0x100112842; GFX8-NEXT:    s_bfe_i32 s23, s2, 0x100102843; GFX8-NEXT:    s_bfe_i32 s24, s2, 0x100172844; GFX8-NEXT:    s_bfe_i32 s25, s2, 0x100162845; GFX8-NEXT:    s_bfe_i32 s26, s2, 0x100152846; GFX8-NEXT:    s_bfe_i32 s27, s2, 0x100142847; GFX8-NEXT:    s_bfe_i32 s28, s2, 0x1001b2848; GFX8-NEXT:    s_bfe_i32 s29, s2, 0x1001a2849; GFX8-NEXT:    s_bfe_i32 s30, s2, 0x100192850; GFX8-NEXT:    s_bfe_i32 s31, s2, 0x100182851; GFX8-NEXT:    s_ashr_i32 s3, s2, 312852; GFX8-NEXT:    s_bfe_i32 s33, s2, 0x1001e2853; GFX8-NEXT:    s_bfe_i32 s34, s2, 0x1001d2854; GFX8-NEXT:    s_bfe_i32 s2, s2, 0x1001c2855; GFX8-NEXT:    v_mov_b32_e32 v0, s22856; GFX8-NEXT:    s_add_u32 s2, s0, 0x702857; GFX8-NEXT:    v_mov_b32_e32 v3, s32858; GFX8-NEXT:    s_addc_u32 s3, s1, 02859; GFX8-NEXT:    v_mov_b32_e32 v5, s32860; GFX8-NEXT:    v_mov_b32_e32 v4, s22861; GFX8-NEXT:    s_add_u32 s2, s0, 0x602862; GFX8-NEXT:    v_mov_b32_e32 v1, s342863; GFX8-NEXT:    v_mov_b32_e32 v2, s332864; GFX8-NEXT:    s_addc_u32 s3, s1, 02865; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]2866; GFX8-NEXT:    v_mov_b32_e32 v5, s32867; GFX8-NEXT:    v_mov_b32_e32 v4, s22868; GFX8-NEXT:    s_add_u32 s2, s0, 0x502869; GFX8-NEXT:    v_mov_b32_e32 v0, s312870; GFX8-NEXT:    v_mov_b32_e32 v1, s302871; GFX8-NEXT:    v_mov_b32_e32 v2, s292872; GFX8-NEXT:    v_mov_b32_e32 v3, s282873; GFX8-NEXT:    s_addc_u32 s3, s1, 02874; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]2875; GFX8-NEXT:    v_mov_b32_e32 v5, s32876; GFX8-NEXT:    v_mov_b32_e32 v4, s22877; GFX8-NEXT:    s_add_u32 s2, s0, 642878; GFX8-NEXT:    v_mov_b32_e32 v0, s272879; GFX8-NEXT:    v_mov_b32_e32 v1, s262880; GFX8-NEXT:    v_mov_b32_e32 v2, s252881; GFX8-NEXT:    v_mov_b32_e32 v3, s242882; GFX8-NEXT:    s_addc_u32 s3, s1, 02883; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]2884; GFX8-NEXT:    v_mov_b32_e32 v5, s32885; GFX8-NEXT:    v_mov_b32_e32 v4, s22886; GFX8-NEXT:    s_add_u32 s2, s0, 482887; GFX8-NEXT:    v_mov_b32_e32 v0, s232888; GFX8-NEXT:    v_mov_b32_e32 v1, s222889; GFX8-NEXT:    v_mov_b32_e32 v2, s212890; GFX8-NEXT:    v_mov_b32_e32 v3, s202891; GFX8-NEXT:    s_addc_u32 s3, s1, 02892; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]2893; GFX8-NEXT:    v_mov_b32_e32 v5, s32894; GFX8-NEXT:    v_mov_b32_e32 v4, s22895; GFX8-NEXT:    s_add_u32 s2, s0, 322896; GFX8-NEXT:    v_mov_b32_e32 v0, s192897; GFX8-NEXT:    v_mov_b32_e32 v1, s182898; GFX8-NEXT:    v_mov_b32_e32 v2, s172899; GFX8-NEXT:    v_mov_b32_e32 v3, s162900; GFX8-NEXT:    s_addc_u32 s3, s1, 02901; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]2902; GFX8-NEXT:    v_mov_b32_e32 v5, s32903; GFX8-NEXT:    v_mov_b32_e32 v4, s22904; GFX8-NEXT:    s_add_u32 s2, s0, 162905; GFX8-NEXT:    v_mov_b32_e32 v0, s152906; GFX8-NEXT:    v_mov_b32_e32 v1, s142907; GFX8-NEXT:    v_mov_b32_e32 v2, s132908; GFX8-NEXT:    v_mov_b32_e32 v3, s122909; GFX8-NEXT:    s_addc_u32 s3, s1, 02910; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]2911; GFX8-NEXT:    v_mov_b32_e32 v5, s32912; GFX8-NEXT:    v_mov_b32_e32 v0, s112913; GFX8-NEXT:    v_mov_b32_e32 v1, s102914; GFX8-NEXT:    v_mov_b32_e32 v2, s92915; GFX8-NEXT:    v_mov_b32_e32 v3, s82916; GFX8-NEXT:    v_mov_b32_e32 v4, s22917; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]2918; GFX8-NEXT:    v_mov_b32_e32 v5, s12919; GFX8-NEXT:    v_mov_b32_e32 v0, s72920; GFX8-NEXT:    v_mov_b32_e32 v1, s62921; GFX8-NEXT:    v_mov_b32_e32 v2, s52922; GFX8-NEXT:    v_mov_b32_e32 v3, s42923; GFX8-NEXT:    v_mov_b32_e32 v4, s02924; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]2925; GFX8-NEXT:    s_endpgm2926;2927; EG-LABEL: constant_sextload_v32i1_to_v32i32:2928; EG:       ; %bb.0:2929; EG-NEXT:    ALU 0, @16, KC0[CB0:0-32], KC1[]2930; EG-NEXT:    TEX 0 @142931; EG-NEXT:    ALU 99, @17, KC0[CB0:0-32], KC1[]2932; EG-NEXT:    ALU 5, @117, KC0[CB0:0-32], KC1[]2933; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T24.XYZW, T11.X, 02934; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T22.XYZW, T26.X, 02935; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T20.XYZW, T23.X, 02936; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T18.XYZW, T21.X, 02937; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T16.XYZW, T19.X, 02938; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T14.XYZW, T17.X, 02939; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T12.XYZW, T15.X, 02940; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T25.XYZW, T13.X, 12941; EG-NEXT:    CF_END2942; EG-NEXT:    PAD2943; EG-NEXT:    Fetch clause starting at 14:2944; EG-NEXT:     VTX_READ_32 T11.X, T11.X, 0, #12945; EG-NEXT:    ALU clause starting at 16:2946; EG-NEXT:     MOV * T11.X, KC0[2].Z,2947; EG-NEXT:    ALU clause starting at 17:2948; EG-NEXT:     LSHR * T0.W, T11.X, literal.x,2949; EG-NEXT:    7(9.809089e-45), 0(0.000000e+00)2950; EG-NEXT:     BFE_INT T12.W, PV.W, 0.0, 1,2951; EG-NEXT:     LSHR * T0.W, T11.X, literal.x,2952; EG-NEXT:    6(8.407791e-45), 0(0.000000e+00)2953; EG-NEXT:     BFE_INT T12.Z, PS, 0.0, 1,2954; EG-NEXT:     LSHR T0.W, T11.X, literal.x,2955; EG-NEXT:     LSHR * T1.W, T11.X, literal.y,2956; EG-NEXT:    11(1.541428e-44), 5(7.006492e-45)2957; EG-NEXT:     LSHR T13.X, KC0[2].Y, literal.x,2958; EG-NEXT:     BFE_INT T12.Y, PS, 0.0, 1,2959; EG-NEXT:     LSHR T0.Z, T11.X, literal.y,2960; EG-NEXT:     BFE_INT T14.W, PV.W, 0.0, 1,2961; EG-NEXT:     LSHR * T0.W, T11.X, literal.z,2962; EG-NEXT:    2(2.802597e-45), 10(1.401298e-44)2963; EG-NEXT:    4(5.605194e-45), 0(0.000000e+00)2964; EG-NEXT:     BFE_INT T12.X, PS, 0.0, 1,2965; EG-NEXT:     LSHR T0.Y, T11.X, literal.x,2966; EG-NEXT:     BFE_INT T14.Z, PV.Z, 0.0, 1,2967; EG-NEXT:     LSHR T0.W, T11.X, literal.y,2968; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.z,2969; EG-NEXT:    15(2.101948e-44), 9(1.261169e-44)2970; EG-NEXT:    16(2.242078e-44), 0(0.000000e+00)2971; EG-NEXT:     LSHR T15.X, PS, literal.x,2972; EG-NEXT:     BFE_INT T14.Y, PV.W, 0.0, 1,2973; EG-NEXT:     LSHR T0.Z, T11.X, literal.y,2974; EG-NEXT:     BFE_INT T16.W, PV.Y, 0.0, 1,2975; EG-NEXT:     LSHR * T0.W, T11.X, literal.z,2976; EG-NEXT:    2(2.802597e-45), 14(1.961818e-44)2977; EG-NEXT:    8(1.121039e-44), 0(0.000000e+00)2978; EG-NEXT:     BFE_INT T14.X, PS, 0.0, 1,2979; EG-NEXT:     LSHR T0.Y, T11.X, literal.x,2980; EG-NEXT:     BFE_INT T16.Z, PV.Z, 0.0, 1,2981; EG-NEXT:     LSHR T0.W, T11.X, literal.y,2982; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.z,2983; EG-NEXT:    19(2.662467e-44), 13(1.821688e-44)2984; EG-NEXT:    32(4.484155e-44), 0(0.000000e+00)2985; EG-NEXT:     LSHR T17.X, PS, literal.x,2986; EG-NEXT:     BFE_INT T16.Y, PV.W, 0.0, 1,2987; EG-NEXT:     LSHR T0.Z, T11.X, literal.y,2988; EG-NEXT:     BFE_INT T18.W, PV.Y, 0.0, 1,2989; EG-NEXT:     LSHR * T0.W, T11.X, literal.z,2990; EG-NEXT:    2(2.802597e-45), 18(2.522337e-44)2991; EG-NEXT:    12(1.681558e-44), 0(0.000000e+00)2992; EG-NEXT:     BFE_INT T16.X, PS, 0.0, 1,2993; EG-NEXT:     LSHR T0.Y, T11.X, literal.x,2994; EG-NEXT:     BFE_INT T18.Z, PV.Z, 0.0, 1,2995; EG-NEXT:     LSHR T0.W, T11.X, literal.y,2996; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.z,2997; EG-NEXT:    23(3.222986e-44), 17(2.382207e-44)2998; EG-NEXT:    48(6.726233e-44), 0(0.000000e+00)2999; EG-NEXT:     LSHR T19.X, PS, literal.x,3000; EG-NEXT:     BFE_INT T18.Y, PV.W, 0.0, 1,3001; EG-NEXT:     LSHR T0.Z, T11.X, literal.y,3002; EG-NEXT:     BFE_INT T20.W, PV.Y, 0.0, 1,3003; EG-NEXT:     LSHR * T0.W, T11.X, literal.z,3004; EG-NEXT:    2(2.802597e-45), 22(3.082857e-44)3005; EG-NEXT:    16(2.242078e-44), 0(0.000000e+00)3006; EG-NEXT:     BFE_INT T18.X, PS, 0.0, 1,3007; EG-NEXT:     LSHR T0.Y, T11.X, literal.x,3008; EG-NEXT:     BFE_INT T20.Z, PV.Z, 0.0, 1,3009; EG-NEXT:     LSHR T0.W, T11.X, literal.y,3010; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.z,3011; EG-NEXT:    27(3.783506e-44), 21(2.942727e-44)3012; EG-NEXT:    64(8.968310e-44), 0(0.000000e+00)3013; EG-NEXT:     LSHR T21.X, PS, literal.x,3014; EG-NEXT:     BFE_INT T20.Y, PV.W, 0.0, 1,3015; EG-NEXT:     LSHR T0.Z, T11.X, literal.y,3016; EG-NEXT:     BFE_INT T22.W, PV.Y, 0.0, 1,3017; EG-NEXT:     LSHR * T0.W, T11.X, literal.z,3018; EG-NEXT:    2(2.802597e-45), 26(3.643376e-44)3019; EG-NEXT:    20(2.802597e-44), 0(0.000000e+00)3020; EG-NEXT:     BFE_INT T20.X, PS, 0.0, 1,3021; EG-NEXT:     BFE_INT T22.Z, PV.Z, 0.0, 1,3022; EG-NEXT:     LSHR T0.W, T11.X, literal.x,3023; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.y,3024; EG-NEXT:    25(3.503246e-44), 80(1.121039e-43)3025; EG-NEXT:     LSHR T23.X, PS, literal.x,3026; EG-NEXT:     BFE_INT T22.Y, PV.W, 0.0, 1,3027; EG-NEXT:     LSHR * T0.W, T11.X, literal.y,3028; EG-NEXT:    2(2.802597e-45), 24(3.363116e-44)3029; EG-NEXT:     BFE_INT T22.X, PV.W, 0.0, 1,3030; EG-NEXT:     LSHR T0.W, T11.X, literal.x,3031; EG-NEXT:     ASHR * T24.W, T11.X, literal.y,3032; EG-NEXT:    30(4.203895e-44), 31(4.344025e-44)3033; EG-NEXT:     BFE_INT T25.X, T11.X, 0.0, 1,3034; EG-NEXT:     LSHR T0.Y, T11.X, literal.x,3035; EG-NEXT:     BFE_INT T24.Z, PV.W, 0.0, 1,3036; EG-NEXT:     LSHR T0.W, T11.X, literal.y,3037; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.z,3038; EG-NEXT:    3(4.203895e-45), 29(4.063766e-44)3039; EG-NEXT:    96(1.345247e-43), 0(0.000000e+00)3040; EG-NEXT:     LSHR T26.X, PS, literal.x,3041; EG-NEXT:     BFE_INT T24.Y, PV.W, 0.0, 1,3042; EG-NEXT:     LSHR T0.Z, T11.X, literal.x,3043; EG-NEXT:     BFE_INT T25.W, PV.Y, 0.0, 1,3044; EG-NEXT:     LSHR * T0.W, T11.X, literal.y,3045; EG-NEXT:    2(2.802597e-45), 28(3.923636e-44)3046; EG-NEXT:     BFE_INT T24.X, PS, 0.0, 1,3047; EG-NEXT:     BFE_INT * T25.Z, PV.Z, 0.0, 1,3048; EG-NEXT:    ALU clause starting at 117:3049; EG-NEXT:     LSHR T0.W, T11.X, 1,3050; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.x,3051; EG-NEXT:    112(1.569454e-43), 0(0.000000e+00)3052; EG-NEXT:     LSHR T11.X, PS, literal.x,3053; EG-NEXT:     BFE_INT * T25.Y, PV.W, 0.0, 1,3054; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)3055;3056; GFX12-LABEL: constant_sextload_v32i1_to_v32i32:3057; GFX12:       ; %bb.0:3058; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x243059; GFX12-NEXT:    s_wait_kmcnt 0x03060; GFX12-NEXT:    s_load_b32 s2, s[2:3], 0x03061; GFX12-NEXT:    s_wait_kmcnt 0x03062; GFX12-NEXT:    s_bfe_i32 s3, s2, 0x100033063; GFX12-NEXT:    s_bfe_i32 s4, s2, 0x100023064; GFX12-NEXT:    s_bfe_i32 s5, s2, 0x100013065; GFX12-NEXT:    s_bfe_i32 s6, s2, 0x100003066; GFX12-NEXT:    s_bfe_i32 s7, s2, 0x100073067; GFX12-NEXT:    s_bfe_i32 s8, s2, 0x100063068; GFX12-NEXT:    s_bfe_i32 s9, s2, 0x100053069; GFX12-NEXT:    s_bfe_i32 s10, s2, 0x100043070; GFX12-NEXT:    s_bfe_i32 s11, s2, 0x1000b3071; GFX12-NEXT:    s_bfe_i32 s12, s2, 0x1000a3072; GFX12-NEXT:    s_bfe_i32 s13, s2, 0x100093073; GFX12-NEXT:    s_bfe_i32 s14, s2, 0x100083074; GFX12-NEXT:    s_bfe_i32 s15, s2, 0x1000f3075; GFX12-NEXT:    s_bfe_i32 s16, s2, 0x1000e3076; GFX12-NEXT:    s_bfe_i32 s17, s2, 0x1000d3077; GFX12-NEXT:    s_bfe_i32 s18, s2, 0x1000c3078; GFX12-NEXT:    s_bfe_i32 s19, s2, 0x100133079; GFX12-NEXT:    s_bfe_i32 s20, s2, 0x100123080; GFX12-NEXT:    s_bfe_i32 s21, s2, 0x100113081; GFX12-NEXT:    s_bfe_i32 s22, s2, 0x100103082; GFX12-NEXT:    s_bfe_i32 s23, s2, 0x100173083; GFX12-NEXT:    s_bfe_i32 s24, s2, 0x100163084; GFX12-NEXT:    s_bfe_i32 s25, s2, 0x100153085; GFX12-NEXT:    s_bfe_i32 s26, s2, 0x100143086; GFX12-NEXT:    s_bfe_i32 s27, s2, 0x1001b3087; GFX12-NEXT:    s_bfe_i32 s28, s2, 0x1001a3088; GFX12-NEXT:    s_bfe_i32 s29, s2, 0x100193089; GFX12-NEXT:    s_bfe_i32 s30, s2, 0x100183090; GFX12-NEXT:    s_ashr_i32 s31, s2, 313091; GFX12-NEXT:    s_bfe_i32 s33, s2, 0x1001e3092; GFX12-NEXT:    s_bfe_i32 s34, s2, 0x1001c3093; GFX12-NEXT:    s_bfe_i32 s2, s2, 0x1001d3094; GFX12-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)3095; GFX12-NEXT:    v_dual_mov_b32 v24, 0 :: v_dual_mov_b32 v1, s23096; GFX12-NEXT:    v_dual_mov_b32 v0, s34 :: v_dual_mov_b32 v3, s313097; GFX12-NEXT:    v_dual_mov_b32 v2, s33 :: v_dual_mov_b32 v5, s293098; GFX12-NEXT:    v_dual_mov_b32 v4, s30 :: v_dual_mov_b32 v7, s273099; GFX12-NEXT:    v_dual_mov_b32 v6, s28 :: v_dual_mov_b32 v9, s253100; GFX12-NEXT:    v_dual_mov_b32 v8, s26 :: v_dual_mov_b32 v11, s233101; GFX12-NEXT:    v_mov_b32_e32 v10, s243102; GFX12-NEXT:    s_clause 0x13103; GFX12-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:1123104; GFX12-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:963105; GFX12-NEXT:    v_dual_mov_b32 v0, s22 :: v_dual_mov_b32 v3, s193106; GFX12-NEXT:    v_dual_mov_b32 v1, s21 :: v_dual_mov_b32 v2, s203107; GFX12-NEXT:    v_dual_mov_b32 v5, s17 :: v_dual_mov_b32 v4, s183108; GFX12-NEXT:    v_dual_mov_b32 v7, s15 :: v_dual_mov_b32 v6, s163109; GFX12-NEXT:    v_dual_mov_b32 v13, s13 :: v_dual_mov_b32 v12, s143110; GFX12-NEXT:    v_dual_mov_b32 v15, s11 :: v_dual_mov_b32 v14, s123111; GFX12-NEXT:    v_dual_mov_b32 v17, s9 :: v_dual_mov_b32 v16, s103112; GFX12-NEXT:    v_dual_mov_b32 v19, s7 :: v_dual_mov_b32 v18, s83113; GFX12-NEXT:    v_dual_mov_b32 v21, s5 :: v_dual_mov_b32 v20, s63114; GFX12-NEXT:    v_dual_mov_b32 v23, s3 :: v_dual_mov_b32 v22, s43115; GFX12-NEXT:    s_clause 0x53116; GFX12-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:803117; GFX12-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:643118; GFX12-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:483119; GFX12-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:323120; GFX12-NEXT:    global_store_b128 v24, v[16:19], s[0:1] offset:163121; GFX12-NEXT:    global_store_b128 v24, v[20:23], s[0:1]3122; GFX12-NEXT:    s_endpgm3123;3124; GFX1250-LABEL: constant_sextload_v32i1_to_v32i32:3125; GFX1250:       ; %bb.0:3126; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 13127; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x243128; GFX1250-NEXT:    s_wait_kmcnt 0x03129; GFX1250-NEXT:    s_load_b32 s2, s[2:3], 0x03130; GFX1250-NEXT:    s_wait_kmcnt 0x03131; GFX1250-NEXT:    s_bfe_i32 s3, s2, 0x100033132; GFX1250-NEXT:    s_bfe_i32 s4, s2, 0x100023133; GFX1250-NEXT:    s_bfe_i32 s5, s2, 0x100013134; GFX1250-NEXT:    s_bfe_i32 s6, s2, 0x100003135; GFX1250-NEXT:    s_bfe_i32 s7, s2, 0x100073136; GFX1250-NEXT:    s_bfe_i32 s8, s2, 0x100063137; GFX1250-NEXT:    s_bfe_i32 s9, s2, 0x100053138; GFX1250-NEXT:    s_bfe_i32 s10, s2, 0x100043139; GFX1250-NEXT:    s_bfe_i32 s11, s2, 0x1000b3140; GFX1250-NEXT:    s_bfe_i32 s12, s2, 0x1000a3141; GFX1250-NEXT:    s_bfe_i32 s13, s2, 0x100093142; GFX1250-NEXT:    s_bfe_i32 s14, s2, 0x100083143; GFX1250-NEXT:    s_bfe_i32 s15, s2, 0x1000f3144; GFX1250-NEXT:    s_bfe_i32 s16, s2, 0x1000e3145; GFX1250-NEXT:    s_bfe_i32 s17, s2, 0x1000d3146; GFX1250-NEXT:    s_bfe_i32 s18, s2, 0x1000c3147; GFX1250-NEXT:    s_bfe_i32 s19, s2, 0x100133148; GFX1250-NEXT:    s_bfe_i32 s20, s2, 0x100123149; GFX1250-NEXT:    s_bfe_i32 s21, s2, 0x100113150; GFX1250-NEXT:    s_bfe_i32 s22, s2, 0x100103151; GFX1250-NEXT:    s_bfe_i32 s23, s2, 0x100173152; GFX1250-NEXT:    s_bfe_i32 s24, s2, 0x100163153; GFX1250-NEXT:    s_bfe_i32 s25, s2, 0x100153154; GFX1250-NEXT:    s_bfe_i32 s26, s2, 0x100143155; GFX1250-NEXT:    s_bfe_i32 s27, s2, 0x1001b3156; GFX1250-NEXT:    s_bfe_i32 s28, s2, 0x1001a3157; GFX1250-NEXT:    s_bfe_i32 s29, s2, 0x100193158; GFX1250-NEXT:    s_bfe_i32 s30, s2, 0x100183159; GFX1250-NEXT:    s_ashr_i32 s31, s2, 313160; GFX1250-NEXT:    s_bfe_i32 s33, s2, 0x1001e3161; GFX1250-NEXT:    s_bfe_i32 s34, s2, 0x1001c3162; GFX1250-NEXT:    s_bfe_i32 s2, s2, 0x1001d3163; GFX1250-NEXT:    v_dual_mov_b32 v24, 0 :: v_dual_mov_b32 v0, s343164; GFX1250-NEXT:    v_dual_mov_b32 v1, s2 :: v_dual_mov_b32 v2, s333165; GFX1250-NEXT:    v_dual_mov_b32 v3, s31 :: v_dual_mov_b32 v4, s303166; GFX1250-NEXT:    v_dual_mov_b32 v5, s29 :: v_dual_mov_b32 v6, s283167; GFX1250-NEXT:    v_dual_mov_b32 v7, s27 :: v_dual_mov_b32 v8, s263168; GFX1250-NEXT:    v_dual_mov_b32 v9, s25 :: v_dual_mov_b32 v10, s243169; GFX1250-NEXT:    v_mov_b32_e32 v11, s233170; GFX1250-NEXT:    s_clause 0x13171; GFX1250-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:1123172; GFX1250-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:963173; GFX1250-NEXT:    s_wait_xcnt 0x13174; GFX1250-NEXT:    v_dual_mov_b32 v0, s22 :: v_dual_mov_b32 v1, s213175; GFX1250-NEXT:    v_dual_mov_b32 v2, s20 :: v_dual_mov_b32 v3, s193176; GFX1250-NEXT:    s_wait_xcnt 0x03177; GFX1250-NEXT:    v_dual_mov_b32 v4, s18 :: v_dual_mov_b32 v5, s173178; GFX1250-NEXT:    v_dual_mov_b32 v6, s16 :: v_dual_mov_b32 v7, s153179; GFX1250-NEXT:    v_dual_mov_b32 v12, s14 :: v_dual_mov_b32 v13, s133180; GFX1250-NEXT:    v_dual_mov_b32 v14, s12 :: v_dual_mov_b32 v15, s113181; GFX1250-NEXT:    v_dual_mov_b32 v16, s10 :: v_dual_mov_b32 v17, s93182; GFX1250-NEXT:    v_dual_mov_b32 v18, s8 :: v_dual_mov_b32 v19, s73183; GFX1250-NEXT:    v_dual_mov_b32 v20, s6 :: v_dual_mov_b32 v21, s53184; GFX1250-NEXT:    v_dual_mov_b32 v22, s4 :: v_dual_mov_b32 v23, s33185; GFX1250-NEXT:    s_clause 0x53186; GFX1250-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:803187; GFX1250-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:643188; GFX1250-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:483189; GFX1250-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:323190; GFX1250-NEXT:    global_store_b128 v24, v[16:19], s[0:1] offset:163191; GFX1250-NEXT:    global_store_b128 v24, v[20:23], s[0:1]3192; GFX1250-NEXT:    s_endpgm3193  %load = load <32 x i1>, ptr addrspace(4) %in3194  %ext = sext <32 x i1> %load to <32 x i32>3195  store <32 x i32> %ext, ptr addrspace(1) %out3196  ret void3197}3198 3199define amdgpu_kernel void @constant_zextload_v64i1_to_v64i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {3200; GFX6-LABEL: constant_zextload_v64i1_to_v64i32:3201; GFX6:       ; %bb.0:3202; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x93203; GFX6-NEXT:    s_waitcnt lgkmcnt(0)3204; GFX6-NEXT:    s_load_dwordx2 s[2:3], s[2:3], 0x03205; GFX6-NEXT:    s_waitcnt lgkmcnt(0)3206; GFX6-NEXT:    s_bfe_u32 s4, s2, 0x100033207; GFX6-NEXT:    s_bfe_u32 s5, s2, 0x100013208; GFX6-NEXT:    s_bfe_u32 s6, s2, 0x100073209; GFX6-NEXT:    s_bfe_u32 s7, s2, 0x100053210; GFX6-NEXT:    s_bfe_u32 s8, s2, 0x1000b3211; GFX6-NEXT:    s_bfe_u32 s9, s2, 0x100093212; GFX6-NEXT:    s_bfe_u32 s10, s2, 0x1000f3213; GFX6-NEXT:    s_bfe_u32 s13, s2, 0x1000d3214; GFX6-NEXT:    s_bfe_u32 s14, s2, 0x100133215; GFX6-NEXT:    s_bfe_u32 s15, s2, 0x100113216; GFX6-NEXT:    s_bfe_u32 s16, s2, 0x100173217; GFX6-NEXT:    s_bfe_u32 s17, s2, 0x100153218; GFX6-NEXT:    s_bfe_u32 s18, s2, 0x1001b3219; GFX6-NEXT:    s_bfe_u32 s19, s2, 0x100193220; GFX6-NEXT:    s_lshr_b32 s20, s2, 313221; GFX6-NEXT:    s_bfe_u32 s21, s2, 0x1001d3222; GFX6-NEXT:    s_bfe_u32 s22, s3, 0x100033223; GFX6-NEXT:    s_bfe_u32 s23, s3, 0x100013224; GFX6-NEXT:    s_bfe_u32 s24, s3, 0x100073225; GFX6-NEXT:    s_bfe_u32 s25, s3, 0x100053226; GFX6-NEXT:    s_bfe_u32 s26, s3, 0x1000b3227; GFX6-NEXT:    s_bfe_u32 s27, s3, 0x100093228; GFX6-NEXT:    s_bfe_u32 s28, s3, 0x1000f3229; GFX6-NEXT:    s_bfe_u32 s29, s3, 0x1000d3230; GFX6-NEXT:    s_bfe_u32 s30, s3, 0x100133231; GFX6-NEXT:    s_bfe_u32 s31, s3, 0x100113232; GFX6-NEXT:    s_bfe_u32 s33, s3, 0x100173233; GFX6-NEXT:    s_bfe_u32 s34, s3, 0x100153234; GFX6-NEXT:    s_bfe_u32 s35, s3, 0x1001b3235; GFX6-NEXT:    s_bfe_u32 s36, s3, 0x100193236; GFX6-NEXT:    s_lshr_b32 s37, s3, 313237; GFX6-NEXT:    s_bfe_u32 s38, s3, 0x1001d3238; GFX6-NEXT:    s_and_b32 s12, s2, 13239; GFX6-NEXT:    s_bfe_u32 s11, s2, 0x100023240; GFX6-NEXT:    s_bfe_u32 s39, s2, 0x100063241; GFX6-NEXT:    s_bfe_u32 s40, s2, 0x100043242; GFX6-NEXT:    s_bfe_u32 s41, s2, 0x1000a3243; GFX6-NEXT:    s_bfe_u32 s42, s2, 0x100083244; GFX6-NEXT:    s_bfe_u32 s43, s2, 0x1000e3245; GFX6-NEXT:    s_bfe_u32 s44, s2, 0x1000c3246; GFX6-NEXT:    s_bfe_u32 s45, s2, 0x100123247; GFX6-NEXT:    s_bfe_u32 s46, s2, 0x100103248; GFX6-NEXT:    s_bfe_u32 s47, s2, 0x100163249; GFX6-NEXT:    s_bfe_u32 s48, s2, 0x100143250; GFX6-NEXT:    s_bfe_u32 s49, s2, 0x1001a3251; GFX6-NEXT:    s_bfe_u32 s50, s2, 0x100183252; GFX6-NEXT:    s_bfe_u32 s51, s2, 0x1001e3253; GFX6-NEXT:    s_bfe_u32 s52, s2, 0x1001c3254; GFX6-NEXT:    s_and_b32 s53, s3, 13255; GFX6-NEXT:    s_bfe_u32 s54, s3, 0x100023256; GFX6-NEXT:    s_bfe_u32 s55, s3, 0x100063257; GFX6-NEXT:    s_bfe_u32 s56, s3, 0x100043258; GFX6-NEXT:    s_bfe_u32 s57, s3, 0x100083259; GFX6-NEXT:    s_bfe_u32 s58, s3, 0x1000e3260; GFX6-NEXT:    s_bfe_u32 s59, s3, 0x1000c3261; GFX6-NEXT:    s_bfe_u32 s60, s3, 0x100123262; GFX6-NEXT:    s_bfe_u32 s61, s3, 0x100103263; GFX6-NEXT:    s_bfe_u32 s62, s3, 0x100163264; GFX6-NEXT:    s_bfe_u32 s63, s3, 0x100143265; GFX6-NEXT:    s_bfe_u32 s64, s3, 0x1001a3266; GFX6-NEXT:    s_bfe_u32 s65, s3, 0x100183267; GFX6-NEXT:    s_bfe_u32 s66, s3, 0x1001e3268; GFX6-NEXT:    s_bfe_u32 s67, s3, 0x1001c3269; GFX6-NEXT:    s_bfe_u32 s68, s3, 0x1000a3270; GFX6-NEXT:    s_mov_b32 s3, 0xf0003271; GFX6-NEXT:    s_mov_b32 s2, -13272; GFX6-NEXT:    v_mov_b32_e32 v0, s673273; GFX6-NEXT:    v_mov_b32_e32 v1, s383274; GFX6-NEXT:    v_mov_b32_e32 v2, s663275; GFX6-NEXT:    v_mov_b32_e32 v3, s373276; GFX6-NEXT:    v_mov_b32_e32 v4, s653277; GFX6-NEXT:    v_mov_b32_e32 v5, s363278; GFX6-NEXT:    v_mov_b32_e32 v6, s643279; GFX6-NEXT:    v_mov_b32_e32 v7, s353280; GFX6-NEXT:    v_mov_b32_e32 v8, s633281; GFX6-NEXT:    v_mov_b32_e32 v9, s343282; GFX6-NEXT:    v_mov_b32_e32 v10, s623283; GFX6-NEXT:    v_mov_b32_e32 v11, s333284; GFX6-NEXT:    v_mov_b32_e32 v12, s613285; GFX6-NEXT:    v_mov_b32_e32 v13, s313286; GFX6-NEXT:    v_mov_b32_e32 v14, s603287; GFX6-NEXT:    v_mov_b32_e32 v15, s303288; GFX6-NEXT:    v_mov_b32_e32 v16, s593289; GFX6-NEXT:    v_mov_b32_e32 v17, s293290; GFX6-NEXT:    v_mov_b32_e32 v18, s583291; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:2403292; GFX6-NEXT:    s_waitcnt expcnt(0)3293; GFX6-NEXT:    v_mov_b32_e32 v0, s573294; GFX6-NEXT:    v_mov_b32_e32 v19, s283295; GFX6-NEXT:    v_mov_b32_e32 v1, s273296; GFX6-NEXT:    v_mov_b32_e32 v2, s683297; GFX6-NEXT:    v_mov_b32_e32 v3, s263298; GFX6-NEXT:    buffer_store_dwordx4 v[4:7], off, s[0:3], 0 offset:2243299; GFX6-NEXT:    buffer_store_dwordx4 v[8:11], off, s[0:3], 0 offset:2083300; GFX6-NEXT:    buffer_store_dwordx4 v[12:15], off, s[0:3], 0 offset:1923301; GFX6-NEXT:    buffer_store_dwordx4 v[16:19], off, s[0:3], 0 offset:1763302; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1603303; GFX6-NEXT:    s_waitcnt expcnt(0)3304; GFX6-NEXT:    v_mov_b32_e32 v0, s563305; GFX6-NEXT:    v_mov_b32_e32 v1, s253306; GFX6-NEXT:    v_mov_b32_e32 v2, s553307; GFX6-NEXT:    v_mov_b32_e32 v3, s243308; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1443309; GFX6-NEXT:    s_waitcnt expcnt(0)3310; GFX6-NEXT:    v_mov_b32_e32 v0, s533311; GFX6-NEXT:    v_mov_b32_e32 v1, s233312; GFX6-NEXT:    v_mov_b32_e32 v2, s543313; GFX6-NEXT:    v_mov_b32_e32 v3, s223314; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1283315; GFX6-NEXT:    s_waitcnt expcnt(0)3316; GFX6-NEXT:    v_mov_b32_e32 v0, s523317; GFX6-NEXT:    v_mov_b32_e32 v1, s213318; GFX6-NEXT:    v_mov_b32_e32 v2, s513319; GFX6-NEXT:    v_mov_b32_e32 v3, s203320; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1123321; GFX6-NEXT:    s_waitcnt expcnt(0)3322; GFX6-NEXT:    v_mov_b32_e32 v0, s503323; GFX6-NEXT:    v_mov_b32_e32 v1, s193324; GFX6-NEXT:    v_mov_b32_e32 v2, s493325; GFX6-NEXT:    v_mov_b32_e32 v3, s183326; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:963327; GFX6-NEXT:    s_waitcnt expcnt(0)3328; GFX6-NEXT:    v_mov_b32_e32 v0, s483329; GFX6-NEXT:    v_mov_b32_e32 v1, s173330; GFX6-NEXT:    v_mov_b32_e32 v2, s473331; GFX6-NEXT:    v_mov_b32_e32 v3, s163332; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:803333; GFX6-NEXT:    s_waitcnt expcnt(0)3334; GFX6-NEXT:    v_mov_b32_e32 v0, s463335; GFX6-NEXT:    v_mov_b32_e32 v1, s153336; GFX6-NEXT:    v_mov_b32_e32 v2, s453337; GFX6-NEXT:    v_mov_b32_e32 v3, s143338; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:643339; GFX6-NEXT:    s_waitcnt expcnt(0)3340; GFX6-NEXT:    v_mov_b32_e32 v0, s443341; GFX6-NEXT:    v_mov_b32_e32 v1, s133342; GFX6-NEXT:    v_mov_b32_e32 v2, s433343; GFX6-NEXT:    v_mov_b32_e32 v3, s103344; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:483345; GFX6-NEXT:    s_waitcnt expcnt(0)3346; GFX6-NEXT:    v_mov_b32_e32 v0, s423347; GFX6-NEXT:    v_mov_b32_e32 v1, s93348; GFX6-NEXT:    v_mov_b32_e32 v2, s413349; GFX6-NEXT:    v_mov_b32_e32 v3, s83350; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:323351; GFX6-NEXT:    s_waitcnt expcnt(0)3352; GFX6-NEXT:    v_mov_b32_e32 v0, s403353; GFX6-NEXT:    v_mov_b32_e32 v1, s73354; GFX6-NEXT:    v_mov_b32_e32 v2, s393355; GFX6-NEXT:    v_mov_b32_e32 v3, s63356; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:163357; GFX6-NEXT:    s_waitcnt expcnt(0)3358; GFX6-NEXT:    v_mov_b32_e32 v0, s123359; GFX6-NEXT:    v_mov_b32_e32 v1, s53360; GFX6-NEXT:    v_mov_b32_e32 v2, s113361; GFX6-NEXT:    v_mov_b32_e32 v3, s43362; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 03363; GFX6-NEXT:    s_endpgm3364;3365; GFX8-LABEL: constant_zextload_v64i1_to_v64i32:3366; GFX8:       ; %bb.0:3367; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x243368; GFX8-NEXT:    s_waitcnt lgkmcnt(0)3369; GFX8-NEXT:    s_load_dwordx2 s[26:27], s[2:3], 0x03370; GFX8-NEXT:    s_waitcnt lgkmcnt(0)3371; GFX8-NEXT:    s_bfe_u32 s2, s26, 0x100033372; GFX8-NEXT:    s_bfe_u32 s3, s26, 0x100013373; GFX8-NEXT:    s_bfe_u32 s4, s26, 0x100073374; GFX8-NEXT:    s_bfe_u32 s5, s26, 0x100053375; GFX8-NEXT:    s_bfe_u32 s6, s26, 0x1000b3376; GFX8-NEXT:    s_bfe_u32 s9, s26, 0x100093377; GFX8-NEXT:    s_bfe_u32 s11, s26, 0x1000f3378; GFX8-NEXT:    s_bfe_u32 s13, s26, 0x1000d3379; GFX8-NEXT:    s_bfe_u32 s15, s26, 0x100133380; GFX8-NEXT:    s_bfe_u32 s17, s26, 0x100113381; GFX8-NEXT:    s_bfe_u32 s19, s26, 0x100173382; GFX8-NEXT:    s_bfe_u32 s21, s26, 0x1001b3383; GFX8-NEXT:    s_bfe_u32 s23, s26, 0x100193384; GFX8-NEXT:    s_lshr_b32 s25, s26, 313385; GFX8-NEXT:    s_bfe_u32 s28, s26, 0x1001d3386; GFX8-NEXT:    s_bfe_u32 s29, s27, 0x100033387; GFX8-NEXT:    s_bfe_u32 s30, s27, 0x100013388; GFX8-NEXT:    s_bfe_u32 s31, s27, 0x100073389; GFX8-NEXT:    s_bfe_u32 s33, s27, 0x100053390; GFX8-NEXT:    s_bfe_u32 s34, s27, 0x1000b3391; GFX8-NEXT:    s_bfe_u32 s35, s27, 0x100093392; GFX8-NEXT:    s_bfe_u32 s36, s27, 0x1000f3393; GFX8-NEXT:    s_bfe_u32 s37, s27, 0x1000d3394; GFX8-NEXT:    s_bfe_u32 s38, s27, 0x100133395; GFX8-NEXT:    s_bfe_u32 s39, s27, 0x100113396; GFX8-NEXT:    s_bfe_u32 s40, s27, 0x100173397; GFX8-NEXT:    s_bfe_u32 s41, s27, 0x1001b3398; GFX8-NEXT:    s_bfe_u32 s42, s27, 0x100193399; GFX8-NEXT:    s_lshr_b32 s43, s27, 313400; GFX8-NEXT:    s_bfe_u32 s44, s27, 0x1001d3401; GFX8-NEXT:    s_and_b32 s8, s26, 13402; GFX8-NEXT:    s_bfe_u32 s7, s26, 0x100023403; GFX8-NEXT:    s_bfe_u32 s10, s26, 0x100063404; GFX8-NEXT:    s_bfe_u32 s12, s26, 0x100043405; GFX8-NEXT:    s_bfe_u32 s14, s26, 0x1000a3406; GFX8-NEXT:    s_bfe_u32 s16, s26, 0x100083407; GFX8-NEXT:    s_bfe_u32 s18, s26, 0x1000e3408; GFX8-NEXT:    s_bfe_u32 s20, s26, 0x1000c3409; GFX8-NEXT:    s_bfe_u32 s22, s26, 0x100123410; GFX8-NEXT:    s_bfe_u32 s24, s26, 0x100103411; GFX8-NEXT:    s_bfe_u32 s45, s26, 0x100163412; GFX8-NEXT:    s_bfe_u32 s46, s26, 0x100153413; GFX8-NEXT:    s_bfe_u32 s47, s26, 0x100143414; GFX8-NEXT:    s_bfe_u32 s48, s26, 0x1001a3415; GFX8-NEXT:    s_bfe_u32 s49, s26, 0x100183416; GFX8-NEXT:    s_bfe_u32 s50, s26, 0x1001e3417; GFX8-NEXT:    s_bfe_u32 s51, s26, 0x1001c3418; GFX8-NEXT:    s_and_b32 s52, s27, 13419; GFX8-NEXT:    s_bfe_u32 s53, s27, 0x100023420; GFX8-NEXT:    s_bfe_u32 s54, s27, 0x100063421; GFX8-NEXT:    s_bfe_u32 s55, s27, 0x100043422; GFX8-NEXT:    s_bfe_u32 s56, s27, 0x1000a3423; GFX8-NEXT:    s_bfe_u32 s57, s27, 0x100083424; GFX8-NEXT:    s_bfe_u32 s58, s27, 0x1000e3425; GFX8-NEXT:    s_bfe_u32 s59, s27, 0x1000c3426; GFX8-NEXT:    s_bfe_u32 s60, s27, 0x100123427; GFX8-NEXT:    s_bfe_u32 s61, s27, 0x100103428; GFX8-NEXT:    s_bfe_u32 s62, s27, 0x100163429; GFX8-NEXT:    s_bfe_u32 s63, s27, 0x100153430; GFX8-NEXT:    s_bfe_u32 s64, s27, 0x100143431; GFX8-NEXT:    s_bfe_u32 s65, s27, 0x1001a3432; GFX8-NEXT:    s_bfe_u32 s66, s27, 0x100183433; GFX8-NEXT:    s_bfe_u32 s26, s27, 0x1001e3434; GFX8-NEXT:    s_bfe_u32 s27, s27, 0x1001c3435; GFX8-NEXT:    v_mov_b32_e32 v2, s263436; GFX8-NEXT:    s_add_u32 s26, s0, 0xf03437; GFX8-NEXT:    v_mov_b32_e32 v0, s273438; GFX8-NEXT:    s_addc_u32 s27, s1, 03439; GFX8-NEXT:    v_mov_b32_e32 v4, s263440; GFX8-NEXT:    v_mov_b32_e32 v1, s443441; GFX8-NEXT:    v_mov_b32_e32 v3, s433442; GFX8-NEXT:    v_mov_b32_e32 v5, s273443; GFX8-NEXT:    s_add_u32 s26, s0, 0xe03444; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]3445; GFX8-NEXT:    s_addc_u32 s27, s1, 03446; GFX8-NEXT:    v_mov_b32_e32 v4, s263447; GFX8-NEXT:    v_mov_b32_e32 v0, s663448; GFX8-NEXT:    v_mov_b32_e32 v1, s423449; GFX8-NEXT:    v_mov_b32_e32 v2, s653450; GFX8-NEXT:    v_mov_b32_e32 v3, s413451; GFX8-NEXT:    v_mov_b32_e32 v5, s273452; GFX8-NEXT:    s_add_u32 s26, s0, 0xd03453; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]3454; GFX8-NEXT:    s_addc_u32 s27, s1, 03455; GFX8-NEXT:    v_mov_b32_e32 v4, s263456; GFX8-NEXT:    v_mov_b32_e32 v0, s643457; GFX8-NEXT:    v_mov_b32_e32 v1, s633458; GFX8-NEXT:    v_mov_b32_e32 v2, s623459; GFX8-NEXT:    v_mov_b32_e32 v3, s403460; GFX8-NEXT:    v_mov_b32_e32 v5, s273461; GFX8-NEXT:    s_add_u32 s26, s0, 0xc03462; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]3463; GFX8-NEXT:    s_addc_u32 s27, s1, 03464; GFX8-NEXT:    v_mov_b32_e32 v4, s263465; GFX8-NEXT:    v_mov_b32_e32 v0, s613466; GFX8-NEXT:    v_mov_b32_e32 v1, s393467; GFX8-NEXT:    v_mov_b32_e32 v2, s603468; GFX8-NEXT:    v_mov_b32_e32 v3, s383469; GFX8-NEXT:    v_mov_b32_e32 v5, s273470; GFX8-NEXT:    s_add_u32 s26, s0, 0xb03471; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]3472; GFX8-NEXT:    s_addc_u32 s27, s1, 03473; GFX8-NEXT:    v_mov_b32_e32 v4, s263474; GFX8-NEXT:    v_mov_b32_e32 v0, s593475; GFX8-NEXT:    v_mov_b32_e32 v1, s373476; GFX8-NEXT:    v_mov_b32_e32 v2, s583477; GFX8-NEXT:    v_mov_b32_e32 v3, s363478; GFX8-NEXT:    v_mov_b32_e32 v5, s273479; GFX8-NEXT:    s_add_u32 s26, s0, 0xa03480; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]3481; GFX8-NEXT:    s_addc_u32 s27, s1, 03482; GFX8-NEXT:    v_mov_b32_e32 v4, s263483; GFX8-NEXT:    v_mov_b32_e32 v0, s573484; GFX8-NEXT:    v_mov_b32_e32 v1, s353485; GFX8-NEXT:    v_mov_b32_e32 v2, s563486; GFX8-NEXT:    v_mov_b32_e32 v3, s343487; GFX8-NEXT:    v_mov_b32_e32 v5, s273488; GFX8-NEXT:    s_add_u32 s26, s0, 0x903489; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]3490; GFX8-NEXT:    s_addc_u32 s27, s1, 03491; GFX8-NEXT:    v_mov_b32_e32 v4, s263492; GFX8-NEXT:    v_mov_b32_e32 v0, s553493; GFX8-NEXT:    v_mov_b32_e32 v1, s333494; GFX8-NEXT:    v_mov_b32_e32 v2, s543495; GFX8-NEXT:    v_mov_b32_e32 v3, s313496; GFX8-NEXT:    v_mov_b32_e32 v5, s273497; GFX8-NEXT:    s_add_u32 s26, s0, 0x803498; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]3499; GFX8-NEXT:    s_addc_u32 s27, s1, 03500; GFX8-NEXT:    v_mov_b32_e32 v4, s263501; GFX8-NEXT:    v_mov_b32_e32 v0, s523502; GFX8-NEXT:    v_mov_b32_e32 v1, s303503; GFX8-NEXT:    v_mov_b32_e32 v2, s533504; GFX8-NEXT:    v_mov_b32_e32 v3, s293505; GFX8-NEXT:    v_mov_b32_e32 v5, s273506; GFX8-NEXT:    s_add_u32 s26, s0, 0x703507; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]3508; GFX8-NEXT:    s_addc_u32 s27, s1, 03509; GFX8-NEXT:    v_mov_b32_e32 v4, s263510; GFX8-NEXT:    v_mov_b32_e32 v0, s513511; GFX8-NEXT:    v_mov_b32_e32 v1, s283512; GFX8-NEXT:    v_mov_b32_e32 v2, s503513; GFX8-NEXT:    v_mov_b32_e32 v3, s253514; GFX8-NEXT:    v_mov_b32_e32 v5, s273515; GFX8-NEXT:    s_add_u32 s26, s0, 0x603516; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]3517; GFX8-NEXT:    s_addc_u32 s27, s1, 03518; GFX8-NEXT:    v_mov_b32_e32 v4, s263519; GFX8-NEXT:    v_mov_b32_e32 v0, s493520; GFX8-NEXT:    v_mov_b32_e32 v1, s233521; GFX8-NEXT:    v_mov_b32_e32 v2, s483522; GFX8-NEXT:    v_mov_b32_e32 v3, s213523; GFX8-NEXT:    v_mov_b32_e32 v5, s273524; GFX8-NEXT:    s_add_u32 s26, s0, 0x503525; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]3526; GFX8-NEXT:    s_addc_u32 s27, s1, 03527; GFX8-NEXT:    v_mov_b32_e32 v4, s263528; GFX8-NEXT:    v_mov_b32_e32 v0, s473529; GFX8-NEXT:    v_mov_b32_e32 v1, s463530; GFX8-NEXT:    v_mov_b32_e32 v2, s453531; GFX8-NEXT:    v_mov_b32_e32 v3, s193532; GFX8-NEXT:    v_mov_b32_e32 v5, s273533; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]3534; GFX8-NEXT:    s_nop 03535; GFX8-NEXT:    v_mov_b32_e32 v2, s223536; GFX8-NEXT:    s_add_u32 s22, s0, 643537; GFX8-NEXT:    s_addc_u32 s23, s1, 03538; GFX8-NEXT:    v_mov_b32_e32 v4, s223539; GFX8-NEXT:    v_mov_b32_e32 v0, s243540; GFX8-NEXT:    v_mov_b32_e32 v1, s173541; GFX8-NEXT:    v_mov_b32_e32 v3, s153542; GFX8-NEXT:    v_mov_b32_e32 v5, s233543; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]3544; GFX8-NEXT:    s_nop 03545; GFX8-NEXT:    v_mov_b32_e32 v2, s183546; GFX8-NEXT:    s_add_u32 s18, s0, 483547; GFX8-NEXT:    s_addc_u32 s19, s1, 03548; GFX8-NEXT:    v_mov_b32_e32 v4, s183549; GFX8-NEXT:    v_mov_b32_e32 v0, s203550; GFX8-NEXT:    v_mov_b32_e32 v1, s133551; GFX8-NEXT:    v_mov_b32_e32 v3, s113552; GFX8-NEXT:    v_mov_b32_e32 v5, s193553; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]3554; GFX8-NEXT:    s_nop 03555; GFX8-NEXT:    v_mov_b32_e32 v2, s143556; GFX8-NEXT:    s_add_u32 s14, s0, 323557; GFX8-NEXT:    s_addc_u32 s15, s1, 03558; GFX8-NEXT:    v_mov_b32_e32 v4, s143559; GFX8-NEXT:    v_mov_b32_e32 v0, s163560; GFX8-NEXT:    v_mov_b32_e32 v1, s93561; GFX8-NEXT:    v_mov_b32_e32 v3, s63562; GFX8-NEXT:    v_mov_b32_e32 v5, s153563; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]3564; GFX8-NEXT:    s_nop 03565; GFX8-NEXT:    v_mov_b32_e32 v3, s43566; GFX8-NEXT:    s_add_u32 s4, s0, 163567; GFX8-NEXT:    v_mov_b32_e32 v1, s53568; GFX8-NEXT:    s_addc_u32 s5, s1, 03569; GFX8-NEXT:    v_mov_b32_e32 v4, s43570; GFX8-NEXT:    v_mov_b32_e32 v0, s123571; GFX8-NEXT:    v_mov_b32_e32 v2, s103572; GFX8-NEXT:    v_mov_b32_e32 v5, s53573; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]3574; GFX8-NEXT:    v_mov_b32_e32 v5, s13575; GFX8-NEXT:    v_mov_b32_e32 v0, s83576; GFX8-NEXT:    v_mov_b32_e32 v1, s33577; GFX8-NEXT:    v_mov_b32_e32 v2, s73578; GFX8-NEXT:    v_mov_b32_e32 v3, s23579; GFX8-NEXT:    v_mov_b32_e32 v4, s03580; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]3581; GFX8-NEXT:    s_endpgm3582;3583; EG-LABEL: constant_zextload_v64i1_to_v64i32:3584; EG:       ; %bb.0:3585; EG-NEXT:    ALU 0, @24, KC0[CB0:0-32], KC1[]3586; EG-NEXT:    TEX 0 @223587; EG-NEXT:    ALU 96, @25, KC0[CB0:0-32], KC1[]3588; EG-NEXT:    ALU 57, @122, KC0[CB0:0-32], KC1[]3589; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T48.XYZW, T50.X, 03590; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T46.XYZW, T49.X, 03591; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T44.XYZW, T47.X, 03592; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T42.XYZW, T45.X, 03593; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T40.XYZW, T43.X, 03594; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T38.XYZW, T41.X, 03595; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T36.XYZW, T39.X, 03596; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T35.XYZW, T37.X, 03597; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T33.XYZW, T21.X, 03598; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T31.XYZW, T34.X, 03599; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T29.XYZW, T32.X, 03600; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T27.XYZW, T30.X, 03601; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T25.XYZW, T28.X, 03602; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T23.XYZW, T26.X, 03603; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T20.XYZW, T24.X, 03604; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T19.XYZW, T22.X, 13605; EG-NEXT:    CF_END3606; EG-NEXT:    PAD3607; EG-NEXT:    Fetch clause starting at 22:3608; EG-NEXT:     VTX_READ_64 T21.XY, T19.X, 0, #13609; EG-NEXT:    ALU clause starting at 24:3610; EG-NEXT:     MOV * T19.X, KC0[2].Z,3611; EG-NEXT:    ALU clause starting at 25:3612; EG-NEXT:     BFE_UINT * T19.W, T21.X, literal.x, 1,3613; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)3614; EG-NEXT:     BFE_UINT * T19.Z, T21.X, literal.x, 1,3615; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)3616; EG-NEXT:     BFE_UINT T19.Y, T21.X, 1, 1,3617; EG-NEXT:     BFE_UINT * T20.W, T21.X, literal.x, 1,3618; EG-NEXT:    7(9.809089e-45), 0(0.000000e+00)3619; EG-NEXT:     AND_INT T19.X, T21.X, 1,3620; EG-NEXT:     BFE_UINT T20.Z, T21.X, literal.x, 1,3621; EG-NEXT:     LSHR * T22.X, KC0[2].Y, literal.y,3622; EG-NEXT:    6(8.407791e-45), 2(2.802597e-45)3623; EG-NEXT:     BFE_UINT T20.Y, T21.X, literal.x, 1,3624; EG-NEXT:     BFE_UINT * T23.W, T21.X, literal.y, 1,3625; EG-NEXT:    5(7.006492e-45), 11(1.541428e-44)3626; EG-NEXT:     BFE_UINT T20.X, T21.X, literal.x, 1,3627; EG-NEXT:     BFE_UINT T23.Z, T21.X, literal.y, 1,3628; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,3629; EG-NEXT:    4(5.605194e-45), 10(1.401298e-44)3630; EG-NEXT:    16(2.242078e-44), 0(0.000000e+00)3631; EG-NEXT:     LSHR T24.X, PV.W, literal.x,3632; EG-NEXT:     BFE_UINT T23.Y, T21.X, literal.y, 1,3633; EG-NEXT:     BFE_UINT * T25.W, T21.X, literal.z, 1,3634; EG-NEXT:    2(2.802597e-45), 9(1.261169e-44)3635; EG-NEXT:    15(2.101948e-44), 0(0.000000e+00)3636; EG-NEXT:     BFE_UINT T23.X, T21.X, literal.x, 1,3637; EG-NEXT:     BFE_UINT T25.Z, T21.X, literal.y, 1,3638; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,3639; EG-NEXT:    8(1.121039e-44), 14(1.961818e-44)3640; EG-NEXT:    32(4.484155e-44), 0(0.000000e+00)3641; EG-NEXT:     LSHR T26.X, PV.W, literal.x,3642; EG-NEXT:     BFE_UINT T25.Y, T21.X, literal.y, 1,3643; EG-NEXT:     BFE_UINT * T27.W, T21.X, literal.z, 1,3644; EG-NEXT:    2(2.802597e-45), 13(1.821688e-44)3645; EG-NEXT:    19(2.662467e-44), 0(0.000000e+00)3646; EG-NEXT:     BFE_UINT T25.X, T21.X, literal.x, 1,3647; EG-NEXT:     BFE_UINT T27.Z, T21.X, literal.y, 1,3648; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,3649; EG-NEXT:    12(1.681558e-44), 18(2.522337e-44)3650; EG-NEXT:    48(6.726233e-44), 0(0.000000e+00)3651; EG-NEXT:     LSHR T28.X, PV.W, literal.x,3652; EG-NEXT:     BFE_UINT T27.Y, T21.X, literal.y, 1,3653; EG-NEXT:     BFE_UINT * T29.W, T21.X, literal.z, 1,3654; EG-NEXT:    2(2.802597e-45), 17(2.382207e-44)3655; EG-NEXT:    23(3.222986e-44), 0(0.000000e+00)3656; EG-NEXT:     BFE_UINT T27.X, T21.X, literal.x, 1,3657; EG-NEXT:     BFE_UINT T29.Z, T21.X, literal.y, 1,3658; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,3659; EG-NEXT:    16(2.242078e-44), 22(3.082857e-44)3660; EG-NEXT:    64(8.968310e-44), 0(0.000000e+00)3661; EG-NEXT:     LSHR T30.X, PV.W, literal.x,3662; EG-NEXT:     BFE_UINT T29.Y, T21.X, literal.y, 1,3663; EG-NEXT:     BFE_UINT * T31.W, T21.X, literal.z, 1,3664; EG-NEXT:    2(2.802597e-45), 21(2.942727e-44)3665; EG-NEXT:    27(3.783506e-44), 0(0.000000e+00)3666; EG-NEXT:     BFE_UINT T29.X, T21.X, literal.x, 1,3667; EG-NEXT:     BFE_UINT T31.Z, T21.X, literal.y, 1,3668; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,3669; EG-NEXT:    20(2.802597e-44), 26(3.643376e-44)3670; EG-NEXT:    80(1.121039e-43), 0(0.000000e+00)3671; EG-NEXT:     LSHR T32.X, PV.W, literal.x,3672; EG-NEXT:     BFE_UINT T31.Y, T21.X, literal.y, 1,3673; EG-NEXT:     LSHR * T33.W, T21.X, literal.z,3674; EG-NEXT:    2(2.802597e-45), 25(3.503246e-44)3675; EG-NEXT:    31(4.344025e-44), 0(0.000000e+00)3676; EG-NEXT:     BFE_UINT T31.X, T21.X, literal.x, 1,3677; EG-NEXT:     BFE_UINT T33.Z, T21.X, literal.y, 1,3678; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,3679; EG-NEXT:    24(3.363116e-44), 30(4.203895e-44)3680; EG-NEXT:    96(1.345247e-43), 0(0.000000e+00)3681; EG-NEXT:     LSHR T34.X, PV.W, literal.x,3682; EG-NEXT:     BFE_UINT T33.Y, T21.X, literal.y, 1,3683; EG-NEXT:     BFE_UINT * T35.W, T21.Y, literal.z, 1,3684; EG-NEXT:    2(2.802597e-45), 29(4.063766e-44)3685; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)3686; EG-NEXT:     BFE_UINT T33.X, T21.X, literal.x, 1,3687; EG-NEXT:     BFE_UINT T35.Z, T21.Y, literal.y, 1,3688; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,3689; EG-NEXT:    28(3.923636e-44), 2(2.802597e-45)3690; EG-NEXT:    112(1.569454e-43), 0(0.000000e+00)3691; EG-NEXT:     LSHR T21.X, PV.W, literal.x,3692; EG-NEXT:     BFE_UINT T35.Y, T21.Y, 1, 1,3693; EG-NEXT:     BFE_UINT T36.W, T21.Y, literal.y, 1,3694; EG-NEXT:     AND_INT * T35.X, T21.Y, 1,3695; EG-NEXT:    2(2.802597e-45), 7(9.809089e-45)3696; EG-NEXT:     BFE_UINT T36.Z, T21.Y, literal.x, 1,3697; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,3698; EG-NEXT:    6(8.407791e-45), 128(1.793662e-43)3699; EG-NEXT:     LSHR T37.X, PV.W, literal.x,3700; EG-NEXT:     BFE_UINT T36.Y, T21.Y, literal.y, 1,3701; EG-NEXT:     BFE_UINT * T38.W, T21.Y, literal.z, 1,3702; EG-NEXT:    2(2.802597e-45), 5(7.006492e-45)3703; EG-NEXT:    11(1.541428e-44), 0(0.000000e+00)3704; EG-NEXT:     BFE_UINT T36.X, T21.Y, literal.x, 1,3705; EG-NEXT:     BFE_UINT T38.Z, T21.Y, literal.y, 1,3706; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,3707; EG-NEXT:    4(5.605194e-45), 10(1.401298e-44)3708; EG-NEXT:    144(2.017870e-43), 0(0.000000e+00)3709; EG-NEXT:    ALU clause starting at 122:3710; EG-NEXT:     LSHR T39.X, T0.W, literal.x,3711; EG-NEXT:     BFE_UINT T38.Y, T21.Y, literal.y, 1,3712; EG-NEXT:     BFE_UINT * T40.W, T21.Y, literal.z, 1,3713; EG-NEXT:    2(2.802597e-45), 9(1.261169e-44)3714; EG-NEXT:    15(2.101948e-44), 0(0.000000e+00)3715; EG-NEXT:     BFE_UINT T38.X, T21.Y, literal.x, 1,3716; EG-NEXT:     BFE_UINT T40.Z, T21.Y, literal.y, 1,3717; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,3718; EG-NEXT:    8(1.121039e-44), 14(1.961818e-44)3719; EG-NEXT:    160(2.242078e-43), 0(0.000000e+00)3720; EG-NEXT:     LSHR T41.X, PV.W, literal.x,3721; EG-NEXT:     BFE_UINT T40.Y, T21.Y, literal.y, 1,3722; EG-NEXT:     BFE_UINT * T42.W, T21.Y, literal.z, 1,3723; EG-NEXT:    2(2.802597e-45), 13(1.821688e-44)3724; EG-NEXT:    19(2.662467e-44), 0(0.000000e+00)3725; EG-NEXT:     BFE_UINT T40.X, T21.Y, literal.x, 1,3726; EG-NEXT:     BFE_UINT T42.Z, T21.Y, literal.y, 1,3727; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,3728; EG-NEXT:    12(1.681558e-44), 18(2.522337e-44)3729; EG-NEXT:    176(2.466285e-43), 0(0.000000e+00)3730; EG-NEXT:     LSHR T43.X, PV.W, literal.x,3731; EG-NEXT:     BFE_UINT T42.Y, T21.Y, literal.y, 1,3732; EG-NEXT:     BFE_UINT * T44.W, T21.Y, literal.z, 1,3733; EG-NEXT:    2(2.802597e-45), 17(2.382207e-44)3734; EG-NEXT:    23(3.222986e-44), 0(0.000000e+00)3735; EG-NEXT:     BFE_UINT T42.X, T21.Y, literal.x, 1,3736; EG-NEXT:     BFE_UINT T44.Z, T21.Y, literal.y, 1,3737; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,3738; EG-NEXT:    16(2.242078e-44), 22(3.082857e-44)3739; EG-NEXT:    192(2.690493e-43), 0(0.000000e+00)3740; EG-NEXT:     LSHR T45.X, PV.W, literal.x,3741; EG-NEXT:     BFE_UINT T44.Y, T21.Y, literal.y, 1,3742; EG-NEXT:     BFE_UINT * T46.W, T21.Y, literal.z, 1,3743; EG-NEXT:    2(2.802597e-45), 21(2.942727e-44)3744; EG-NEXT:    27(3.783506e-44), 0(0.000000e+00)3745; EG-NEXT:     BFE_UINT T44.X, T21.Y, literal.x, 1,3746; EG-NEXT:     BFE_UINT T46.Z, T21.Y, literal.y, 1,3747; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,3748; EG-NEXT:    20(2.802597e-44), 26(3.643376e-44)3749; EG-NEXT:    208(2.914701e-43), 0(0.000000e+00)3750; EG-NEXT:     LSHR T47.X, PV.W, literal.x,3751; EG-NEXT:     BFE_UINT T46.Y, T21.Y, literal.y, 1,3752; EG-NEXT:     LSHR * T48.W, T21.Y, literal.z,3753; EG-NEXT:    2(2.802597e-45), 25(3.503246e-44)3754; EG-NEXT:    31(4.344025e-44), 0(0.000000e+00)3755; EG-NEXT:     BFE_UINT T46.X, T21.Y, literal.x, 1,3756; EG-NEXT:     BFE_UINT T48.Z, T21.Y, literal.y, 1,3757; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.z,3758; EG-NEXT:    24(3.363116e-44), 30(4.203895e-44)3759; EG-NEXT:    224(3.138909e-43), 0(0.000000e+00)3760; EG-NEXT:     LSHR T49.X, PV.W, literal.x,3761; EG-NEXT:     BFE_UINT * T48.Y, T21.Y, literal.y, 1,3762; EG-NEXT:    2(2.802597e-45), 29(4.063766e-44)3763; EG-NEXT:     BFE_UINT T48.X, T21.Y, literal.x, 1,3764; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,3765; EG-NEXT:    28(3.923636e-44), 240(3.363116e-43)3766; EG-NEXT:     LSHR * T50.X, PV.W, literal.x,3767; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)3768;3769; GFX12-LABEL: constant_zextload_v64i1_to_v64i32:3770; GFX12:       ; %bb.0:3771; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x243772; GFX12-NEXT:    s_wait_kmcnt 0x03773; GFX12-NEXT:    s_load_b64 s[2:3], s[2:3], 0x03774; GFX12-NEXT:    s_wait_kmcnt 0x03775; GFX12-NEXT:    s_lshr_b32 s33, s3, 313776; GFX12-NEXT:    s_bfe_u32 s34, s3, 0x1001d3777; GFX12-NEXT:    s_bfe_u32 s65, s3, 0x1001c3778; GFX12-NEXT:    s_bfe_u32 s66, s3, 0x1001e3779; GFX12-NEXT:    s_bfe_u32 s30, s3, 0x1001b3780; GFX12-NEXT:    s_bfe_u32 s31, s3, 0x100193781; GFX12-NEXT:    s_bfe_u32 s63, s3, 0x1001a3782; GFX12-NEXT:    s_bfe_u32 s64, s3, 0x100183783; GFX12-NEXT:    v_dual_mov_b32 v24, 0 :: v_dual_mov_b32 v1, s343784; GFX12-NEXT:    s_bfe_u32 s29, s3, 0x100173785; GFX12-NEXT:    s_bfe_u32 s60, s3, 0x100163786; GFX12-NEXT:    s_bfe_u32 s61, s3, 0x100153787; GFX12-NEXT:    s_bfe_u32 s62, s3, 0x100143788; GFX12-NEXT:    v_dual_mov_b32 v0, s65 :: v_dual_mov_b32 v3, s333789; GFX12-NEXT:    v_dual_mov_b32 v2, s66 :: v_dual_mov_b32 v5, s313790; GFX12-NEXT:    s_bfe_u32 s27, s3, 0x100133791; GFX12-NEXT:    s_bfe_u32 s28, s3, 0x100113792; GFX12-NEXT:    s_bfe_u32 s58, s3, 0x100123793; GFX12-NEXT:    s_bfe_u32 s59, s3, 0x100103794; GFX12-NEXT:    v_dual_mov_b32 v4, s64 :: v_dual_mov_b32 v7, s303795; GFX12-NEXT:    v_dual_mov_b32 v6, s63 :: v_dual_mov_b32 v9, s613796; GFX12-NEXT:    v_dual_mov_b32 v8, s62 :: v_dual_mov_b32 v11, s293797; GFX12-NEXT:    v_dual_mov_b32 v10, s60 :: v_dual_mov_b32 v13, s283798; GFX12-NEXT:    s_bfe_u32 s19, s3, 0x100033799; GFX12-NEXT:    s_bfe_u32 s20, s3, 0x100013800; GFX12-NEXT:    s_bfe_u32 s21, s3, 0x100073801; GFX12-NEXT:    s_bfe_u32 s22, s3, 0x100053802; GFX12-NEXT:    s_bfe_u32 s23, s3, 0x1000b3803; GFX12-NEXT:    s_bfe_u32 s24, s3, 0x100093804; GFX12-NEXT:    s_bfe_u32 s25, s3, 0x1000f3805; GFX12-NEXT:    s_bfe_u32 s26, s3, 0x1000d3806; GFX12-NEXT:    s_and_b32 s51, s3, 13807; GFX12-NEXT:    s_bfe_u32 s52, s3, 0x100023808; GFX12-NEXT:    s_bfe_u32 s53, s3, 0x100063809; GFX12-NEXT:    s_bfe_u32 s54, s3, 0x100043810; GFX12-NEXT:    s_bfe_u32 s55, s3, 0x1000a3811; GFX12-NEXT:    s_bfe_u32 s56, s3, 0x100083812; GFX12-NEXT:    s_bfe_u32 s57, s3, 0x1000e3813; GFX12-NEXT:    v_dual_mov_b32 v12, s59 :: v_dual_mov_b32 v15, s273814; GFX12-NEXT:    v_mov_b32_e32 v14, s583815; GFX12-NEXT:    s_bfe_u32 s3, s3, 0x1000c3816; GFX12-NEXT:    s_clause 0x33817; GFX12-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:2403818; GFX12-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:2243819; GFX12-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:2083820; GFX12-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:1923821; GFX12-NEXT:    v_dual_mov_b32 v0, s3 :: v_dual_mov_b32 v3, s253822; GFX12-NEXT:    v_dual_mov_b32 v1, s26 :: v_dual_mov_b32 v2, s573823; GFX12-NEXT:    v_dual_mov_b32 v5, s24 :: v_dual_mov_b32 v4, s563824; GFX12-NEXT:    v_dual_mov_b32 v7, s23 :: v_dual_mov_b32 v6, s553825; GFX12-NEXT:    v_mov_b32_e32 v9, s223826; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100033827; GFX12-NEXT:    s_bfe_u32 s5, s2, 0x100013828; GFX12-NEXT:    s_bfe_u32 s6, s2, 0x100073829; GFX12-NEXT:    s_bfe_u32 s7, s2, 0x100053830; GFX12-NEXT:    s_bfe_u32 s8, s2, 0x1000b3831; GFX12-NEXT:    s_bfe_u32 s9, s2, 0x100093832; GFX12-NEXT:    s_bfe_u32 s10, s2, 0x1000f3833; GFX12-NEXT:    s_bfe_u32 s11, s2, 0x1000d3834; GFX12-NEXT:    s_bfe_u32 s12, s2, 0x100133835; GFX12-NEXT:    s_bfe_u32 s13, s2, 0x100113836; GFX12-NEXT:    s_bfe_u32 s14, s2, 0x100173837; GFX12-NEXT:    s_bfe_u32 s15, s2, 0x1001b3838; GFX12-NEXT:    s_bfe_u32 s16, s2, 0x100193839; GFX12-NEXT:    s_lshr_b32 s17, s2, 313840; GFX12-NEXT:    s_bfe_u32 s18, s2, 0x1001d3841; GFX12-NEXT:    s_and_b32 s35, s2, 13842; GFX12-NEXT:    s_bfe_u32 s36, s2, 0x100023843; GFX12-NEXT:    s_bfe_u32 s37, s2, 0x100063844; GFX12-NEXT:    s_bfe_u32 s38, s2, 0x100043845; GFX12-NEXT:    s_bfe_u32 s39, s2, 0x1000a3846; GFX12-NEXT:    s_bfe_u32 s40, s2, 0x100083847; GFX12-NEXT:    s_bfe_u32 s41, s2, 0x1000e3848; GFX12-NEXT:    s_bfe_u32 s42, s2, 0x1000c3849; GFX12-NEXT:    s_bfe_u32 s43, s2, 0x100123850; GFX12-NEXT:    s_bfe_u32 s44, s2, 0x100103851; GFX12-NEXT:    s_bfe_u32 s45, s2, 0x100163852; GFX12-NEXT:    s_bfe_u32 s46, s2, 0x100153853; GFX12-NEXT:    s_bfe_u32 s47, s2, 0x100143854; GFX12-NEXT:    s_bfe_u32 s48, s2, 0x1001a3855; GFX12-NEXT:    s_bfe_u32 s49, s2, 0x100183856; GFX12-NEXT:    s_bfe_u32 s50, s2, 0x1001e3857; GFX12-NEXT:    s_bfe_u32 s2, s2, 0x1001c3858; GFX12-NEXT:    v_dual_mov_b32 v8, s54 :: v_dual_mov_b32 v11, s213859; GFX12-NEXT:    v_dual_mov_b32 v10, s53 :: v_dual_mov_b32 v13, s203860; GFX12-NEXT:    v_dual_mov_b32 v12, s51 :: v_dual_mov_b32 v15, s193861; GFX12-NEXT:    v_dual_mov_b32 v14, s52 :: v_dual_mov_b32 v17, s183862; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)3863; GFX12-NEXT:    v_dual_mov_b32 v16, s2 :: v_dual_mov_b32 v19, s173864; GFX12-NEXT:    v_dual_mov_b32 v18, s50 :: v_dual_mov_b32 v21, s163865; GFX12-NEXT:    v_dual_mov_b32 v20, s49 :: v_dual_mov_b32 v23, s153866; GFX12-NEXT:    v_mov_b32_e32 v22, s483867; GFX12-NEXT:    s_clause 0x53868; GFX12-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:1763869; GFX12-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:1603870; GFX12-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:1443871; GFX12-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:1283872; GFX12-NEXT:    global_store_b128 v24, v[16:19], s[0:1] offset:1123873; GFX12-NEXT:    global_store_b128 v24, v[20:23], s[0:1] offset:963874; GFX12-NEXT:    v_dual_mov_b32 v0, s47 :: v_dual_mov_b32 v3, s143875; GFX12-NEXT:    v_dual_mov_b32 v1, s46 :: v_dual_mov_b32 v2, s453876; GFX12-NEXT:    v_dual_mov_b32 v5, s13 :: v_dual_mov_b32 v4, s443877; GFX12-NEXT:    v_dual_mov_b32 v7, s12 :: v_dual_mov_b32 v6, s433878; GFX12-NEXT:    v_dual_mov_b32 v9, s11 :: v_dual_mov_b32 v8, s423879; GFX12-NEXT:    v_dual_mov_b32 v11, s10 :: v_dual_mov_b32 v10, s413880; GFX12-NEXT:    v_dual_mov_b32 v13, s9 :: v_dual_mov_b32 v12, s403881; GFX12-NEXT:    v_dual_mov_b32 v15, s8 :: v_dual_mov_b32 v14, s393882; GFX12-NEXT:    v_dual_mov_b32 v17, s7 :: v_dual_mov_b32 v16, s383883; GFX12-NEXT:    v_dual_mov_b32 v19, s6 :: v_dual_mov_b32 v18, s373884; GFX12-NEXT:    v_dual_mov_b32 v21, s5 :: v_dual_mov_b32 v20, s353885; GFX12-NEXT:    v_dual_mov_b32 v23, s4 :: v_dual_mov_b32 v22, s363886; GFX12-NEXT:    s_clause 0x53887; GFX12-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:803888; GFX12-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:643889; GFX12-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:483890; GFX12-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:323891; GFX12-NEXT:    global_store_b128 v24, v[16:19], s[0:1] offset:163892; GFX12-NEXT:    global_store_b128 v24, v[20:23], s[0:1]3893; GFX12-NEXT:    s_endpgm3894;3895; GFX1250-LABEL: constant_zextload_v64i1_to_v64i32:3896; GFX1250:       ; %bb.0:3897; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 13898; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x243899; GFX1250-NEXT:    s_wait_kmcnt 0x03900; GFX1250-NEXT:    s_load_b64 s[2:3], s[2:3], 0x03901; GFX1250-NEXT:    s_wait_kmcnt 0x03902; GFX1250-NEXT:    s_lshr_b32 s33, s3, 313903; GFX1250-NEXT:    s_bfe_u32 s34, s3, 0x1001d3904; GFX1250-NEXT:    s_bfe_u32 s65, s3, 0x1001c3905; GFX1250-NEXT:    s_bfe_u32 s66, s3, 0x1001e3906; GFX1250-NEXT:    s_bfe_u32 s30, s3, 0x1001b3907; GFX1250-NEXT:    s_bfe_u32 s31, s3, 0x100193908; GFX1250-NEXT:    s_bfe_u32 s63, s3, 0x1001a3909; GFX1250-NEXT:    s_bfe_u32 s64, s3, 0x100183910; GFX1250-NEXT:    v_dual_mov_b32 v24, 0 :: v_dual_mov_b32 v0, s653911; GFX1250-NEXT:    s_bfe_u32 s29, s3, 0x100173912; GFX1250-NEXT:    s_bfe_u32 s60, s3, 0x100163913; GFX1250-NEXT:    s_bfe_u32 s61, s3, 0x100153914; GFX1250-NEXT:    s_bfe_u32 s62, s3, 0x100143915; GFX1250-NEXT:    v_dual_mov_b32 v1, s34 :: v_dual_mov_b32 v2, s663916; GFX1250-NEXT:    v_dual_mov_b32 v3, s33 :: v_dual_mov_b32 v4, s643917; GFX1250-NEXT:    s_bfe_u32 s27, s3, 0x100133918; GFX1250-NEXT:    s_bfe_u32 s28, s3, 0x100113919; GFX1250-NEXT:    s_bfe_u32 s58, s3, 0x100123920; GFX1250-NEXT:    s_bfe_u32 s59, s3, 0x100103921; GFX1250-NEXT:    v_dual_mov_b32 v5, s31 :: v_dual_mov_b32 v6, s633922; GFX1250-NEXT:    v_dual_mov_b32 v7, s30 :: v_dual_mov_b32 v8, s623923; GFX1250-NEXT:    v_dual_mov_b32 v9, s61 :: v_dual_mov_b32 v10, s603924; GFX1250-NEXT:    v_dual_mov_b32 v11, s29 :: v_dual_mov_b32 v12, s593925; GFX1250-NEXT:    s_bfe_u32 s19, s3, 0x100033926; GFX1250-NEXT:    s_bfe_u32 s20, s3, 0x100013927; GFX1250-NEXT:    s_bfe_u32 s21, s3, 0x100073928; GFX1250-NEXT:    s_bfe_u32 s22, s3, 0x100053929; GFX1250-NEXT:    s_bfe_u32 s23, s3, 0x1000b3930; GFX1250-NEXT:    s_bfe_u32 s24, s3, 0x100093931; GFX1250-NEXT:    s_bfe_u32 s25, s3, 0x1000f3932; GFX1250-NEXT:    s_bfe_u32 s26, s3, 0x1000d3933; GFX1250-NEXT:    s_and_b32 s51, s3, 13934; GFX1250-NEXT:    s_bfe_u32 s52, s3, 0x100023935; GFX1250-NEXT:    s_bfe_u32 s53, s3, 0x100063936; GFX1250-NEXT:    s_bfe_u32 s54, s3, 0x100043937; GFX1250-NEXT:    s_bfe_u32 s55, s3, 0x1000a3938; GFX1250-NEXT:    s_bfe_u32 s56, s3, 0x100083939; GFX1250-NEXT:    s_bfe_u32 s57, s3, 0x1000e3940; GFX1250-NEXT:    v_dual_mov_b32 v13, s28 :: v_dual_mov_b32 v14, s583941; GFX1250-NEXT:    s_bfe_u32 s3, s3, 0x1000c3942; GFX1250-NEXT:    v_mov_b32_e32 v15, s273943; GFX1250-NEXT:    s_clause 0x33944; GFX1250-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:2403945; GFX1250-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:2243946; GFX1250-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:2083947; GFX1250-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:1923948; GFX1250-NEXT:    s_wait_xcnt 0x33949; GFX1250-NEXT:    v_dual_mov_b32 v0, s3 :: v_dual_mov_b32 v1, s263950; GFX1250-NEXT:    v_dual_mov_b32 v2, s57 :: v_dual_mov_b32 v3, s253951; GFX1250-NEXT:    s_wait_xcnt 0x23952; GFX1250-NEXT:    v_dual_mov_b32 v4, s56 :: v_dual_mov_b32 v5, s243953; GFX1250-NEXT:    v_dual_mov_b32 v6, s55 :: v_dual_mov_b32 v7, s233954; GFX1250-NEXT:    s_wait_xcnt 0x13955; GFX1250-NEXT:    v_mov_b32_e32 v8, s543956; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100033957; GFX1250-NEXT:    s_bfe_u32 s5, s2, 0x100013958; GFX1250-NEXT:    s_bfe_u32 s6, s2, 0x100073959; GFX1250-NEXT:    s_bfe_u32 s7, s2, 0x100053960; GFX1250-NEXT:    s_bfe_u32 s8, s2, 0x1000b3961; GFX1250-NEXT:    s_bfe_u32 s9, s2, 0x100093962; GFX1250-NEXT:    s_bfe_u32 s10, s2, 0x1000f3963; GFX1250-NEXT:    s_bfe_u32 s11, s2, 0x1000d3964; GFX1250-NEXT:    s_bfe_u32 s12, s2, 0x100133965; GFX1250-NEXT:    s_bfe_u32 s13, s2, 0x100113966; GFX1250-NEXT:    s_bfe_u32 s14, s2, 0x100173967; GFX1250-NEXT:    s_bfe_u32 s15, s2, 0x1001b3968; GFX1250-NEXT:    s_bfe_u32 s16, s2, 0x100193969; GFX1250-NEXT:    s_lshr_b32 s17, s2, 313970; GFX1250-NEXT:    s_bfe_u32 s18, s2, 0x1001d3971; GFX1250-NEXT:    s_and_b32 s35, s2, 13972; GFX1250-NEXT:    s_bfe_u32 s36, s2, 0x100023973; GFX1250-NEXT:    s_bfe_u32 s37, s2, 0x100063974; GFX1250-NEXT:    s_bfe_u32 s38, s2, 0x100043975; GFX1250-NEXT:    s_bfe_u32 s39, s2, 0x1000a3976; GFX1250-NEXT:    s_bfe_u32 s40, s2, 0x100083977; GFX1250-NEXT:    s_bfe_u32 s41, s2, 0x1000e3978; GFX1250-NEXT:    s_bfe_u32 s42, s2, 0x1000c3979; GFX1250-NEXT:    s_bfe_u32 s43, s2, 0x100123980; GFX1250-NEXT:    s_bfe_u32 s44, s2, 0x100103981; GFX1250-NEXT:    s_bfe_u32 s45, s2, 0x100163982; GFX1250-NEXT:    s_bfe_u32 s46, s2, 0x100153983; GFX1250-NEXT:    s_bfe_u32 s47, s2, 0x100143984; GFX1250-NEXT:    s_bfe_u32 s48, s2, 0x1001a3985; GFX1250-NEXT:    s_bfe_u32 s49, s2, 0x100183986; GFX1250-NEXT:    s_bfe_u32 s50, s2, 0x1001e3987; GFX1250-NEXT:    s_bfe_u32 s2, s2, 0x1001c3988; GFX1250-NEXT:    v_dual_mov_b32 v9, s22 :: v_dual_mov_b32 v10, s533989; GFX1250-NEXT:    s_wait_xcnt 0x03990; GFX1250-NEXT:    v_dual_mov_b32 v11, s21 :: v_dual_mov_b32 v12, s513991; GFX1250-NEXT:    v_dual_mov_b32 v13, s20 :: v_dual_mov_b32 v14, s523992; GFX1250-NEXT:    v_dual_mov_b32 v15, s19 :: v_dual_mov_b32 v16, s23993; GFX1250-NEXT:    v_dual_mov_b32 v17, s18 :: v_dual_mov_b32 v18, s503994; GFX1250-NEXT:    v_dual_mov_b32 v19, s17 :: v_dual_mov_b32 v20, s493995; GFX1250-NEXT:    v_dual_mov_b32 v21, s16 :: v_dual_mov_b32 v22, s483996; GFX1250-NEXT:    v_mov_b32_e32 v23, s153997; GFX1250-NEXT:    s_clause 0x53998; GFX1250-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:1763999; GFX1250-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:1604000; GFX1250-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:1444001; GFX1250-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:1284002; GFX1250-NEXT:    global_store_b128 v24, v[16:19], s[0:1] offset:1124003; GFX1250-NEXT:    global_store_b128 v24, v[20:23], s[0:1] offset:964004; GFX1250-NEXT:    s_wait_xcnt 0x54005; GFX1250-NEXT:    v_dual_mov_b32 v0, s47 :: v_dual_mov_b32 v1, s464006; GFX1250-NEXT:    v_dual_mov_b32 v2, s45 :: v_dual_mov_b32 v3, s144007; GFX1250-NEXT:    s_wait_xcnt 0x44008; GFX1250-NEXT:    v_dual_mov_b32 v4, s44 :: v_dual_mov_b32 v5, s134009; GFX1250-NEXT:    v_dual_mov_b32 v6, s43 :: v_dual_mov_b32 v7, s124010; GFX1250-NEXT:    s_wait_xcnt 0x34011; GFX1250-NEXT:    v_dual_mov_b32 v8, s42 :: v_dual_mov_b32 v9, s114012; GFX1250-NEXT:    v_dual_mov_b32 v10, s41 :: v_dual_mov_b32 v11, s104013; GFX1250-NEXT:    s_wait_xcnt 0x24014; GFX1250-NEXT:    v_dual_mov_b32 v12, s40 :: v_dual_mov_b32 v13, s94015; GFX1250-NEXT:    v_dual_mov_b32 v14, s39 :: v_dual_mov_b32 v15, s84016; GFX1250-NEXT:    s_wait_xcnt 0x14017; GFX1250-NEXT:    v_dual_mov_b32 v16, s38 :: v_dual_mov_b32 v17, s74018; GFX1250-NEXT:    v_dual_mov_b32 v18, s37 :: v_dual_mov_b32 v19, s64019; GFX1250-NEXT:    s_wait_xcnt 0x04020; GFX1250-NEXT:    v_dual_mov_b32 v20, s35 :: v_dual_mov_b32 v21, s54021; GFX1250-NEXT:    v_dual_mov_b32 v22, s36 :: v_dual_mov_b32 v23, s44022; GFX1250-NEXT:    s_clause 0x54023; GFX1250-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:804024; GFX1250-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:644025; GFX1250-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:484026; GFX1250-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:324027; GFX1250-NEXT:    global_store_b128 v24, v[16:19], s[0:1] offset:164028; GFX1250-NEXT:    global_store_b128 v24, v[20:23], s[0:1]4029; GFX1250-NEXT:    s_endpgm4030  %load = load <64 x i1>, ptr addrspace(4) %in4031  %ext = zext <64 x i1> %load to <64 x i32>4032  store <64 x i32> %ext, ptr addrspace(1) %out4033  ret void4034}4035 4036define amdgpu_kernel void @constant_sextload_v64i1_to_v64i32(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {4037; GFX6-LABEL: constant_sextload_v64i1_to_v64i32:4038; GFX6:       ; %bb.0:4039; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x94040; GFX6-NEXT:    s_waitcnt lgkmcnt(0)4041; GFX6-NEXT:    s_load_dwordx2 s[2:3], s[2:3], 0x04042; GFX6-NEXT:    s_waitcnt lgkmcnt(0)4043; GFX6-NEXT:    s_bfe_i32 s4, s2, 0x100034044; GFX6-NEXT:    s_bfe_i32 s5, s2, 0x100024045; GFX6-NEXT:    s_bfe_i32 s6, s2, 0x100014046; GFX6-NEXT:    s_bfe_i32 s7, s2, 0x100004047; GFX6-NEXT:    s_bfe_i32 s8, s2, 0x100074048; GFX6-NEXT:    s_bfe_i32 s9, s2, 0x100064049; GFX6-NEXT:    s_bfe_i32 s10, s2, 0x100054050; GFX6-NEXT:    s_bfe_i32 s11, s2, 0x100044051; GFX6-NEXT:    s_bfe_i32 s12, s2, 0x1000b4052; GFX6-NEXT:    s_bfe_i32 s13, s2, 0x1000a4053; GFX6-NEXT:    s_bfe_i32 s14, s2, 0x100094054; GFX6-NEXT:    s_bfe_i32 s15, s2, 0x100084055; GFX6-NEXT:    s_bfe_i32 s16, s2, 0x1000f4056; GFX6-NEXT:    s_bfe_i32 s17, s2, 0x1000e4057; GFX6-NEXT:    s_bfe_i32 s18, s2, 0x1000d4058; GFX6-NEXT:    s_bfe_i32 s19, s2, 0x1000c4059; GFX6-NEXT:    s_bfe_i32 s20, s2, 0x100134060; GFX6-NEXT:    s_bfe_i32 s21, s2, 0x100124061; GFX6-NEXT:    s_bfe_i32 s22, s2, 0x100114062; GFX6-NEXT:    s_bfe_i32 s23, s2, 0x100104063; GFX6-NEXT:    s_bfe_i32 s24, s2, 0x100174064; GFX6-NEXT:    s_bfe_i32 s25, s2, 0x100164065; GFX6-NEXT:    s_bfe_i32 s26, s2, 0x100154066; GFX6-NEXT:    s_bfe_i32 s27, s2, 0x100144067; GFX6-NEXT:    s_bfe_i32 s28, s2, 0x1001b4068; GFX6-NEXT:    s_bfe_i32 s29, s2, 0x1001a4069; GFX6-NEXT:    s_bfe_i32 s30, s2, 0x100194070; GFX6-NEXT:    s_bfe_i32 s31, s2, 0x100184071; GFX6-NEXT:    s_ashr_i32 s33, s2, 314072; GFX6-NEXT:    s_bfe_i32 s34, s2, 0x1001e4073; GFX6-NEXT:    s_bfe_i32 s35, s2, 0x1001d4074; GFX6-NEXT:    s_bfe_i32 s36, s2, 0x1001c4075; GFX6-NEXT:    s_bfe_i32 s37, s3, 0x100034076; GFX6-NEXT:    s_bfe_i32 s38, s3, 0x100024077; GFX6-NEXT:    s_bfe_i32 s39, s3, 0x100014078; GFX6-NEXT:    s_bfe_i32 s40, s3, 0x100004079; GFX6-NEXT:    s_bfe_i32 s41, s3, 0x100074080; GFX6-NEXT:    s_bfe_i32 s42, s3, 0x100064081; GFX6-NEXT:    s_bfe_i32 s43, s3, 0x100054082; GFX6-NEXT:    s_bfe_i32 s44, s3, 0x100044083; GFX6-NEXT:    s_bfe_i32 s45, s3, 0x1000b4084; GFX6-NEXT:    s_bfe_i32 s46, s3, 0x1000a4085; GFX6-NEXT:    s_bfe_i32 s47, s3, 0x100094086; GFX6-NEXT:    s_bfe_i32 s48, s3, 0x100084087; GFX6-NEXT:    s_bfe_i32 s49, s3, 0x1000e4088; GFX6-NEXT:    s_bfe_i32 s50, s3, 0x1000d4089; GFX6-NEXT:    s_bfe_i32 s51, s3, 0x1000c4090; GFX6-NEXT:    s_bfe_i32 s52, s3, 0x100134091; GFX6-NEXT:    s_bfe_i32 s53, s3, 0x100124092; GFX6-NEXT:    s_bfe_i32 s54, s3, 0x100114093; GFX6-NEXT:    s_bfe_i32 s55, s3, 0x100104094; GFX6-NEXT:    s_bfe_i32 s56, s3, 0x100174095; GFX6-NEXT:    s_bfe_i32 s57, s3, 0x100164096; GFX6-NEXT:    s_bfe_i32 s58, s3, 0x100154097; GFX6-NEXT:    s_bfe_i32 s59, s3, 0x100144098; GFX6-NEXT:    s_bfe_i32 s60, s3, 0x1001b4099; GFX6-NEXT:    s_bfe_i32 s61, s3, 0x1001a4100; GFX6-NEXT:    s_bfe_i32 s62, s3, 0x100194101; GFX6-NEXT:    s_bfe_i32 s63, s3, 0x100184102; GFX6-NEXT:    s_ashr_i32 s64, s3, 314103; GFX6-NEXT:    s_bfe_i32 s65, s3, 0x1001e4104; GFX6-NEXT:    s_bfe_i32 s66, s3, 0x1001d4105; GFX6-NEXT:    s_bfe_i32 s67, s3, 0x1001c4106; GFX6-NEXT:    s_bfe_i32 s68, s3, 0x1000f4107; GFX6-NEXT:    s_mov_b32 s3, 0xf0004108; GFX6-NEXT:    s_mov_b32 s2, -14109; GFX6-NEXT:    v_mov_b32_e32 v0, s674110; GFX6-NEXT:    v_mov_b32_e32 v1, s664111; GFX6-NEXT:    v_mov_b32_e32 v2, s654112; GFX6-NEXT:    v_mov_b32_e32 v3, s644113; GFX6-NEXT:    v_mov_b32_e32 v4, s634114; GFX6-NEXT:    v_mov_b32_e32 v5, s624115; GFX6-NEXT:    v_mov_b32_e32 v6, s614116; GFX6-NEXT:    v_mov_b32_e32 v7, s604117; GFX6-NEXT:    v_mov_b32_e32 v8, s594118; GFX6-NEXT:    v_mov_b32_e32 v9, s584119; GFX6-NEXT:    v_mov_b32_e32 v10, s574120; GFX6-NEXT:    v_mov_b32_e32 v11, s564121; GFX6-NEXT:    v_mov_b32_e32 v12, s554122; GFX6-NEXT:    v_mov_b32_e32 v13, s544123; GFX6-NEXT:    v_mov_b32_e32 v14, s534124; GFX6-NEXT:    v_mov_b32_e32 v15, s524125; GFX6-NEXT:    v_mov_b32_e32 v16, s514126; GFX6-NEXT:    v_mov_b32_e32 v17, s504127; GFX6-NEXT:    v_mov_b32_e32 v18, s494128; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:2404129; GFX6-NEXT:    s_waitcnt expcnt(0)4130; GFX6-NEXT:    v_mov_b32_e32 v0, s484131; GFX6-NEXT:    v_mov_b32_e32 v19, s684132; GFX6-NEXT:    v_mov_b32_e32 v1, s474133; GFX6-NEXT:    v_mov_b32_e32 v2, s464134; GFX6-NEXT:    v_mov_b32_e32 v3, s454135; GFX6-NEXT:    buffer_store_dwordx4 v[4:7], off, s[0:3], 0 offset:2244136; GFX6-NEXT:    buffer_store_dwordx4 v[8:11], off, s[0:3], 0 offset:2084137; GFX6-NEXT:    buffer_store_dwordx4 v[12:15], off, s[0:3], 0 offset:1924138; GFX6-NEXT:    buffer_store_dwordx4 v[16:19], off, s[0:3], 0 offset:1764139; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1604140; GFX6-NEXT:    s_waitcnt expcnt(0)4141; GFX6-NEXT:    v_mov_b32_e32 v0, s444142; GFX6-NEXT:    v_mov_b32_e32 v1, s434143; GFX6-NEXT:    v_mov_b32_e32 v2, s424144; GFX6-NEXT:    v_mov_b32_e32 v3, s414145; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1444146; GFX6-NEXT:    s_waitcnt expcnt(0)4147; GFX6-NEXT:    v_mov_b32_e32 v0, s404148; GFX6-NEXT:    v_mov_b32_e32 v1, s394149; GFX6-NEXT:    v_mov_b32_e32 v2, s384150; GFX6-NEXT:    v_mov_b32_e32 v3, s374151; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1284152; GFX6-NEXT:    s_waitcnt expcnt(0)4153; GFX6-NEXT:    v_mov_b32_e32 v0, s364154; GFX6-NEXT:    v_mov_b32_e32 v1, s354155; GFX6-NEXT:    v_mov_b32_e32 v2, s344156; GFX6-NEXT:    v_mov_b32_e32 v3, s334157; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1124158; GFX6-NEXT:    s_waitcnt expcnt(0)4159; GFX6-NEXT:    v_mov_b32_e32 v0, s314160; GFX6-NEXT:    v_mov_b32_e32 v1, s304161; GFX6-NEXT:    v_mov_b32_e32 v2, s294162; GFX6-NEXT:    v_mov_b32_e32 v3, s284163; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:964164; GFX6-NEXT:    s_waitcnt expcnt(0)4165; GFX6-NEXT:    v_mov_b32_e32 v0, s274166; GFX6-NEXT:    v_mov_b32_e32 v1, s264167; GFX6-NEXT:    v_mov_b32_e32 v2, s254168; GFX6-NEXT:    v_mov_b32_e32 v3, s244169; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:804170; GFX6-NEXT:    s_waitcnt expcnt(0)4171; GFX6-NEXT:    v_mov_b32_e32 v0, s234172; GFX6-NEXT:    v_mov_b32_e32 v1, s224173; GFX6-NEXT:    v_mov_b32_e32 v2, s214174; GFX6-NEXT:    v_mov_b32_e32 v3, s204175; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:644176; GFX6-NEXT:    s_waitcnt expcnt(0)4177; GFX6-NEXT:    v_mov_b32_e32 v0, s194178; GFX6-NEXT:    v_mov_b32_e32 v1, s184179; GFX6-NEXT:    v_mov_b32_e32 v2, s174180; GFX6-NEXT:    v_mov_b32_e32 v3, s164181; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:484182; GFX6-NEXT:    s_waitcnt expcnt(0)4183; GFX6-NEXT:    v_mov_b32_e32 v0, s154184; GFX6-NEXT:    v_mov_b32_e32 v1, s144185; GFX6-NEXT:    v_mov_b32_e32 v2, s134186; GFX6-NEXT:    v_mov_b32_e32 v3, s124187; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:324188; GFX6-NEXT:    s_waitcnt expcnt(0)4189; GFX6-NEXT:    v_mov_b32_e32 v0, s114190; GFX6-NEXT:    v_mov_b32_e32 v1, s104191; GFX6-NEXT:    v_mov_b32_e32 v2, s94192; GFX6-NEXT:    v_mov_b32_e32 v3, s84193; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:164194; GFX6-NEXT:    s_waitcnt expcnt(0)4195; GFX6-NEXT:    v_mov_b32_e32 v0, s74196; GFX6-NEXT:    v_mov_b32_e32 v1, s64197; GFX6-NEXT:    v_mov_b32_e32 v2, s54198; GFX6-NEXT:    v_mov_b32_e32 v3, s44199; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 04200; GFX6-NEXT:    s_endpgm4201;4202; GFX8-LABEL: constant_sextload_v64i1_to_v64i32:4203; GFX8:       ; %bb.0:4204; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x244205; GFX8-NEXT:    s_waitcnt lgkmcnt(0)4206; GFX8-NEXT:    s_load_dwordx2 s[26:27], s[2:3], 0x04207; GFX8-NEXT:    s_waitcnt lgkmcnt(0)4208; GFX8-NEXT:    s_bfe_i32 s2, s26, 0x100034209; GFX8-NEXT:    s_bfe_i32 s3, s26, 0x100024210; GFX8-NEXT:    s_bfe_i32 s4, s26, 0x100014211; GFX8-NEXT:    s_bfe_i32 s5, s26, 0x100004212; GFX8-NEXT:    s_bfe_i32 s6, s26, 0x100074213; GFX8-NEXT:    s_bfe_i32 s7, s26, 0x100064214; GFX8-NEXT:    s_bfe_i32 s8, s26, 0x100054215; GFX8-NEXT:    s_bfe_i32 s9, s26, 0x100044216; GFX8-NEXT:    s_bfe_i32 s10, s26, 0x1000b4217; GFX8-NEXT:    s_bfe_i32 s11, s26, 0x1000a4218; GFX8-NEXT:    s_bfe_i32 s12, s26, 0x100094219; GFX8-NEXT:    s_bfe_i32 s13, s26, 0x100084220; GFX8-NEXT:    s_bfe_i32 s14, s26, 0x1000f4221; GFX8-NEXT:    s_bfe_i32 s15, s26, 0x1000e4222; GFX8-NEXT:    s_bfe_i32 s16, s26, 0x1000d4223; GFX8-NEXT:    s_bfe_i32 s17, s26, 0x1000c4224; GFX8-NEXT:    s_bfe_i32 s18, s26, 0x100134225; GFX8-NEXT:    s_bfe_i32 s19, s26, 0x100124226; GFX8-NEXT:    s_bfe_i32 s20, s26, 0x100114227; GFX8-NEXT:    s_bfe_i32 s21, s26, 0x100104228; GFX8-NEXT:    s_bfe_i32 s22, s26, 0x100174229; GFX8-NEXT:    s_bfe_i32 s23, s26, 0x100164230; GFX8-NEXT:    s_bfe_i32 s24, s26, 0x100154231; GFX8-NEXT:    s_bfe_i32 s25, s26, 0x100144232; GFX8-NEXT:    s_bfe_i32 s28, s26, 0x1001b4233; GFX8-NEXT:    s_bfe_i32 s29, s26, 0x1001a4234; GFX8-NEXT:    s_bfe_i32 s30, s26, 0x100194235; GFX8-NEXT:    s_bfe_i32 s31, s26, 0x100184236; GFX8-NEXT:    s_ashr_i32 s33, s26, 314237; GFX8-NEXT:    s_bfe_i32 s34, s26, 0x1001e4238; GFX8-NEXT:    s_bfe_i32 s35, s26, 0x1001d4239; GFX8-NEXT:    s_bfe_i32 s36, s26, 0x1001c4240; GFX8-NEXT:    s_bfe_i32 s37, s27, 0x100034241; GFX8-NEXT:    s_bfe_i32 s38, s27, 0x100024242; GFX8-NEXT:    s_bfe_i32 s39, s27, 0x100014243; GFX8-NEXT:    s_bfe_i32 s40, s27, 0x100004244; GFX8-NEXT:    s_bfe_i32 s41, s27, 0x100074245; GFX8-NEXT:    s_bfe_i32 s42, s27, 0x100064246; GFX8-NEXT:    s_bfe_i32 s43, s27, 0x100054247; GFX8-NEXT:    s_bfe_i32 s44, s27, 0x100044248; GFX8-NEXT:    s_bfe_i32 s45, s27, 0x1000b4249; GFX8-NEXT:    s_bfe_i32 s46, s27, 0x1000a4250; GFX8-NEXT:    s_bfe_i32 s47, s27, 0x100094251; GFX8-NEXT:    s_bfe_i32 s48, s27, 0x100084252; GFX8-NEXT:    s_bfe_i32 s49, s27, 0x1000f4253; GFX8-NEXT:    s_bfe_i32 s50, s27, 0x1000e4254; GFX8-NEXT:    s_bfe_i32 s51, s27, 0x1000d4255; GFX8-NEXT:    s_bfe_i32 s52, s27, 0x1000c4256; GFX8-NEXT:    s_bfe_i32 s53, s27, 0x100134257; GFX8-NEXT:    s_bfe_i32 s54, s27, 0x100124258; GFX8-NEXT:    s_bfe_i32 s55, s27, 0x100114259; GFX8-NEXT:    s_bfe_i32 s56, s27, 0x100104260; GFX8-NEXT:    s_bfe_i32 s57, s27, 0x100174261; GFX8-NEXT:    s_bfe_i32 s58, s27, 0x100164262; GFX8-NEXT:    s_bfe_i32 s59, s27, 0x100154263; GFX8-NEXT:    s_bfe_i32 s60, s27, 0x100144264; GFX8-NEXT:    s_bfe_i32 s61, s27, 0x1001b4265; GFX8-NEXT:    s_bfe_i32 s62, s27, 0x1001a4266; GFX8-NEXT:    s_bfe_i32 s63, s27, 0x100194267; GFX8-NEXT:    s_bfe_i32 s64, s27, 0x100184268; GFX8-NEXT:    s_ashr_i32 s26, s27, 314269; GFX8-NEXT:    s_bfe_i32 s65, s27, 0x1001e4270; GFX8-NEXT:    s_bfe_i32 s66, s27, 0x1001d4271; GFX8-NEXT:    s_bfe_i32 s27, s27, 0x1001c4272; GFX8-NEXT:    v_mov_b32_e32 v3, s264273; GFX8-NEXT:    s_add_u32 s26, s0, 0xf04274; GFX8-NEXT:    v_mov_b32_e32 v0, s274275; GFX8-NEXT:    s_addc_u32 s27, s1, 04276; GFX8-NEXT:    v_mov_b32_e32 v4, s264277; GFX8-NEXT:    v_mov_b32_e32 v1, s664278; GFX8-NEXT:    v_mov_b32_e32 v2, s654279; GFX8-NEXT:    v_mov_b32_e32 v5, s274280; GFX8-NEXT:    s_add_u32 s26, s0, 0xe04281; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]4282; GFX8-NEXT:    s_addc_u32 s27, s1, 04283; GFX8-NEXT:    v_mov_b32_e32 v4, s264284; GFX8-NEXT:    v_mov_b32_e32 v0, s644285; GFX8-NEXT:    v_mov_b32_e32 v1, s634286; GFX8-NEXT:    v_mov_b32_e32 v2, s624287; GFX8-NEXT:    v_mov_b32_e32 v3, s614288; GFX8-NEXT:    v_mov_b32_e32 v5, s274289; GFX8-NEXT:    s_add_u32 s26, s0, 0xd04290; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]4291; GFX8-NEXT:    s_addc_u32 s27, s1, 04292; GFX8-NEXT:    v_mov_b32_e32 v4, s264293; GFX8-NEXT:    v_mov_b32_e32 v0, s604294; GFX8-NEXT:    v_mov_b32_e32 v1, s594295; GFX8-NEXT:    v_mov_b32_e32 v2, s584296; GFX8-NEXT:    v_mov_b32_e32 v3, s574297; GFX8-NEXT:    v_mov_b32_e32 v5, s274298; GFX8-NEXT:    s_add_u32 s26, s0, 0xc04299; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]4300; GFX8-NEXT:    s_addc_u32 s27, s1, 04301; GFX8-NEXT:    v_mov_b32_e32 v4, s264302; GFX8-NEXT:    v_mov_b32_e32 v0, s564303; GFX8-NEXT:    v_mov_b32_e32 v1, s554304; GFX8-NEXT:    v_mov_b32_e32 v2, s544305; GFX8-NEXT:    v_mov_b32_e32 v3, s534306; GFX8-NEXT:    v_mov_b32_e32 v5, s274307; GFX8-NEXT:    s_add_u32 s26, s0, 0xb04308; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]4309; GFX8-NEXT:    s_addc_u32 s27, s1, 04310; GFX8-NEXT:    v_mov_b32_e32 v4, s264311; GFX8-NEXT:    v_mov_b32_e32 v0, s524312; GFX8-NEXT:    v_mov_b32_e32 v1, s514313; GFX8-NEXT:    v_mov_b32_e32 v2, s504314; GFX8-NEXT:    v_mov_b32_e32 v3, s494315; GFX8-NEXT:    v_mov_b32_e32 v5, s274316; GFX8-NEXT:    s_add_u32 s26, s0, 0xa04317; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]4318; GFX8-NEXT:    s_addc_u32 s27, s1, 04319; GFX8-NEXT:    v_mov_b32_e32 v4, s264320; GFX8-NEXT:    v_mov_b32_e32 v0, s484321; GFX8-NEXT:    v_mov_b32_e32 v1, s474322; GFX8-NEXT:    v_mov_b32_e32 v2, s464323; GFX8-NEXT:    v_mov_b32_e32 v3, s454324; GFX8-NEXT:    v_mov_b32_e32 v5, s274325; GFX8-NEXT:    s_add_u32 s26, s0, 0x904326; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]4327; GFX8-NEXT:    s_addc_u32 s27, s1, 04328; GFX8-NEXT:    v_mov_b32_e32 v4, s264329; GFX8-NEXT:    v_mov_b32_e32 v0, s444330; GFX8-NEXT:    v_mov_b32_e32 v1, s434331; GFX8-NEXT:    v_mov_b32_e32 v2, s424332; GFX8-NEXT:    v_mov_b32_e32 v3, s414333; GFX8-NEXT:    v_mov_b32_e32 v5, s274334; GFX8-NEXT:    s_add_u32 s26, s0, 0x804335; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]4336; GFX8-NEXT:    s_addc_u32 s27, s1, 04337; GFX8-NEXT:    v_mov_b32_e32 v4, s264338; GFX8-NEXT:    v_mov_b32_e32 v0, s404339; GFX8-NEXT:    v_mov_b32_e32 v1, s394340; GFX8-NEXT:    v_mov_b32_e32 v2, s384341; GFX8-NEXT:    v_mov_b32_e32 v3, s374342; GFX8-NEXT:    v_mov_b32_e32 v5, s274343; GFX8-NEXT:    s_add_u32 s26, s0, 0x704344; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]4345; GFX8-NEXT:    s_addc_u32 s27, s1, 04346; GFX8-NEXT:    v_mov_b32_e32 v4, s264347; GFX8-NEXT:    v_mov_b32_e32 v0, s364348; GFX8-NEXT:    v_mov_b32_e32 v1, s354349; GFX8-NEXT:    v_mov_b32_e32 v2, s344350; GFX8-NEXT:    v_mov_b32_e32 v3, s334351; GFX8-NEXT:    v_mov_b32_e32 v5, s274352; GFX8-NEXT:    s_add_u32 s26, s0, 0x604353; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]4354; GFX8-NEXT:    s_addc_u32 s27, s1, 04355; GFX8-NEXT:    v_mov_b32_e32 v4, s264356; GFX8-NEXT:    v_mov_b32_e32 v0, s314357; GFX8-NEXT:    v_mov_b32_e32 v1, s304358; GFX8-NEXT:    v_mov_b32_e32 v2, s294359; GFX8-NEXT:    v_mov_b32_e32 v3, s284360; GFX8-NEXT:    v_mov_b32_e32 v5, s274361; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]4362; GFX8-NEXT:    s_nop 04363; GFX8-NEXT:    v_mov_b32_e32 v3, s224364; GFX8-NEXT:    s_add_u32 s22, s0, 0x504365; GFX8-NEXT:    v_mov_b32_e32 v2, s234366; GFX8-NEXT:    s_addc_u32 s23, s1, 04367; GFX8-NEXT:    v_mov_b32_e32 v4, s224368; GFX8-NEXT:    v_mov_b32_e32 v0, s254369; GFX8-NEXT:    v_mov_b32_e32 v1, s244370; GFX8-NEXT:    v_mov_b32_e32 v5, s234371; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]4372; GFX8-NEXT:    s_nop 04373; GFX8-NEXT:    v_mov_b32_e32 v3, s184374; GFX8-NEXT:    s_add_u32 s18, s0, 644375; GFX8-NEXT:    v_mov_b32_e32 v2, s194376; GFX8-NEXT:    s_addc_u32 s19, s1, 04377; GFX8-NEXT:    v_mov_b32_e32 v4, s184378; GFX8-NEXT:    v_mov_b32_e32 v0, s214379; GFX8-NEXT:    v_mov_b32_e32 v1, s204380; GFX8-NEXT:    v_mov_b32_e32 v5, s194381; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]4382; GFX8-NEXT:    s_nop 04383; GFX8-NEXT:    v_mov_b32_e32 v3, s144384; GFX8-NEXT:    s_add_u32 s14, s0, 484385; GFX8-NEXT:    v_mov_b32_e32 v2, s154386; GFX8-NEXT:    s_addc_u32 s15, s1, 04387; GFX8-NEXT:    v_mov_b32_e32 v4, s144388; GFX8-NEXT:    v_mov_b32_e32 v0, s174389; GFX8-NEXT:    v_mov_b32_e32 v1, s164390; GFX8-NEXT:    v_mov_b32_e32 v5, s154391; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]4392; GFX8-NEXT:    s_nop 04393; GFX8-NEXT:    v_mov_b32_e32 v3, s104394; GFX8-NEXT:    s_add_u32 s10, s0, 324395; GFX8-NEXT:    v_mov_b32_e32 v2, s114396; GFX8-NEXT:    s_addc_u32 s11, s1, 04397; GFX8-NEXT:    v_mov_b32_e32 v4, s104398; GFX8-NEXT:    v_mov_b32_e32 v0, s134399; GFX8-NEXT:    v_mov_b32_e32 v1, s124400; GFX8-NEXT:    v_mov_b32_e32 v5, s114401; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]4402; GFX8-NEXT:    s_nop 04403; GFX8-NEXT:    v_mov_b32_e32 v3, s64404; GFX8-NEXT:    s_add_u32 s6, s0, 164405; GFX8-NEXT:    v_mov_b32_e32 v2, s74406; GFX8-NEXT:    s_addc_u32 s7, s1, 04407; GFX8-NEXT:    v_mov_b32_e32 v4, s64408; GFX8-NEXT:    v_mov_b32_e32 v0, s94409; GFX8-NEXT:    v_mov_b32_e32 v1, s84410; GFX8-NEXT:    v_mov_b32_e32 v5, s74411; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]4412; GFX8-NEXT:    v_mov_b32_e32 v5, s14413; GFX8-NEXT:    v_mov_b32_e32 v0, s54414; GFX8-NEXT:    v_mov_b32_e32 v1, s44415; GFX8-NEXT:    v_mov_b32_e32 v2, s34416; GFX8-NEXT:    v_mov_b32_e32 v3, s24417; GFX8-NEXT:    v_mov_b32_e32 v4, s04418; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]4419; GFX8-NEXT:    s_endpgm4420;4421; EG-LABEL: constant_sextload_v64i1_to_v64i32:4422; EG:       ; %bb.0:4423; EG-NEXT:    ALU 0, @24, KC0[CB0:0-32], KC1[]4424; EG-NEXT:    TEX 0 @224425; EG-NEXT:    ALU 99, @25, KC0[CB0:0-32], KC1[]4426; EG-NEXT:    ALU 98, @125, KC0[CB0:0-32], KC1[]4427; EG-NEXT:    ALU 13, @224, KC0[CB0:0-32], KC1[]4428; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T48.XYZW, T50.X, 04429; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T45.XYZW, T49.X, 04430; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T43.XYZW, T46.X, 04431; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T41.XYZW, T44.X, 04432; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T39.XYZW, T42.X, 04433; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T37.XYZW, T40.X, 04434; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T34.XYZW, T38.X, 04435; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T19.XYZW, T36.X, 04436; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T32.XYZW, T35.X, 04437; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T30.XYZW, T33.X, 04438; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T28.XYZW, T31.X, 04439; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T26.XYZW, T29.X, 04440; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T24.XYZW, T27.X, 04441; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T22.XYZW, T25.X, 04442; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T20.XYZW, T23.X, 04443; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T47.XYZW, T21.X, 14444; EG-NEXT:    CF_END4445; EG-NEXT:    Fetch clause starting at 22:4446; EG-NEXT:     VTX_READ_64 T19.XY, T19.X, 0, #14447; EG-NEXT:    ALU clause starting at 24:4448; EG-NEXT:     MOV * T19.X, KC0[2].Z,4449; EG-NEXT:    ALU clause starting at 25:4450; EG-NEXT:     LSHR * T0.W, T19.X, literal.x,4451; EG-NEXT:    7(9.809089e-45), 0(0.000000e+00)4452; EG-NEXT:     BFE_INT T20.W, PV.W, 0.0, 1,4453; EG-NEXT:     LSHR * T0.W, T19.X, literal.x,4454; EG-NEXT:    6(8.407791e-45), 0(0.000000e+00)4455; EG-NEXT:     BFE_INT T20.Z, PS, 0.0, 1,4456; EG-NEXT:     LSHR T0.W, T19.X, literal.x,4457; EG-NEXT:     LSHR * T1.W, T19.X, literal.y,4458; EG-NEXT:    11(1.541428e-44), 5(7.006492e-45)4459; EG-NEXT:     LSHR T21.X, KC0[2].Y, literal.x,4460; EG-NEXT:     BFE_INT T20.Y, PS, 0.0, 1,4461; EG-NEXT:     LSHR T0.Z, T19.X, literal.y,4462; EG-NEXT:     BFE_INT T22.W, PV.W, 0.0, 1,4463; EG-NEXT:     LSHR * T0.W, T19.X, literal.z,4464; EG-NEXT:    2(2.802597e-45), 10(1.401298e-44)4465; EG-NEXT:    4(5.605194e-45), 0(0.000000e+00)4466; EG-NEXT:     BFE_INT T20.X, PS, 0.0, 1,4467; EG-NEXT:     LSHR T0.Y, T19.X, literal.x,4468; EG-NEXT:     BFE_INT T22.Z, PV.Z, 0.0, 1,4469; EG-NEXT:     LSHR T0.W, T19.X, literal.y,4470; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.z,4471; EG-NEXT:    15(2.101948e-44), 9(1.261169e-44)4472; EG-NEXT:    16(2.242078e-44), 0(0.000000e+00)4473; EG-NEXT:     LSHR T23.X, PS, literal.x,4474; EG-NEXT:     BFE_INT T22.Y, PV.W, 0.0, 1,4475; EG-NEXT:     LSHR T0.Z, T19.X, literal.y,4476; EG-NEXT:     BFE_INT T24.W, PV.Y, 0.0, 1,4477; EG-NEXT:     LSHR * T0.W, T19.X, literal.z,4478; EG-NEXT:    2(2.802597e-45), 14(1.961818e-44)4479; EG-NEXT:    8(1.121039e-44), 0(0.000000e+00)4480; EG-NEXT:     BFE_INT T22.X, PS, 0.0, 1,4481; EG-NEXT:     LSHR T0.Y, T19.X, literal.x,4482; EG-NEXT:     BFE_INT T24.Z, PV.Z, 0.0, 1,4483; EG-NEXT:     LSHR T0.W, T19.X, literal.y,4484; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.z,4485; EG-NEXT:    19(2.662467e-44), 13(1.821688e-44)4486; EG-NEXT:    32(4.484155e-44), 0(0.000000e+00)4487; EG-NEXT:     LSHR T25.X, PS, literal.x,4488; EG-NEXT:     BFE_INT T24.Y, PV.W, 0.0, 1,4489; EG-NEXT:     LSHR T0.Z, T19.X, literal.y,4490; EG-NEXT:     BFE_INT T26.W, PV.Y, 0.0, 1,4491; EG-NEXT:     LSHR * T0.W, T19.X, literal.z,4492; EG-NEXT:    2(2.802597e-45), 18(2.522337e-44)4493; EG-NEXT:    12(1.681558e-44), 0(0.000000e+00)4494; EG-NEXT:     BFE_INT T24.X, PS, 0.0, 1,4495; EG-NEXT:     LSHR T0.Y, T19.X, literal.x,4496; EG-NEXT:     BFE_INT T26.Z, PV.Z, 0.0, 1,4497; EG-NEXT:     LSHR T0.W, T19.X, literal.y,4498; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.z,4499; EG-NEXT:    23(3.222986e-44), 17(2.382207e-44)4500; EG-NEXT:    48(6.726233e-44), 0(0.000000e+00)4501; EG-NEXT:     LSHR T27.X, PS, literal.x,4502; EG-NEXT:     BFE_INT T26.Y, PV.W, 0.0, 1,4503; EG-NEXT:     LSHR T0.Z, T19.X, literal.y,4504; EG-NEXT:     BFE_INT T28.W, PV.Y, 0.0, 1,4505; EG-NEXT:     LSHR * T0.W, T19.X, literal.z,4506; EG-NEXT:    2(2.802597e-45), 22(3.082857e-44)4507; EG-NEXT:    16(2.242078e-44), 0(0.000000e+00)4508; EG-NEXT:     BFE_INT T26.X, PS, 0.0, 1,4509; EG-NEXT:     LSHR T0.Y, T19.X, literal.x,4510; EG-NEXT:     BFE_INT T28.Z, PV.Z, 0.0, 1,4511; EG-NEXT:     LSHR T0.W, T19.X, literal.y,4512; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.z,4513; EG-NEXT:    27(3.783506e-44), 21(2.942727e-44)4514; EG-NEXT:    64(8.968310e-44), 0(0.000000e+00)4515; EG-NEXT:     LSHR T29.X, PS, literal.x,4516; EG-NEXT:     BFE_INT T28.Y, PV.W, 0.0, 1,4517; EG-NEXT:     LSHR T0.Z, T19.X, literal.y,4518; EG-NEXT:     BFE_INT T30.W, PV.Y, 0.0, 1,4519; EG-NEXT:     LSHR * T0.W, T19.X, literal.z,4520; EG-NEXT:    2(2.802597e-45), 26(3.643376e-44)4521; EG-NEXT:    20(2.802597e-44), 0(0.000000e+00)4522; EG-NEXT:     BFE_INT T28.X, PS, 0.0, 1,4523; EG-NEXT:     BFE_INT T30.Z, PV.Z, 0.0, 1,4524; EG-NEXT:     LSHR T0.W, T19.X, literal.x,4525; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.y,4526; EG-NEXT:    25(3.503246e-44), 80(1.121039e-43)4527; EG-NEXT:     LSHR T31.X, PS, literal.x,4528; EG-NEXT:     BFE_INT T30.Y, PV.W, 0.0, 1,4529; EG-NEXT:     LSHR T0.Z, T19.X, literal.y,4530; EG-NEXT:     LSHR T0.W, T19.X, literal.z,4531; EG-NEXT:     ASHR * T32.W, T19.X, literal.w,4532; EG-NEXT:    2(2.802597e-45), 30(4.203895e-44)4533; EG-NEXT:    24(3.363116e-44), 31(4.344025e-44)4534; EG-NEXT:     BFE_INT T30.X, PV.W, 0.0, 1,4535; EG-NEXT:     BFE_INT T32.Z, PV.Z, 0.0, 1,4536; EG-NEXT:     LSHR T0.W, T19.X, literal.x,4537; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.y,4538; EG-NEXT:    29(4.063766e-44), 96(1.345247e-43)4539; EG-NEXT:     LSHR T33.X, PS, literal.x,4540; EG-NEXT:     BFE_INT T32.Y, PV.W, 0.0, 1,4541; EG-NEXT:     LSHR T0.W, T19.Y, literal.y,4542; EG-NEXT:     LSHR * T1.W, T19.X, literal.z,4543; EG-NEXT:    2(2.802597e-45), 7(9.809089e-45)4544; EG-NEXT:    28(3.923636e-44), 0(0.000000e+00)4545; EG-NEXT:     BFE_INT T32.X, PS, 0.0, 1,4546; EG-NEXT:     LSHR T0.Z, T19.Y, literal.x,4547; EG-NEXT:     BFE_INT T34.W, PV.W, 0.0, 1,4548; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,4549; EG-NEXT:    6(8.407791e-45), 112(1.569454e-43)4550; EG-NEXT:    ALU clause starting at 125:4551; EG-NEXT:     LSHR T35.X, T0.W, literal.x,4552; EG-NEXT:     LSHR T0.Y, T19.Y, literal.y,4553; EG-NEXT:     BFE_INT T34.Z, T0.Z, 0.0, 1,4554; EG-NEXT:     LSHR T0.W, T19.Y, literal.z,4555; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.w,4556; EG-NEXT:    2(2.802597e-45), 11(1.541428e-44)4557; EG-NEXT:    5(7.006492e-45), 128(1.793662e-43)4558; EG-NEXT:     LSHR T36.X, PS, literal.x,4559; EG-NEXT:     BFE_INT T34.Y, PV.W, 0.0, 1,4560; EG-NEXT:     LSHR T0.Z, T19.Y, literal.y,4561; EG-NEXT:     BFE_INT T37.W, PV.Y, 0.0, 1,4562; EG-NEXT:     LSHR * T0.W, T19.Y, literal.z,4563; EG-NEXT:    2(2.802597e-45), 10(1.401298e-44)4564; EG-NEXT:    4(5.605194e-45), 0(0.000000e+00)4565; EG-NEXT:     BFE_INT T34.X, PS, 0.0, 1,4566; EG-NEXT:     LSHR T0.Y, T19.Y, literal.x,4567; EG-NEXT:     BFE_INT T37.Z, PV.Z, 0.0, 1,4568; EG-NEXT:     LSHR T0.W, T19.Y, literal.y,4569; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.z,4570; EG-NEXT:    15(2.101948e-44), 9(1.261169e-44)4571; EG-NEXT:    144(2.017870e-43), 0(0.000000e+00)4572; EG-NEXT:     LSHR T38.X, PS, literal.x,4573; EG-NEXT:     BFE_INT T37.Y, PV.W, 0.0, 1,4574; EG-NEXT:     LSHR T0.Z, T19.Y, literal.y,4575; EG-NEXT:     BFE_INT T39.W, PV.Y, 0.0, 1,4576; EG-NEXT:     LSHR * T0.W, T19.Y, literal.z,4577; EG-NEXT:    2(2.802597e-45), 14(1.961818e-44)4578; EG-NEXT:    8(1.121039e-44), 0(0.000000e+00)4579; EG-NEXT:     BFE_INT T37.X, PS, 0.0, 1,4580; EG-NEXT:     LSHR T0.Y, T19.Y, literal.x,4581; EG-NEXT:     BFE_INT T39.Z, PV.Z, 0.0, 1,4582; EG-NEXT:     LSHR T0.W, T19.Y, literal.y,4583; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.z,4584; EG-NEXT:    19(2.662467e-44), 13(1.821688e-44)4585; EG-NEXT:    160(2.242078e-43), 0(0.000000e+00)4586; EG-NEXT:     LSHR T40.X, PS, literal.x,4587; EG-NEXT:     BFE_INT T39.Y, PV.W, 0.0, 1,4588; EG-NEXT:     LSHR T0.Z, T19.Y, literal.y,4589; EG-NEXT:     BFE_INT T41.W, PV.Y, 0.0, 1,4590; EG-NEXT:     LSHR * T0.W, T19.Y, literal.z,4591; EG-NEXT:    2(2.802597e-45), 18(2.522337e-44)4592; EG-NEXT:    12(1.681558e-44), 0(0.000000e+00)4593; EG-NEXT:     BFE_INT T39.X, PS, 0.0, 1,4594; EG-NEXT:     LSHR T0.Y, T19.Y, literal.x,4595; EG-NEXT:     BFE_INT T41.Z, PV.Z, 0.0, 1,4596; EG-NEXT:     LSHR T0.W, T19.Y, literal.y,4597; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.z,4598; EG-NEXT:    23(3.222986e-44), 17(2.382207e-44)4599; EG-NEXT:    176(2.466285e-43), 0(0.000000e+00)4600; EG-NEXT:     LSHR T42.X, PS, literal.x,4601; EG-NEXT:     BFE_INT T41.Y, PV.W, 0.0, 1,4602; EG-NEXT:     LSHR T0.Z, T19.Y, literal.y,4603; EG-NEXT:     BFE_INT T43.W, PV.Y, 0.0, 1,4604; EG-NEXT:     LSHR * T0.W, T19.Y, literal.z,4605; EG-NEXT:    2(2.802597e-45), 22(3.082857e-44)4606; EG-NEXT:    16(2.242078e-44), 0(0.000000e+00)4607; EG-NEXT:     BFE_INT T41.X, PS, 0.0, 1,4608; EG-NEXT:     LSHR T0.Y, T19.Y, literal.x,4609; EG-NEXT:     BFE_INT T43.Z, PV.Z, 0.0, 1,4610; EG-NEXT:     LSHR T0.W, T19.Y, literal.y,4611; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.z,4612; EG-NEXT:    27(3.783506e-44), 21(2.942727e-44)4613; EG-NEXT:    192(2.690493e-43), 0(0.000000e+00)4614; EG-NEXT:     LSHR T44.X, PS, literal.x,4615; EG-NEXT:     BFE_INT T43.Y, PV.W, 0.0, 1,4616; EG-NEXT:     LSHR T0.Z, T19.Y, literal.y,4617; EG-NEXT:     BFE_INT T45.W, PV.Y, 0.0, 1,4618; EG-NEXT:     LSHR * T0.W, T19.Y, literal.z,4619; EG-NEXT:    2(2.802597e-45), 26(3.643376e-44)4620; EG-NEXT:    20(2.802597e-44), 0(0.000000e+00)4621; EG-NEXT:     BFE_INT T43.X, PS, 0.0, 1,4622; EG-NEXT:     BFE_INT T45.Z, PV.Z, 0.0, 1,4623; EG-NEXT:     LSHR T0.W, T19.Y, literal.x,4624; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.y,4625; EG-NEXT:    25(3.503246e-44), 208(2.914701e-43)4626; EG-NEXT:     LSHR T46.X, PS, literal.x,4627; EG-NEXT:     BFE_INT T45.Y, PV.W, 0.0, 1,4628; EG-NEXT:     LSHR * T0.W, T19.Y, literal.y,4629; EG-NEXT:    2(2.802597e-45), 24(3.363116e-44)4630; EG-NEXT:     BFE_INT T45.X, PV.W, 0.0, 1,4631; EG-NEXT:     LSHR T0.Z, T19.Y, literal.x,4632; EG-NEXT:     LSHR T0.W, T19.X, 1,4633; EG-NEXT:     LSHR * T1.W, T19.Y, literal.y,4634; EG-NEXT:    2(2.802597e-45), 3(4.203895e-45)4635; EG-NEXT:     BFE_INT T47.X, T19.X, 0.0, 1,4636; EG-NEXT:     LSHR T0.Y, T19.X, literal.x,4637; EG-NEXT:     LSHR T1.Z, T19.X, literal.y,4638; EG-NEXT:     LSHR T2.W, T19.Y, literal.z,4639; EG-NEXT:     ASHR * T48.W, T19.Y, literal.w,4640; EG-NEXT:    2(2.802597e-45), 3(4.203895e-45)4641; EG-NEXT:    30(4.203895e-44), 31(4.344025e-44)4642; EG-NEXT:     BFE_INT T19.X, T19.Y, 0.0, 1,4643; EG-NEXT:     LSHR T1.Y, T19.Y, literal.x,4644; EG-NEXT:     BFE_INT T48.Z, PV.W, 0.0, 1,4645; EG-NEXT:     BFE_INT T47.W, PV.Z, 0.0, 1,4646; EG-NEXT:     ADD_INT * T2.W, KC0[2].Y, literal.y,4647; EG-NEXT:    29(4.063766e-44), 224(3.138909e-43)4648; EG-NEXT:     LSHR * T49.X, PS, literal.x,4649; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)4650; EG-NEXT:    ALU clause starting at 224:4651; EG-NEXT:     BFE_INT T48.Y, T1.Y, 0.0, 1,4652; EG-NEXT:     BFE_INT T47.Z, T0.Y, 0.0, 1, BS:VEC_120/SCL_2124653; EG-NEXT:     BFE_INT T19.W, T1.W, 0.0, 1,4654; EG-NEXT:     LSHR * T1.W, T19.Y, literal.x,4655; EG-NEXT:    28(3.923636e-44), 0(0.000000e+00)4656; EG-NEXT:     BFE_INT T48.X, PS, 0.0, 1,4657; EG-NEXT:     BFE_INT T47.Y, T0.W, 0.0, 1,4658; EG-NEXT:     BFE_INT T19.Z, T0.Z, 0.0, 1,4659; EG-NEXT:     LSHR T0.W, T19.Y, 1,4660; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.x,4661; EG-NEXT:    240(3.363116e-43), 0(0.000000e+00)4662; EG-NEXT:     LSHR T50.X, PS, literal.x,4663; EG-NEXT:     BFE_INT * T19.Y, PV.W, 0.0, 1,4664; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)4665;4666; GFX12-LABEL: constant_sextload_v64i1_to_v64i32:4667; GFX12:       ; %bb.0:4668; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x244669; GFX12-NEXT:    s_wait_kmcnt 0x04670; GFX12-NEXT:    s_load_b64 s[2:3], s[2:3], 0x04671; GFX12-NEXT:    s_wait_kmcnt 0x04672; GFX12-NEXT:    s_ashr_i32 s63, s3, 314673; GFX12-NEXT:    s_bfe_i32 s64, s3, 0x1001e4674; GFX12-NEXT:    s_bfe_i32 s65, s3, 0x1001c4675; GFX12-NEXT:    s_bfe_i32 s66, s3, 0x1001d4676; GFX12-NEXT:    s_bfe_i32 s59, s3, 0x1001b4677; GFX12-NEXT:    s_bfe_i32 s60, s3, 0x1001a4678; GFX12-NEXT:    s_bfe_i32 s61, s3, 0x100194679; GFX12-NEXT:    s_bfe_i32 s62, s3, 0x100184680; GFX12-NEXT:    v_dual_mov_b32 v24, 0 :: v_dual_mov_b32 v1, s664681; GFX12-NEXT:    s_bfe_i32 s55, s3, 0x100174682; GFX12-NEXT:    s_bfe_i32 s56, s3, 0x100164683; GFX12-NEXT:    s_bfe_i32 s57, s3, 0x100154684; GFX12-NEXT:    s_bfe_i32 s58, s3, 0x100144685; GFX12-NEXT:    v_dual_mov_b32 v0, s65 :: v_dual_mov_b32 v3, s634686; GFX12-NEXT:    v_dual_mov_b32 v2, s64 :: v_dual_mov_b32 v5, s614687; GFX12-NEXT:    s_bfe_i32 s51, s3, 0x100134688; GFX12-NEXT:    s_bfe_i32 s52, s3, 0x100124689; GFX12-NEXT:    s_bfe_i32 s53, s3, 0x100114690; GFX12-NEXT:    s_bfe_i32 s54, s3, 0x100104691; GFX12-NEXT:    v_dual_mov_b32 v4, s62 :: v_dual_mov_b32 v7, s594692; GFX12-NEXT:    v_dual_mov_b32 v6, s60 :: v_dual_mov_b32 v9, s574693; GFX12-NEXT:    v_dual_mov_b32 v8, s58 :: v_dual_mov_b32 v11, s554694; GFX12-NEXT:    v_dual_mov_b32 v10, s56 :: v_dual_mov_b32 v13, s534695; GFX12-NEXT:    s_bfe_i32 s36, s3, 0x100034696; GFX12-NEXT:    s_bfe_i32 s37, s3, 0x100024697; GFX12-NEXT:    s_bfe_i32 s38, s3, 0x100014698; GFX12-NEXT:    s_bfe_i32 s39, s3, 0x100004699; GFX12-NEXT:    s_bfe_i32 s40, s3, 0x100074700; GFX12-NEXT:    s_bfe_i32 s41, s3, 0x100064701; GFX12-NEXT:    s_bfe_i32 s42, s3, 0x100054702; GFX12-NEXT:    s_bfe_i32 s43, s3, 0x100044703; GFX12-NEXT:    s_bfe_i32 s44, s3, 0x1000b4704; GFX12-NEXT:    s_bfe_i32 s45, s3, 0x1000a4705; GFX12-NEXT:    s_bfe_i32 s46, s3, 0x100094706; GFX12-NEXT:    s_bfe_i32 s47, s3, 0x100084707; GFX12-NEXT:    s_bfe_i32 s48, s3, 0x1000f4708; GFX12-NEXT:    s_bfe_i32 s49, s3, 0x1000e4709; GFX12-NEXT:    s_bfe_i32 s50, s3, 0x1000d4710; GFX12-NEXT:    v_dual_mov_b32 v12, s54 :: v_dual_mov_b32 v15, s514711; GFX12-NEXT:    v_mov_b32_e32 v14, s524712; GFX12-NEXT:    s_bfe_i32 s3, s3, 0x1000c4713; GFX12-NEXT:    s_clause 0x34714; GFX12-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:2404715; GFX12-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:2244716; GFX12-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:2084717; GFX12-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:1924718; GFX12-NEXT:    v_dual_mov_b32 v0, s3 :: v_dual_mov_b32 v3, s484719; GFX12-NEXT:    v_dual_mov_b32 v1, s50 :: v_dual_mov_b32 v2, s494720; GFX12-NEXT:    v_dual_mov_b32 v5, s46 :: v_dual_mov_b32 v4, s474721; GFX12-NEXT:    v_dual_mov_b32 v7, s44 :: v_dual_mov_b32 v6, s454722; GFX12-NEXT:    v_mov_b32_e32 v9, s424723; GFX12-NEXT:    s_bfe_i32 s4, s2, 0x100034724; GFX12-NEXT:    s_bfe_i32 s5, s2, 0x100024725; GFX12-NEXT:    s_bfe_i32 s6, s2, 0x100014726; GFX12-NEXT:    s_bfe_i32 s7, s2, 0x100004727; GFX12-NEXT:    s_bfe_i32 s8, s2, 0x100074728; GFX12-NEXT:    s_bfe_i32 s9, s2, 0x100064729; GFX12-NEXT:    s_bfe_i32 s10, s2, 0x100054730; GFX12-NEXT:    s_bfe_i32 s11, s2, 0x100044731; GFX12-NEXT:    s_bfe_i32 s12, s2, 0x1000b4732; GFX12-NEXT:    s_bfe_i32 s13, s2, 0x1000a4733; GFX12-NEXT:    s_bfe_i32 s14, s2, 0x100094734; GFX12-NEXT:    s_bfe_i32 s15, s2, 0x100084735; GFX12-NEXT:    s_bfe_i32 s16, s2, 0x1000f4736; GFX12-NEXT:    s_bfe_i32 s17, s2, 0x1000e4737; GFX12-NEXT:    s_bfe_i32 s18, s2, 0x1000d4738; GFX12-NEXT:    s_bfe_i32 s19, s2, 0x1000c4739; GFX12-NEXT:    s_bfe_i32 s20, s2, 0x100134740; GFX12-NEXT:    s_bfe_i32 s21, s2, 0x100124741; GFX12-NEXT:    s_bfe_i32 s22, s2, 0x100114742; GFX12-NEXT:    s_bfe_i32 s23, s2, 0x100104743; GFX12-NEXT:    s_bfe_i32 s24, s2, 0x100174744; GFX12-NEXT:    s_bfe_i32 s25, s2, 0x100164745; GFX12-NEXT:    s_bfe_i32 s26, s2, 0x100154746; GFX12-NEXT:    s_bfe_i32 s27, s2, 0x100144747; GFX12-NEXT:    s_bfe_i32 s28, s2, 0x1001b4748; GFX12-NEXT:    s_bfe_i32 s29, s2, 0x1001a4749; GFX12-NEXT:    s_bfe_i32 s30, s2, 0x100194750; GFX12-NEXT:    s_bfe_i32 s31, s2, 0x100184751; GFX12-NEXT:    s_ashr_i32 s33, s2, 314752; GFX12-NEXT:    s_bfe_i32 s34, s2, 0x1001e4753; GFX12-NEXT:    s_bfe_i32 s35, s2, 0x1001d4754; GFX12-NEXT:    s_bfe_i32 s2, s2, 0x1001c4755; GFX12-NEXT:    v_dual_mov_b32 v8, s43 :: v_dual_mov_b32 v11, s404756; GFX12-NEXT:    v_dual_mov_b32 v10, s41 :: v_dual_mov_b32 v13, s384757; GFX12-NEXT:    v_dual_mov_b32 v12, s39 :: v_dual_mov_b32 v15, s364758; GFX12-NEXT:    v_dual_mov_b32 v14, s37 :: v_dual_mov_b32 v17, s354759; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)4760; GFX12-NEXT:    v_dual_mov_b32 v16, s2 :: v_dual_mov_b32 v19, s334761; GFX12-NEXT:    v_dual_mov_b32 v18, s34 :: v_dual_mov_b32 v21, s304762; GFX12-NEXT:    v_dual_mov_b32 v20, s31 :: v_dual_mov_b32 v23, s284763; GFX12-NEXT:    v_mov_b32_e32 v22, s294764; GFX12-NEXT:    s_clause 0x54765; GFX12-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:1764766; GFX12-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:1604767; GFX12-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:1444768; GFX12-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:1284769; GFX12-NEXT:    global_store_b128 v24, v[16:19], s[0:1] offset:1124770; GFX12-NEXT:    global_store_b128 v24, v[20:23], s[0:1] offset:964771; GFX12-NEXT:    v_dual_mov_b32 v0, s27 :: v_dual_mov_b32 v3, s244772; GFX12-NEXT:    v_dual_mov_b32 v1, s26 :: v_dual_mov_b32 v2, s254773; GFX12-NEXT:    v_dual_mov_b32 v5, s22 :: v_dual_mov_b32 v4, s234774; GFX12-NEXT:    v_dual_mov_b32 v7, s20 :: v_dual_mov_b32 v6, s214775; GFX12-NEXT:    v_dual_mov_b32 v9, s18 :: v_dual_mov_b32 v8, s194776; GFX12-NEXT:    v_dual_mov_b32 v11, s16 :: v_dual_mov_b32 v10, s174777; GFX12-NEXT:    v_dual_mov_b32 v13, s14 :: v_dual_mov_b32 v12, s154778; GFX12-NEXT:    v_dual_mov_b32 v15, s12 :: v_dual_mov_b32 v14, s134779; GFX12-NEXT:    v_dual_mov_b32 v17, s10 :: v_dual_mov_b32 v16, s114780; GFX12-NEXT:    v_dual_mov_b32 v19, s8 :: v_dual_mov_b32 v18, s94781; GFX12-NEXT:    v_dual_mov_b32 v21, s6 :: v_dual_mov_b32 v20, s74782; GFX12-NEXT:    v_dual_mov_b32 v23, s4 :: v_dual_mov_b32 v22, s54783; GFX12-NEXT:    s_clause 0x54784; GFX12-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:804785; GFX12-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:644786; GFX12-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:484787; GFX12-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:324788; GFX12-NEXT:    global_store_b128 v24, v[16:19], s[0:1] offset:164789; GFX12-NEXT:    global_store_b128 v24, v[20:23], s[0:1]4790; GFX12-NEXT:    s_endpgm4791;4792; GFX1250-LABEL: constant_sextload_v64i1_to_v64i32:4793; GFX1250:       ; %bb.0:4794; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 14795; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x244796; GFX1250-NEXT:    s_wait_kmcnt 0x04797; GFX1250-NEXT:    s_load_b64 s[2:3], s[2:3], 0x04798; GFX1250-NEXT:    s_wait_kmcnt 0x04799; GFX1250-NEXT:    s_ashr_i32 s63, s3, 314800; GFX1250-NEXT:    s_bfe_i32 s64, s3, 0x1001e4801; GFX1250-NEXT:    s_bfe_i32 s65, s3, 0x1001c4802; GFX1250-NEXT:    s_bfe_i32 s66, s3, 0x1001d4803; GFX1250-NEXT:    s_bfe_i32 s59, s3, 0x1001b4804; GFX1250-NEXT:    s_bfe_i32 s60, s3, 0x1001a4805; GFX1250-NEXT:    s_bfe_i32 s61, s3, 0x100194806; GFX1250-NEXT:    s_bfe_i32 s62, s3, 0x100184807; GFX1250-NEXT:    v_dual_mov_b32 v24, 0 :: v_dual_mov_b32 v0, s654808; GFX1250-NEXT:    s_bfe_i32 s55, s3, 0x100174809; GFX1250-NEXT:    s_bfe_i32 s56, s3, 0x100164810; GFX1250-NEXT:    s_bfe_i32 s57, s3, 0x100154811; GFX1250-NEXT:    s_bfe_i32 s58, s3, 0x100144812; GFX1250-NEXT:    v_dual_mov_b32 v1, s66 :: v_dual_mov_b32 v2, s644813; GFX1250-NEXT:    v_dual_mov_b32 v3, s63 :: v_dual_mov_b32 v4, s624814; GFX1250-NEXT:    s_bfe_i32 s51, s3, 0x100134815; GFX1250-NEXT:    s_bfe_i32 s52, s3, 0x100124816; GFX1250-NEXT:    s_bfe_i32 s53, s3, 0x100114817; GFX1250-NEXT:    s_bfe_i32 s54, s3, 0x100104818; GFX1250-NEXT:    v_dual_mov_b32 v5, s61 :: v_dual_mov_b32 v6, s604819; GFX1250-NEXT:    v_dual_mov_b32 v7, s59 :: v_dual_mov_b32 v8, s584820; GFX1250-NEXT:    v_dual_mov_b32 v9, s57 :: v_dual_mov_b32 v10, s564821; GFX1250-NEXT:    v_dual_mov_b32 v11, s55 :: v_dual_mov_b32 v12, s544822; GFX1250-NEXT:    s_bfe_i32 s36, s3, 0x100034823; GFX1250-NEXT:    s_bfe_i32 s37, s3, 0x100024824; GFX1250-NEXT:    s_bfe_i32 s38, s3, 0x100014825; GFX1250-NEXT:    s_bfe_i32 s39, s3, 0x100004826; GFX1250-NEXT:    s_bfe_i32 s40, s3, 0x100074827; GFX1250-NEXT:    s_bfe_i32 s41, s3, 0x100064828; GFX1250-NEXT:    s_bfe_i32 s42, s3, 0x100054829; GFX1250-NEXT:    s_bfe_i32 s43, s3, 0x100044830; GFX1250-NEXT:    s_bfe_i32 s44, s3, 0x1000b4831; GFX1250-NEXT:    s_bfe_i32 s45, s3, 0x1000a4832; GFX1250-NEXT:    s_bfe_i32 s46, s3, 0x100094833; GFX1250-NEXT:    s_bfe_i32 s47, s3, 0x100084834; GFX1250-NEXT:    s_bfe_i32 s48, s3, 0x1000f4835; GFX1250-NEXT:    s_bfe_i32 s49, s3, 0x1000e4836; GFX1250-NEXT:    s_bfe_i32 s50, s3, 0x1000d4837; GFX1250-NEXT:    v_dual_mov_b32 v13, s53 :: v_dual_mov_b32 v14, s524838; GFX1250-NEXT:    s_bfe_i32 s3, s3, 0x1000c4839; GFX1250-NEXT:    v_mov_b32_e32 v15, s514840; GFX1250-NEXT:    s_clause 0x34841; GFX1250-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:2404842; GFX1250-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:2244843; GFX1250-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:2084844; GFX1250-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:1924845; GFX1250-NEXT:    s_wait_xcnt 0x34846; GFX1250-NEXT:    v_dual_mov_b32 v0, s3 :: v_dual_mov_b32 v1, s504847; GFX1250-NEXT:    v_dual_mov_b32 v2, s49 :: v_dual_mov_b32 v3, s484848; GFX1250-NEXT:    s_wait_xcnt 0x24849; GFX1250-NEXT:    v_dual_mov_b32 v4, s47 :: v_dual_mov_b32 v5, s464850; GFX1250-NEXT:    v_dual_mov_b32 v6, s45 :: v_dual_mov_b32 v7, s444851; GFX1250-NEXT:    s_wait_xcnt 0x14852; GFX1250-NEXT:    v_mov_b32_e32 v8, s434853; GFX1250-NEXT:    s_bfe_i32 s4, s2, 0x100034854; GFX1250-NEXT:    s_bfe_i32 s5, s2, 0x100024855; GFX1250-NEXT:    s_bfe_i32 s6, s2, 0x100014856; GFX1250-NEXT:    s_bfe_i32 s7, s2, 0x100004857; GFX1250-NEXT:    s_bfe_i32 s8, s2, 0x100074858; GFX1250-NEXT:    s_bfe_i32 s9, s2, 0x100064859; GFX1250-NEXT:    s_bfe_i32 s10, s2, 0x100054860; GFX1250-NEXT:    s_bfe_i32 s11, s2, 0x100044861; GFX1250-NEXT:    s_bfe_i32 s12, s2, 0x1000b4862; GFX1250-NEXT:    s_bfe_i32 s13, s2, 0x1000a4863; GFX1250-NEXT:    s_bfe_i32 s14, s2, 0x100094864; GFX1250-NEXT:    s_bfe_i32 s15, s2, 0x100084865; GFX1250-NEXT:    s_bfe_i32 s16, s2, 0x1000f4866; GFX1250-NEXT:    s_bfe_i32 s17, s2, 0x1000e4867; GFX1250-NEXT:    s_bfe_i32 s18, s2, 0x1000d4868; GFX1250-NEXT:    s_bfe_i32 s19, s2, 0x1000c4869; GFX1250-NEXT:    s_bfe_i32 s20, s2, 0x100134870; GFX1250-NEXT:    s_bfe_i32 s21, s2, 0x100124871; GFX1250-NEXT:    s_bfe_i32 s22, s2, 0x100114872; GFX1250-NEXT:    s_bfe_i32 s23, s2, 0x100104873; GFX1250-NEXT:    s_bfe_i32 s24, s2, 0x100174874; GFX1250-NEXT:    s_bfe_i32 s25, s2, 0x100164875; GFX1250-NEXT:    s_bfe_i32 s26, s2, 0x100154876; GFX1250-NEXT:    s_bfe_i32 s27, s2, 0x100144877; GFX1250-NEXT:    s_bfe_i32 s28, s2, 0x1001b4878; GFX1250-NEXT:    s_bfe_i32 s29, s2, 0x1001a4879; GFX1250-NEXT:    s_bfe_i32 s30, s2, 0x100194880; GFX1250-NEXT:    s_bfe_i32 s31, s2, 0x100184881; GFX1250-NEXT:    s_ashr_i32 s33, s2, 314882; GFX1250-NEXT:    s_bfe_i32 s34, s2, 0x1001e4883; GFX1250-NEXT:    s_bfe_i32 s35, s2, 0x1001d4884; GFX1250-NEXT:    s_bfe_i32 s2, s2, 0x1001c4885; GFX1250-NEXT:    v_dual_mov_b32 v9, s42 :: v_dual_mov_b32 v10, s414886; GFX1250-NEXT:    s_wait_xcnt 0x04887; GFX1250-NEXT:    v_dual_mov_b32 v11, s40 :: v_dual_mov_b32 v12, s394888; GFX1250-NEXT:    v_dual_mov_b32 v13, s38 :: v_dual_mov_b32 v14, s374889; GFX1250-NEXT:    v_dual_mov_b32 v15, s36 :: v_dual_mov_b32 v16, s24890; GFX1250-NEXT:    v_dual_mov_b32 v17, s35 :: v_dual_mov_b32 v18, s344891; GFX1250-NEXT:    v_dual_mov_b32 v19, s33 :: v_dual_mov_b32 v20, s314892; GFX1250-NEXT:    v_dual_mov_b32 v21, s30 :: v_dual_mov_b32 v22, s294893; GFX1250-NEXT:    v_mov_b32_e32 v23, s284894; GFX1250-NEXT:    s_clause 0x54895; GFX1250-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:1764896; GFX1250-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:1604897; GFX1250-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:1444898; GFX1250-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:1284899; GFX1250-NEXT:    global_store_b128 v24, v[16:19], s[0:1] offset:1124900; GFX1250-NEXT:    global_store_b128 v24, v[20:23], s[0:1] offset:964901; GFX1250-NEXT:    s_wait_xcnt 0x54902; GFX1250-NEXT:    v_dual_mov_b32 v0, s27 :: v_dual_mov_b32 v1, s264903; GFX1250-NEXT:    v_dual_mov_b32 v2, s25 :: v_dual_mov_b32 v3, s244904; GFX1250-NEXT:    s_wait_xcnt 0x44905; GFX1250-NEXT:    v_dual_mov_b32 v4, s23 :: v_dual_mov_b32 v5, s224906; GFX1250-NEXT:    v_dual_mov_b32 v6, s21 :: v_dual_mov_b32 v7, s204907; GFX1250-NEXT:    s_wait_xcnt 0x34908; GFX1250-NEXT:    v_dual_mov_b32 v8, s19 :: v_dual_mov_b32 v9, s184909; GFX1250-NEXT:    v_dual_mov_b32 v10, s17 :: v_dual_mov_b32 v11, s164910; GFX1250-NEXT:    s_wait_xcnt 0x24911; GFX1250-NEXT:    v_dual_mov_b32 v12, s15 :: v_dual_mov_b32 v13, s144912; GFX1250-NEXT:    v_dual_mov_b32 v14, s13 :: v_dual_mov_b32 v15, s124913; GFX1250-NEXT:    s_wait_xcnt 0x14914; GFX1250-NEXT:    v_dual_mov_b32 v16, s11 :: v_dual_mov_b32 v17, s104915; GFX1250-NEXT:    v_dual_mov_b32 v18, s9 :: v_dual_mov_b32 v19, s84916; GFX1250-NEXT:    s_wait_xcnt 0x04917; GFX1250-NEXT:    v_dual_mov_b32 v20, s7 :: v_dual_mov_b32 v21, s64918; GFX1250-NEXT:    v_dual_mov_b32 v22, s5 :: v_dual_mov_b32 v23, s44919; GFX1250-NEXT:    s_clause 0x54920; GFX1250-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:804921; GFX1250-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:644922; GFX1250-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:484923; GFX1250-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:324924; GFX1250-NEXT:    global_store_b128 v24, v[16:19], s[0:1] offset:164925; GFX1250-NEXT:    global_store_b128 v24, v[20:23], s[0:1]4926; GFX1250-NEXT:    s_endpgm4927  %load = load <64 x i1>, ptr addrspace(4) %in4928  %ext = sext <64 x i1> %load to <64 x i32>4929  store <64 x i32> %ext, ptr addrspace(1) %out4930  ret void4931}4932 4933define amdgpu_kernel void @constant_zextload_i1_to_i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {4934; GFX6-LABEL: constant_zextload_i1_to_i64:4935; GFX6:       ; %bb.0:4936; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x94937; GFX6-NEXT:    s_mov_b32 s7, 0xf0004938; GFX6-NEXT:    s_mov_b32 s6, -14939; GFX6-NEXT:    s_mov_b32 s10, s64940; GFX6-NEXT:    s_mov_b32 s11, s74941; GFX6-NEXT:    s_waitcnt lgkmcnt(0)4942; GFX6-NEXT:    s_mov_b32 s8, s24943; GFX6-NEXT:    s_mov_b32 s9, s34944; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 04945; GFX6-NEXT:    s_mov_b32 s4, s04946; GFX6-NEXT:    s_mov_b32 s5, s14947; GFX6-NEXT:    s_waitcnt vmcnt(0)4948; GFX6-NEXT:    v_and_b32_e32 v0, 1, v04949; GFX6-NEXT:    v_mov_b32_e32 v1, 04950; GFX6-NEXT:    buffer_store_dwordx2 v[0:1], off, s[4:7], 04951; GFX6-NEXT:    s_endpgm4952;4953; GFX8-LABEL: constant_zextload_i1_to_i64:4954; GFX8:       ; %bb.0:4955; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x244956; GFX8-NEXT:    v_mov_b32_e32 v3, 04957; GFX8-NEXT:    s_waitcnt lgkmcnt(0)4958; GFX8-NEXT:    v_mov_b32_e32 v0, s24959; GFX8-NEXT:    v_mov_b32_e32 v1, s34960; GFX8-NEXT:    flat_load_ubyte v2, v[0:1]4961; GFX8-NEXT:    v_mov_b32_e32 v0, s04962; GFX8-NEXT:    v_mov_b32_e32 v1, s14963; GFX8-NEXT:    s_waitcnt vmcnt(0)4964; GFX8-NEXT:    v_and_b32_e32 v2, 1, v24965; GFX8-NEXT:    flat_store_dwordx2 v[0:1], v[2:3]4966; GFX8-NEXT:    s_endpgm4967;4968; EG-LABEL: constant_zextload_i1_to_i64:4969; EG:       ; %bb.0:4970; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]4971; EG-NEXT:    TEX 0 @64972; EG-NEXT:    ALU 2, @9, KC0[CB0:0-32], KC1[]4973; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 14974; EG-NEXT:    CF_END4975; EG-NEXT:    PAD4976; EG-NEXT:    Fetch clause starting at 6:4977; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #14978; EG-NEXT:    ALU clause starting at 8:4979; EG-NEXT:     MOV * T0.X, KC0[2].Z,4980; EG-NEXT:    ALU clause starting at 9:4981; EG-NEXT:     MOV * T0.Y, 0.0,4982; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,4983; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)4984;4985; GFX12-LABEL: constant_zextload_i1_to_i64:4986; GFX12:       ; %bb.0:4987; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x244988; GFX12-NEXT:    s_wait_kmcnt 0x04989; GFX12-NEXT:    s_load_u8 s2, s[2:3], 0x04990; GFX12-NEXT:    s_wait_kmcnt 0x04991; GFX12-NEXT:    s_and_b32 s2, s2, 14992; GFX12-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)4993; GFX12-NEXT:    v_dual_mov_b32 v1, 0 :: v_dual_mov_b32 v0, s24994; GFX12-NEXT:    global_store_b64 v1, v[0:1], s[0:1]4995; GFX12-NEXT:    s_endpgm4996;4997; GFX1250-LABEL: constant_zextload_i1_to_i64:4998; GFX1250:       ; %bb.0:4999; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 15000; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245001; GFX1250-NEXT:    s_wait_kmcnt 0x05002; GFX1250-NEXT:    s_load_u8 s2, s[2:3], 0x05003; GFX1250-NEXT:    s_wait_kmcnt 0x05004; GFX1250-NEXT:    s_and_b32 s2, s2, 15005; GFX1250-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)5006; GFX1250-NEXT:    v_dual_mov_b32 v1, 0 :: v_dual_mov_b32 v0, s25007; GFX1250-NEXT:    global_store_b64 v1, v[0:1], s[0:1]5008; GFX1250-NEXT:    s_endpgm5009  %a = load i1, ptr addrspace(4) %in5010  %ext = zext i1 %a to i645011  store i64 %ext, ptr addrspace(1) %out5012  ret void5013}5014 5015define amdgpu_kernel void @constant_sextload_i1_to_i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {5016; GFX6-LABEL: constant_sextload_i1_to_i64:5017; GFX6:       ; %bb.0:5018; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x95019; GFX6-NEXT:    s_mov_b32 s7, 0xf0005020; GFX6-NEXT:    s_mov_b32 s6, -15021; GFX6-NEXT:    s_mov_b32 s10, s65022; GFX6-NEXT:    s_mov_b32 s11, s75023; GFX6-NEXT:    s_waitcnt lgkmcnt(0)5024; GFX6-NEXT:    s_mov_b32 s8, s25025; GFX6-NEXT:    s_mov_b32 s9, s35026; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 05027; GFX6-NEXT:    s_mov_b32 s4, s05028; GFX6-NEXT:    s_mov_b32 s5, s15029; GFX6-NEXT:    s_waitcnt vmcnt(0)5030; GFX6-NEXT:    v_bfe_i32 v0, v0, 0, 15031; GFX6-NEXT:    v_ashrrev_i32_e32 v1, 31, v05032; GFX6-NEXT:    buffer_store_dwordx2 v[0:1], off, s[4:7], 05033; GFX6-NEXT:    s_endpgm5034;5035; GFX8-LABEL: constant_sextload_i1_to_i64:5036; GFX8:       ; %bb.0:5037; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x245038; GFX8-NEXT:    s_waitcnt lgkmcnt(0)5039; GFX8-NEXT:    v_mov_b32_e32 v0, s25040; GFX8-NEXT:    v_mov_b32_e32 v1, s35041; GFX8-NEXT:    flat_load_ubyte v2, v[0:1]5042; GFX8-NEXT:    v_mov_b32_e32 v0, s05043; GFX8-NEXT:    v_mov_b32_e32 v1, s15044; GFX8-NEXT:    s_waitcnt vmcnt(0)5045; GFX8-NEXT:    v_bfe_i32 v2, v2, 0, 15046; GFX8-NEXT:    v_ashrrev_i32_e32 v3, 31, v25047; GFX8-NEXT:    flat_store_dwordx2 v[0:1], v[2:3]5048; GFX8-NEXT:    s_endpgm5049;5050; EG-LABEL: constant_sextload_i1_to_i64:5051; EG:       ; %bb.0:5052; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]5053; EG-NEXT:    TEX 0 @65054; EG-NEXT:    ALU 3, @9, KC0[CB0:0-32], KC1[]5055; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 15056; EG-NEXT:    CF_END5057; EG-NEXT:    PAD5058; EG-NEXT:    Fetch clause starting at 6:5059; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #15060; EG-NEXT:    ALU clause starting at 8:5061; EG-NEXT:     MOV * T0.X, KC0[2].Z,5062; EG-NEXT:    ALU clause starting at 9:5063; EG-NEXT:     BFE_INT T0.X, T0.X, 0.0, 1,5064; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,5065; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)5066; EG-NEXT:     MOV * T0.Y, PV.X,5067;5068; GFX12-LABEL: constant_sextload_i1_to_i64:5069; GFX12:       ; %bb.0:5070; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245071; GFX12-NEXT:    s_wait_kmcnt 0x05072; GFX12-NEXT:    s_load_u8 s2, s[2:3], 0x05073; GFX12-NEXT:    s_wait_kmcnt 0x05074; GFX12-NEXT:    s_bfe_i64 s[2:3], s[2:3], 0x100005075; GFX12-NEXT:    v_mov_b32_e32 v2, 05076; GFX12-NEXT:    v_dual_mov_b32 v0, s2 :: v_dual_mov_b32 v1, s35077; GFX12-NEXT:    global_store_b64 v2, v[0:1], s[0:1]5078; GFX12-NEXT:    s_endpgm5079;5080; GFX1250-LABEL: constant_sextload_i1_to_i64:5081; GFX1250:       ; %bb.0:5082; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 15083; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245084; GFX1250-NEXT:    v_mov_b32_e32 v2, 05085; GFX1250-NEXT:    s_wait_kmcnt 0x05086; GFX1250-NEXT:    s_load_u8 s2, s[2:3], 0x05087; GFX1250-NEXT:    s_wait_kmcnt 0x05088; GFX1250-NEXT:    s_bfe_i64 s[2:3], s[2:3], 0x100005089; GFX1250-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)5090; GFX1250-NEXT:    v_mov_b64_e32 v[0:1], s[2:3]5091; GFX1250-NEXT:    global_store_b64 v2, v[0:1], s[0:1]5092; GFX1250-NEXT:    s_endpgm5093  %a = load i1, ptr addrspace(4) %in5094  %ext = sext i1 %a to i645095  store i64 %ext, ptr addrspace(1) %out5096  ret void5097}5098 5099define amdgpu_kernel void @constant_zextload_v1i1_to_v1i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {5100; GFX6-LABEL: constant_zextload_v1i1_to_v1i64:5101; GFX6:       ; %bb.0:5102; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x95103; GFX6-NEXT:    s_mov_b32 s7, 0xf0005104; GFX6-NEXT:    s_mov_b32 s6, -15105; GFX6-NEXT:    s_mov_b32 s10, s65106; GFX6-NEXT:    s_mov_b32 s11, s75107; GFX6-NEXT:    s_waitcnt lgkmcnt(0)5108; GFX6-NEXT:    s_mov_b32 s8, s25109; GFX6-NEXT:    s_mov_b32 s9, s35110; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 05111; GFX6-NEXT:    s_mov_b32 s4, s05112; GFX6-NEXT:    s_mov_b32 s5, s15113; GFX6-NEXT:    s_waitcnt vmcnt(0)5114; GFX6-NEXT:    v_and_b32_e32 v0, 1, v05115; GFX6-NEXT:    v_mov_b32_e32 v1, 05116; GFX6-NEXT:    buffer_store_dwordx2 v[0:1], off, s[4:7], 05117; GFX6-NEXT:    s_endpgm5118;5119; GFX8-LABEL: constant_zextload_v1i1_to_v1i64:5120; GFX8:       ; %bb.0:5121; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x245122; GFX8-NEXT:    v_mov_b32_e32 v3, 05123; GFX8-NEXT:    s_waitcnt lgkmcnt(0)5124; GFX8-NEXT:    v_mov_b32_e32 v0, s25125; GFX8-NEXT:    v_mov_b32_e32 v1, s35126; GFX8-NEXT:    flat_load_ubyte v2, v[0:1]5127; GFX8-NEXT:    v_mov_b32_e32 v0, s05128; GFX8-NEXT:    v_mov_b32_e32 v1, s15129; GFX8-NEXT:    s_waitcnt vmcnt(0)5130; GFX8-NEXT:    v_and_b32_e32 v2, 1, v25131; GFX8-NEXT:    flat_store_dwordx2 v[0:1], v[2:3]5132; GFX8-NEXT:    s_endpgm5133;5134; EG-LABEL: constant_zextload_v1i1_to_v1i64:5135; EG:       ; %bb.0:5136; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]5137; EG-NEXT:    TEX 0 @65138; EG-NEXT:    ALU 2, @9, KC0[CB0:0-32], KC1[]5139; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 15140; EG-NEXT:    CF_END5141; EG-NEXT:    PAD5142; EG-NEXT:    Fetch clause starting at 6:5143; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #15144; EG-NEXT:    ALU clause starting at 8:5145; EG-NEXT:     MOV * T0.X, KC0[2].Z,5146; EG-NEXT:    ALU clause starting at 9:5147; EG-NEXT:     MOV * T0.Y, 0.0,5148; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,5149; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)5150;5151; GFX12-LABEL: constant_zextload_v1i1_to_v1i64:5152; GFX12:       ; %bb.0:5153; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245154; GFX12-NEXT:    s_wait_kmcnt 0x05155; GFX12-NEXT:    s_load_u8 s2, s[2:3], 0x05156; GFX12-NEXT:    s_wait_kmcnt 0x05157; GFX12-NEXT:    s_and_b32 s2, s2, 15158; GFX12-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)5159; GFX12-NEXT:    v_dual_mov_b32 v1, 0 :: v_dual_mov_b32 v0, s25160; GFX12-NEXT:    global_store_b64 v1, v[0:1], s[0:1]5161; GFX12-NEXT:    s_endpgm5162;5163; GFX1250-LABEL: constant_zextload_v1i1_to_v1i64:5164; GFX1250:       ; %bb.0:5165; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 15166; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245167; GFX1250-NEXT:    s_wait_kmcnt 0x05168; GFX1250-NEXT:    s_load_u8 s2, s[2:3], 0x05169; GFX1250-NEXT:    s_wait_kmcnt 0x05170; GFX1250-NEXT:    s_and_b32 s2, s2, 15171; GFX1250-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)5172; GFX1250-NEXT:    v_dual_mov_b32 v1, 0 :: v_dual_mov_b32 v0, s25173; GFX1250-NEXT:    global_store_b64 v1, v[0:1], s[0:1]5174; GFX1250-NEXT:    s_endpgm5175  %load = load <1 x i1>, ptr addrspace(4) %in5176  %ext = zext <1 x i1> %load to <1 x i64>5177  store <1 x i64> %ext, ptr addrspace(1) %out5178  ret void5179}5180 5181define amdgpu_kernel void @constant_sextload_v1i1_to_v1i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {5182; GFX6-LABEL: constant_sextload_v1i1_to_v1i64:5183; GFX6:       ; %bb.0:5184; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x95185; GFX6-NEXT:    s_mov_b32 s7, 0xf0005186; GFX6-NEXT:    s_mov_b32 s6, -15187; GFX6-NEXT:    s_mov_b32 s10, s65188; GFX6-NEXT:    s_mov_b32 s11, s75189; GFX6-NEXT:    s_waitcnt lgkmcnt(0)5190; GFX6-NEXT:    s_mov_b32 s8, s25191; GFX6-NEXT:    s_mov_b32 s9, s35192; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 05193; GFX6-NEXT:    s_mov_b32 s4, s05194; GFX6-NEXT:    s_mov_b32 s5, s15195; GFX6-NEXT:    s_waitcnt vmcnt(0)5196; GFX6-NEXT:    v_bfe_i32 v0, v0, 0, 15197; GFX6-NEXT:    v_ashrrev_i32_e32 v1, 31, v05198; GFX6-NEXT:    buffer_store_dwordx2 v[0:1], off, s[4:7], 05199; GFX6-NEXT:    s_endpgm5200;5201; GFX8-LABEL: constant_sextload_v1i1_to_v1i64:5202; GFX8:       ; %bb.0:5203; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x245204; GFX8-NEXT:    s_waitcnt lgkmcnt(0)5205; GFX8-NEXT:    v_mov_b32_e32 v0, s25206; GFX8-NEXT:    v_mov_b32_e32 v1, s35207; GFX8-NEXT:    flat_load_ubyte v2, v[0:1]5208; GFX8-NEXT:    v_mov_b32_e32 v0, s05209; GFX8-NEXT:    v_mov_b32_e32 v1, s15210; GFX8-NEXT:    s_waitcnt vmcnt(0)5211; GFX8-NEXT:    v_bfe_i32 v2, v2, 0, 15212; GFX8-NEXT:    v_ashrrev_i32_e32 v3, 31, v25213; GFX8-NEXT:    flat_store_dwordx2 v[0:1], v[2:3]5214; GFX8-NEXT:    s_endpgm5215;5216; EG-LABEL: constant_sextload_v1i1_to_v1i64:5217; EG:       ; %bb.0:5218; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]5219; EG-NEXT:    TEX 0 @65220; EG-NEXT:    ALU 3, @9, KC0[CB0:0-32], KC1[]5221; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.XY, T1.X, 15222; EG-NEXT:    CF_END5223; EG-NEXT:    PAD5224; EG-NEXT:    Fetch clause starting at 6:5225; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #15226; EG-NEXT:    ALU clause starting at 8:5227; EG-NEXT:     MOV * T0.X, KC0[2].Z,5228; EG-NEXT:    ALU clause starting at 9:5229; EG-NEXT:     BFE_INT T0.X, T0.X, 0.0, 1,5230; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,5231; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)5232; EG-NEXT:     MOV * T0.Y, PV.X,5233;5234; GFX12-LABEL: constant_sextload_v1i1_to_v1i64:5235; GFX12:       ; %bb.0:5236; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245237; GFX12-NEXT:    s_wait_kmcnt 0x05238; GFX12-NEXT:    s_load_u8 s2, s[2:3], 0x05239; GFX12-NEXT:    s_wait_kmcnt 0x05240; GFX12-NEXT:    s_bfe_i64 s[2:3], s[2:3], 0x100005241; GFX12-NEXT:    v_mov_b32_e32 v2, 05242; GFX12-NEXT:    v_dual_mov_b32 v0, s2 :: v_dual_mov_b32 v1, s35243; GFX12-NEXT:    global_store_b64 v2, v[0:1], s[0:1]5244; GFX12-NEXT:    s_endpgm5245;5246; GFX1250-LABEL: constant_sextload_v1i1_to_v1i64:5247; GFX1250:       ; %bb.0:5248; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 15249; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245250; GFX1250-NEXT:    v_mov_b32_e32 v2, 05251; GFX1250-NEXT:    s_wait_kmcnt 0x05252; GFX1250-NEXT:    s_load_u8 s2, s[2:3], 0x05253; GFX1250-NEXT:    s_wait_kmcnt 0x05254; GFX1250-NEXT:    s_bfe_i64 s[2:3], s[2:3], 0x100005255; GFX1250-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)5256; GFX1250-NEXT:    v_mov_b64_e32 v[0:1], s[2:3]5257; GFX1250-NEXT:    global_store_b64 v2, v[0:1], s[0:1]5258; GFX1250-NEXT:    s_endpgm5259  %load = load <1 x i1>, ptr addrspace(4) %in5260  %ext = sext <1 x i1> %load to <1 x i64>5261  store <1 x i64> %ext, ptr addrspace(1) %out5262  ret void5263}5264 5265define amdgpu_kernel void @constant_zextload_v2i1_to_v2i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {5266; GFX6-LABEL: constant_zextload_v2i1_to_v2i64:5267; GFX6:       ; %bb.0:5268; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x95269; GFX6-NEXT:    s_mov_b32 s7, 0xf0005270; GFX6-NEXT:    s_mov_b32 s6, -15271; GFX6-NEXT:    s_mov_b32 s10, s65272; GFX6-NEXT:    s_mov_b32 s11, s75273; GFX6-NEXT:    s_waitcnt lgkmcnt(0)5274; GFX6-NEXT:    s_mov_b32 s8, s25275; GFX6-NEXT:    s_mov_b32 s9, s35276; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 05277; GFX6-NEXT:    v_mov_b32_e32 v1, 05278; GFX6-NEXT:    s_mov_b32 s4, s05279; GFX6-NEXT:    s_mov_b32 s5, s15280; GFX6-NEXT:    s_waitcnt vmcnt(0)5281; GFX6-NEXT:    v_lshrrev_b32_e32 v2, 1, v05282; GFX6-NEXT:    v_and_b32_e32 v0, 1, v05283; GFX6-NEXT:    v_mov_b32_e32 v3, v15284; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[4:7], 05285; GFX6-NEXT:    s_endpgm5286;5287; GFX8-LABEL: constant_zextload_v2i1_to_v2i64:5288; GFX8:       ; %bb.0:5289; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x245290; GFX8-NEXT:    v_mov_b32_e32 v2, 15291; GFX8-NEXT:    s_waitcnt lgkmcnt(0)5292; GFX8-NEXT:    v_mov_b32_e32 v0, s25293; GFX8-NEXT:    v_mov_b32_e32 v1, s35294; GFX8-NEXT:    flat_load_ubyte v0, v[0:1]5295; GFX8-NEXT:    v_mov_b32_e32 v1, 05296; GFX8-NEXT:    v_mov_b32_e32 v4, s05297; GFX8-NEXT:    v_mov_b32_e32 v5, s15298; GFX8-NEXT:    v_mov_b32_e32 v3, v15299; GFX8-NEXT:    s_waitcnt vmcnt(0)5300; GFX8-NEXT:    v_lshrrev_b32_sdwa v2, v2, v0 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:WORD_05301; GFX8-NEXT:    v_and_b32_e32 v0, 1, v05302; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]5303; GFX8-NEXT:    s_endpgm5304;5305; EG-LABEL: constant_zextload_v2i1_to_v2i64:5306; EG:       ; %bb.0:5307; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]5308; EG-NEXT:    TEX 0 @65309; EG-NEXT:    ALU 5, @9, KC0[CB0:0-32], KC1[]5310; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.XYZW, T1.X, 15311; EG-NEXT:    CF_END5312; EG-NEXT:    PAD5313; EG-NEXT:    Fetch clause starting at 6:5314; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #15315; EG-NEXT:    ALU clause starting at 8:5316; EG-NEXT:     MOV * T0.X, KC0[2].Z,5317; EG-NEXT:    ALU clause starting at 9:5318; EG-NEXT:     BFE_UINT * T0.Z, T0.X, 1, 1,5319; EG-NEXT:     AND_INT T0.X, T0.X, 1,5320; EG-NEXT:     MOV T0.Y, 0.0,5321; EG-NEXT:     MOV T0.W, 0.0,5322; EG-NEXT:     LSHR * T1.X, KC0[2].Y, literal.x,5323; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)5324;5325; GFX12-LABEL: constant_zextload_v2i1_to_v2i64:5326; GFX12:       ; %bb.0:5327; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245328; GFX12-NEXT:    v_mov_b32_e32 v1, 05329; GFX12-NEXT:    s_wait_kmcnt 0x05330; GFX12-NEXT:    global_load_u8 v0, v1, s[2:3]5331; GFX12-NEXT:    s_wait_loadcnt 0x05332; GFX12-NEXT:    v_and_b32_e32 v2, 0xffff, v05333; GFX12-NEXT:    v_dual_mov_b32 v3, v1 :: v_dual_and_b32 v0, 1, v05334; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)5335; GFX12-NEXT:    v_lshrrev_b32_e32 v2, 1, v25336; GFX12-NEXT:    v_and_b32_e32 v0, 0xffff, v05337; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_2)5338; GFX12-NEXT:    v_and_b32_e32 v2, 0xffff, v25339; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1]5340; GFX12-NEXT:    s_endpgm5341;5342; GFX1250-LABEL: constant_zextload_v2i1_to_v2i64:5343; GFX1250:       ; %bb.0:5344; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 15345; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245346; GFX1250-NEXT:    v_mov_b32_e32 v1, 05347; GFX1250-NEXT:    s_wait_kmcnt 0x05348; GFX1250-NEXT:    global_load_u8 v0, v1, s[2:3]5349; GFX1250-NEXT:    s_wait_loadcnt 0x05350; GFX1250-NEXT:    v_and_b32_e32 v2, 0xffff, v05351; GFX1250-NEXT:    v_dual_mov_b32 v3, v1 :: v_dual_bitop2_b32 v0, 1, v0 bitop3:0x405352; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)5353; GFX1250-NEXT:    v_lshrrev_b32_e32 v2, 1, v25354; GFX1250-NEXT:    v_and_b32_e32 v0, 0xffff, v05355; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_2)5356; GFX1250-NEXT:    v_and_b32_e32 v2, 0xffff, v25357; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1]5358; GFX1250-NEXT:    s_endpgm5359  %load = load <2 x i1>, ptr addrspace(4) %in5360  %ext = zext <2 x i1> %load to <2 x i64>5361  store <2 x i64> %ext, ptr addrspace(1) %out5362  ret void5363}5364 5365define amdgpu_kernel void @constant_sextload_v2i1_to_v2i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {5366; GFX6-LABEL: constant_sextload_v2i1_to_v2i64:5367; GFX6:       ; %bb.0:5368; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x95369; GFX6-NEXT:    s_mov_b32 s7, 0xf0005370; GFX6-NEXT:    s_mov_b32 s6, -15371; GFX6-NEXT:    s_mov_b32 s10, s65372; GFX6-NEXT:    s_mov_b32 s11, s75373; GFX6-NEXT:    s_waitcnt lgkmcnt(0)5374; GFX6-NEXT:    s_mov_b32 s8, s25375; GFX6-NEXT:    s_mov_b32 s9, s35376; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 05377; GFX6-NEXT:    s_mov_b32 s4, s05378; GFX6-NEXT:    s_mov_b32 s5, s15379; GFX6-NEXT:    s_waitcnt vmcnt(0)5380; GFX6-NEXT:    v_lshrrev_b32_e32 v2, 1, v05381; GFX6-NEXT:    v_bfe_i32 v0, v0, 0, 15382; GFX6-NEXT:    v_ashrrev_i32_e32 v1, 31, v05383; GFX6-NEXT:    v_bfe_i32 v2, v2, 0, 15384; GFX6-NEXT:    v_ashrrev_i32_e32 v3, 31, v25385; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[4:7], 05386; GFX6-NEXT:    s_endpgm5387;5388; GFX8-LABEL: constant_sextload_v2i1_to_v2i64:5389; GFX8:       ; %bb.0:5390; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x245391; GFX8-NEXT:    s_waitcnt lgkmcnt(0)5392; GFX8-NEXT:    v_mov_b32_e32 v0, s25393; GFX8-NEXT:    v_mov_b32_e32 v1, s35394; GFX8-NEXT:    flat_load_ubyte v0, v[0:1]5395; GFX8-NEXT:    v_mov_b32_e32 v4, s05396; GFX8-NEXT:    v_mov_b32_e32 v5, s15397; GFX8-NEXT:    s_waitcnt vmcnt(0)5398; GFX8-NEXT:    v_lshrrev_b32_e32 v2, 1, v05399; GFX8-NEXT:    v_bfe_i32 v0, v0, 0, 15400; GFX8-NEXT:    v_bfe_i32 v2, v2, 0, 15401; GFX8-NEXT:    v_ashrrev_i32_e32 v1, 31, v05402; GFX8-NEXT:    v_ashrrev_i32_e32 v3, 31, v25403; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]5404; GFX8-NEXT:    s_endpgm5405;5406; EG-LABEL: constant_sextload_v2i1_to_v2i64:5407; EG:       ; %bb.0:5408; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]5409; EG-NEXT:    TEX 0 @65410; EG-NEXT:    ALU 6, @9, KC0[CB0:0-32], KC1[]5411; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T1.XYZW, T0.X, 15412; EG-NEXT:    CF_END5413; EG-NEXT:    PAD5414; EG-NEXT:    Fetch clause starting at 6:5415; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #15416; EG-NEXT:    ALU clause starting at 8:5417; EG-NEXT:     MOV * T0.X, KC0[2].Z,5418; EG-NEXT:    ALU clause starting at 9:5419; EG-NEXT:     BFE_INT T1.X, T0.X, 0.0, 1,5420; EG-NEXT:     LSHR * T0.W, T0.X, 1,5421; EG-NEXT:     BFE_INT * T1.Z, PV.W, 0.0, 1,5422; EG-NEXT:     MOV * T1.Y, T1.X,5423; EG-NEXT:     LSHR T0.X, KC0[2].Y, literal.x,5424; EG-NEXT:     MOV * T1.W, T1.Z,5425; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)5426;5427; GFX12-LABEL: constant_sextload_v2i1_to_v2i64:5428; GFX12:       ; %bb.0:5429; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245430; GFX12-NEXT:    v_mov_b32_e32 v4, 05431; GFX12-NEXT:    s_wait_kmcnt 0x05432; GFX12-NEXT:    global_load_u8 v0, v4, s[2:3]5433; GFX12-NEXT:    s_wait_loadcnt 0x05434; GFX12-NEXT:    v_lshrrev_b32_e32 v1, 1, v05435; GFX12-NEXT:    v_bfe_i32 v0, v0, 0, 15436; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)5437; GFX12-NEXT:    v_bfe_i32 v2, v1, 0, 15438; GFX12-NEXT:    v_ashrrev_i32_e32 v1, 31, v05439; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_2)5440; GFX12-NEXT:    v_ashrrev_i32_e32 v3, 31, v25441; GFX12-NEXT:    global_store_b128 v4, v[0:3], s[0:1]5442; GFX12-NEXT:    s_endpgm5443;5444; GFX1250-LABEL: constant_sextload_v2i1_to_v2i64:5445; GFX1250:       ; %bb.0:5446; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 15447; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245448; GFX1250-NEXT:    v_mov_b32_e32 v4, 05449; GFX1250-NEXT:    s_wait_kmcnt 0x05450; GFX1250-NEXT:    global_load_u8 v0, v4, s[2:3]5451; GFX1250-NEXT:    s_wait_loadcnt 0x05452; GFX1250-NEXT:    v_lshrrev_b32_e32 v2, 1, v05453; GFX1250-NEXT:    v_bfe_i32 v0, v0, 0, 15454; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)5455; GFX1250-NEXT:    v_bfe_i32 v2, v2, 0, 15456; GFX1250-NEXT:    v_dual_ashrrev_i32 v1, 31, v0 :: v_dual_ashrrev_i32 v3, 31, v25457; GFX1250-NEXT:    global_store_b128 v4, v[0:3], s[0:1]5458; GFX1250-NEXT:    s_endpgm5459  %load = load <2 x i1>, ptr addrspace(4) %in5460  %ext = sext <2 x i1> %load to <2 x i64>5461  store <2 x i64> %ext, ptr addrspace(1) %out5462  ret void5463}5464 5465define amdgpu_kernel void @constant_zextload_v3i1_to_v3i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {5466; GFX6-LABEL: constant_zextload_v3i1_to_v3i64:5467; GFX6:       ; %bb.0:5468; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x95469; GFX6-NEXT:    s_mov_b32 s7, 0xf0005470; GFX6-NEXT:    s_mov_b32 s6, -15471; GFX6-NEXT:    s_mov_b32 s10, s65472; GFX6-NEXT:    s_mov_b32 s11, s75473; GFX6-NEXT:    s_waitcnt lgkmcnt(0)5474; GFX6-NEXT:    s_mov_b32 s8, s25475; GFX6-NEXT:    s_mov_b32 s9, s35476; GFX6-NEXT:    buffer_load_ubyte v4, off, s[8:11], 05477; GFX6-NEXT:    v_mov_b32_e32 v5, 05478; GFX6-NEXT:    v_mov_b32_e32 v1, v55479; GFX6-NEXT:    v_mov_b32_e32 v3, v55480; GFX6-NEXT:    s_mov_b32 s4, s05481; GFX6-NEXT:    s_mov_b32 s5, s15482; GFX6-NEXT:    s_waitcnt vmcnt(0)5483; GFX6-NEXT:    v_and_b32_e32 v0, 1, v45484; GFX6-NEXT:    v_bfe_u32 v2, v4, 1, 15485; GFX6-NEXT:    v_lshrrev_b32_e32 v4, 2, v45486; GFX6-NEXT:    buffer_store_dwordx2 v[4:5], off, s[4:7], 0 offset:165487; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[4:7], 05488; GFX6-NEXT:    s_endpgm5489;5490; GFX8-LABEL: constant_zextload_v3i1_to_v3i64:5491; GFX8:       ; %bb.0:5492; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x245493; GFX8-NEXT:    v_mov_b32_e32 v10, 25494; GFX8-NEXT:    v_mov_b32_e32 v5, 05495; GFX8-NEXT:    v_mov_b32_e32 v3, v55496; GFX8-NEXT:    s_waitcnt lgkmcnt(0)5497; GFX8-NEXT:    v_mov_b32_e32 v0, s25498; GFX8-NEXT:    v_mov_b32_e32 v1, s35499; GFX8-NEXT:    flat_load_ubyte v4, v[0:1]5500; GFX8-NEXT:    s_add_u32 s2, s0, 165501; GFX8-NEXT:    s_addc_u32 s3, s1, 05502; GFX8-NEXT:    v_mov_b32_e32 v9, s35503; GFX8-NEXT:    v_mov_b32_e32 v7, s15504; GFX8-NEXT:    v_mov_b32_e32 v8, s25505; GFX8-NEXT:    v_mov_b32_e32 v1, v55506; GFX8-NEXT:    v_mov_b32_e32 v6, s05507; GFX8-NEXT:    s_waitcnt vmcnt(0)5508; GFX8-NEXT:    v_and_b32_e32 v0, 1, v45509; GFX8-NEXT:    v_bfe_u32 v2, v4, 1, 15510; GFX8-NEXT:    v_lshrrev_b32_sdwa v4, v10, v4 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:WORD_05511; GFX8-NEXT:    flat_store_dwordx2 v[8:9], v[4:5]5512; GFX8-NEXT:    flat_store_dwordx4 v[6:7], v[0:3]5513; GFX8-NEXT:    s_endpgm5514;5515; EG-LABEL: constant_zextload_v3i1_to_v3i64:5516; EG:       ; %bb.0:5517; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]5518; EG-NEXT:    TEX 0 @65519; EG-NEXT:    ALU 11, @9, KC0[CB0:0-32], KC1[]5520; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.XY, T3.X, 05521; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T1.XYZW, T2.X, 15522; EG-NEXT:    CF_END5523; EG-NEXT:    Fetch clause starting at 6:5524; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #15525; EG-NEXT:    ALU clause starting at 8:5526; EG-NEXT:     MOV * T0.X, KC0[2].Z,5527; EG-NEXT:    ALU clause starting at 9:5528; EG-NEXT:     BFE_UINT * T1.Z, T0.X, 1, 1,5529; EG-NEXT:     AND_INT T1.X, T0.X, 1,5530; EG-NEXT:     MOV T1.Y, 0.0,5531; EG-NEXT:     LSHR * T0.X, T0.X, literal.x,5532; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)5533; EG-NEXT:     MOV T0.Y, 0.0,5534; EG-NEXT:     MOV * T1.W, 0.0,5535; EG-NEXT:     LSHR T2.X, KC0[2].Y, literal.x,5536; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,5537; EG-NEXT:    2(2.802597e-45), 16(2.242078e-44)5538; EG-NEXT:     LSHR * T3.X, PV.W, literal.x,5539; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)5540;5541; GFX12-LABEL: constant_zextload_v3i1_to_v3i64:5542; GFX12:       ; %bb.0:5543; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245544; GFX12-NEXT:    v_mov_b32_e32 v5, 05545; GFX12-NEXT:    s_wait_kmcnt 0x05546; GFX12-NEXT:    global_load_u8 v0, v5, s[2:3]5547; GFX12-NEXT:    s_wait_loadcnt 0x05548; GFX12-NEXT:    v_and_b32_e32 v1, 0xffff, v05549; GFX12-NEXT:    v_bfe_u32 v2, v0, 1, 15550; GFX12-NEXT:    v_and_b32_e32 v0, 1, v05551; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_3) | instskip(SKIP_1) | instid1(VALU_DEP_4)5552; GFX12-NEXT:    v_lshrrev_b32_e32 v4, 2, v15553; GFX12-NEXT:    v_mov_b32_e32 v3, v55554; GFX12-NEXT:    v_dual_mov_b32 v1, v5 :: v_dual_and_b32 v2, 0xffff, v25555; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)5556; GFX12-NEXT:    v_and_b32_e32 v0, 0xffff, v05557; GFX12-NEXT:    v_and_b32_e32 v4, 0xffff, v45558; GFX12-NEXT:    s_clause 0x15559; GFX12-NEXT:    global_store_b64 v5, v[4:5], s[0:1] offset:165560; GFX12-NEXT:    global_store_b128 v5, v[0:3], s[0:1]5561; GFX12-NEXT:    s_endpgm5562;5563; GFX1250-LABEL: constant_zextload_v3i1_to_v3i64:5564; GFX1250:       ; %bb.0:5565; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 15566; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245567; GFX1250-NEXT:    v_mov_b32_e32 v5, 05568; GFX1250-NEXT:    s_wait_kmcnt 0x05569; GFX1250-NEXT:    global_load_u8 v0, v5, s[2:3]5570; GFX1250-NEXT:    s_wait_loadcnt 0x05571; GFX1250-NEXT:    v_and_b32_e32 v1, 0xffff, v05572; GFX1250-NEXT:    v_bfe_u32 v2, v0, 1, 15573; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_1) | instid1(VALU_DEP_3)5574; GFX1250-NEXT:    v_dual_lshrrev_b32 v4, 2, v1 :: v_dual_bitop2_b32 v0, 1, v0 bitop3:0x405575; GFX1250-NEXT:    v_dual_mov_b32 v1, v5 :: v_dual_mov_b32 v3, v55576; GFX1250-NEXT:    v_and_b32_e32 v2, 0xffff, v25577; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_4)5578; GFX1250-NEXT:    v_and_b32_e32 v0, 0xffff, v05579; GFX1250-NEXT:    v_and_b32_e32 v4, 0xffff, v45580; GFX1250-NEXT:    s_clause 0x15581; GFX1250-NEXT:    global_store_b64 v5, v[4:5], s[0:1] offset:165582; GFX1250-NEXT:    global_store_b128 v5, v[0:3], s[0:1]5583; GFX1250-NEXT:    s_endpgm5584  %load = load <3 x i1>, ptr addrspace(4) %in5585  %ext = zext <3 x i1> %load to <3 x i64>5586  store <3 x i64> %ext, ptr addrspace(1) %out5587  ret void5588}5589 5590define amdgpu_kernel void @constant_sextload_v3i1_to_v3i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {5591; GFX6-LABEL: constant_sextload_v3i1_to_v3i64:5592; GFX6:       ; %bb.0:5593; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x95594; GFX6-NEXT:    s_mov_b32 s7, 0xf0005595; GFX6-NEXT:    s_mov_b32 s6, -15596; GFX6-NEXT:    s_mov_b32 s10, s65597; GFX6-NEXT:    s_mov_b32 s11, s75598; GFX6-NEXT:    s_waitcnt lgkmcnt(0)5599; GFX6-NEXT:    s_mov_b32 s8, s25600; GFX6-NEXT:    s_mov_b32 s9, s35601; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 05602; GFX6-NEXT:    s_mov_b32 s4, s05603; GFX6-NEXT:    s_mov_b32 s5, s15604; GFX6-NEXT:    s_waitcnt vmcnt(0)5605; GFX6-NEXT:    v_lshrrev_b32_e32 v3, 2, v05606; GFX6-NEXT:    v_lshrrev_b32_e32 v2, 1, v05607; GFX6-NEXT:    v_bfe_i32 v0, v0, 0, 15608; GFX6-NEXT:    v_ashrrev_i32_e32 v1, 31, v05609; GFX6-NEXT:    v_bfe_i32 v2, v2, 0, 15610; GFX6-NEXT:    v_bfe_i32 v4, v3, 0, 15611; GFX6-NEXT:    v_ashrrev_i32_e32 v3, 31, v25612; GFX6-NEXT:    v_ashrrev_i32_e32 v5, 31, v45613; GFX6-NEXT:    buffer_store_dwordx2 v[4:5], off, s[4:7], 0 offset:165614; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[4:7], 05615; GFX6-NEXT:    s_endpgm5616;5617; GFX8-LABEL: constant_sextload_v3i1_to_v3i64:5618; GFX8:       ; %bb.0:5619; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x245620; GFX8-NEXT:    s_waitcnt lgkmcnt(0)5621; GFX8-NEXT:    v_mov_b32_e32 v0, s25622; GFX8-NEXT:    v_mov_b32_e32 v1, s35623; GFX8-NEXT:    flat_load_ubyte v0, v[0:1]5624; GFX8-NEXT:    s_add_u32 s2, s0, 165625; GFX8-NEXT:    s_addc_u32 s3, s1, 05626; GFX8-NEXT:    v_mov_b32_e32 v7, s35627; GFX8-NEXT:    v_mov_b32_e32 v5, s15628; GFX8-NEXT:    v_mov_b32_e32 v6, s25629; GFX8-NEXT:    v_mov_b32_e32 v4, s05630; GFX8-NEXT:    s_waitcnt vmcnt(0)5631; GFX8-NEXT:    v_lshrrev_b32_e32 v3, 2, v05632; GFX8-NEXT:    v_lshrrev_b32_e32 v2, 1, v05633; GFX8-NEXT:    v_bfe_i32 v8, v3, 0, 15634; GFX8-NEXT:    v_bfe_i32 v0, v0, 0, 15635; GFX8-NEXT:    v_bfe_i32 v2, v2, 0, 15636; GFX8-NEXT:    v_ashrrev_i32_e32 v9, 31, v85637; GFX8-NEXT:    v_ashrrev_i32_e32 v1, 31, v05638; GFX8-NEXT:    v_ashrrev_i32_e32 v3, 31, v25639; GFX8-NEXT:    flat_store_dwordx2 v[6:7], v[8:9]5640; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]5641; GFX8-NEXT:    s_endpgm5642;5643; EG-LABEL: constant_sextload_v3i1_to_v3i64:5644; EG:       ; %bb.0:5645; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]5646; EG-NEXT:    TEX 0 @65647; EG-NEXT:    ALU 14, @9, KC0[CB0:0-32], KC1[]5648; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.XY, T3.X, 05649; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T1.XYZW, T2.X, 15650; EG-NEXT:    CF_END5651; EG-NEXT:    Fetch clause starting at 6:5652; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #15653; EG-NEXT:    ALU clause starting at 8:5654; EG-NEXT:     MOV * T0.X, KC0[2].Z,5655; EG-NEXT:    ALU clause starting at 9:5656; EG-NEXT:     BFE_INT T1.X, T0.X, 0.0, 1,5657; EG-NEXT:     LSHR T0.W, T0.X, 1,5658; EG-NEXT:     LSHR * T2.X, KC0[2].Y, literal.x,5659; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)5660; EG-NEXT:     BFE_INT T1.Z, PV.W, 0.0, 1,5661; EG-NEXT:     LSHR * T0.W, T0.X, literal.x,5662; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)5663; EG-NEXT:     BFE_INT T0.X, PV.W, 0.0, 1,5664; EG-NEXT:     MOV T1.Y, T1.X,5665; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.x,5666; EG-NEXT:    16(2.242078e-44), 0(0.000000e+00)5667; EG-NEXT:     LSHR T3.X, PV.W, literal.x,5668; EG-NEXT:     MOV T0.Y, PV.X,5669; EG-NEXT:     MOV * T1.W, T1.Z,5670; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)5671;5672; GFX12-LABEL: constant_sextload_v3i1_to_v3i64:5673; GFX12:       ; %bb.0:5674; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245675; GFX12-NEXT:    v_mov_b32_e32 v6, 05676; GFX12-NEXT:    s_wait_kmcnt 0x05677; GFX12-NEXT:    global_load_u8 v0, v6, s[2:3]5678; GFX12-NEXT:    s_wait_loadcnt 0x05679; GFX12-NEXT:    v_lshrrev_b32_e32 v1, 2, v05680; GFX12-NEXT:    v_lshrrev_b32_e32 v2, 1, v05681; GFX12-NEXT:    v_bfe_i32 v0, v0, 0, 15682; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_3)5683; GFX12-NEXT:    v_bfe_i32 v4, v1, 0, 15684; GFX12-NEXT:    v_bfe_i32 v2, v2, 0, 15685; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_3)5686; GFX12-NEXT:    v_ashrrev_i32_e32 v1, 31, v05687; GFX12-NEXT:    v_ashrrev_i32_e32 v5, 31, v45688; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_3)5689; GFX12-NEXT:    v_ashrrev_i32_e32 v3, 31, v25690; GFX12-NEXT:    s_clause 0x15691; GFX12-NEXT:    global_store_b64 v6, v[4:5], s[0:1] offset:165692; GFX12-NEXT:    global_store_b128 v6, v[0:3], s[0:1]5693; GFX12-NEXT:    s_endpgm5694;5695; GFX1250-LABEL: constant_sextload_v3i1_to_v3i64:5696; GFX1250:       ; %bb.0:5697; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 15698; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245699; GFX1250-NEXT:    v_mov_b32_e32 v5, 05700; GFX1250-NEXT:    s_wait_kmcnt 0x05701; GFX1250-NEXT:    global_load_u8 v0, v5, s[2:3]5702; GFX1250-NEXT:    s_wait_loadcnt 0x05703; GFX1250-NEXT:    v_dual_lshrrev_b32 v2, 2, v0 :: v_dual_lshrrev_b32 v4, 1, v05704; GFX1250-NEXT:    v_bfe_i32 v0, v0, 0, 15705; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)5706; GFX1250-NEXT:    v_bfe_i32 v6, v2, 0, 15707; GFX1250-NEXT:    v_ashrrev_i32_e32 v1, 31, v05708; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_3)5709; GFX1250-NEXT:    v_bfe_i32 v2, v4, 0, 15710; GFX1250-NEXT:    v_ashrrev_i32_e32 v7, 31, v65711; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_2)5712; GFX1250-NEXT:    v_ashrrev_i32_e32 v3, 31, v25713; GFX1250-NEXT:    s_clause 0x15714; GFX1250-NEXT:    global_store_b64 v5, v[6:7], s[0:1] offset:165715; GFX1250-NEXT:    global_store_b128 v5, v[0:3], s[0:1]5716; GFX1250-NEXT:    s_endpgm5717  %load = load <3 x i1>, ptr addrspace(4) %in5718  %ext = sext <3 x i1> %load to <3 x i64>5719  store <3 x i64> %ext, ptr addrspace(1) %out5720  ret void5721}5722 5723define amdgpu_kernel void @constant_zextload_v4i1_to_v4i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {5724; GFX6-LABEL: constant_zextload_v4i1_to_v4i64:5725; GFX6:       ; %bb.0:5726; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x95727; GFX6-NEXT:    s_mov_b32 s7, 0xf0005728; GFX6-NEXT:    s_mov_b32 s6, -15729; GFX6-NEXT:    s_mov_b32 s10, s65730; GFX6-NEXT:    s_mov_b32 s11, s75731; GFX6-NEXT:    s_waitcnt lgkmcnt(0)5732; GFX6-NEXT:    s_mov_b32 s8, s25733; GFX6-NEXT:    s_mov_b32 s9, s35734; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 05735; GFX6-NEXT:    v_mov_b32_e32 v1, 05736; GFX6-NEXT:    v_mov_b32_e32 v3, v15737; GFX6-NEXT:    v_mov_b32_e32 v5, v15738; GFX6-NEXT:    v_mov_b32_e32 v7, v15739; GFX6-NEXT:    s_mov_b32 s4, s05740; GFX6-NEXT:    s_mov_b32 s5, s15741; GFX6-NEXT:    s_waitcnt vmcnt(0)5742; GFX6-NEXT:    v_and_b32_e32 v4, 1, v05743; GFX6-NEXT:    v_bfe_u32 v6, v0, 1, 15744; GFX6-NEXT:    v_lshrrev_b32_e32 v2, 3, v05745; GFX6-NEXT:    v_bfe_u32 v0, v0, 2, 15746; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[4:7], 0 offset:165747; GFX6-NEXT:    buffer_store_dwordx4 v[4:7], off, s[4:7], 05748; GFX6-NEXT:    s_endpgm5749;5750; GFX8-LABEL: constant_zextload_v4i1_to_v4i64:5751; GFX8:       ; %bb.0:5752; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x245753; GFX8-NEXT:    v_mov_b32_e32 v2, 35754; GFX8-NEXT:    s_waitcnt lgkmcnt(0)5755; GFX8-NEXT:    v_mov_b32_e32 v0, s25756; GFX8-NEXT:    v_mov_b32_e32 v1, s35757; GFX8-NEXT:    flat_load_ubyte v0, v[0:1]5758; GFX8-NEXT:    s_add_u32 s2, s0, 165759; GFX8-NEXT:    s_addc_u32 s3, s1, 05760; GFX8-NEXT:    v_mov_b32_e32 v1, 05761; GFX8-NEXT:    v_mov_b32_e32 v11, s35762; GFX8-NEXT:    v_mov_b32_e32 v3, v15763; GFX8-NEXT:    v_mov_b32_e32 v9, s15764; GFX8-NEXT:    v_mov_b32_e32 v10, s25765; GFX8-NEXT:    v_mov_b32_e32 v5, v15766; GFX8-NEXT:    v_mov_b32_e32 v7, v15767; GFX8-NEXT:    v_mov_b32_e32 v8, s05768; GFX8-NEXT:    s_waitcnt vmcnt(0)5769; GFX8-NEXT:    v_and_b32_e32 v4, 1, v05770; GFX8-NEXT:    v_bfe_u32 v6, v0, 1, 15771; GFX8-NEXT:    v_lshrrev_b32_sdwa v2, v2, v0 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:WORD_05772; GFX8-NEXT:    v_bfe_u32 v0, v0, 2, 15773; GFX8-NEXT:    flat_store_dwordx4 v[10:11], v[0:3]5774; GFX8-NEXT:    flat_store_dwordx4 v[8:9], v[4:7]5775; GFX8-NEXT:    s_endpgm5776;5777; EG-LABEL: constant_zextload_v4i1_to_v4i64:5778; EG:       ; %bb.0:5779; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]5780; EG-NEXT:    TEX 0 @65781; EG-NEXT:    ALU 14, @9, KC0[CB0:0-32], KC1[]5782; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T1.XYZW, T3.X, 05783; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T0.XYZW, T2.X, 15784; EG-NEXT:    CF_END5785; EG-NEXT:    Fetch clause starting at 6:5786; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #15787; EG-NEXT:    ALU clause starting at 8:5788; EG-NEXT:     MOV * T0.X, KC0[2].Z,5789; EG-NEXT:    ALU clause starting at 9:5790; EG-NEXT:     BFE_UINT * T1.Z, T0.X, literal.x, 1,5791; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)5792; EG-NEXT:     BFE_UINT T1.X, T0.X, literal.x, 1,5793; EG-NEXT:     MOV T1.Y, 0.0,5794; EG-NEXT:     BFE_UINT T0.Z, T0.X, 1, 1,5795; EG-NEXT:     AND_INT * T0.X, T0.X, 1,5796; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)5797; EG-NEXT:     MOV T0.Y, 0.0,5798; EG-NEXT:     MOV T1.W, 0.0,5799; EG-NEXT:     MOV * T0.W, 0.0,5800; EG-NEXT:     LSHR T2.X, KC0[2].Y, literal.x,5801; EG-NEXT:     ADD_INT * T2.W, KC0[2].Y, literal.y,5802; EG-NEXT:    2(2.802597e-45), 16(2.242078e-44)5803; EG-NEXT:     LSHR * T3.X, PV.W, literal.x,5804; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)5805;5806; GFX12-LABEL: constant_zextload_v4i1_to_v4i64:5807; GFX12:       ; %bb.0:5808; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245809; GFX12-NEXT:    v_mov_b32_e32 v1, 05810; GFX12-NEXT:    s_wait_kmcnt 0x05811; GFX12-NEXT:    global_load_u8 v0, v1, s[2:3]5812; GFX12-NEXT:    s_wait_loadcnt 0x05813; GFX12-NEXT:    v_readfirstlane_b32 s2, v05814; GFX12-NEXT:    v_and_b32_e32 v0, 0xffff, v05815; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100025816; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(SALU_CYCLE_1)5817; GFX12-NEXT:    v_lshrrev_b32_e32 v2, 3, v05818; GFX12-NEXT:    s_and_b32 s3, 0xffff, s35819; GFX12-NEXT:    v_dual_mov_b32 v3, v1 :: v_dual_mov_b32 v0, s35820; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100015821; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_2)5822; GFX12-NEXT:    v_and_b32_e32 v2, 0xffff, v25823; GFX12-NEXT:    s_and_b32 s2, s2, 15824; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)5825; GFX12-NEXT:    s_and_b32 s3, 0xffff, s35826; GFX12-NEXT:    s_and_b32 s2, 0xffff, s25827; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:165828; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)5829; GFX12-NEXT:    v_mov_b32_e32 v0, s25830; GFX12-NEXT:    v_mov_b32_e32 v2, s35831; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1]5832; GFX12-NEXT:    s_endpgm5833;5834; GFX1250-LABEL: constant_zextload_v4i1_to_v4i64:5835; GFX1250:       ; %bb.0:5836; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 15837; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245838; GFX1250-NEXT:    v_mov_b32_e32 v1, 05839; GFX1250-NEXT:    s_wait_kmcnt 0x05840; GFX1250-NEXT:    global_load_u8 v0, v1, s[2:3]5841; GFX1250-NEXT:    s_wait_loadcnt 0x05842; GFX1250-NEXT:    v_readfirstlane_b32 s2, v05843; GFX1250-NEXT:    v_and_b32_e32 v0, 0xffff, v05844; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100025845; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(SALU_CYCLE_1)5846; GFX1250-NEXT:    v_lshrrev_b32_e32 v2, 3, v05847; GFX1250-NEXT:    s_and_b32 s3, 0xffff, s35848; GFX1250-NEXT:    v_dual_mov_b32 v3, v1 :: v_dual_mov_b32 v0, s35849; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100015850; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_2)5851; GFX1250-NEXT:    v_and_b32_e32 v2, 0xffff, v25852; GFX1250-NEXT:    s_and_b32 s2, s2, 15853; GFX1250-NEXT:    s_and_b32 s3, 0xffff, s35854; GFX1250-NEXT:    s_and_b32 s2, 0xffff, s25855; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:165856; GFX1250-NEXT:    s_wait_xcnt 0x05857; GFX1250-NEXT:    v_dual_mov_b32 v0, s2 :: v_dual_mov_b32 v2, s35858; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1]5859; GFX1250-NEXT:    s_endpgm5860  %load = load <4 x i1>, ptr addrspace(4) %in5861  %ext = zext <4 x i1> %load to <4 x i64>5862  store <4 x i64> %ext, ptr addrspace(1) %out5863  ret void5864}5865 5866define amdgpu_kernel void @constant_sextload_v4i1_to_v4i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {5867; GFX6-LABEL: constant_sextload_v4i1_to_v4i64:5868; GFX6:       ; %bb.0:5869; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x95870; GFX6-NEXT:    s_mov_b32 s7, 0xf0005871; GFX6-NEXT:    s_mov_b32 s6, -15872; GFX6-NEXT:    s_mov_b32 s10, s65873; GFX6-NEXT:    s_mov_b32 s11, s75874; GFX6-NEXT:    s_waitcnt lgkmcnt(0)5875; GFX6-NEXT:    s_mov_b32 s8, s25876; GFX6-NEXT:    s_mov_b32 s9, s35877; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 05878; GFX6-NEXT:    s_mov_b32 s4, s05879; GFX6-NEXT:    s_mov_b32 s5, s15880; GFX6-NEXT:    s_waitcnt vmcnt(0)5881; GFX6-NEXT:    v_lshrrev_b32_e32 v3, 2, v05882; GFX6-NEXT:    v_lshrrev_b32_e32 v4, 3, v05883; GFX6-NEXT:    v_lshrrev_b32_e32 v2, 1, v05884; GFX6-NEXT:    v_bfe_i32 v0, v0, 0, 15885; GFX6-NEXT:    v_ashrrev_i32_e32 v1, 31, v05886; GFX6-NEXT:    v_bfe_i32 v2, v2, 0, 15887; GFX6-NEXT:    v_bfe_i32 v6, v4, 0, 15888; GFX6-NEXT:    v_bfe_i32 v4, v3, 0, 15889; GFX6-NEXT:    v_ashrrev_i32_e32 v3, 31, v25890; GFX6-NEXT:    v_ashrrev_i32_e32 v7, 31, v65891; GFX6-NEXT:    v_ashrrev_i32_e32 v5, 31, v45892; GFX6-NEXT:    buffer_store_dwordx4 v[4:7], off, s[4:7], 0 offset:165893; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[4:7], 05894; GFX6-NEXT:    s_endpgm5895;5896; GFX8-LABEL: constant_sextload_v4i1_to_v4i64:5897; GFX8:       ; %bb.0:5898; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x245899; GFX8-NEXT:    s_waitcnt lgkmcnt(0)5900; GFX8-NEXT:    v_mov_b32_e32 v0, s25901; GFX8-NEXT:    v_mov_b32_e32 v1, s35902; GFX8-NEXT:    flat_load_ubyte v0, v[0:1]5903; GFX8-NEXT:    s_add_u32 s2, s0, 165904; GFX8-NEXT:    s_addc_u32 s3, s1, 05905; GFX8-NEXT:    v_mov_b32_e32 v11, s35906; GFX8-NEXT:    v_mov_b32_e32 v9, s15907; GFX8-NEXT:    v_mov_b32_e32 v10, s25908; GFX8-NEXT:    v_mov_b32_e32 v8, s05909; GFX8-NEXT:    s_waitcnt vmcnt(0)5910; GFX8-NEXT:    v_lshrrev_b32_e32 v3, 2, v05911; GFX8-NEXT:    v_lshrrev_b32_e32 v4, 3, v05912; GFX8-NEXT:    v_lshrrev_b32_e32 v2, 1, v05913; GFX8-NEXT:    v_bfe_i32 v6, v4, 0, 15914; GFX8-NEXT:    v_bfe_i32 v4, v3, 0, 15915; GFX8-NEXT:    v_bfe_i32 v0, v0, 0, 15916; GFX8-NEXT:    v_bfe_i32 v2, v2, 0, 15917; GFX8-NEXT:    v_ashrrev_i32_e32 v7, 31, v65918; GFX8-NEXT:    v_ashrrev_i32_e32 v5, 31, v45919; GFX8-NEXT:    v_ashrrev_i32_e32 v1, 31, v05920; GFX8-NEXT:    v_ashrrev_i32_e32 v3, 31, v25921; GFX8-NEXT:    flat_store_dwordx4 v[10:11], v[4:7]5922; GFX8-NEXT:    flat_store_dwordx4 v[8:9], v[0:3]5923; GFX8-NEXT:    s_endpgm5924;5925; EG-LABEL: constant_sextload_v4i1_to_v4i64:5926; EG:       ; %bb.0:5927; EG-NEXT:    ALU 0, @8, KC0[CB0:0-32], KC1[]5928; EG-NEXT:    TEX 0 @65929; EG-NEXT:    ALU 17, @9, KC0[CB0:0-32], KC1[]5930; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T2.XYZW, T3.X, 05931; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T1.XYZW, T0.X, 15932; EG-NEXT:    CF_END5933; EG-NEXT:    Fetch clause starting at 6:5934; EG-NEXT:     VTX_READ_8 T0.X, T0.X, 0, #15935; EG-NEXT:    ALU clause starting at 8:5936; EG-NEXT:     MOV * T0.X, KC0[2].Z,5937; EG-NEXT:    ALU clause starting at 9:5938; EG-NEXT:     LSHR * T0.W, T0.X, literal.x,5939; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)5940; EG-NEXT:     BFE_INT T1.X, T0.X, 0.0, 1,5941; EG-NEXT:     BFE_INT T2.Z, PV.W, 0.0, 1,5942; EG-NEXT:     LSHR * T0.W, T0.X, literal.x,5943; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)5944; EG-NEXT:     BFE_INT T2.X, PV.W, 0.0, 1,5945; EG-NEXT:     LSHR * T0.W, T0.X, 1,5946; EG-NEXT:     MOV T2.Y, PV.X,5947; EG-NEXT:     BFE_INT * T1.Z, PV.W, 0.0, 1,5948; EG-NEXT:     LSHR T0.X, KC0[2].Y, literal.x,5949; EG-NEXT:     MOV T1.Y, T1.X,5950; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,5951; EG-NEXT:    2(2.802597e-45), 16(2.242078e-44)5952; EG-NEXT:     LSHR T3.X, PV.W, literal.x,5953; EG-NEXT:     MOV T1.W, T1.Z,5954; EG-NEXT:     MOV * T2.W, T2.Z,5955; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)5956;5957; GFX12-LABEL: constant_sextload_v4i1_to_v4i64:5958; GFX12:       ; %bb.0:5959; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245960; GFX12-NEXT:    v_mov_b32_e32 v8, 05961; GFX12-NEXT:    s_wait_kmcnt 0x05962; GFX12-NEXT:    global_load_u8 v0, v8, s[2:3]5963; GFX12-NEXT:    s_wait_loadcnt 0x05964; GFX12-NEXT:    v_lshrrev_b32_e32 v1, 3, v05965; GFX12-NEXT:    v_lshrrev_b32_e32 v2, 2, v05966; GFX12-NEXT:    v_lshrrev_b32_e32 v3, 1, v05967; GFX12-NEXT:    v_bfe_i32 v0, v0, 0, 15968; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)5969; GFX12-NEXT:    v_bfe_i32 v6, v1, 0, 15970; GFX12-NEXT:    v_bfe_i32 v4, v2, 0, 15971; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)5972; GFX12-NEXT:    v_bfe_i32 v2, v3, 0, 15973; GFX12-NEXT:    v_ashrrev_i32_e32 v1, 31, v05974; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_4)5975; GFX12-NEXT:    v_ashrrev_i32_e32 v7, 31, v65976; GFX12-NEXT:    v_ashrrev_i32_e32 v5, 31, v45977; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_4)5978; GFX12-NEXT:    v_ashrrev_i32_e32 v3, 31, v25979; GFX12-NEXT:    s_clause 0x15980; GFX12-NEXT:    global_store_b128 v8, v[4:7], s[0:1] offset:165981; GFX12-NEXT:    global_store_b128 v8, v[0:3], s[0:1]5982; GFX12-NEXT:    s_endpgm5983;5984; GFX1250-LABEL: constant_sextload_v4i1_to_v4i64:5985; GFX1250:       ; %bb.0:5986; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 15987; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x245988; GFX1250-NEXT:    v_mov_b32_e32 v9, 05989; GFX1250-NEXT:    s_wait_kmcnt 0x05990; GFX1250-NEXT:    global_load_u8 v0, v9, s[2:3]5991; GFX1250-NEXT:    s_wait_loadcnt 0x05992; GFX1250-NEXT:    v_dual_lshrrev_b32 v2, 3, v0 :: v_dual_lshrrev_b32 v4, 2, v05993; GFX1250-NEXT:    v_lshrrev_b32_e32 v8, 1, v05994; GFX1250-NEXT:    v_bfe_i32 v0, v0, 0, 15995; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_4)5996; GFX1250-NEXT:    v_bfe_i32 v6, v2, 0, 15997; GFX1250-NEXT:    v_bfe_i32 v4, v4, 0, 15998; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_4) | instskip(NEXT) | instid1(VALU_DEP_3)5999; GFX1250-NEXT:    v_bfe_i32 v2, v8, 0, 16000; GFX1250-NEXT:    v_dual_ashrrev_i32 v1, 31, v0 :: v_dual_ashrrev_i32 v7, 31, v66001; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_2)6002; GFX1250-NEXT:    v_dual_ashrrev_i32 v5, 31, v4 :: v_dual_ashrrev_i32 v3, 31, v26003; GFX1250-NEXT:    s_clause 0x16004; GFX1250-NEXT:    global_store_b128 v9, v[4:7], s[0:1] offset:166005; GFX1250-NEXT:    global_store_b128 v9, v[0:3], s[0:1]6006; GFX1250-NEXT:    s_endpgm6007  %load = load <4 x i1>, ptr addrspace(4) %in6008  %ext = sext <4 x i1> %load to <4 x i64>6009  store <4 x i64> %ext, ptr addrspace(1) %out6010  ret void6011}6012 6013define amdgpu_kernel void @constant_zextload_v8i1_to_v8i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {6014; GFX6-LABEL: constant_zextload_v8i1_to_v8i64:6015; GFX6:       ; %bb.0:6016; GFX6-NEXT:    s_load_dwordx4 s[4:7], s[4:5], 0x96017; GFX6-NEXT:    s_mov_b32 s3, 0xf0006018; GFX6-NEXT:    s_mov_b32 s2, -16019; GFX6-NEXT:    s_mov_b32 s10, s26020; GFX6-NEXT:    s_mov_b32 s11, s36021; GFX6-NEXT:    s_waitcnt lgkmcnt(0)6022; GFX6-NEXT:    s_mov_b32 s8, s66023; GFX6-NEXT:    s_mov_b32 s9, s76024; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 06025; GFX6-NEXT:    v_mov_b32_e32 v1, 06026; GFX6-NEXT:    v_mov_b32_e32 v3, v16027; GFX6-NEXT:    v_mov_b32_e32 v5, v16028; GFX6-NEXT:    v_mov_b32_e32 v7, v16029; GFX6-NEXT:    v_mov_b32_e32 v9, v16030; GFX6-NEXT:    v_mov_b32_e32 v11, v16031; GFX6-NEXT:    v_mov_b32_e32 v13, v16032; GFX6-NEXT:    v_mov_b32_e32 v15, v16033; GFX6-NEXT:    s_mov_b32 s0, s46034; GFX6-NEXT:    s_mov_b32 s1, s56035; GFX6-NEXT:    s_waitcnt vmcnt(0)6036; GFX6-NEXT:    v_bfe_u32 v14, v0, 1, 16037; GFX6-NEXT:    v_bfe_u32 v10, v0, 3, 16038; GFX6-NEXT:    v_bfe_u32 v6, v0, 5, 16039; GFX6-NEXT:    v_lshrrev_b32_e32 v2, 7, v06040; GFX6-NEXT:    v_and_b32_e32 v12, 1, v06041; GFX6-NEXT:    v_bfe_u32 v8, v0, 2, 16042; GFX6-NEXT:    v_bfe_u32 v4, v0, 4, 16043; GFX6-NEXT:    v_bfe_u32 v0, v0, 6, 16044; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:486045; GFX6-NEXT:    buffer_store_dwordx4 v[4:7], off, s[0:3], 0 offset:326046; GFX6-NEXT:    buffer_store_dwordx4 v[8:11], off, s[0:3], 0 offset:166047; GFX6-NEXT:    buffer_store_dwordx4 v[12:15], off, s[0:3], 06048; GFX6-NEXT:    s_endpgm6049;6050; GFX8-LABEL: constant_zextload_v8i1_to_v8i64:6051; GFX8:       ; %bb.0:6052; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x246053; GFX8-NEXT:    s_waitcnt lgkmcnt(0)6054; GFX8-NEXT:    v_mov_b32_e32 v0, s26055; GFX8-NEXT:    v_mov_b32_e32 v1, s36056; GFX8-NEXT:    flat_load_ubyte v0, v[0:1]6057; GFX8-NEXT:    s_add_u32 s2, s0, 486058; GFX8-NEXT:    s_addc_u32 s3, s1, 06059; GFX8-NEXT:    s_add_u32 s4, s0, 326060; GFX8-NEXT:    s_addc_u32 s5, s1, 06061; GFX8-NEXT:    v_mov_b32_e32 v1, 06062; GFX8-NEXT:    v_mov_b32_e32 v16, s56063; GFX8-NEXT:    v_mov_b32_e32 v5, v16064; GFX8-NEXT:    v_mov_b32_e32 v7, v16065; GFX8-NEXT:    v_mov_b32_e32 v15, s46066; GFX8-NEXT:    v_mov_b32_e32 v8, v16067; GFX8-NEXT:    v_mov_b32_e32 v10, v16068; GFX8-NEXT:    v_mov_b32_e32 v3, v16069; GFX8-NEXT:    v_mov_b32_e32 v12, v16070; GFX8-NEXT:    v_mov_b32_e32 v14, v16071; GFX8-NEXT:    s_waitcnt vmcnt(0)6072; GFX8-NEXT:    v_bfe_u32 v6, v0, 5, 16073; GFX8-NEXT:    v_bfe_u32 v4, v0, 4, 16074; GFX8-NEXT:    flat_store_dwordx4 v[15:16], v[4:7]6075; GFX8-NEXT:    v_mov_b32_e32 v16, s36076; GFX8-NEXT:    v_mov_b32_e32 v5, s16077; GFX8-NEXT:    v_mov_b32_e32 v4, s06078; GFX8-NEXT:    s_add_u32 s0, s0, 166079; GFX8-NEXT:    s_addc_u32 s1, s1, 06080; GFX8-NEXT:    v_mov_b32_e32 v18, s16081; GFX8-NEXT:    v_mov_b32_e32 v17, s06082; GFX8-NEXT:    v_and_b32_e32 v6, 0xffff, v06083; GFX8-NEXT:    v_bfe_u32 v9, v0, 3, 16084; GFX8-NEXT:    v_bfe_u32 v7, v0, 2, 16085; GFX8-NEXT:    v_mov_b32_e32 v15, s26086; GFX8-NEXT:    v_bfe_u32 v13, v0, 1, 16087; GFX8-NEXT:    v_and_b32_e32 v11, 1, v06088; GFX8-NEXT:    v_lshrrev_b32_e32 v2, 7, v66089; GFX8-NEXT:    v_bfe_u32 v0, v6, 6, 16090; GFX8-NEXT:    flat_store_dwordx4 v[17:18], v[7:10]6091; GFX8-NEXT:    flat_store_dwordx4 v[15:16], v[0:3]6092; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[11:14]6093; GFX8-NEXT:    s_endpgm6094;6095; EG-LABEL: constant_zextload_v8i1_to_v8i64:6096; EG:       ; %bb.0:6097; EG-NEXT:    ALU 0, @10, KC0[CB0:0-32], KC1[]6098; EG-NEXT:    TEX 0 @86099; EG-NEXT:    ALU 30, @11, KC0[CB0:0-32], KC1[]6100; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T6.XYZW, T12.X, 06101; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T7.XYZW, T11.X, 06102; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T8.XYZW, T10.X, 06103; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T5.XYZW, T9.X, 16104; EG-NEXT:    CF_END6105; EG-NEXT:    Fetch clause starting at 8:6106; EG-NEXT:     VTX_READ_8 T5.X, T5.X, 0, #16107; EG-NEXT:    ALU clause starting at 10:6108; EG-NEXT:     MOV * T5.X, KC0[2].Z,6109; EG-NEXT:    ALU clause starting at 11:6110; EG-NEXT:     BFE_UINT * T6.Z, T5.X, literal.x, 1,6111; EG-NEXT:    7(9.809089e-45), 0(0.000000e+00)6112; EG-NEXT:     BFE_UINT T6.X, T5.X, literal.x, 1,6113; EG-NEXT:     MOV T6.Y, 0.0,6114; EG-NEXT:     BFE_UINT * T7.Z, T5.X, literal.y, 1,6115; EG-NEXT:    6(8.407791e-45), 5(7.006492e-45)6116; EG-NEXT:     BFE_UINT T7.X, T5.X, literal.x, 1,6117; EG-NEXT:     MOV T7.Y, 0.0,6118; EG-NEXT:     BFE_UINT * T8.Z, T5.X, literal.y, 1,6119; EG-NEXT:    4(5.605194e-45), 3(4.203895e-45)6120; EG-NEXT:     BFE_UINT T8.X, T5.X, literal.x, 1,6121; EG-NEXT:     MOV T8.Y, 0.0,6122; EG-NEXT:     BFE_UINT T5.Z, T5.X, 1, 1,6123; EG-NEXT:     AND_INT * T5.X, T5.X, 1,6124; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)6125; EG-NEXT:     MOV T5.Y, 0.0,6126; EG-NEXT:     MOV T6.W, 0.0,6127; EG-NEXT:     MOV * T7.W, 0.0,6128; EG-NEXT:     MOV T8.W, 0.0,6129; EG-NEXT:     MOV * T5.W, 0.0,6130; EG-NEXT:     LSHR T9.X, KC0[2].Y, literal.x,6131; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,6132; EG-NEXT:    2(2.802597e-45), 16(2.242078e-44)6133; EG-NEXT:     LSHR T10.X, PV.W, literal.x,6134; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,6135; EG-NEXT:    2(2.802597e-45), 32(4.484155e-44)6136; EG-NEXT:     LSHR T11.X, PV.W, literal.x,6137; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,6138; EG-NEXT:    2(2.802597e-45), 48(6.726233e-44)6139; EG-NEXT:     LSHR * T12.X, PV.W, literal.x,6140; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)6141;6142; GFX12-LABEL: constant_zextload_v8i1_to_v8i64:6143; GFX12:       ; %bb.0:6144; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x246145; GFX12-NEXT:    v_mov_b32_e32 v1, 06146; GFX12-NEXT:    s_wait_kmcnt 0x06147; GFX12-NEXT:    global_load_u8 v12, v1, s[2:3]6148; GFX12-NEXT:    s_wait_loadcnt 0x06149; GFX12-NEXT:    v_dual_mov_b32 v3, v1 :: v_dual_and_b32 v0, 0xffff, v126150; GFX12-NEXT:    v_mov_b32_e32 v5, v16151; GFX12-NEXT:    v_mov_b32_e32 v7, v16152; GFX12-NEXT:    v_bfe_u32 v6, v12, 5, 16153; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_4)6154; GFX12-NEXT:    v_lshrrev_b32_e32 v2, 7, v06155; GFX12-NEXT:    v_bfe_u32 v0, v0, 6, 16156; GFX12-NEXT:    v_bfe_u32 v4, v12, 4, 16157; GFX12-NEXT:    v_mov_b32_e32 v9, v16158; GFX12-NEXT:    v_mov_b32_e32 v11, v16159; GFX12-NEXT:    v_bfe_u32 v10, v12, 3, 16160; GFX12-NEXT:    v_bfe_u32 v8, v12, 2, 16161; GFX12-NEXT:    v_mov_b32_e32 v13, v16162; GFX12-NEXT:    v_mov_b32_e32 v15, v16163; GFX12-NEXT:    v_bfe_u32 v14, v12, 1, 16164; GFX12-NEXT:    v_and_b32_e32 v12, 1, v126165; GFX12-NEXT:    s_clause 0x36166; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:486167; GFX12-NEXT:    global_store_b128 v1, v[4:7], s[0:1] offset:326168; GFX12-NEXT:    global_store_b128 v1, v[8:11], s[0:1] offset:166169; GFX12-NEXT:    global_store_b128 v1, v[12:15], s[0:1]6170; GFX12-NEXT:    s_endpgm6171;6172; GFX1250-LABEL: constant_zextload_v8i1_to_v8i64:6173; GFX1250:       ; %bb.0:6174; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 16175; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x246176; GFX1250-NEXT:    v_mov_b32_e32 v1, 06177; GFX1250-NEXT:    s_wait_kmcnt 0x06178; GFX1250-NEXT:    global_load_u8 v12, v1, s[2:3]6179; GFX1250-NEXT:    s_wait_loadcnt 0x06180; GFX1250-NEXT:    v_and_b32_e32 v0, 0xffff, v126181; GFX1250-NEXT:    v_bfe_u32 v6, v12, 5, 16182; GFX1250-NEXT:    v_bfe_u32 v4, v12, 4, 16183; GFX1250-NEXT:    v_bfe_u32 v10, v12, 3, 16184; GFX1250-NEXT:    v_bfe_u32 v8, v12, 2, 16185; GFX1250-NEXT:    v_dual_mov_b32 v3, v1 :: v_dual_lshrrev_b32 v2, 7, v06186; GFX1250-NEXT:    v_mov_b32_e32 v5, v16187; GFX1250-NEXT:    v_bfe_u32 v0, v0, 6, 16188; GFX1250-NEXT:    v_dual_mov_b32 v7, v1 :: v_dual_mov_b32 v9, v16189; GFX1250-NEXT:    v_dual_mov_b32 v11, v1 :: v_dual_mov_b32 v13, v16190; GFX1250-NEXT:    v_mov_b32_e32 v15, v16191; GFX1250-NEXT:    v_bfe_u32 v14, v12, 1, 16192; GFX1250-NEXT:    v_and_b32_e32 v12, 1, v126193; GFX1250-NEXT:    s_clause 0x36194; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:486195; GFX1250-NEXT:    global_store_b128 v1, v[4:7], s[0:1] offset:326196; GFX1250-NEXT:    global_store_b128 v1, v[8:11], s[0:1] offset:166197; GFX1250-NEXT:    global_store_b128 v1, v[12:15], s[0:1]6198; GFX1250-NEXT:    s_endpgm6199  %load = load <8 x i1>, ptr addrspace(4) %in6200  %ext = zext <8 x i1> %load to <8 x i64>6201  store <8 x i64> %ext, ptr addrspace(1) %out6202  ret void6203}6204 6205define amdgpu_kernel void @constant_sextload_v8i1_to_v8i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {6206; GFX6-LABEL: constant_sextload_v8i1_to_v8i64:6207; GFX6:       ; %bb.0:6208; GFX6-NEXT:    s_load_dwordx4 s[4:7], s[4:5], 0x96209; GFX6-NEXT:    s_mov_b32 s3, 0xf0006210; GFX6-NEXT:    s_mov_b32 s2, -16211; GFX6-NEXT:    s_mov_b32 s10, s26212; GFX6-NEXT:    s_mov_b32 s11, s36213; GFX6-NEXT:    s_waitcnt lgkmcnt(0)6214; GFX6-NEXT:    s_mov_b32 s8, s66215; GFX6-NEXT:    s_mov_b32 s9, s76216; GFX6-NEXT:    buffer_load_ubyte v0, off, s[8:11], 06217; GFX6-NEXT:    s_mov_b32 s0, s46218; GFX6-NEXT:    s_mov_b32 s1, s56219; GFX6-NEXT:    s_waitcnt vmcnt(0)6220; GFX6-NEXT:    v_lshrrev_b32_e32 v3, 6, v06221; GFX6-NEXT:    v_lshrrev_b32_e32 v5, 7, v06222; GFX6-NEXT:    v_lshrrev_b32_e32 v7, 4, v06223; GFX6-NEXT:    v_lshrrev_b32_e32 v8, 5, v06224; GFX6-NEXT:    v_lshrrev_b32_e32 v4, 2, v06225; GFX6-NEXT:    v_lshrrev_b32_e32 v6, 3, v06226; GFX6-NEXT:    v_lshrrev_b32_e32 v2, 1, v06227; GFX6-NEXT:    v_bfe_i32 v0, v0, 0, 16228; GFX6-NEXT:    v_ashrrev_i32_e32 v1, 31, v06229; GFX6-NEXT:    v_bfe_i32 v2, v2, 0, 16230; GFX6-NEXT:    v_bfe_i32 v6, v6, 0, 16231; GFX6-NEXT:    v_bfe_i32 v4, v4, 0, 16232; GFX6-NEXT:    v_bfe_i32 v10, v8, 0, 16233; GFX6-NEXT:    v_bfe_i32 v8, v7, 0, 16234; GFX6-NEXT:    v_bfe_i32 v14, v5, 0, 16235; GFX6-NEXT:    v_bfe_i32 v12, v3, 0, 16236; GFX6-NEXT:    v_ashrrev_i32_e32 v3, 31, v26237; GFX6-NEXT:    v_ashrrev_i32_e32 v7, 31, v66238; GFX6-NEXT:    v_ashrrev_i32_e32 v5, 31, v46239; GFX6-NEXT:    v_ashrrev_i32_e32 v11, 31, v106240; GFX6-NEXT:    v_ashrrev_i32_e32 v9, 31, v86241; GFX6-NEXT:    v_ashrrev_i32_e32 v15, 31, v146242; GFX6-NEXT:    v_ashrrev_i32_e32 v13, 31, v126243; GFX6-NEXT:    buffer_store_dwordx4 v[12:15], off, s[0:3], 0 offset:486244; GFX6-NEXT:    buffer_store_dwordx4 v[8:11], off, s[0:3], 0 offset:326245; GFX6-NEXT:    buffer_store_dwordx4 v[4:7], off, s[0:3], 0 offset:166246; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 06247; GFX6-NEXT:    s_endpgm6248;6249; GFX8-LABEL: constant_sextload_v8i1_to_v8i64:6250; GFX8:       ; %bb.0:6251; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x246252; GFX8-NEXT:    s_waitcnt lgkmcnt(0)6253; GFX8-NEXT:    v_mov_b32_e32 v0, s26254; GFX8-NEXT:    v_mov_b32_e32 v1, s36255; GFX8-NEXT:    flat_load_ubyte v0, v[0:1]6256; GFX8-NEXT:    v_mov_b32_e32 v17, s16257; GFX8-NEXT:    v_mov_b32_e32 v16, s06258; GFX8-NEXT:    s_waitcnt vmcnt(0)6259; GFX8-NEXT:    v_readfirstlane_b32 s3, v06260; GFX8-NEXT:    s_lshr_b32 s2, s3, 66261; GFX8-NEXT:    s_lshr_b32 s4, s3, 76262; GFX8-NEXT:    s_lshr_b32 s6, s3, 46263; GFX8-NEXT:    s_lshr_b32 s8, s3, 56264; GFX8-NEXT:    s_lshr_b32 s10, s3, 26265; GFX8-NEXT:    s_lshr_b32 s12, s3, 36266; GFX8-NEXT:    s_lshr_b32 s14, s3, 16267; GFX8-NEXT:    v_mov_b32_e32 v0, s36268; GFX8-NEXT:    s_bfe_i64 s[14:15], s[14:15], 0x100006269; GFX8-NEXT:    s_bfe_i64 s[12:13], s[12:13], 0x100006270; GFX8-NEXT:    s_bfe_i64 s[10:11], s[10:11], 0x100006271; GFX8-NEXT:    s_bfe_i64 s[8:9], s[8:9], 0x100006272; GFX8-NEXT:    s_bfe_i64 s[6:7], s[6:7], 0x100006273; GFX8-NEXT:    s_bfe_i64 s[4:5], s[4:5], 0x100006274; GFX8-NEXT:    s_bfe_i64 s[2:3], s[2:3], 0x100006275; GFX8-NEXT:    v_mov_b32_e32 v4, s26276; GFX8-NEXT:    s_add_u32 s2, s0, 486277; GFX8-NEXT:    v_mov_b32_e32 v5, s36278; GFX8-NEXT:    s_addc_u32 s3, s1, 06279; GFX8-NEXT:    v_mov_b32_e32 v19, s36280; GFX8-NEXT:    v_mov_b32_e32 v18, s26281; GFX8-NEXT:    s_add_u32 s2, s0, 326282; GFX8-NEXT:    v_mov_b32_e32 v6, s46283; GFX8-NEXT:    v_mov_b32_e32 v7, s56284; GFX8-NEXT:    s_addc_u32 s3, s1, 06285; GFX8-NEXT:    flat_store_dwordx4 v[18:19], v[4:7]6286; GFX8-NEXT:    s_add_u32 s0, s0, 166287; GFX8-NEXT:    v_mov_b32_e32 v5, s36288; GFX8-NEXT:    v_mov_b32_e32 v8, s66289; GFX8-NEXT:    v_mov_b32_e32 v9, s76290; GFX8-NEXT:    v_mov_b32_e32 v10, s86291; GFX8-NEXT:    v_mov_b32_e32 v11, s96292; GFX8-NEXT:    v_mov_b32_e32 v4, s26293; GFX8-NEXT:    s_addc_u32 s1, s1, 06294; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[8:11]6295; GFX8-NEXT:    v_mov_b32_e32 v5, s16296; GFX8-NEXT:    v_bfe_i32 v0, v0, 0, 16297; GFX8-NEXT:    v_mov_b32_e32 v12, s106298; GFX8-NEXT:    v_mov_b32_e32 v13, s116299; GFX8-NEXT:    v_mov_b32_e32 v14, s126300; GFX8-NEXT:    v_mov_b32_e32 v15, s136301; GFX8-NEXT:    v_mov_b32_e32 v4, s06302; GFX8-NEXT:    v_ashrrev_i32_e32 v1, 31, v06303; GFX8-NEXT:    v_mov_b32_e32 v2, s146304; GFX8-NEXT:    v_mov_b32_e32 v3, s156305; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[12:15]6306; GFX8-NEXT:    flat_store_dwordx4 v[16:17], v[0:3]6307; GFX8-NEXT:    s_endpgm6308;6309; EG-LABEL: constant_sextload_v8i1_to_v8i64:6310; EG:       ; %bb.0:6311; EG-NEXT:    ALU 0, @10, KC0[CB0:0-32], KC1[]6312; EG-NEXT:    TEX 0 @86313; EG-NEXT:    ALU 37, @11, KC0[CB0:0-32], KC1[]6314; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T8.XYZW, T12.X, 06315; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T5.XYZW, T11.X, 06316; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T9.XYZW, T10.X, 06317; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T7.XYZW, T6.X, 16318; EG-NEXT:    CF_END6319; EG-NEXT:    Fetch clause starting at 8:6320; EG-NEXT:     VTX_READ_8 T5.X, T5.X, 0, #16321; EG-NEXT:    ALU clause starting at 10:6322; EG-NEXT:     MOV * T5.X, KC0[2].Z,6323; EG-NEXT:    ALU clause starting at 11:6324; EG-NEXT:     LSHR T6.X, KC0[2].Y, literal.x,6325; EG-NEXT:     LSHR * T0.W, T5.X, literal.y,6326; EG-NEXT:    2(2.802597e-45), 7(9.809089e-45)6327; EG-NEXT:     BFE_INT T7.X, T5.X, 0.0, 1,6328; EG-NEXT:     BFE_INT T8.Z, PV.W, 0.0, 1,6329; EG-NEXT:     LSHR T0.W, T5.X, literal.x,6330; EG-NEXT:     LSHR * T1.W, T5.X, literal.y,6331; EG-NEXT:    3(4.203895e-45), 6(8.407791e-45)6332; EG-NEXT:     BFE_INT T8.X, PS, 0.0, 1,6333; EG-NEXT:     BFE_INT T9.Z, PV.W, 0.0, 1,6334; EG-NEXT:     LSHR T0.W, T5.X, 1,6335; EG-NEXT:     LSHR * T1.W, T5.X, literal.x,6336; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)6337; EG-NEXT:     BFE_INT T9.X, PS, 0.0, 1,6338; EG-NEXT:     MOV T8.Y, PV.X,6339; EG-NEXT:     BFE_INT T7.Z, PV.W, 0.0, 1,6340; EG-NEXT:     LSHR T0.W, T5.X, literal.x,6341; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.y,6342; EG-NEXT:    5(7.006492e-45), 16(2.242078e-44)6343; EG-NEXT:     LSHR T10.X, PS, literal.x,6344; EG-NEXT:     MOV T9.Y, PV.X,6345; EG-NEXT:     BFE_INT T5.Z, PV.W, 0.0, 1,6346; EG-NEXT:     LSHR * T0.W, T5.X, literal.y,6347; EG-NEXT:    2(2.802597e-45), 4(5.605194e-45)6348; EG-NEXT:     BFE_INT T5.X, PV.W, 0.0, 1,6349; EG-NEXT:     MOV T7.Y, T7.X,6350; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.x,6351; EG-NEXT:    32(4.484155e-44), 0(0.000000e+00)6352; EG-NEXT:     LSHR T11.X, PV.W, literal.x,6353; EG-NEXT:     MOV T5.Y, PV.X,6354; EG-NEXT:     ADD_INT T0.Z, KC0[2].Y, literal.y,6355; EG-NEXT:     MOV T7.W, T7.Z,6356; EG-NEXT:     MOV * T9.W, T9.Z,6357; EG-NEXT:    2(2.802597e-45), 48(6.726233e-44)6358; EG-NEXT:     LSHR T12.X, PV.Z, literal.x,6359; EG-NEXT:     MOV T5.W, T5.Z,6360; EG-NEXT:     MOV * T8.W, T8.Z,6361; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)6362;6363; GFX12-LABEL: constant_sextload_v8i1_to_v8i64:6364; GFX12:       ; %bb.0:6365; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x246366; GFX12-NEXT:    v_mov_b32_e32 v16, 06367; GFX12-NEXT:    s_wait_kmcnt 0x06368; GFX12-NEXT:    global_load_u8 v0, v16, s[2:3]6369; GFX12-NEXT:    s_wait_loadcnt 0x06370; GFX12-NEXT:    v_readfirstlane_b32 s3, v06371; GFX12-NEXT:    s_delay_alu instid0(VALU_DEP_1)6372; GFX12-NEXT:    v_mov_b32_e32 v9, s36373; GFX12-NEXT:    s_lshr_b32 s2, s3, 66374; GFX12-NEXT:    s_lshr_b32 s4, s3, 76375; GFX12-NEXT:    s_lshr_b32 s6, s3, 46376; GFX12-NEXT:    s_lshr_b32 s8, s3, 56377; GFX12-NEXT:    s_lshr_b32 s10, s3, 26378; GFX12-NEXT:    s_lshr_b32 s12, s3, 36379; GFX12-NEXT:    s_lshr_b32 s14, s3, 16380; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)6381; GFX12-NEXT:    s_bfe_i64 s[2:3], s[2:3], 0x100006382; GFX12-NEXT:    s_bfe_i64 s[4:5], s[4:5], 0x100006383; GFX12-NEXT:    v_bfe_i32 v12, v9, 0, 16384; GFX12-NEXT:    s_bfe_i64 s[8:9], s[8:9], 0x100006385; GFX12-NEXT:    s_bfe_i64 s[6:7], s[6:7], 0x100006386; GFX12-NEXT:    s_bfe_i64 s[12:13], s[12:13], 0x100006387; GFX12-NEXT:    s_bfe_i64 s[10:11], s[10:11], 0x100006388; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)6389; GFX12-NEXT:    v_dual_mov_b32 v0, s2 :: v_dual_mov_b32 v1, s36390; GFX12-NEXT:    v_dual_mov_b32 v2, s4 :: v_dual_mov_b32 v3, s56391; GFX12-NEXT:    s_bfe_i64 s[14:15], s[14:15], 0x100006392; GFX12-NEXT:    v_dual_mov_b32 v4, s6 :: v_dual_mov_b32 v5, s76393; GFX12-NEXT:    v_dual_mov_b32 v6, s8 :: v_dual_mov_b32 v7, s96394; GFX12-NEXT:    v_dual_mov_b32 v8, s10 :: v_dual_mov_b32 v9, s116395; GFX12-NEXT:    v_dual_mov_b32 v10, s12 :: v_dual_mov_b32 v11, s136396; GFX12-NEXT:    v_dual_mov_b32 v14, s14 :: v_dual_mov_b32 v15, s156397; GFX12-NEXT:    v_ashrrev_i32_e32 v13, 31, v126398; GFX12-NEXT:    s_clause 0x36399; GFX12-NEXT:    global_store_b128 v16, v[0:3], s[0:1] offset:486400; GFX12-NEXT:    global_store_b128 v16, v[4:7], s[0:1] offset:326401; GFX12-NEXT:    global_store_b128 v16, v[8:11], s[0:1] offset:166402; GFX12-NEXT:    global_store_b128 v16, v[12:15], s[0:1]6403; GFX12-NEXT:    s_endpgm6404;6405; GFX1250-LABEL: constant_sextload_v8i1_to_v8i64:6406; GFX1250:       ; %bb.0:6407; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 16408; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x246409; GFX1250-NEXT:    v_mov_b32_e32 v16, 06410; GFX1250-NEXT:    s_wait_kmcnt 0x06411; GFX1250-NEXT:    global_load_u8 v0, v16, s[2:3]6412; GFX1250-NEXT:    s_wait_loadcnt 0x06413; GFX1250-NEXT:    v_readfirstlane_b32 s3, v06414; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_1)6415; GFX1250-NEXT:    v_mov_b32_e32 v10, s36416; GFX1250-NEXT:    s_lshr_b32 s2, s3, 66417; GFX1250-NEXT:    s_lshr_b32 s4, s3, 76418; GFX1250-NEXT:    s_lshr_b32 s6, s3, 46419; GFX1250-NEXT:    s_lshr_b32 s8, s3, 56420; GFX1250-NEXT:    s_lshr_b32 s10, s3, 26421; GFX1250-NEXT:    s_lshr_b32 s12, s3, 36422; GFX1250-NEXT:    s_lshr_b32 s14, s3, 16423; GFX1250-NEXT:    s_bfe_i64 s[2:3], s[2:3], 0x100006424; GFX1250-NEXT:    s_bfe_i64 s[4:5], s[4:5], 0x100006425; GFX1250-NEXT:    v_bfe_i32 v12, v10, 0, 16426; GFX1250-NEXT:    s_bfe_i64 s[8:9], s[8:9], 0x100006427; GFX1250-NEXT:    s_bfe_i64 s[6:7], s[6:7], 0x100006428; GFX1250-NEXT:    s_bfe_i64 s[12:13], s[12:13], 0x100006429; GFX1250-NEXT:    s_bfe_i64 s[10:11], s[10:11], 0x100006430; GFX1250-NEXT:    v_dual_mov_b32 v0, s2 :: v_dual_mov_b32 v1, s36431; GFX1250-NEXT:    v_dual_mov_b32 v2, s4 :: v_dual_mov_b32 v3, s56432; GFX1250-NEXT:    s_bfe_i64 s[14:15], s[14:15], 0x100006433; GFX1250-NEXT:    v_dual_mov_b32 v4, s6 :: v_dual_mov_b32 v5, s76434; GFX1250-NEXT:    v_dual_mov_b32 v6, s8 :: v_dual_mov_b32 v7, s96435; GFX1250-NEXT:    v_dual_mov_b32 v8, s10 :: v_dual_mov_b32 v9, s116436; GFX1250-NEXT:    v_dual_mov_b32 v10, s12 :: v_dual_mov_b32 v11, s136437; GFX1250-NEXT:    v_dual_mov_b32 v14, s14 :: v_dual_ashrrev_i32 v13, 31, v126438; GFX1250-NEXT:    v_mov_b32_e32 v15, s156439; GFX1250-NEXT:    s_clause 0x36440; GFX1250-NEXT:    global_store_b128 v16, v[0:3], s[0:1] offset:486441; GFX1250-NEXT:    global_store_b128 v16, v[4:7], s[0:1] offset:326442; GFX1250-NEXT:    global_store_b128 v16, v[8:11], s[0:1] offset:166443; GFX1250-NEXT:    global_store_b128 v16, v[12:15], s[0:1]6444; GFX1250-NEXT:    s_endpgm6445  %load = load <8 x i1>, ptr addrspace(4) %in6446  %ext = sext <8 x i1> %load to <8 x i64>6447  store <8 x i64> %ext, ptr addrspace(1) %out6448  ret void6449}6450 6451define amdgpu_kernel void @constant_zextload_v16i1_to_v16i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {6452; GFX6-LABEL: constant_zextload_v16i1_to_v16i64:6453; GFX6:       ; %bb.0:6454; GFX6-NEXT:    s_load_dwordx4 s[4:7], s[4:5], 0x96455; GFX6-NEXT:    s_mov_b32 s3, 0xf0006456; GFX6-NEXT:    s_mov_b32 s2, -16457; GFX6-NEXT:    s_mov_b32 s10, s26458; GFX6-NEXT:    s_mov_b32 s11, s36459; GFX6-NEXT:    s_waitcnt lgkmcnt(0)6460; GFX6-NEXT:    s_mov_b32 s8, s66461; GFX6-NEXT:    s_mov_b32 s9, s76462; GFX6-NEXT:    buffer_load_ushort v29, off, s[8:11], 06463; GFX6-NEXT:    v_mov_b32_e32 v1, 06464; GFX6-NEXT:    v_mov_b32_e32 v3, v16465; GFX6-NEXT:    v_mov_b32_e32 v4, v16466; GFX6-NEXT:    v_mov_b32_e32 v6, v16467; GFX6-NEXT:    v_mov_b32_e32 v7, v16468; GFX6-NEXT:    v_mov_b32_e32 v9, v16469; GFX6-NEXT:    v_mov_b32_e32 v10, v16470; GFX6-NEXT:    v_mov_b32_e32 v12, v16471; GFX6-NEXT:    v_mov_b32_e32 v14, v16472; GFX6-NEXT:    v_mov_b32_e32 v16, v16473; GFX6-NEXT:    v_mov_b32_e32 v18, v16474; GFX6-NEXT:    v_mov_b32_e32 v20, v16475; GFX6-NEXT:    v_mov_b32_e32 v22, v16476; GFX6-NEXT:    v_mov_b32_e32 v24, v16477; GFX6-NEXT:    v_mov_b32_e32 v26, v16478; GFX6-NEXT:    v_mov_b32_e32 v28, v16479; GFX6-NEXT:    s_mov_b32 s0, s46480; GFX6-NEXT:    s_mov_b32 s1, s56481; GFX6-NEXT:    s_waitcnt vmcnt(0)6482; GFX6-NEXT:    v_bfe_u32 v2, v29, 11, 16483; GFX6-NEXT:    v_bfe_u32 v0, v29, 10, 16484; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:806485; GFX6-NEXT:    v_bfe_u32 v5, v29, 9, 16486; GFX6-NEXT:    s_waitcnt expcnt(0)6487; GFX6-NEXT:    v_bfe_u32 v3, v29, 8, 16488; GFX6-NEXT:    buffer_store_dwordx4 v[3:6], off, s[0:3], 0 offset:646489; GFX6-NEXT:    v_lshrrev_b32_e32 v8, 15, v296490; GFX6-NEXT:    s_waitcnt expcnt(0)6491; GFX6-NEXT:    v_bfe_u32 v6, v29, 14, 16492; GFX6-NEXT:    buffer_store_dwordx4 v[6:9], off, s[0:3], 0 offset:1126493; GFX6-NEXT:    v_bfe_u32 v27, v29, 5, 16494; GFX6-NEXT:    v_bfe_u32 v23, v29, 7, 16495; GFX6-NEXT:    v_bfe_u32 v19, v29, 1, 16496; GFX6-NEXT:    v_bfe_u32 v15, v29, 3, 16497; GFX6-NEXT:    v_bfe_u32 v11, v29, 13, 16498; GFX6-NEXT:    v_bfe_u32 v25, v29, 4, 16499; GFX6-NEXT:    v_bfe_u32 v21, v29, 6, 16500; GFX6-NEXT:    v_and_b32_e32 v17, 1, v296501; GFX6-NEXT:    v_bfe_u32 v13, v29, 2, 16502; GFX6-NEXT:    s_waitcnt expcnt(0)6503; GFX6-NEXT:    v_bfe_u32 v9, v29, 12, 16504; GFX6-NEXT:    buffer_store_dwordx4 v[9:12], off, s[0:3], 0 offset:966505; GFX6-NEXT:    buffer_store_dwordx4 v[13:16], off, s[0:3], 0 offset:166506; GFX6-NEXT:    buffer_store_dwordx4 v[17:20], off, s[0:3], 06507; GFX6-NEXT:    buffer_store_dwordx4 v[21:24], off, s[0:3], 0 offset:486508; GFX6-NEXT:    buffer_store_dwordx4 v[25:28], off, s[0:3], 0 offset:326509; GFX6-NEXT:    s_endpgm6510;6511; GFX8-LABEL: constant_zextload_v16i1_to_v16i64:6512; GFX8:       ; %bb.0:6513; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x246514; GFX8-NEXT:    v_mov_b32_e32 v3, 06515; GFX8-NEXT:    v_mov_b32_e32 v5, v36516; GFX8-NEXT:    v_mov_b32_e32 v7, v36517; GFX8-NEXT:    v_mov_b32_e32 v9, v36518; GFX8-NEXT:    s_waitcnt lgkmcnt(0)6519; GFX8-NEXT:    v_mov_b32_e32 v0, s26520; GFX8-NEXT:    v_mov_b32_e32 v1, s36521; GFX8-NEXT:    flat_load_ushort v0, v[0:1]6522; GFX8-NEXT:    v_mov_b32_e32 v1, v36523; GFX8-NEXT:    s_waitcnt vmcnt(0)6524; GFX8-NEXT:    v_readfirstlane_b32 s2, v06525; GFX8-NEXT:    v_and_b32_e32 v2, 0xffff, v06526; GFX8-NEXT:    s_bfe_u32 s4, s2, 0x100096527; GFX8-NEXT:    s_bfe_u32 s5, s2, 0x1000d6528; GFX8-NEXT:    s_bfe_u32 s6, s2, 0x100076529; GFX8-NEXT:    s_bfe_u32 s7, s2, 0x100036530; GFX8-NEXT:    s_bfe_u32 s8, s2, 0x100016531; GFX8-NEXT:    s_and_b32 s9, s2, 16532; GFX8-NEXT:    s_bfe_u32 s10, s2, 0x100026533; GFX8-NEXT:    s_bfe_u32 s11, s2, 0x100046534; GFX8-NEXT:    s_bfe_u32 s12, s2, 0x100066535; GFX8-NEXT:    s_bfe_u32 s13, s2, 0x1000c6536; GFX8-NEXT:    s_bfe_u32 s2, s2, 0x1000a6537; GFX8-NEXT:    v_bfe_u32 v4, v2, 11, 16538; GFX8-NEXT:    v_lshrrev_b32_e32 v8, 15, v26539; GFX8-NEXT:    v_bfe_u32 v12, v2, 5, 16540; GFX8-NEXT:    v_bfe_u32 v6, v2, 14, 16541; GFX8-NEXT:    v_bfe_u32 v0, v2, 8, 16542; GFX8-NEXT:    v_mov_b32_e32 v2, s26543; GFX8-NEXT:    s_add_u32 s2, s0, 0x506544; GFX8-NEXT:    s_addc_u32 s3, s1, 06545; GFX8-NEXT:    v_mov_b32_e32 v11, s36546; GFX8-NEXT:    v_mov_b32_e32 v10, s26547; GFX8-NEXT:    s_add_u32 s2, s0, 646548; GFX8-NEXT:    s_addc_u32 s3, s1, 06549; GFX8-NEXT:    flat_store_dwordx4 v[10:11], v[2:5]6550; GFX8-NEXT:    v_mov_b32_e32 v11, s36551; GFX8-NEXT:    v_mov_b32_e32 v2, s46552; GFX8-NEXT:    v_mov_b32_e32 v10, s26553; GFX8-NEXT:    s_add_u32 s2, s0, 0x706554; GFX8-NEXT:    flat_store_dwordx4 v[10:11], v[0:3]6555; GFX8-NEXT:    s_addc_u32 s3, s1, 06556; GFX8-NEXT:    v_mov_b32_e32 v0, s26557; GFX8-NEXT:    v_mov_b32_e32 v1, s36558; GFX8-NEXT:    s_add_u32 s2, s0, 0x606559; GFX8-NEXT:    flat_store_dwordx4 v[0:1], v[6:9]6560; GFX8-NEXT:    s_addc_u32 s3, s1, 06561; GFX8-NEXT:    v_mov_b32_e32 v0, s26562; GFX8-NEXT:    v_mov_b32_e32 v4, s56563; GFX8-NEXT:    v_mov_b32_e32 v2, s136564; GFX8-NEXT:    v_mov_b32_e32 v1, s36565; GFX8-NEXT:    s_add_u32 s2, s0, 486566; GFX8-NEXT:    flat_store_dwordx4 v[0:1], v[2:5]6567; GFX8-NEXT:    s_addc_u32 s3, s1, 06568; GFX8-NEXT:    v_mov_b32_e32 v0, s26569; GFX8-NEXT:    v_mov_b32_e32 v2, s126570; GFX8-NEXT:    v_mov_b32_e32 v4, s66571; GFX8-NEXT:    v_mov_b32_e32 v1, s36572; GFX8-NEXT:    s_add_u32 s2, s0, 326573; GFX8-NEXT:    flat_store_dwordx4 v[0:1], v[2:5]6574; GFX8-NEXT:    s_addc_u32 s3, s1, 06575; GFX8-NEXT:    v_mov_b32_e32 v0, s26576; GFX8-NEXT:    v_mov_b32_e32 v2, s116577; GFX8-NEXT:    v_mov_b32_e32 v4, v126578; GFX8-NEXT:    v_mov_b32_e32 v1, s36579; GFX8-NEXT:    s_add_u32 s2, s0, 166580; GFX8-NEXT:    flat_store_dwordx4 v[0:1], v[2:5]6581; GFX8-NEXT:    s_addc_u32 s3, s1, 06582; GFX8-NEXT:    v_mov_b32_e32 v0, s26583; GFX8-NEXT:    v_mov_b32_e32 v2, s106584; GFX8-NEXT:    v_mov_b32_e32 v4, s76585; GFX8-NEXT:    v_mov_b32_e32 v1, s36586; GFX8-NEXT:    flat_store_dwordx4 v[0:1], v[2:5]6587; GFX8-NEXT:    v_mov_b32_e32 v0, s06588; GFX8-NEXT:    v_mov_b32_e32 v2, s96589; GFX8-NEXT:    v_mov_b32_e32 v4, s86590; GFX8-NEXT:    v_mov_b32_e32 v1, s16591; GFX8-NEXT:    flat_store_dwordx4 v[0:1], v[2:5]6592; GFX8-NEXT:    s_endpgm6593;6594; EG-LABEL: constant_zextload_v16i1_to_v16i64:6595; EG:       ; %bb.0:6596; EG-NEXT:    ALU 0, @14, KC0[CB0:0-32], KC1[]6597; EG-NEXT:    TEX 0 @126598; EG-NEXT:    ALU 62, @15, KC0[CB0:0-32], KC1[]6599; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T8.XYZW, T22.X, 06600; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T9.XYZW, T21.X, 06601; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T10.XYZW, T20.X, 06602; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T11.XYZW, T19.X, 06603; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T12.XYZW, T18.X, 06604; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T13.XYZW, T17.X, 06605; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T14.XYZW, T16.X, 06606; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T7.XYZW, T15.X, 16607; EG-NEXT:    CF_END6608; EG-NEXT:    Fetch clause starting at 12:6609; EG-NEXT:     VTX_READ_16 T7.X, T7.X, 0, #16610; EG-NEXT:    ALU clause starting at 14:6611; EG-NEXT:     MOV * T7.X, KC0[2].Z,6612; EG-NEXT:    ALU clause starting at 15:6613; EG-NEXT:     LSHR * T8.Z, T7.X, literal.x,6614; EG-NEXT:    15(2.101948e-44), 0(0.000000e+00)6615; EG-NEXT:     BFE_UINT T8.X, T7.X, literal.x, 1,6616; EG-NEXT:     MOV T8.Y, 0.0,6617; EG-NEXT:     BFE_UINT * T9.Z, T7.X, literal.y, 1,6618; EG-NEXT:    14(1.961818e-44), 13(1.821688e-44)6619; EG-NEXT:     BFE_UINT T9.X, T7.X, literal.x, 1,6620; EG-NEXT:     MOV T9.Y, 0.0,6621; EG-NEXT:     BFE_UINT * T10.Z, T7.X, literal.y, 1,6622; EG-NEXT:    12(1.681558e-44), 11(1.541428e-44)6623; EG-NEXT:     BFE_UINT T10.X, T7.X, literal.x, 1,6624; EG-NEXT:     MOV T10.Y, 0.0,6625; EG-NEXT:     BFE_UINT * T11.Z, T7.X, literal.y, 1,6626; EG-NEXT:    10(1.401298e-44), 9(1.261169e-44)6627; EG-NEXT:     BFE_UINT T11.X, T7.X, literal.x, 1,6628; EG-NEXT:     MOV T11.Y, 0.0,6629; EG-NEXT:     BFE_UINT * T12.Z, T7.X, literal.y, 1,6630; EG-NEXT:    8(1.121039e-44), 7(9.809089e-45)6631; EG-NEXT:     BFE_UINT T12.X, T7.X, literal.x, 1,6632; EG-NEXT:     MOV T12.Y, 0.0,6633; EG-NEXT:     BFE_UINT * T13.Z, T7.X, literal.y, 1,6634; EG-NEXT:    6(8.407791e-45), 5(7.006492e-45)6635; EG-NEXT:     BFE_UINT T13.X, T7.X, literal.x, 1,6636; EG-NEXT:     MOV T13.Y, 0.0,6637; EG-NEXT:     BFE_UINT * T14.Z, T7.X, literal.y, 1,6638; EG-NEXT:    4(5.605194e-45), 3(4.203895e-45)6639; EG-NEXT:     BFE_UINT T14.X, T7.X, literal.x, 1,6640; EG-NEXT:     MOV T14.Y, 0.0,6641; EG-NEXT:     BFE_UINT T7.Z, T7.X, 1, 1,6642; EG-NEXT:     AND_INT * T7.X, T7.X, 1,6643; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)6644; EG-NEXT:     MOV T7.Y, 0.0,6645; EG-NEXT:     MOV T8.W, 0.0,6646; EG-NEXT:     MOV * T9.W, 0.0,6647; EG-NEXT:     MOV T10.W, 0.0,6648; EG-NEXT:     MOV * T11.W, 0.0,6649; EG-NEXT:     MOV T12.W, 0.0,6650; EG-NEXT:     MOV * T13.W, 0.0,6651; EG-NEXT:     MOV T14.W, 0.0,6652; EG-NEXT:     MOV * T7.W, 0.0,6653; EG-NEXT:     LSHR T15.X, KC0[2].Y, literal.x,6654; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,6655; EG-NEXT:    2(2.802597e-45), 16(2.242078e-44)6656; EG-NEXT:     LSHR T16.X, PV.W, literal.x,6657; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,6658; EG-NEXT:    2(2.802597e-45), 32(4.484155e-44)6659; EG-NEXT:     LSHR T17.X, PV.W, literal.x,6660; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,6661; EG-NEXT:    2(2.802597e-45), 48(6.726233e-44)6662; EG-NEXT:     LSHR T18.X, PV.W, literal.x,6663; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,6664; EG-NEXT:    2(2.802597e-45), 64(8.968310e-44)6665; EG-NEXT:     LSHR T19.X, PV.W, literal.x,6666; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,6667; EG-NEXT:    2(2.802597e-45), 80(1.121039e-43)6668; EG-NEXT:     LSHR T20.X, PV.W, literal.x,6669; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,6670; EG-NEXT:    2(2.802597e-45), 96(1.345247e-43)6671; EG-NEXT:     LSHR T21.X, PV.W, literal.x,6672; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,6673; EG-NEXT:    2(2.802597e-45), 112(1.569454e-43)6674; EG-NEXT:     LSHR * T22.X, PV.W, literal.x,6675; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)6676;6677; GFX12-LABEL: constant_zextload_v16i1_to_v16i64:6678; GFX12:       ; %bb.0:6679; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x246680; GFX12-NEXT:    v_mov_b32_e32 v3, 06681; GFX12-NEXT:    s_wait_kmcnt 0x06682; GFX12-NEXT:    global_load_u16 v0, v3, s[2:3]6683; GFX12-NEXT:    s_wait_loadcnt 0x06684; GFX12-NEXT:    v_readfirstlane_b32 s2, v06685; GFX12-NEXT:    v_dual_mov_b32 v7, v3 :: v_dual_and_b32 v6, 0xffff, v06686; GFX12-NEXT:    v_mov_b32_e32 v9, v36687; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x1000a6688; GFX12-NEXT:    s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(VALU_DEP_3)6689; GFX12-NEXT:    v_dual_mov_b32 v5, v3 :: v_dual_mov_b32 v2, s36690; GFX12-NEXT:    v_bfe_u32 v4, v6, 11, 16691; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100096692; GFX12-NEXT:    v_mov_b32_e32 v1, v36693; GFX12-NEXT:    v_bfe_u32 v0, v6, 8, 16694; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x1000c6695; GFX12-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:806696; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)6697; GFX12-NEXT:    v_mov_b32_e32 v2, s36698; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x1000d6699; GFX12-NEXT:    v_lshrrev_b32_e32 v8, 15, v66700; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)6701; GFX12-NEXT:    v_mov_b32_e32 v4, s36702; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100076703; GFX12-NEXT:    global_store_b128 v3, v[0:3], s[0:1] offset:646704; GFX12-NEXT:    v_mov_b32_e32 v2, s46705; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100066706; GFX12-NEXT:    v_bfe_u32 v0, v6, 5, 16707; GFX12-NEXT:    v_bfe_u32 v6, v6, 14, 16708; GFX12-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:966709; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)6710; GFX12-NEXT:    v_mov_b32_e32 v2, s46711; GFX12-NEXT:    v_mov_b32_e32 v4, s36712; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100046713; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100026714; GFX12-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:486715; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)6716; GFX12-NEXT:    v_mov_b32_e32 v2, s36717; GFX12-NEXT:    v_mov_b32_e32 v4, v06718; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100036719; GFX12-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:326720; GFX12-NEXT:    v_mov_b32_e32 v2, s46721; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)6722; GFX12-NEXT:    v_mov_b32_e32 v4, s36723; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100016724; GFX12-NEXT:    s_and_b32 s2, s2, 16725; GFX12-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:166726; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)6727; GFX12-NEXT:    v_mov_b32_e32 v2, s26728; GFX12-NEXT:    v_mov_b32_e32 v4, s36729; GFX12-NEXT:    s_clause 0x16730; GFX12-NEXT:    global_store_b128 v3, v[6:9], s[0:1] offset:1126731; GFX12-NEXT:    global_store_b128 v3, v[2:5], s[0:1]6732; GFX12-NEXT:    s_endpgm6733;6734; GFX1250-LABEL: constant_zextload_v16i1_to_v16i64:6735; GFX1250:       ; %bb.0:6736; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 16737; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x246738; GFX1250-NEXT:    v_mov_b32_e32 v1, 06739; GFX1250-NEXT:    s_wait_kmcnt 0x06740; GFX1250-NEXT:    global_load_u16 v12, v1, s[2:3]6741; GFX1250-NEXT:    s_wait_loadcnt 0x06742; GFX1250-NEXT:    v_and_b32_e32 v22, 0xffff, v126743; GFX1250-NEXT:    v_dual_mov_b32 v3, v1 :: v_dual_bitop2_b32 v28, 1, v12 bitop3:0x406744; GFX1250-NEXT:    v_mov_b32_e32 v5, v16745; GFX1250-NEXT:    v_bfe_u32 v0, v12, 10, 16746; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_4)6747; GFX1250-NEXT:    v_bfe_u32 v2, v22, 11, 16748; GFX1250-NEXT:    v_dual_mov_b32 v7, v1 :: v_dual_mov_b32 v9, v16749; GFX1250-NEXT:    v_bfe_u32 v6, v12, 9, 16750; GFX1250-NEXT:    v_bfe_u32 v4, v22, 8, 16751; GFX1250-NEXT:    v_dual_mov_b32 v11, v1 :: v_dual_mov_b32 v13, v16752; GFX1250-NEXT:    v_dual_mov_b32 v31, v1 :: v_dual_lshrrev_b32 v10, 15, v226753; GFX1250-NEXT:    v_bfe_u32 v8, v22, 14, 16754; GFX1250-NEXT:    v_dual_mov_b32 v15, v1 :: v_dual_mov_b32 v17, v16755; GFX1250-NEXT:    v_bfe_u32 v14, v12, 13, 16756; GFX1250-NEXT:    v_bfe_u32 v18, v12, 7, 16757; GFX1250-NEXT:    v_bfe_u32 v26, v12, 3, 16758; GFX1250-NEXT:    v_bfe_u32 v30, v12, 1, 16759; GFX1250-NEXT:    v_bfe_u32 v24, v12, 2, 16760; GFX1250-NEXT:    v_bfe_u32 v20, v12, 4, 16761; GFX1250-NEXT:    v_bfe_u32 v16, v12, 6, 16762; GFX1250-NEXT:    v_bfe_u32 v12, v12, 12, 16763; GFX1250-NEXT:    v_dual_mov_b32 v19, v1 :: v_dual_mov_b32 v21, v16764; GFX1250-NEXT:    v_dual_mov_b32 v23, v1 :: v_dual_mov_b32 v25, v16765; GFX1250-NEXT:    v_dual_mov_b32 v27, v1 :: v_dual_mov_b32 v29, v16766; GFX1250-NEXT:    v_bfe_u32 v22, v22, 5, 16767; GFX1250-NEXT:    s_clause 0x76768; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:806769; GFX1250-NEXT:    global_store_b128 v1, v[4:7], s[0:1] offset:646770; GFX1250-NEXT:    global_store_b128 v1, v[8:11], s[0:1] offset:1126771; GFX1250-NEXT:    global_store_b128 v1, v[12:15], s[0:1] offset:966772; GFX1250-NEXT:    global_store_b128 v1, v[16:19], s[0:1] offset:486773; GFX1250-NEXT:    global_store_b128 v1, v[20:23], s[0:1] offset:326774; GFX1250-NEXT:    global_store_b128 v1, v[24:27], s[0:1] offset:166775; GFX1250-NEXT:    global_store_b128 v1, v[28:31], s[0:1]6776; GFX1250-NEXT:    s_endpgm6777  %load = load <16 x i1>, ptr addrspace(4) %in6778  %ext = zext <16 x i1> %load to <16 x i64>6779  store <16 x i64> %ext, ptr addrspace(1) %out6780  ret void6781}6782 6783define amdgpu_kernel void @constant_sextload_v16i1_to_v16i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {6784; GFX6-LABEL: constant_sextload_v16i1_to_v16i64:6785; GFX6:       ; %bb.0:6786; GFX6-NEXT:    s_load_dwordx4 s[4:7], s[4:5], 0x96787; GFX6-NEXT:    s_mov_b32 s3, 0xf0006788; GFX6-NEXT:    s_mov_b32 s2, -16789; GFX6-NEXT:    s_mov_b32 s10, s26790; GFX6-NEXT:    s_mov_b32 s11, s36791; GFX6-NEXT:    s_waitcnt lgkmcnt(0)6792; GFX6-NEXT:    s_mov_b32 s8, s66793; GFX6-NEXT:    s_mov_b32 s9, s76794; GFX6-NEXT:    buffer_load_ushort v1, off, s[8:11], 06795; GFX6-NEXT:    s_mov_b32 s0, s46796; GFX6-NEXT:    s_mov_b32 s1, s56797; GFX6-NEXT:    s_waitcnt vmcnt(0)6798; GFX6-NEXT:    v_lshrrev_b32_e32 v3, 14, v16799; GFX6-NEXT:    v_lshrrev_b32_e32 v4, 15, v16800; GFX6-NEXT:    v_lshrrev_b32_e32 v7, 12, v16801; GFX6-NEXT:    v_lshrrev_b32_e32 v8, 13, v16802; GFX6-NEXT:    v_lshrrev_b32_e32 v11, 10, v16803; GFX6-NEXT:    v_lshrrev_b32_e32 v12, 11, v16804; GFX6-NEXT:    v_lshrrev_b32_e32 v14, 8, v16805; GFX6-NEXT:    v_lshrrev_b32_e32 v16, 9, v16806; GFX6-NEXT:    v_lshrrev_b32_e32 v15, 6, v16807; GFX6-NEXT:    v_lshrrev_b32_e32 v9, 4, v16808; GFX6-NEXT:    v_lshrrev_b32_e32 v10, 5, v16809; GFX6-NEXT:    v_lshrrev_b32_e32 v0, 2, v16810; GFX6-NEXT:    v_lshrrev_b32_e32 v2, 3, v16811; GFX6-NEXT:    v_lshrrev_b32_e32 v13, 1, v16812; GFX6-NEXT:    v_bfe_i32 v2, v2, 0, 16813; GFX6-NEXT:    v_bfe_i32 v0, v0, 0, 16814; GFX6-NEXT:    v_bfe_i32 v5, v4, 0, 16815; GFX6-NEXT:    v_bfe_i32 v3, v3, 0, 16816; GFX6-NEXT:    v_ashrrev_i32_e32 v6, 31, v56817; GFX6-NEXT:    v_ashrrev_i32_e32 v4, 31, v36818; GFX6-NEXT:    buffer_store_dwordx4 v[3:6], off, s[0:3], 0 offset:1126819; GFX6-NEXT:    s_waitcnt expcnt(0)6820; GFX6-NEXT:    v_bfe_i32 v6, v10, 0, 16821; GFX6-NEXT:    v_bfe_i32 v4, v9, 0, 16822; GFX6-NEXT:    v_bfe_i32 v9, v8, 0, 16823; GFX6-NEXT:    v_bfe_i32 v7, v7, 0, 16824; GFX6-NEXT:    v_ashrrev_i32_e32 v10, 31, v96825; GFX6-NEXT:    v_ashrrev_i32_e32 v8, 31, v76826; GFX6-NEXT:    buffer_store_dwordx4 v[7:10], off, s[0:3], 0 offset:966827; GFX6-NEXT:    s_waitcnt expcnt(0)6828; GFX6-NEXT:    v_bfe_i32 v9, v12, 0, 16829; GFX6-NEXT:    v_bfe_i32 v7, v11, 0, 16830; GFX6-NEXT:    v_bfe_i32 v13, v13, 0, 16831; GFX6-NEXT:    v_bfe_i32 v11, v1, 0, 16832; GFX6-NEXT:    v_lshrrev_b32_e32 v1, 7, v16833; GFX6-NEXT:    v_ashrrev_i32_e32 v10, 31, v96834; GFX6-NEXT:    v_ashrrev_i32_e32 v8, 31, v76835; GFX6-NEXT:    buffer_store_dwordx4 v[7:10], off, s[0:3], 0 offset:806836; GFX6-NEXT:    v_bfe_i32 v17, v1, 0, 16837; GFX6-NEXT:    v_bfe_i32 v15, v15, 0, 16838; GFX6-NEXT:    v_bfe_i32 v21, v16, 0, 16839; GFX6-NEXT:    v_bfe_i32 v19, v14, 0, 16840; GFX6-NEXT:    v_ashrrev_i32_e32 v12, 31, v116841; GFX6-NEXT:    v_ashrrev_i32_e32 v14, 31, v136842; GFX6-NEXT:    v_ashrrev_i32_e32 v3, 31, v26843; GFX6-NEXT:    v_ashrrev_i32_e32 v1, 31, v06844; GFX6-NEXT:    s_waitcnt expcnt(0)6845; GFX6-NEXT:    v_ashrrev_i32_e32 v7, 31, v66846; GFX6-NEXT:    v_ashrrev_i32_e32 v5, 31, v46847; GFX6-NEXT:    v_ashrrev_i32_e32 v18, 31, v176848; GFX6-NEXT:    v_ashrrev_i32_e32 v16, 31, v156849; GFX6-NEXT:    v_ashrrev_i32_e32 v22, 31, v216850; GFX6-NEXT:    v_ashrrev_i32_e32 v20, 31, v196851; GFX6-NEXT:    buffer_store_dwordx4 v[19:22], off, s[0:3], 0 offset:646852; GFX6-NEXT:    buffer_store_dwordx4 v[15:18], off, s[0:3], 0 offset:486853; GFX6-NEXT:    buffer_store_dwordx4 v[4:7], off, s[0:3], 0 offset:326854; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:166855; GFX6-NEXT:    buffer_store_dwordx4 v[11:14], off, s[0:3], 06856; GFX6-NEXT:    s_endpgm6857;6858; GFX8-LABEL: constant_sextload_v16i1_to_v16i64:6859; GFX8:       ; %bb.0:6860; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x246861; GFX8-NEXT:    s_waitcnt lgkmcnt(0)6862; GFX8-NEXT:    v_mov_b32_e32 v0, s26863; GFX8-NEXT:    v_mov_b32_e32 v1, s36864; GFX8-NEXT:    flat_load_ushort v0, v[0:1]6865; GFX8-NEXT:    v_mov_b32_e32 v19, s16866; GFX8-NEXT:    v_mov_b32_e32 v18, s06867; GFX8-NEXT:    s_waitcnt vmcnt(0)6868; GFX8-NEXT:    v_readfirstlane_b32 s3, v06869; GFX8-NEXT:    s_lshr_b32 s2, s3, 146870; GFX8-NEXT:    s_lshr_b32 s4, s3, 156871; GFX8-NEXT:    s_lshr_b32 s6, s3, 126872; GFX8-NEXT:    s_lshr_b32 s8, s3, 136873; GFX8-NEXT:    s_lshr_b32 s10, s3, 106874; GFX8-NEXT:    s_lshr_b32 s12, s3, 116875; GFX8-NEXT:    s_lshr_b32 s14, s3, 86876; GFX8-NEXT:    s_lshr_b32 s16, s3, 96877; GFX8-NEXT:    s_lshr_b32 s18, s3, 66878; GFX8-NEXT:    s_lshr_b32 s20, s3, 76879; GFX8-NEXT:    s_lshr_b32 s22, s3, 46880; GFX8-NEXT:    s_lshr_b32 s24, s3, 56881; GFX8-NEXT:    s_lshr_b32 s26, s3, 26882; GFX8-NEXT:    s_lshr_b32 s28, s3, 36883; GFX8-NEXT:    s_lshr_b32 s30, s3, 16884; GFX8-NEXT:    v_mov_b32_e32 v0, s36885; GFX8-NEXT:    s_bfe_i64 s[30:31], s[30:31], 0x100006886; GFX8-NEXT:    s_bfe_i64 s[28:29], s[28:29], 0x100006887; GFX8-NEXT:    s_bfe_i64 s[26:27], s[26:27], 0x100006888; GFX8-NEXT:    s_bfe_i64 s[24:25], s[24:25], 0x100006889; GFX8-NEXT:    s_bfe_i64 s[22:23], s[22:23], 0x100006890; GFX8-NEXT:    s_bfe_i64 s[20:21], s[20:21], 0x100006891; GFX8-NEXT:    s_bfe_i64 s[18:19], s[18:19], 0x100006892; GFX8-NEXT:    s_bfe_i64 s[16:17], s[16:17], 0x100006893; GFX8-NEXT:    s_bfe_i64 s[14:15], s[14:15], 0x100006894; GFX8-NEXT:    s_bfe_i64 s[12:13], s[12:13], 0x100006895; GFX8-NEXT:    s_bfe_i64 s[10:11], s[10:11], 0x100006896; GFX8-NEXT:    s_bfe_i64 s[8:9], s[8:9], 0x100006897; GFX8-NEXT:    s_bfe_i64 s[6:7], s[6:7], 0x100006898; GFX8-NEXT:    s_bfe_i64 s[4:5], s[4:5], 0x100006899; GFX8-NEXT:    s_bfe_i64 s[2:3], s[2:3], 0x100006900; GFX8-NEXT:    v_mov_b32_e32 v2, s26901; GFX8-NEXT:    s_add_u32 s2, s0, 0x706902; GFX8-NEXT:    v_mov_b32_e32 v3, s36903; GFX8-NEXT:    s_addc_u32 s3, s1, 06904; GFX8-NEXT:    v_mov_b32_e32 v15, s36905; GFX8-NEXT:    v_mov_b32_e32 v14, s26906; GFX8-NEXT:    s_add_u32 s2, s0, 0x606907; GFX8-NEXT:    v_mov_b32_e32 v4, s46908; GFX8-NEXT:    v_mov_b32_e32 v5, s56909; GFX8-NEXT:    s_addc_u32 s3, s1, 06910; GFX8-NEXT:    flat_store_dwordx4 v[14:15], v[2:5]6911; GFX8-NEXT:    v_mov_b32_e32 v15, s36912; GFX8-NEXT:    v_mov_b32_e32 v14, s26913; GFX8-NEXT:    s_add_u32 s2, s0, 0x506914; GFX8-NEXT:    v_mov_b32_e32 v6, s66915; GFX8-NEXT:    v_mov_b32_e32 v7, s76916; GFX8-NEXT:    v_mov_b32_e32 v8, s86917; GFX8-NEXT:    v_mov_b32_e32 v9, s96918; GFX8-NEXT:    s_addc_u32 s3, s1, 06919; GFX8-NEXT:    flat_store_dwordx4 v[14:15], v[6:9]6920; GFX8-NEXT:    v_mov_b32_e32 v15, s36921; GFX8-NEXT:    v_mov_b32_e32 v14, s26922; GFX8-NEXT:    s_add_u32 s2, s0, 646923; GFX8-NEXT:    v_mov_b32_e32 v10, s106924; GFX8-NEXT:    v_mov_b32_e32 v11, s116925; GFX8-NEXT:    v_mov_b32_e32 v12, s126926; GFX8-NEXT:    v_mov_b32_e32 v13, s136927; GFX8-NEXT:    s_addc_u32 s3, s1, 06928; GFX8-NEXT:    flat_store_dwordx4 v[14:15], v[10:13]6929; GFX8-NEXT:    v_mov_b32_e32 v15, s36930; GFX8-NEXT:    v_mov_b32_e32 v14, s26931; GFX8-NEXT:    s_add_u32 s2, s0, 486932; GFX8-NEXT:    v_mov_b32_e32 v2, s146933; GFX8-NEXT:    v_mov_b32_e32 v3, s156934; GFX8-NEXT:    v_mov_b32_e32 v4, s166935; GFX8-NEXT:    v_mov_b32_e32 v5, s176936; GFX8-NEXT:    s_addc_u32 s3, s1, 06937; GFX8-NEXT:    flat_store_dwordx4 v[14:15], v[2:5]6938; GFX8-NEXT:    v_mov_b32_e32 v6, s186939; GFX8-NEXT:    v_mov_b32_e32 v5, s36940; GFX8-NEXT:    v_mov_b32_e32 v4, s26941; GFX8-NEXT:    s_add_u32 s2, s0, 326942; GFX8-NEXT:    v_mov_b32_e32 v7, s196943; GFX8-NEXT:    v_mov_b32_e32 v8, s206944; GFX8-NEXT:    v_mov_b32_e32 v9, s216945; GFX8-NEXT:    s_addc_u32 s3, s1, 06946; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[6:9]6947; GFX8-NEXT:    v_mov_b32_e32 v5, s36948; GFX8-NEXT:    s_add_u32 s0, s0, 166949; GFX8-NEXT:    v_mov_b32_e32 v10, s226950; GFX8-NEXT:    v_mov_b32_e32 v11, s236951; GFX8-NEXT:    v_mov_b32_e32 v12, s246952; GFX8-NEXT:    v_mov_b32_e32 v13, s256953; GFX8-NEXT:    v_mov_b32_e32 v4, s26954; GFX8-NEXT:    s_addc_u32 s1, s1, 06955; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[10:13]6956; GFX8-NEXT:    v_mov_b32_e32 v5, s16957; GFX8-NEXT:    v_bfe_i32 v0, v0, 0, 16958; GFX8-NEXT:    v_mov_b32_e32 v14, s266959; GFX8-NEXT:    v_mov_b32_e32 v15, s276960; GFX8-NEXT:    v_mov_b32_e32 v16, s286961; GFX8-NEXT:    v_mov_b32_e32 v17, s296962; GFX8-NEXT:    v_mov_b32_e32 v4, s06963; GFX8-NEXT:    v_ashrrev_i32_e32 v1, 31, v06964; GFX8-NEXT:    v_mov_b32_e32 v2, s306965; GFX8-NEXT:    v_mov_b32_e32 v3, s316966; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[14:17]6967; GFX8-NEXT:    flat_store_dwordx4 v[18:19], v[0:3]6968; GFX8-NEXT:    s_endpgm6969;6970; EG-LABEL: constant_sextload_v16i1_to_v16i64:6971; EG:       ; %bb.0:6972; EG-NEXT:    ALU 0, @14, KC0[CB0:0-32], KC1[]6973; EG-NEXT:    TEX 0 @126974; EG-NEXT:    ALU 78, @15, KC0[CB0:0-32], KC1[]6975; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T14.XYZW, T22.X, 06976; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T20.XYZW, T21.X, 06977; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T15.XYZW, T18.X, 06978; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T7.XYZW, T12.X, 06979; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T16.XYZW, T11.X, 06980; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T19.XYZW, T10.X, 06981; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T17.XYZW, T9.X, 06982; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T13.XYZW, T8.X, 16983; EG-NEXT:    CF_END6984; EG-NEXT:    Fetch clause starting at 12:6985; EG-NEXT:     VTX_READ_16 T7.X, T7.X, 0, #16986; EG-NEXT:    ALU clause starting at 14:6987; EG-NEXT:     MOV * T7.X, KC0[2].Z,6988; EG-NEXT:    ALU clause starting at 15:6989; EG-NEXT:     LSHR T8.X, KC0[2].Y, literal.x,6990; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,6991; EG-NEXT:    2(2.802597e-45), 16(2.242078e-44)6992; EG-NEXT:     LSHR T9.X, PV.W, literal.x,6993; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,6994; EG-NEXT:    2(2.802597e-45), 32(4.484155e-44)6995; EG-NEXT:     LSHR T10.X, PV.W, literal.x,6996; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,6997; EG-NEXT:    2(2.802597e-45), 48(6.726233e-44)6998; EG-NEXT:     LSHR T11.X, PV.W, literal.x,6999; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,7000; EG-NEXT:    2(2.802597e-45), 64(8.968310e-44)7001; EG-NEXT:     LSHR T12.X, PV.W, literal.x,7002; EG-NEXT:     LSHR * T0.W, T7.X, literal.y,7003; EG-NEXT:    2(2.802597e-45), 15(2.101948e-44)7004; EG-NEXT:     BFE_INT T13.X, T7.X, 0.0, 1,7005; EG-NEXT:     BFE_INT T14.Z, PV.W, 0.0, 1,7006; EG-NEXT:     LSHR T0.W, T7.X, literal.x,7007; EG-NEXT:     LSHR * T1.W, T7.X, literal.y,7008; EG-NEXT:    11(1.541428e-44), 14(1.961818e-44)7009; EG-NEXT:     BFE_INT T14.X, PS, 0.0, 1,7010; EG-NEXT:     LSHR T0.Y, T7.X, literal.x,7011; EG-NEXT:     BFE_INT T15.Z, PV.W, 0.0, 1,7012; EG-NEXT:     LSHR T0.W, T7.X, literal.y,7013; EG-NEXT:     LSHR * T1.W, T7.X, literal.z,7014; EG-NEXT:    12(1.681558e-44), 7(9.809089e-45)7015; EG-NEXT:    10(1.401298e-44), 0(0.000000e+00)7016; EG-NEXT:     BFE_INT T15.X, PS, 0.0, 1,7017; EG-NEXT:     MOV T14.Y, PV.X,7018; EG-NEXT:     BFE_INT T16.Z, PV.W, 0.0, 1,7019; EG-NEXT:     LSHR T0.W, T7.X, literal.x,7020; EG-NEXT:     LSHR * T1.W, T7.X, literal.y,7021; EG-NEXT:    3(4.203895e-45), 6(8.407791e-45)7022; EG-NEXT:     BFE_INT T16.X, PS, 0.0, 1,7023; EG-NEXT:     MOV T15.Y, PV.X,7024; EG-NEXT:     BFE_INT T17.Z, PV.W, 0.0, 1,7025; EG-NEXT:     LSHR T0.W, T7.X, 1,7026; EG-NEXT:     LSHR * T1.W, T7.X, literal.x,7027; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)7028; EG-NEXT:     BFE_INT T17.X, PS, 0.0, 1,7029; EG-NEXT:     MOV T16.Y, PV.X,7030; EG-NEXT:     BFE_INT T13.Z, PV.W, 0.0, 1,7031; EG-NEXT:     LSHR T0.W, T7.X, literal.x,7032; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.y,7033; EG-NEXT:    5(7.006492e-45), 80(1.121039e-43)7034; EG-NEXT:     LSHR T18.X, PS, literal.x,7035; EG-NEXT:     MOV T17.Y, PV.X,7036; EG-NEXT:     BFE_INT T19.Z, PV.W, 0.0, 1,7037; EG-NEXT:     LSHR T0.W, T7.X, literal.y,7038; EG-NEXT:     LSHR * T1.W, T7.X, literal.z,7039; EG-NEXT:    2(2.802597e-45), 9(1.261169e-44)7040; EG-NEXT:    4(5.605194e-45), 0(0.000000e+00)7041; EG-NEXT:     BFE_INT T19.X, PS, 0.0, 1,7042; EG-NEXT:     MOV T13.Y, T13.X,7043; EG-NEXT:     BFE_INT T7.Z, PV.W, 0.0, 1,7044; EG-NEXT:     LSHR T0.W, T7.X, literal.x, BS:VEC_120/SCL_2127045; EG-NEXT:     LSHR * T1.W, T7.X, literal.y,7046; EG-NEXT:    13(1.821688e-44), 8(1.121039e-44)7047; EG-NEXT:     BFE_INT T7.X, PS, 0.0, 1,7048; EG-NEXT:     MOV T19.Y, PV.X,7049; EG-NEXT:     BFE_INT T20.Z, PV.W, 0.0, 1,7050; EG-NEXT:     MOV T13.W, T13.Z,7051; EG-NEXT:     MOV * T17.W, T17.Z,7052; EG-NEXT:     BFE_INT T20.X, T0.Y, 0.0, 1,7053; EG-NEXT:     MOV T7.Y, PV.X,7054; EG-NEXT:     ADD_INT T0.Z, KC0[2].Y, literal.x,7055; EG-NEXT:     MOV T19.W, T19.Z,7056; EG-NEXT:     MOV * T16.W, T16.Z,7057; EG-NEXT:    96(1.345247e-43), 0(0.000000e+00)7058; EG-NEXT:     LSHR T21.X, PV.Z, literal.x,7059; EG-NEXT:     MOV T20.Y, PV.X,7060; EG-NEXT:     ADD_INT T0.Z, KC0[2].Y, literal.y,7061; EG-NEXT:     MOV T7.W, T7.Z,7062; EG-NEXT:     MOV * T15.W, T15.Z,7063; EG-NEXT:    2(2.802597e-45), 112(1.569454e-43)7064; EG-NEXT:     LSHR T22.X, PV.Z, literal.x,7065; EG-NEXT:     MOV T20.W, T20.Z,7066; EG-NEXT:     MOV * T14.W, T14.Z,7067; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)7068;7069; GFX12-LABEL: constant_sextload_v16i1_to_v16i64:7070; GFX12:       ; %bb.0:7071; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x247072; GFX12-NEXT:    v_mov_b32_e32 v32, 07073; GFX12-NEXT:    s_wait_kmcnt 0x07074; GFX12-NEXT:    global_load_u16 v0, v32, s[2:3]7075; GFX12-NEXT:    s_wait_loadcnt 0x07076; GFX12-NEXT:    v_readfirstlane_b32 s3, v07077; GFX12-NEXT:    s_lshr_b32 s4, s3, 157078; GFX12-NEXT:    s_lshr_b32 s2, s3, 147079; GFX12-NEXT:    s_bfe_i64 s[4:5], s[4:5], 0x100007080; GFX12-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)7081; GFX12-NEXT:    v_dual_mov_b32 v28, s3 :: v_dual_mov_b32 v3, s57082; GFX12-NEXT:    s_lshr_b32 s6, s3, 127083; GFX12-NEXT:    s_lshr_b32 s8, s3, 137084; GFX12-NEXT:    s_lshr_b32 s10, s3, 107085; GFX12-NEXT:    s_lshr_b32 s12, s3, 117086; GFX12-NEXT:    s_lshr_b32 s14, s3, 87087; GFX12-NEXT:    s_lshr_b32 s16, s3, 97088; GFX12-NEXT:    s_lshr_b32 s18, s3, 67089; GFX12-NEXT:    s_lshr_b32 s20, s3, 77090; GFX12-NEXT:    s_lshr_b32 s22, s3, 47091; GFX12-NEXT:    s_lshr_b32 s24, s3, 57092; GFX12-NEXT:    s_lshr_b32 s26, s3, 27093; GFX12-NEXT:    s_lshr_b32 s28, s3, 37094; GFX12-NEXT:    s_lshr_b32 s30, s3, 17095; GFX12-NEXT:    s_bfe_i64 s[12:13], s[12:13], 0x100007096; GFX12-NEXT:    s_bfe_i64 s[10:11], s[10:11], 0x100007097; GFX12-NEXT:    s_bfe_i64 s[8:9], s[8:9], 0x100007098; GFX12-NEXT:    s_bfe_i64 s[6:7], s[6:7], 0x100007099; GFX12-NEXT:    s_bfe_i64 s[2:3], s[2:3], 0x100007100; GFX12-NEXT:    s_bfe_i64 s[16:17], s[16:17], 0x100007101; GFX12-NEXT:    s_bfe_i64 s[14:15], s[14:15], 0x100007102; GFX12-NEXT:    s_bfe_i64 s[20:21], s[20:21], 0x100007103; GFX12-NEXT:    s_bfe_i64 s[18:19], s[18:19], 0x100007104; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)7105; GFX12-NEXT:    v_dual_mov_b32 v0, s2 :: v_dual_mov_b32 v5, s77106; GFX12-NEXT:    v_dual_mov_b32 v1, s3 :: v_dual_mov_b32 v2, s47107; GFX12-NEXT:    v_dual_mov_b32 v7, s9 :: v_dual_mov_b32 v4, s67108; GFX12-NEXT:    v_dual_mov_b32 v9, s11 :: v_dual_mov_b32 v6, s87109; GFX12-NEXT:    v_dual_mov_b32 v11, s13 :: v_dual_mov_b32 v8, s107110; GFX12-NEXT:    v_dual_mov_b32 v13, s15 :: v_dual_mov_b32 v10, s127111; GFX12-NEXT:    v_mov_b32_e32 v15, s177112; GFX12-NEXT:    v_bfe_i32 v28, v28, 0, 17113; GFX12-NEXT:    s_bfe_i64 s[24:25], s[24:25], 0x100007114; GFX12-NEXT:    s_bfe_i64 s[22:23], s[22:23], 0x100007115; GFX12-NEXT:    v_dual_mov_b32 v12, s14 :: v_dual_mov_b32 v17, s197116; GFX12-NEXT:    v_dual_mov_b32 v14, s16 :: v_dual_mov_b32 v19, s217117; GFX12-NEXT:    s_bfe_i64 s[28:29], s[28:29], 0x100007118; GFX12-NEXT:    s_bfe_i64 s[26:27], s[26:27], 0x100007119; GFX12-NEXT:    v_dual_mov_b32 v16, s18 :: v_dual_mov_b32 v21, s237120; GFX12-NEXT:    v_dual_mov_b32 v18, s20 :: v_dual_mov_b32 v23, s257121; GFX12-NEXT:    s_bfe_i64 s[30:31], s[30:31], 0x100007122; GFX12-NEXT:    v_dual_mov_b32 v20, s22 :: v_dual_mov_b32 v25, s277123; GFX12-NEXT:    v_dual_mov_b32 v22, s24 :: v_dual_mov_b32 v27, s297124; GFX12-NEXT:    v_dual_mov_b32 v24, s26 :: v_dual_mov_b32 v31, s317125; GFX12-NEXT:    v_mov_b32_e32 v26, s287126; GFX12-NEXT:    v_mov_b32_e32 v30, s307127; GFX12-NEXT:    s_clause 0x17128; GFX12-NEXT:    global_store_b128 v32, v[0:3], s[0:1] offset:1127129; GFX12-NEXT:    global_store_b128 v32, v[4:7], s[0:1] offset:967130; GFX12-NEXT:    v_ashrrev_i32_e32 v29, 31, v287131; GFX12-NEXT:    s_clause 0x57132; GFX12-NEXT:    global_store_b128 v32, v[8:11], s[0:1] offset:807133; GFX12-NEXT:    global_store_b128 v32, v[12:15], s[0:1] offset:647134; GFX12-NEXT:    global_store_b128 v32, v[16:19], s[0:1] offset:487135; GFX12-NEXT:    global_store_b128 v32, v[20:23], s[0:1] offset:327136; GFX12-NEXT:    global_store_b128 v32, v[24:27], s[0:1] offset:167137; GFX12-NEXT:    global_store_b128 v32, v[28:31], s[0:1]7138; GFX12-NEXT:    s_endpgm7139;7140; GFX1250-LABEL: constant_sextload_v16i1_to_v16i64:7141; GFX1250:       ; %bb.0:7142; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 17143; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x247144; GFX1250-NEXT:    v_mov_b32_e32 v32, 07145; GFX1250-NEXT:    s_wait_kmcnt 0x07146; GFX1250-NEXT:    global_load_u16 v0, v32, s[2:3]7147; GFX1250-NEXT:    s_wait_loadcnt 0x07148; GFX1250-NEXT:    v_readfirstlane_b32 s3, v07149; GFX1250-NEXT:    s_delay_alu instid0(VALU_DEP_1)7150; GFX1250-NEXT:    v_mov_b32_e32 v28, s37151; GFX1250-NEXT:    s_lshr_b32 s2, s3, 147152; GFX1250-NEXT:    s_lshr_b32 s4, s3, 157153; GFX1250-NEXT:    s_lshr_b32 s10, s3, 107154; GFX1250-NEXT:    s_lshr_b32 s12, s3, 117155; GFX1250-NEXT:    s_lshr_b32 s6, s3, 127156; GFX1250-NEXT:    s_lshr_b32 s8, s3, 137157; GFX1250-NEXT:    s_lshr_b32 s14, s3, 87158; GFX1250-NEXT:    s_lshr_b32 s16, s3, 97159; GFX1250-NEXT:    s_lshr_b32 s18, s3, 67160; GFX1250-NEXT:    s_lshr_b32 s20, s3, 77161; GFX1250-NEXT:    s_lshr_b32 s22, s3, 47162; GFX1250-NEXT:    s_lshr_b32 s24, s3, 57163; GFX1250-NEXT:    s_lshr_b32 s26, s3, 27164; GFX1250-NEXT:    s_lshr_b32 s28, s3, 37165; GFX1250-NEXT:    s_lshr_b32 s30, s3, 17166; GFX1250-NEXT:    s_bfe_i64 s[12:13], s[12:13], 0x100007167; GFX1250-NEXT:    s_bfe_i64 s[10:11], s[10:11], 0x100007168; GFX1250-NEXT:    s_bfe_i64 s[2:3], s[2:3], 0x100007169; GFX1250-NEXT:    s_bfe_i64 s[4:5], s[4:5], 0x100007170; GFX1250-NEXT:    s_bfe_i64 s[16:17], s[16:17], 0x100007171; GFX1250-NEXT:    s_bfe_i64 s[14:15], s[14:15], 0x100007172; GFX1250-NEXT:    s_bfe_i64 s[8:9], s[8:9], 0x100007173; GFX1250-NEXT:    s_bfe_i64 s[6:7], s[6:7], 0x100007174; GFX1250-NEXT:    s_bfe_i64 s[20:21], s[20:21], 0x100007175; GFX1250-NEXT:    s_bfe_i64 s[18:19], s[18:19], 0x100007176; GFX1250-NEXT:    v_dual_mov_b32 v0, s2 :: v_dual_mov_b32 v1, s37177; GFX1250-NEXT:    v_dual_mov_b32 v2, s4 :: v_dual_mov_b32 v3, s57178; GFX1250-NEXT:    v_dual_mov_b32 v8, s10 :: v_dual_mov_b32 v9, s117179; GFX1250-NEXT:    v_dual_mov_b32 v10, s12 :: v_dual_mov_b32 v11, s137180; GFX1250-NEXT:    v_bfe_i32 v28, v28, 0, 17181; GFX1250-NEXT:    s_bfe_i64 s[24:25], s[24:25], 0x100007182; GFX1250-NEXT:    s_bfe_i64 s[22:23], s[22:23], 0x100007183; GFX1250-NEXT:    v_dual_mov_b32 v4, s6 :: v_dual_mov_b32 v5, s77184; GFX1250-NEXT:    v_dual_mov_b32 v6, s8 :: v_dual_mov_b32 v7, s97185; GFX1250-NEXT:    v_dual_mov_b32 v12, s14 :: v_dual_mov_b32 v13, s157186; GFX1250-NEXT:    v_dual_mov_b32 v14, s16 :: v_dual_mov_b32 v15, s177187; GFX1250-NEXT:    s_bfe_i64 s[28:29], s[28:29], 0x100007188; GFX1250-NEXT:    s_bfe_i64 s[26:27], s[26:27], 0x100007189; GFX1250-NEXT:    v_dual_mov_b32 v16, s18 :: v_dual_mov_b32 v17, s197190; GFX1250-NEXT:    v_dual_mov_b32 v18, s20 :: v_dual_mov_b32 v19, s217191; GFX1250-NEXT:    s_bfe_i64 s[30:31], s[30:31], 0x100007192; GFX1250-NEXT:    v_dual_mov_b32 v20, s22 :: v_dual_mov_b32 v21, s237193; GFX1250-NEXT:    v_dual_mov_b32 v22, s24 :: v_dual_mov_b32 v23, s257194; GFX1250-NEXT:    v_dual_mov_b32 v24, s26 :: v_dual_mov_b32 v25, s277195; GFX1250-NEXT:    v_dual_mov_b32 v26, s28 :: v_dual_mov_b32 v27, s297196; GFX1250-NEXT:    v_dual_mov_b32 v30, s30 :: v_dual_mov_b32 v31, s317197; GFX1250-NEXT:    s_clause 0x17198; GFX1250-NEXT:    global_store_b128 v32, v[0:3], s[0:1] offset:1127199; GFX1250-NEXT:    global_store_b128 v32, v[4:7], s[0:1] offset:967200; GFX1250-NEXT:    v_ashrrev_i32_e32 v29, 31, v287201; GFX1250-NEXT:    s_clause 0x57202; GFX1250-NEXT:    global_store_b128 v32, v[8:11], s[0:1] offset:807203; GFX1250-NEXT:    global_store_b128 v32, v[12:15], s[0:1] offset:647204; GFX1250-NEXT:    global_store_b128 v32, v[16:19], s[0:1] offset:487205; GFX1250-NEXT:    global_store_b128 v32, v[20:23], s[0:1] offset:327206; GFX1250-NEXT:    global_store_b128 v32, v[24:27], s[0:1] offset:167207; GFX1250-NEXT:    global_store_b128 v32, v[28:31], s[0:1]7208; GFX1250-NEXT:    s_endpgm7209  %load = load <16 x i1>, ptr addrspace(4) %in7210  %ext = sext <16 x i1> %load to <16 x i64>7211  store <16 x i64> %ext, ptr addrspace(1) %out7212  ret void7213}7214 7215define amdgpu_kernel void @constant_zextload_v32i1_to_v32i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {7216; GFX6-LABEL: constant_zextload_v32i1_to_v32i64:7217; GFX6:       ; %bb.0:7218; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x97219; GFX6-NEXT:    s_waitcnt lgkmcnt(0)7220; GFX6-NEXT:    s_load_dword s4, s[2:3], 0x07221; GFX6-NEXT:    s_mov_b32 s3, 0xf0007222; GFX6-NEXT:    v_mov_b32_e32 v1, 07223; GFX6-NEXT:    s_mov_b32 s2, -17224; GFX6-NEXT:    v_mov_b32_e32 v3, v17225; GFX6-NEXT:    s_waitcnt lgkmcnt(0)7226; GFX6-NEXT:    s_bfe_u32 s5, s4, 0x100017227; GFX6-NEXT:    s_bfe_u32 s6, s4, 0x100037228; GFX6-NEXT:    s_bfe_u32 s7, s4, 0x100057229; GFX6-NEXT:    s_bfe_u32 s8, s4, 0x100077230; GFX6-NEXT:    s_bfe_u32 s9, s4, 0x100097231; GFX6-NEXT:    s_bfe_u32 s10, s4, 0x1000b7232; GFX6-NEXT:    s_bfe_u32 s11, s4, 0x1000d7233; GFX6-NEXT:    s_bfe_u32 s12, s4, 0x1000f7234; GFX6-NEXT:    s_bfe_u32 s13, s4, 0x100117235; GFX6-NEXT:    s_bfe_u32 s14, s4, 0x100137236; GFX6-NEXT:    s_bfe_u32 s15, s4, 0x100157237; GFX6-NEXT:    s_bfe_u32 s16, s4, 0x100177238; GFX6-NEXT:    s_bfe_u32 s17, s4, 0x100197239; GFX6-NEXT:    s_bfe_u32 s18, s4, 0x1001b7240; GFX6-NEXT:    s_bfe_u32 s19, s4, 0x1001d7241; GFX6-NEXT:    s_lshr_b32 s20, s4, 317242; GFX6-NEXT:    s_and_b32 s21, s4, 17243; GFX6-NEXT:    s_bfe_u32 s22, s4, 0x100027244; GFX6-NEXT:    s_bfe_u32 s23, s4, 0x100047245; GFX6-NEXT:    s_bfe_u32 s24, s4, 0x100067246; GFX6-NEXT:    s_bfe_u32 s25, s4, 0x100087247; GFX6-NEXT:    s_bfe_u32 s26, s4, 0x1000a7248; GFX6-NEXT:    s_bfe_u32 s27, s4, 0x1000c7249; GFX6-NEXT:    s_bfe_u32 s28, s4, 0x1000e7250; GFX6-NEXT:    s_bfe_u32 s29, s4, 0x100107251; GFX6-NEXT:    s_bfe_u32 s30, s4, 0x100127252; GFX6-NEXT:    s_bfe_u32 s31, s4, 0x100147253; GFX6-NEXT:    s_bfe_u32 s33, s4, 0x100167254; GFX6-NEXT:    s_bfe_u32 s34, s4, 0x100187255; GFX6-NEXT:    s_bfe_u32 s35, s4, 0x1001a7256; GFX6-NEXT:    s_bfe_u32 s36, s4, 0x1001e7257; GFX6-NEXT:    s_bfe_u32 s4, s4, 0x1001c7258; GFX6-NEXT:    v_mov_b32_e32 v0, s367259; GFX6-NEXT:    v_mov_b32_e32 v2, s207260; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:2407261; GFX6-NEXT:    s_waitcnt expcnt(0)7262; GFX6-NEXT:    v_mov_b32_e32 v0, s47263; GFX6-NEXT:    v_mov_b32_e32 v2, s197264; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:2247265; GFX6-NEXT:    s_waitcnt expcnt(0)7266; GFX6-NEXT:    v_mov_b32_e32 v0, s357267; GFX6-NEXT:    v_mov_b32_e32 v2, s187268; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:2087269; GFX6-NEXT:    s_waitcnt expcnt(0)7270; GFX6-NEXT:    v_mov_b32_e32 v0, s347271; GFX6-NEXT:    v_mov_b32_e32 v2, s177272; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1927273; GFX6-NEXT:    s_waitcnt expcnt(0)7274; GFX6-NEXT:    v_mov_b32_e32 v0, s337275; GFX6-NEXT:    v_mov_b32_e32 v2, s167276; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1767277; GFX6-NEXT:    s_waitcnt expcnt(0)7278; GFX6-NEXT:    v_mov_b32_e32 v0, s317279; GFX6-NEXT:    v_mov_b32_e32 v2, s157280; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1607281; GFX6-NEXT:    s_waitcnt expcnt(0)7282; GFX6-NEXT:    v_mov_b32_e32 v0, s307283; GFX6-NEXT:    v_mov_b32_e32 v2, s147284; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1447285; GFX6-NEXT:    s_waitcnt expcnt(0)7286; GFX6-NEXT:    v_mov_b32_e32 v0, s297287; GFX6-NEXT:    v_mov_b32_e32 v2, s137288; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1287289; GFX6-NEXT:    s_waitcnt expcnt(0)7290; GFX6-NEXT:    v_mov_b32_e32 v0, s287291; GFX6-NEXT:    v_mov_b32_e32 v2, s127292; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1127293; GFX6-NEXT:    s_waitcnt expcnt(0)7294; GFX6-NEXT:    v_mov_b32_e32 v0, s277295; GFX6-NEXT:    v_mov_b32_e32 v2, s117296; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:967297; GFX6-NEXT:    s_waitcnt expcnt(0)7298; GFX6-NEXT:    v_mov_b32_e32 v0, s267299; GFX6-NEXT:    v_mov_b32_e32 v2, s107300; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:807301; GFX6-NEXT:    s_waitcnt expcnt(0)7302; GFX6-NEXT:    v_mov_b32_e32 v0, s257303; GFX6-NEXT:    v_mov_b32_e32 v2, s97304; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:647305; GFX6-NEXT:    s_waitcnt expcnt(0)7306; GFX6-NEXT:    v_mov_b32_e32 v0, s247307; GFX6-NEXT:    v_mov_b32_e32 v2, s87308; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:487309; GFX6-NEXT:    s_waitcnt expcnt(0)7310; GFX6-NEXT:    v_mov_b32_e32 v0, s237311; GFX6-NEXT:    v_mov_b32_e32 v2, s77312; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:327313; GFX6-NEXT:    s_waitcnt expcnt(0)7314; GFX6-NEXT:    v_mov_b32_e32 v0, s227315; GFX6-NEXT:    v_mov_b32_e32 v2, s67316; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:167317; GFX6-NEXT:    s_waitcnt expcnt(0)7318; GFX6-NEXT:    v_mov_b32_e32 v0, s217319; GFX6-NEXT:    v_mov_b32_e32 v2, s57320; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 07321; GFX6-NEXT:    s_endpgm7322;7323; GFX8-LABEL: constant_zextload_v32i1_to_v32i64:7324; GFX8:       ; %bb.0:7325; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x247326; GFX8-NEXT:    v_mov_b32_e32 v1, 07327; GFX8-NEXT:    v_mov_b32_e32 v3, v17328; GFX8-NEXT:    s_waitcnt lgkmcnt(0)7329; GFX8-NEXT:    s_load_dword s6, s[2:3], 0x07330; GFX8-NEXT:    s_waitcnt lgkmcnt(0)7331; GFX8-NEXT:    s_lshr_b32 s7, s6, 317332; GFX8-NEXT:    s_bfe_u32 s8, s6, 0x1001d7333; GFX8-NEXT:    s_bfe_u32 s9, s6, 0x1001b7334; GFX8-NEXT:    s_bfe_u32 s10, s6, 0x100197335; GFX8-NEXT:    s_bfe_u32 s11, s6, 0x100177336; GFX8-NEXT:    s_bfe_u32 s12, s6, 0x100137337; GFX8-NEXT:    s_bfe_u32 s13, s6, 0x100117338; GFX8-NEXT:    s_bfe_u32 s14, s6, 0x1000f7339; GFX8-NEXT:    s_bfe_u32 s15, s6, 0x1000d7340; GFX8-NEXT:    s_bfe_u32 s16, s6, 0x1000b7341; GFX8-NEXT:    s_bfe_u32 s17, s6, 0x100097342; GFX8-NEXT:    s_bfe_u32 s18, s6, 0x100077343; GFX8-NEXT:    s_bfe_u32 s19, s6, 0x100057344; GFX8-NEXT:    s_bfe_u32 s4, s6, 0x100037345; GFX8-NEXT:    s_bfe_u32 s2, s6, 0x100017346; GFX8-NEXT:    s_and_b32 s3, s6, 17347; GFX8-NEXT:    s_bfe_u32 s5, s6, 0x100027348; GFX8-NEXT:    s_bfe_u32 s20, s6, 0x100047349; GFX8-NEXT:    s_bfe_u32 s21, s6, 0x100067350; GFX8-NEXT:    s_bfe_u32 s22, s6, 0x100087351; GFX8-NEXT:    s_bfe_u32 s23, s6, 0x1000a7352; GFX8-NEXT:    s_bfe_u32 s24, s6, 0x1000c7353; GFX8-NEXT:    s_bfe_u32 s25, s6, 0x1000e7354; GFX8-NEXT:    s_bfe_u32 s26, s6, 0x100107355; GFX8-NEXT:    s_bfe_u32 s27, s6, 0x100127356; GFX8-NEXT:    s_bfe_u32 s28, s6, 0x100147357; GFX8-NEXT:    s_bfe_u32 s29, s6, 0x100157358; GFX8-NEXT:    s_bfe_u32 s30, s6, 0x100167359; GFX8-NEXT:    s_bfe_u32 s31, s6, 0x100187360; GFX8-NEXT:    s_bfe_u32 s33, s6, 0x1001a7361; GFX8-NEXT:    s_bfe_u32 s34, s6, 0x1001c7362; GFX8-NEXT:    s_bfe_u32 s6, s6, 0x1001e7363; GFX8-NEXT:    v_mov_b32_e32 v0, s67364; GFX8-NEXT:    s_add_u32 s6, s0, 0xf07365; GFX8-NEXT:    v_mov_b32_e32 v2, s77366; GFX8-NEXT:    s_addc_u32 s7, s1, 07367; GFX8-NEXT:    v_mov_b32_e32 v4, s67368; GFX8-NEXT:    v_mov_b32_e32 v5, s77369; GFX8-NEXT:    s_add_u32 s6, s0, 0xe07370; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]7371; GFX8-NEXT:    s_addc_u32 s7, s1, 07372; GFX8-NEXT:    v_mov_b32_e32 v4, s67373; GFX8-NEXT:    v_mov_b32_e32 v0, s347374; GFX8-NEXT:    v_mov_b32_e32 v2, s87375; GFX8-NEXT:    v_mov_b32_e32 v5, s77376; GFX8-NEXT:    s_add_u32 s6, s0, 0xd07377; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]7378; GFX8-NEXT:    s_addc_u32 s7, s1, 07379; GFX8-NEXT:    v_mov_b32_e32 v4, s67380; GFX8-NEXT:    v_mov_b32_e32 v0, s337381; GFX8-NEXT:    v_mov_b32_e32 v2, s97382; GFX8-NEXT:    v_mov_b32_e32 v5, s77383; GFX8-NEXT:    s_add_u32 s6, s0, 0xc07384; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]7385; GFX8-NEXT:    s_addc_u32 s7, s1, 07386; GFX8-NEXT:    v_mov_b32_e32 v4, s67387; GFX8-NEXT:    v_mov_b32_e32 v0, s317388; GFX8-NEXT:    v_mov_b32_e32 v2, s107389; GFX8-NEXT:    v_mov_b32_e32 v5, s77390; GFX8-NEXT:    s_add_u32 s6, s0, 0xb07391; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]7392; GFX8-NEXT:    s_addc_u32 s7, s1, 07393; GFX8-NEXT:    v_mov_b32_e32 v4, s67394; GFX8-NEXT:    v_mov_b32_e32 v0, s307395; GFX8-NEXT:    v_mov_b32_e32 v2, s117396; GFX8-NEXT:    v_mov_b32_e32 v5, s77397; GFX8-NEXT:    s_add_u32 s6, s0, 0xa07398; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]7399; GFX8-NEXT:    s_addc_u32 s7, s1, 07400; GFX8-NEXT:    v_mov_b32_e32 v4, s67401; GFX8-NEXT:    v_mov_b32_e32 v0, s287402; GFX8-NEXT:    v_mov_b32_e32 v2, s297403; GFX8-NEXT:    v_mov_b32_e32 v5, s77404; GFX8-NEXT:    s_add_u32 s6, s0, 0x907405; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]7406; GFX8-NEXT:    s_addc_u32 s7, s1, 07407; GFX8-NEXT:    v_mov_b32_e32 v4, s67408; GFX8-NEXT:    v_mov_b32_e32 v0, s277409; GFX8-NEXT:    v_mov_b32_e32 v2, s127410; GFX8-NEXT:    v_mov_b32_e32 v5, s77411; GFX8-NEXT:    s_add_u32 s6, s0, 0x807412; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]7413; GFX8-NEXT:    s_addc_u32 s7, s1, 07414; GFX8-NEXT:    v_mov_b32_e32 v4, s67415; GFX8-NEXT:    v_mov_b32_e32 v0, s267416; GFX8-NEXT:    v_mov_b32_e32 v2, s137417; GFX8-NEXT:    v_mov_b32_e32 v5, s77418; GFX8-NEXT:    s_add_u32 s6, s0, 0x707419; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]7420; GFX8-NEXT:    s_addc_u32 s7, s1, 07421; GFX8-NEXT:    v_mov_b32_e32 v4, s67422; GFX8-NEXT:    v_mov_b32_e32 v0, s257423; GFX8-NEXT:    v_mov_b32_e32 v2, s147424; GFX8-NEXT:    v_mov_b32_e32 v5, s77425; GFX8-NEXT:    s_add_u32 s6, s0, 0x607426; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]7427; GFX8-NEXT:    s_addc_u32 s7, s1, 07428; GFX8-NEXT:    v_mov_b32_e32 v4, s67429; GFX8-NEXT:    v_mov_b32_e32 v0, s247430; GFX8-NEXT:    v_mov_b32_e32 v2, s157431; GFX8-NEXT:    v_mov_b32_e32 v5, s77432; GFX8-NEXT:    s_add_u32 s6, s0, 0x507433; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]7434; GFX8-NEXT:    s_addc_u32 s7, s1, 07435; GFX8-NEXT:    v_mov_b32_e32 v4, s67436; GFX8-NEXT:    v_mov_b32_e32 v0, s237437; GFX8-NEXT:    v_mov_b32_e32 v2, s167438; GFX8-NEXT:    v_mov_b32_e32 v5, s77439; GFX8-NEXT:    s_add_u32 s6, s0, 647440; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]7441; GFX8-NEXT:    s_addc_u32 s7, s1, 07442; GFX8-NEXT:    v_mov_b32_e32 v4, s67443; GFX8-NEXT:    v_mov_b32_e32 v0, s227444; GFX8-NEXT:    v_mov_b32_e32 v2, s177445; GFX8-NEXT:    v_mov_b32_e32 v5, s77446; GFX8-NEXT:    s_add_u32 s6, s0, 487447; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]7448; GFX8-NEXT:    s_addc_u32 s7, s1, 07449; GFX8-NEXT:    v_mov_b32_e32 v4, s67450; GFX8-NEXT:    v_mov_b32_e32 v0, s217451; GFX8-NEXT:    v_mov_b32_e32 v2, s187452; GFX8-NEXT:    v_mov_b32_e32 v5, s77453; GFX8-NEXT:    s_add_u32 s6, s0, 327454; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]7455; GFX8-NEXT:    s_addc_u32 s7, s1, 07456; GFX8-NEXT:    v_mov_b32_e32 v4, s67457; GFX8-NEXT:    v_mov_b32_e32 v0, s207458; GFX8-NEXT:    v_mov_b32_e32 v2, s197459; GFX8-NEXT:    v_mov_b32_e32 v5, s77460; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]7461; GFX8-NEXT:    s_nop 07462; GFX8-NEXT:    v_mov_b32_e32 v2, s47463; GFX8-NEXT:    s_add_u32 s4, s0, 167464; GFX8-NEXT:    v_mov_b32_e32 v0, s57465; GFX8-NEXT:    s_addc_u32 s5, s1, 07466; GFX8-NEXT:    v_mov_b32_e32 v4, s47467; GFX8-NEXT:    v_mov_b32_e32 v5, s57468; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]7469; GFX8-NEXT:    v_mov_b32_e32 v5, s17470; GFX8-NEXT:    v_mov_b32_e32 v0, s37471; GFX8-NEXT:    v_mov_b32_e32 v2, s27472; GFX8-NEXT:    v_mov_b32_e32 v4, s07473; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]7474; GFX8-NEXT:    s_endpgm7475;7476; EG-LABEL: constant_zextload_v32i1_to_v32i64:7477; EG:       ; %bb.0:7478; EG-NEXT:    ALU 0, @24, KC0[CB0:0-32], KC1[]7479; EG-NEXT:    TEX 0 @227480; EG-NEXT:    ALU 96, @25, KC0[CB0:0-32], KC1[]7481; EG-NEXT:    ALU 30, @122, KC0[CB0:0-32], KC1[]7482; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T12.XYZW, T42.X, 07483; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T13.XYZW, T41.X, 07484; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T14.XYZW, T40.X, 07485; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T15.XYZW, T39.X, 07486; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T16.XYZW, T38.X, 07487; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T17.XYZW, T37.X, 07488; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T18.XYZW, T36.X, 07489; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T19.XYZW, T35.X, 07490; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T20.XYZW, T34.X, 07491; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T21.XYZW, T33.X, 07492; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T22.XYZW, T32.X, 07493; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T23.XYZW, T31.X, 07494; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T24.XYZW, T30.X, 07495; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T25.XYZW, T29.X, 07496; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T26.XYZW, T28.X, 07497; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T11.XYZW, T27.X, 17498; EG-NEXT:    CF_END7499; EG-NEXT:    PAD7500; EG-NEXT:    Fetch clause starting at 22:7501; EG-NEXT:     VTX_READ_32 T11.X, T11.X, 0, #17502; EG-NEXT:    ALU clause starting at 24:7503; EG-NEXT:     MOV * T11.X, KC0[2].Z,7504; EG-NEXT:    ALU clause starting at 25:7505; EG-NEXT:     LSHR * T12.Z, T11.X, literal.x,7506; EG-NEXT:    31(4.344025e-44), 0(0.000000e+00)7507; EG-NEXT:     BFE_UINT T12.X, T11.X, literal.x, 1,7508; EG-NEXT:     MOV T12.Y, 0.0,7509; EG-NEXT:     BFE_UINT * T13.Z, T11.X, literal.y, 1,7510; EG-NEXT:    30(4.203895e-44), 29(4.063766e-44)7511; EG-NEXT:     BFE_UINT T13.X, T11.X, literal.x, 1,7512; EG-NEXT:     MOV T13.Y, 0.0,7513; EG-NEXT:     BFE_UINT * T14.Z, T11.X, literal.y, 1,7514; EG-NEXT:    28(3.923636e-44), 27(3.783506e-44)7515; EG-NEXT:     BFE_UINT T14.X, T11.X, literal.x, 1,7516; EG-NEXT:     MOV T14.Y, 0.0,7517; EG-NEXT:     BFE_UINT * T15.Z, T11.X, literal.y, 1,7518; EG-NEXT:    26(3.643376e-44), 25(3.503246e-44)7519; EG-NEXT:     BFE_UINT T15.X, T11.X, literal.x, 1,7520; EG-NEXT:     MOV T15.Y, 0.0,7521; EG-NEXT:     BFE_UINT * T16.Z, T11.X, literal.y, 1,7522; EG-NEXT:    24(3.363116e-44), 23(3.222986e-44)7523; EG-NEXT:     BFE_UINT T16.X, T11.X, literal.x, 1,7524; EG-NEXT:     MOV T16.Y, 0.0,7525; EG-NEXT:     BFE_UINT * T17.Z, T11.X, literal.y, 1,7526; EG-NEXT:    22(3.082857e-44), 21(2.942727e-44)7527; EG-NEXT:     BFE_UINT T17.X, T11.X, literal.x, 1,7528; EG-NEXT:     MOV T17.Y, 0.0,7529; EG-NEXT:     BFE_UINT * T18.Z, T11.X, literal.y, 1,7530; EG-NEXT:    20(2.802597e-44), 19(2.662467e-44)7531; EG-NEXT:     BFE_UINT T18.X, T11.X, literal.x, 1,7532; EG-NEXT:     MOV T18.Y, 0.0,7533; EG-NEXT:     BFE_UINT * T19.Z, T11.X, literal.y, 1,7534; EG-NEXT:    18(2.522337e-44), 17(2.382207e-44)7535; EG-NEXT:     BFE_UINT T19.X, T11.X, literal.x, 1,7536; EG-NEXT:     MOV T19.Y, 0.0,7537; EG-NEXT:     BFE_UINT * T20.Z, T11.X, literal.y, 1,7538; EG-NEXT:    16(2.242078e-44), 15(2.101948e-44)7539; EG-NEXT:     BFE_UINT T20.X, T11.X, literal.x, 1,7540; EG-NEXT:     MOV T20.Y, 0.0,7541; EG-NEXT:     BFE_UINT * T21.Z, T11.X, literal.y, 1,7542; EG-NEXT:    14(1.961818e-44), 13(1.821688e-44)7543; EG-NEXT:     BFE_UINT T21.X, T11.X, literal.x, 1,7544; EG-NEXT:     MOV T21.Y, 0.0,7545; EG-NEXT:     BFE_UINT * T22.Z, T11.X, literal.y, 1,7546; EG-NEXT:    12(1.681558e-44), 11(1.541428e-44)7547; EG-NEXT:     BFE_UINT T22.X, T11.X, literal.x, 1,7548; EG-NEXT:     MOV T22.Y, 0.0,7549; EG-NEXT:     BFE_UINT * T23.Z, T11.X, literal.y, 1,7550; EG-NEXT:    10(1.401298e-44), 9(1.261169e-44)7551; EG-NEXT:     BFE_UINT T23.X, T11.X, literal.x, 1,7552; EG-NEXT:     MOV T23.Y, 0.0,7553; EG-NEXT:     BFE_UINT * T24.Z, T11.X, literal.y, 1,7554; EG-NEXT:    8(1.121039e-44), 7(9.809089e-45)7555; EG-NEXT:     BFE_UINT T24.X, T11.X, literal.x, 1,7556; EG-NEXT:     MOV T24.Y, 0.0,7557; EG-NEXT:     BFE_UINT * T25.Z, T11.X, literal.y, 1,7558; EG-NEXT:    6(8.407791e-45), 5(7.006492e-45)7559; EG-NEXT:     BFE_UINT T25.X, T11.X, literal.x, 1,7560; EG-NEXT:     MOV T25.Y, 0.0,7561; EG-NEXT:     BFE_UINT * T26.Z, T11.X, literal.y, 1,7562; EG-NEXT:    4(5.605194e-45), 3(4.203895e-45)7563; EG-NEXT:     BFE_UINT T26.X, T11.X, literal.x, 1,7564; EG-NEXT:     MOV T26.Y, 0.0,7565; EG-NEXT:     BFE_UINT T11.Z, T11.X, 1, 1,7566; EG-NEXT:     AND_INT * T11.X, T11.X, 1,7567; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)7568; EG-NEXT:     MOV T11.Y, 0.0,7569; EG-NEXT:     MOV T12.W, 0.0,7570; EG-NEXT:     MOV * T13.W, 0.0,7571; EG-NEXT:     MOV T14.W, 0.0,7572; EG-NEXT:     MOV * T15.W, 0.0,7573; EG-NEXT:     MOV T16.W, 0.0,7574; EG-NEXT:     MOV * T17.W, 0.0,7575; EG-NEXT:     MOV T18.W, 0.0,7576; EG-NEXT:     MOV * T19.W, 0.0,7577; EG-NEXT:     MOV T20.W, 0.0,7578; EG-NEXT:     MOV * T21.W, 0.0,7579; EG-NEXT:     MOV T22.W, 0.0,7580; EG-NEXT:     MOV * T23.W, 0.0,7581; EG-NEXT:     MOV T24.W, 0.0,7582; EG-NEXT:     MOV * T25.W, 0.0,7583; EG-NEXT:     MOV T26.W, 0.0,7584; EG-NEXT:     MOV * T11.W, 0.0,7585; EG-NEXT:     LSHR T27.X, KC0[2].Y, literal.x,7586; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,7587; EG-NEXT:    2(2.802597e-45), 16(2.242078e-44)7588; EG-NEXT:     LSHR T28.X, PV.W, literal.x,7589; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,7590; EG-NEXT:    2(2.802597e-45), 32(4.484155e-44)7591; EG-NEXT:     LSHR T29.X, PV.W, literal.x,7592; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,7593; EG-NEXT:    2(2.802597e-45), 48(6.726233e-44)7594; EG-NEXT:     LSHR T30.X, PV.W, literal.x,7595; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,7596; EG-NEXT:    2(2.802597e-45), 64(8.968310e-44)7597; EG-NEXT:     LSHR T31.X, PV.W, literal.x,7598; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,7599; EG-NEXT:    2(2.802597e-45), 80(1.121039e-43)7600; EG-NEXT:     LSHR * T32.X, PV.W, literal.x,7601; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)7602; EG-NEXT:    ALU clause starting at 122:7603; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.x,7604; EG-NEXT:    96(1.345247e-43), 0(0.000000e+00)7605; EG-NEXT:     LSHR T33.X, PV.W, literal.x,7606; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,7607; EG-NEXT:    2(2.802597e-45), 112(1.569454e-43)7608; EG-NEXT:     LSHR T34.X, PV.W, literal.x,7609; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,7610; EG-NEXT:    2(2.802597e-45), 128(1.793662e-43)7611; EG-NEXT:     LSHR T35.X, PV.W, literal.x,7612; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,7613; EG-NEXT:    2(2.802597e-45), 144(2.017870e-43)7614; EG-NEXT:     LSHR T36.X, PV.W, literal.x,7615; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,7616; EG-NEXT:    2(2.802597e-45), 160(2.242078e-43)7617; EG-NEXT:     LSHR T37.X, PV.W, literal.x,7618; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,7619; EG-NEXT:    2(2.802597e-45), 176(2.466285e-43)7620; EG-NEXT:     LSHR T38.X, PV.W, literal.x,7621; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,7622; EG-NEXT:    2(2.802597e-45), 192(2.690493e-43)7623; EG-NEXT:     LSHR T39.X, PV.W, literal.x,7624; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,7625; EG-NEXT:    2(2.802597e-45), 208(2.914701e-43)7626; EG-NEXT:     LSHR T40.X, PV.W, literal.x,7627; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,7628; EG-NEXT:    2(2.802597e-45), 224(3.138909e-43)7629; EG-NEXT:     LSHR T41.X, PV.W, literal.x,7630; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,7631; EG-NEXT:    2(2.802597e-45), 240(3.363116e-43)7632; EG-NEXT:     LSHR * T42.X, PV.W, literal.x,7633; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)7634;7635; GFX12-LABEL: constant_zextload_v32i1_to_v32i64:7636; GFX12:       ; %bb.0:7637; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x247638; GFX12-NEXT:    s_wait_kmcnt 0x07639; GFX12-NEXT:    s_load_b32 s2, s[2:3], 0x07640; GFX12-NEXT:    s_wait_kmcnt 0x07641; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x1001e7642; GFX12-NEXT:    s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)7643; GFX12-NEXT:    v_dual_mov_b32 v1, 0 :: v_dual_mov_b32 v0, s37644; GFX12-NEXT:    s_lshr_b32 s4, s2, 317645; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x1001d7646; GFX12-NEXT:    v_dual_mov_b32 v2, s4 :: v_dual_mov_b32 v3, v17647; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x1001c7648; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:2407649; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)7650; GFX12-NEXT:    v_mov_b32_e32 v0, s47651; GFX12-NEXT:    v_mov_b32_e32 v2, s37652; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x1001b7653; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x1001a7654; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:2247655; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)7656; GFX12-NEXT:    v_mov_b32_e32 v0, s47657; GFX12-NEXT:    v_mov_b32_e32 v2, s37658; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100197659; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100187660; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:2087661; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)7662; GFX12-NEXT:    v_mov_b32_e32 v0, s47663; GFX12-NEXT:    v_mov_b32_e32 v2, s37664; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100177665; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100167666; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1927667; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)7668; GFX12-NEXT:    v_mov_b32_e32 v0, s47669; GFX12-NEXT:    v_mov_b32_e32 v2, s37670; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100147671; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100157672; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1767673; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)7674; GFX12-NEXT:    v_mov_b32_e32 v0, s37675; GFX12-NEXT:    v_mov_b32_e32 v2, s47676; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100137677; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100127678; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1607679; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)7680; GFX12-NEXT:    v_mov_b32_e32 v0, s47681; GFX12-NEXT:    v_mov_b32_e32 v2, s37682; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100117683; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100107684; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1447685; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)7686; GFX12-NEXT:    v_mov_b32_e32 v0, s47687; GFX12-NEXT:    v_mov_b32_e32 v2, s37688; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x1000f7689; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x1000e7690; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1287691; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)7692; GFX12-NEXT:    v_mov_b32_e32 v0, s47693; GFX12-NEXT:    v_mov_b32_e32 v2, s37694; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x1000d7695; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x1000c7696; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1127697; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)7698; GFX12-NEXT:    v_mov_b32_e32 v0, s47699; GFX12-NEXT:    v_mov_b32_e32 v2, s37700; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x1000b7701; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x1000a7702; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:967703; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)7704; GFX12-NEXT:    v_mov_b32_e32 v0, s47705; GFX12-NEXT:    v_mov_b32_e32 v2, s37706; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100097707; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100087708; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:807709; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)7710; GFX12-NEXT:    v_mov_b32_e32 v0, s47711; GFX12-NEXT:    v_mov_b32_e32 v2, s37712; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100077713; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100067714; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:647715; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)7716; GFX12-NEXT:    v_mov_b32_e32 v0, s47717; GFX12-NEXT:    v_mov_b32_e32 v2, s37718; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100057719; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100047720; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:487721; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)7722; GFX12-NEXT:    v_mov_b32_e32 v0, s47723; GFX12-NEXT:    v_mov_b32_e32 v2, s37724; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100037725; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100027726; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:327727; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)7728; GFX12-NEXT:    v_mov_b32_e32 v0, s47729; GFX12-NEXT:    v_mov_b32_e32 v2, s37730; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100017731; GFX12-NEXT:    s_and_b32 s2, s2, 17732; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:167733; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)7734; GFX12-NEXT:    v_mov_b32_e32 v0, s27735; GFX12-NEXT:    v_mov_b32_e32 v2, s37736; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1]7737; GFX12-NEXT:    s_endpgm7738;7739; GFX1250-LABEL: constant_zextload_v32i1_to_v32i64:7740; GFX1250:       ; %bb.0:7741; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 17742; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x247743; GFX1250-NEXT:    s_wait_kmcnt 0x07744; GFX1250-NEXT:    s_load_b32 s2, s[2:3], 0x07745; GFX1250-NEXT:    s_wait_kmcnt 0x07746; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x1001e7747; GFX1250-NEXT:    s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)7748; GFX1250-NEXT:    v_dual_mov_b32 v1, 0 :: v_dual_mov_b32 v0, s37749; GFX1250-NEXT:    s_lshr_b32 s4, s2, 317750; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x1001d7751; GFX1250-NEXT:    v_dual_mov_b32 v2, s4 :: v_dual_mov_b32 v3, v17752; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x1001c7753; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:2407754; GFX1250-NEXT:    s_wait_xcnt 0x07755; GFX1250-NEXT:    v_dual_mov_b32 v0, s4 :: v_dual_mov_b32 v2, s37756; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x1001b7757; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x1001a7758; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:2247759; GFX1250-NEXT:    s_wait_xcnt 0x07760; GFX1250-NEXT:    v_dual_mov_b32 v0, s4 :: v_dual_mov_b32 v2, s37761; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100197762; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100187763; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:2087764; GFX1250-NEXT:    s_wait_xcnt 0x07765; GFX1250-NEXT:    v_dual_mov_b32 v0, s4 :: v_dual_mov_b32 v2, s37766; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100177767; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100167768; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1927769; GFX1250-NEXT:    s_wait_xcnt 0x07770; GFX1250-NEXT:    v_dual_mov_b32 v0, s4 :: v_dual_mov_b32 v2, s37771; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100147772; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100157773; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1767774; GFX1250-NEXT:    s_wait_xcnt 0x07775; GFX1250-NEXT:    v_dual_mov_b32 v0, s3 :: v_dual_mov_b32 v2, s47776; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100137777; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100127778; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1607779; GFX1250-NEXT:    s_wait_xcnt 0x07780; GFX1250-NEXT:    v_dual_mov_b32 v0, s4 :: v_dual_mov_b32 v2, s37781; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100117782; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100107783; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1447784; GFX1250-NEXT:    s_wait_xcnt 0x07785; GFX1250-NEXT:    v_dual_mov_b32 v0, s4 :: v_dual_mov_b32 v2, s37786; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x1000f7787; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x1000e7788; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1287789; GFX1250-NEXT:    s_wait_xcnt 0x07790; GFX1250-NEXT:    v_dual_mov_b32 v0, s4 :: v_dual_mov_b32 v2, s37791; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x1000d7792; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x1000c7793; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1127794; GFX1250-NEXT:    s_wait_xcnt 0x07795; GFX1250-NEXT:    v_dual_mov_b32 v0, s4 :: v_dual_mov_b32 v2, s37796; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x1000b7797; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x1000a7798; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:967799; GFX1250-NEXT:    s_wait_xcnt 0x07800; GFX1250-NEXT:    v_dual_mov_b32 v0, s4 :: v_dual_mov_b32 v2, s37801; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100097802; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100087803; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:807804; GFX1250-NEXT:    s_wait_xcnt 0x07805; GFX1250-NEXT:    v_dual_mov_b32 v0, s4 :: v_dual_mov_b32 v2, s37806; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100077807; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100067808; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:647809; GFX1250-NEXT:    s_wait_xcnt 0x07810; GFX1250-NEXT:    v_dual_mov_b32 v0, s4 :: v_dual_mov_b32 v2, s37811; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100057812; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100047813; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:487814; GFX1250-NEXT:    s_wait_xcnt 0x07815; GFX1250-NEXT:    v_dual_mov_b32 v0, s4 :: v_dual_mov_b32 v2, s37816; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100037817; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100027818; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:327819; GFX1250-NEXT:    s_wait_xcnt 0x07820; GFX1250-NEXT:    v_dual_mov_b32 v0, s4 :: v_dual_mov_b32 v2, s37821; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100017822; GFX1250-NEXT:    s_and_b32 s2, s2, 17823; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:167824; GFX1250-NEXT:    s_wait_xcnt 0x07825; GFX1250-NEXT:    v_dual_mov_b32 v0, s2 :: v_dual_mov_b32 v2, s37826; GFX1250-NEXT:    global_store_b128 v1, v[0:3], s[0:1]7827; GFX1250-NEXT:    s_endpgm7828  %load = load <32 x i1>, ptr addrspace(4) %in7829  %ext = zext <32 x i1> %load to <32 x i64>7830  store <32 x i64> %ext, ptr addrspace(1) %out7831  ret void7832}7833 7834define amdgpu_kernel void @constant_sextload_v32i1_to_v32i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {7835; GFX6-LABEL: constant_sextload_v32i1_to_v32i64:7836; GFX6:       ; %bb.0:7837; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x97838; GFX6-NEXT:    s_waitcnt lgkmcnt(0)7839; GFX6-NEXT:    s_load_dword s4, s[2:3], 0x07840; GFX6-NEXT:    s_mov_b32 s3, 0xf0007841; GFX6-NEXT:    s_mov_b32 s2, -17842; GFX6-NEXT:    s_waitcnt lgkmcnt(0)7843; GFX6-NEXT:    s_lshr_b32 s38, s4, 307844; GFX6-NEXT:    s_lshr_b32 s40, s4, 317845; GFX6-NEXT:    s_lshr_b32 s34, s4, 287846; GFX6-NEXT:    s_lshr_b32 s36, s4, 297847; GFX6-NEXT:    s_lshr_b32 s28, s4, 267848; GFX6-NEXT:    s_lshr_b32 s30, s4, 277849; GFX6-NEXT:    s_lshr_b32 s24, s4, 247850; GFX6-NEXT:    s_lshr_b32 s26, s4, 257851; GFX6-NEXT:    s_lshr_b32 s20, s4, 227852; GFX6-NEXT:    s_lshr_b32 s22, s4, 237853; GFX6-NEXT:    s_lshr_b32 s18, s4, 207854; GFX6-NEXT:    s_lshr_b32 s6, s4, 217855; GFX6-NEXT:    s_lshr_b32 s8, s4, 187856; GFX6-NEXT:    s_lshr_b32 s10, s4, 197857; GFX6-NEXT:    s_lshr_b32 s12, s4, 167858; GFX6-NEXT:    s_lshr_b32 s14, s4, 177859; GFX6-NEXT:    s_lshr_b32 s16, s4, 147860; GFX6-NEXT:    s_bfe_i64 s[44:45], s[4:5], 0x100007861; GFX6-NEXT:    s_lshr_b32 s42, s4, 157862; GFX6-NEXT:    v_mov_b32_e32 v0, s447863; GFX6-NEXT:    v_mov_b32_e32 v1, s457864; GFX6-NEXT:    s_lshr_b32 s44, s4, 127865; GFX6-NEXT:    s_bfe_i64 s[38:39], s[38:39], 0x100007866; GFX6-NEXT:    s_bfe_i64 s[40:41], s[40:41], 0x100007867; GFX6-NEXT:    v_mov_b32_e32 v2, s387868; GFX6-NEXT:    v_mov_b32_e32 v3, s397869; GFX6-NEXT:    s_lshr_b32 s38, s4, 137870; GFX6-NEXT:    v_mov_b32_e32 v4, s407871; GFX6-NEXT:    v_mov_b32_e32 v5, s417872; GFX6-NEXT:    s_lshr_b32 s40, s4, 107873; GFX6-NEXT:    s_bfe_i64 s[34:35], s[34:35], 0x100007874; GFX6-NEXT:    s_bfe_i64 s[36:37], s[36:37], 0x100007875; GFX6-NEXT:    v_mov_b32_e32 v6, s347876; GFX6-NEXT:    v_mov_b32_e32 v7, s357877; GFX6-NEXT:    s_lshr_b32 s34, s4, 117878; GFX6-NEXT:    v_mov_b32_e32 v8, s367879; GFX6-NEXT:    v_mov_b32_e32 v9, s377880; GFX6-NEXT:    s_lshr_b32 s36, s4, 87881; GFX6-NEXT:    s_bfe_i64 s[28:29], s[28:29], 0x100007882; GFX6-NEXT:    s_bfe_i64 s[30:31], s[30:31], 0x100007883; GFX6-NEXT:    v_mov_b32_e32 v10, s287884; GFX6-NEXT:    v_mov_b32_e32 v11, s297885; GFX6-NEXT:    s_lshr_b32 s28, s4, 97886; GFX6-NEXT:    v_mov_b32_e32 v12, s307887; GFX6-NEXT:    v_mov_b32_e32 v13, s317888; GFX6-NEXT:    s_lshr_b32 s30, s4, 67889; GFX6-NEXT:    s_bfe_i64 s[24:25], s[24:25], 0x100007890; GFX6-NEXT:    s_bfe_i64 s[26:27], s[26:27], 0x100007891; GFX6-NEXT:    v_mov_b32_e32 v14, s247892; GFX6-NEXT:    v_mov_b32_e32 v15, s257893; GFX6-NEXT:    s_lshr_b32 s24, s4, 77894; GFX6-NEXT:    v_mov_b32_e32 v16, s267895; GFX6-NEXT:    v_mov_b32_e32 v17, s277896; GFX6-NEXT:    s_lshr_b32 s26, s4, 47897; GFX6-NEXT:    s_bfe_i64 s[22:23], s[22:23], 0x100007898; GFX6-NEXT:    s_bfe_i64 s[20:21], s[20:21], 0x100007899; GFX6-NEXT:    buffer_store_dwordx4 v[2:5], off, s[0:3], 0 offset:2407900; GFX6-NEXT:    s_waitcnt expcnt(0)7901; GFX6-NEXT:    v_mov_b32_e32 v2, s207902; GFX6-NEXT:    v_mov_b32_e32 v3, s217903; GFX6-NEXT:    s_lshr_b32 s20, s4, 57904; GFX6-NEXT:    v_mov_b32_e32 v4, s227905; GFX6-NEXT:    v_mov_b32_e32 v5, s237906; GFX6-NEXT:    s_lshr_b32 s22, s4, 27907; GFX6-NEXT:    s_bfe_i64 s[18:19], s[18:19], 0x100007908; GFX6-NEXT:    buffer_store_dwordx4 v[6:9], off, s[0:3], 0 offset:2247909; GFX6-NEXT:    s_waitcnt expcnt(0)7910; GFX6-NEXT:    v_mov_b32_e32 v6, s187911; GFX6-NEXT:    v_mov_b32_e32 v7, s197912; GFX6-NEXT:    s_lshr_b32 s18, s4, 37913; GFX6-NEXT:    s_lshr_b32 s4, s4, 17914; GFX6-NEXT:    s_bfe_i64 s[4:5], s[4:5], 0x100007915; GFX6-NEXT:    s_bfe_i64 s[18:19], s[18:19], 0x100007916; GFX6-NEXT:    s_bfe_i64 s[22:23], s[22:23], 0x100007917; GFX6-NEXT:    s_bfe_i64 s[20:21], s[20:21], 0x100007918; GFX6-NEXT:    s_bfe_i64 s[26:27], s[26:27], 0x100007919; GFX6-NEXT:    s_bfe_i64 s[24:25], s[24:25], 0x100007920; GFX6-NEXT:    s_bfe_i64 s[30:31], s[30:31], 0x100007921; GFX6-NEXT:    s_bfe_i64 s[28:29], s[28:29], 0x100007922; GFX6-NEXT:    s_bfe_i64 s[36:37], s[36:37], 0x100007923; GFX6-NEXT:    s_bfe_i64 s[34:35], s[34:35], 0x100007924; GFX6-NEXT:    s_bfe_i64 s[40:41], s[40:41], 0x100007925; GFX6-NEXT:    s_bfe_i64 s[38:39], s[38:39], 0x100007926; GFX6-NEXT:    s_bfe_i64 s[44:45], s[44:45], 0x100007927; GFX6-NEXT:    s_bfe_i64 s[42:43], s[42:43], 0x100007928; GFX6-NEXT:    s_bfe_i64 s[16:17], s[16:17], 0x100007929; GFX6-NEXT:    s_bfe_i64 s[14:15], s[14:15], 0x100007930; GFX6-NEXT:    s_bfe_i64 s[12:13], s[12:13], 0x100007931; GFX6-NEXT:    s_bfe_i64 s[10:11], s[10:11], 0x100007932; GFX6-NEXT:    s_bfe_i64 s[8:9], s[8:9], 0x100007933; GFX6-NEXT:    s_bfe_i64 s[6:7], s[6:7], 0x100007934; GFX6-NEXT:    buffer_store_dwordx4 v[10:13], off, s[0:3], 0 offset:2087935; GFX6-NEXT:    buffer_store_dwordx4 v[14:17], off, s[0:3], 0 offset:1927936; GFX6-NEXT:    buffer_store_dwordx4 v[2:5], off, s[0:3], 0 offset:1767937; GFX6-NEXT:    v_mov_b32_e32 v8, s67938; GFX6-NEXT:    v_mov_b32_e32 v9, s77939; GFX6-NEXT:    buffer_store_dwordx4 v[6:9], off, s[0:3], 0 offset:1607940; GFX6-NEXT:    s_waitcnt expcnt(1)7941; GFX6-NEXT:    v_mov_b32_e32 v2, s87942; GFX6-NEXT:    v_mov_b32_e32 v3, s97943; GFX6-NEXT:    v_mov_b32_e32 v4, s107944; GFX6-NEXT:    v_mov_b32_e32 v5, s117945; GFX6-NEXT:    buffer_store_dwordx4 v[2:5], off, s[0:3], 0 offset:1447946; GFX6-NEXT:    s_waitcnt expcnt(0)7947; GFX6-NEXT:    v_mov_b32_e32 v2, s127948; GFX6-NEXT:    v_mov_b32_e32 v3, s137949; GFX6-NEXT:    v_mov_b32_e32 v4, s147950; GFX6-NEXT:    v_mov_b32_e32 v5, s157951; GFX6-NEXT:    buffer_store_dwordx4 v[2:5], off, s[0:3], 0 offset:1287952; GFX6-NEXT:    s_waitcnt expcnt(0)7953; GFX6-NEXT:    v_mov_b32_e32 v2, s167954; GFX6-NEXT:    v_mov_b32_e32 v3, s177955; GFX6-NEXT:    v_mov_b32_e32 v4, s427956; GFX6-NEXT:    v_mov_b32_e32 v5, s437957; GFX6-NEXT:    buffer_store_dwordx4 v[2:5], off, s[0:3], 0 offset:1127958; GFX6-NEXT:    s_waitcnt expcnt(0)7959; GFX6-NEXT:    v_mov_b32_e32 v2, s447960; GFX6-NEXT:    v_mov_b32_e32 v3, s457961; GFX6-NEXT:    v_mov_b32_e32 v4, s387962; GFX6-NEXT:    v_mov_b32_e32 v5, s397963; GFX6-NEXT:    buffer_store_dwordx4 v[2:5], off, s[0:3], 0 offset:967964; GFX6-NEXT:    s_waitcnt expcnt(0)7965; GFX6-NEXT:    v_mov_b32_e32 v2, s407966; GFX6-NEXT:    v_mov_b32_e32 v3, s417967; GFX6-NEXT:    v_mov_b32_e32 v4, s347968; GFX6-NEXT:    v_mov_b32_e32 v5, s357969; GFX6-NEXT:    buffer_store_dwordx4 v[2:5], off, s[0:3], 0 offset:807970; GFX6-NEXT:    s_waitcnt expcnt(0)7971; GFX6-NEXT:    v_mov_b32_e32 v2, s367972; GFX6-NEXT:    v_mov_b32_e32 v3, s377973; GFX6-NEXT:    v_mov_b32_e32 v4, s287974; GFX6-NEXT:    v_mov_b32_e32 v5, s297975; GFX6-NEXT:    buffer_store_dwordx4 v[2:5], off, s[0:3], 0 offset:647976; GFX6-NEXT:    s_waitcnt expcnt(0)7977; GFX6-NEXT:    v_mov_b32_e32 v2, s307978; GFX6-NEXT:    v_mov_b32_e32 v3, s317979; GFX6-NEXT:    v_mov_b32_e32 v4, s247980; GFX6-NEXT:    v_mov_b32_e32 v5, s257981; GFX6-NEXT:    buffer_store_dwordx4 v[2:5], off, s[0:3], 0 offset:487982; GFX6-NEXT:    s_waitcnt expcnt(0)7983; GFX6-NEXT:    v_mov_b32_e32 v2, s267984; GFX6-NEXT:    v_mov_b32_e32 v3, s277985; GFX6-NEXT:    v_mov_b32_e32 v4, s207986; GFX6-NEXT:    v_mov_b32_e32 v5, s217987; GFX6-NEXT:    buffer_store_dwordx4 v[2:5], off, s[0:3], 0 offset:327988; GFX6-NEXT:    s_waitcnt expcnt(0)7989; GFX6-NEXT:    v_mov_b32_e32 v2, s227990; GFX6-NEXT:    v_mov_b32_e32 v3, s237991; GFX6-NEXT:    v_mov_b32_e32 v4, s187992; GFX6-NEXT:    v_mov_b32_e32 v5, s197993; GFX6-NEXT:    buffer_store_dwordx4 v[2:5], off, s[0:3], 0 offset:167994; GFX6-NEXT:    s_waitcnt expcnt(0)7995; GFX6-NEXT:    v_mov_b32_e32 v2, s47996; GFX6-NEXT:    v_mov_b32_e32 v3, s57997; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 07998; GFX6-NEXT:    s_endpgm7999;8000; GFX8-LABEL: constant_sextload_v32i1_to_v32i64:8001; GFX8:       ; %bb.0:8002; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x248003; GFX8-NEXT:    s_waitcnt lgkmcnt(0)8004; GFX8-NEXT:    s_load_dword s2, s[2:3], 0x08005; GFX8-NEXT:    s_waitcnt lgkmcnt(0)8006; GFX8-NEXT:    s_lshr_b32 s44, s2, 308007; GFX8-NEXT:    s_lshr_b32 s46, s2, 318008; GFX8-NEXT:    s_lshr_b32 s48, s2, 288009; GFX8-NEXT:    s_lshr_b32 s50, s2, 298010; GFX8-NEXT:    s_lshr_b32 s52, s2, 268011; GFX8-NEXT:    s_lshr_b32 s54, s2, 278012; GFX8-NEXT:    s_lshr_b32 s56, s2, 248013; GFX8-NEXT:    s_lshr_b32 s58, s2, 258014; GFX8-NEXT:    s_lshr_b32 s60, s2, 228015; GFX8-NEXT:    s_lshr_b32 s62, s2, 238016; GFX8-NEXT:    s_lshr_b32 s64, s2, 208017; GFX8-NEXT:    s_lshr_b32 s66, s2, 218018; GFX8-NEXT:    s_lshr_b32 s42, s2, 188019; GFX8-NEXT:    s_lshr_b32 s40, s2, 198020; GFX8-NEXT:    s_lshr_b32 s38, s2, 168021; GFX8-NEXT:    s_lshr_b32 s36, s2, 178022; GFX8-NEXT:    s_lshr_b32 s34, s2, 148023; GFX8-NEXT:    s_lshr_b32 s30, s2, 158024; GFX8-NEXT:    s_lshr_b32 s28, s2, 128025; GFX8-NEXT:    s_lshr_b32 s26, s2, 138026; GFX8-NEXT:    s_lshr_b32 s24, s2, 108027; GFX8-NEXT:    s_lshr_b32 s22, s2, 118028; GFX8-NEXT:    s_lshr_b32 s20, s2, 88029; GFX8-NEXT:    s_lshr_b32 s18, s2, 98030; GFX8-NEXT:    s_lshr_b32 s16, s2, 68031; GFX8-NEXT:    s_lshr_b32 s14, s2, 78032; GFX8-NEXT:    s_lshr_b32 s12, s2, 48033; GFX8-NEXT:    s_lshr_b32 s10, s2, 58034; GFX8-NEXT:    s_lshr_b32 s8, s2, 28035; GFX8-NEXT:    s_lshr_b32 s6, s2, 38036; GFX8-NEXT:    s_lshr_b32 s68, s2, 18037; GFX8-NEXT:    s_bfe_i64 s[4:5], s[2:3], 0x100008038; GFX8-NEXT:    s_bfe_i64 s[2:3], s[68:69], 0x100008039; GFX8-NEXT:    s_bfe_i64 s[6:7], s[6:7], 0x100008040; GFX8-NEXT:    s_bfe_i64 s[8:9], s[8:9], 0x100008041; GFX8-NEXT:    s_bfe_i64 s[10:11], s[10:11], 0x100008042; GFX8-NEXT:    s_bfe_i64 s[12:13], s[12:13], 0x100008043; GFX8-NEXT:    s_bfe_i64 s[14:15], s[14:15], 0x100008044; GFX8-NEXT:    s_bfe_i64 s[16:17], s[16:17], 0x100008045; GFX8-NEXT:    s_bfe_i64 s[18:19], s[18:19], 0x100008046; GFX8-NEXT:    s_bfe_i64 s[20:21], s[20:21], 0x100008047; GFX8-NEXT:    s_bfe_i64 s[22:23], s[22:23], 0x100008048; GFX8-NEXT:    s_bfe_i64 s[24:25], s[24:25], 0x100008049; GFX8-NEXT:    s_bfe_i64 s[26:27], s[26:27], 0x100008050; GFX8-NEXT:    s_bfe_i64 s[28:29], s[28:29], 0x100008051; GFX8-NEXT:    s_bfe_i64 s[30:31], s[30:31], 0x100008052; GFX8-NEXT:    s_bfe_i64 s[34:35], s[34:35], 0x100008053; GFX8-NEXT:    s_bfe_i64 s[36:37], s[36:37], 0x100008054; GFX8-NEXT:    s_bfe_i64 s[38:39], s[38:39], 0x100008055; GFX8-NEXT:    s_bfe_i64 s[40:41], s[40:41], 0x100008056; GFX8-NEXT:    s_bfe_i64 s[42:43], s[42:43], 0x100008057; GFX8-NEXT:    s_bfe_i64 s[66:67], s[66:67], 0x100008058; GFX8-NEXT:    s_bfe_i64 s[64:65], s[64:65], 0x100008059; GFX8-NEXT:    s_bfe_i64 s[62:63], s[62:63], 0x100008060; GFX8-NEXT:    s_bfe_i64 s[60:61], s[60:61], 0x100008061; GFX8-NEXT:    s_bfe_i64 s[58:59], s[58:59], 0x100008062; GFX8-NEXT:    s_bfe_i64 s[56:57], s[56:57], 0x100008063; GFX8-NEXT:    s_bfe_i64 s[54:55], s[54:55], 0x100008064; GFX8-NEXT:    s_bfe_i64 s[52:53], s[52:53], 0x100008065; GFX8-NEXT:    s_bfe_i64 s[50:51], s[50:51], 0x100008066; GFX8-NEXT:    s_bfe_i64 s[48:49], s[48:49], 0x100008067; GFX8-NEXT:    s_bfe_i64 s[46:47], s[46:47], 0x100008068; GFX8-NEXT:    s_bfe_i64 s[44:45], s[44:45], 0x100008069; GFX8-NEXT:    v_mov_b32_e32 v0, s448070; GFX8-NEXT:    s_add_u32 s44, s0, 0xf08071; GFX8-NEXT:    v_mov_b32_e32 v1, s458072; GFX8-NEXT:    s_addc_u32 s45, s1, 08073; GFX8-NEXT:    v_mov_b32_e32 v4, s448074; GFX8-NEXT:    v_mov_b32_e32 v2, s468075; GFX8-NEXT:    v_mov_b32_e32 v3, s478076; GFX8-NEXT:    v_mov_b32_e32 v5, s458077; GFX8-NEXT:    s_add_u32 s44, s0, 0xe08078; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8079; GFX8-NEXT:    s_addc_u32 s45, s1, 08080; GFX8-NEXT:    v_mov_b32_e32 v4, s448081; GFX8-NEXT:    v_mov_b32_e32 v0, s488082; GFX8-NEXT:    v_mov_b32_e32 v1, s498083; GFX8-NEXT:    v_mov_b32_e32 v2, s508084; GFX8-NEXT:    v_mov_b32_e32 v3, s518085; GFX8-NEXT:    v_mov_b32_e32 v5, s458086; GFX8-NEXT:    s_add_u32 s44, s0, 0xd08087; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8088; GFX8-NEXT:    s_addc_u32 s45, s1, 08089; GFX8-NEXT:    v_mov_b32_e32 v4, s448090; GFX8-NEXT:    v_mov_b32_e32 v0, s528091; GFX8-NEXT:    v_mov_b32_e32 v1, s538092; GFX8-NEXT:    v_mov_b32_e32 v2, s548093; GFX8-NEXT:    v_mov_b32_e32 v3, s558094; GFX8-NEXT:    v_mov_b32_e32 v5, s458095; GFX8-NEXT:    s_add_u32 s44, s0, 0xc08096; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8097; GFX8-NEXT:    s_addc_u32 s45, s1, 08098; GFX8-NEXT:    v_mov_b32_e32 v4, s448099; GFX8-NEXT:    v_mov_b32_e32 v0, s568100; GFX8-NEXT:    v_mov_b32_e32 v1, s578101; GFX8-NEXT:    v_mov_b32_e32 v2, s588102; GFX8-NEXT:    v_mov_b32_e32 v3, s598103; GFX8-NEXT:    v_mov_b32_e32 v5, s458104; GFX8-NEXT:    s_add_u32 s44, s0, 0xb08105; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8106; GFX8-NEXT:    s_addc_u32 s45, s1, 08107; GFX8-NEXT:    v_mov_b32_e32 v4, s448108; GFX8-NEXT:    v_mov_b32_e32 v0, s608109; GFX8-NEXT:    v_mov_b32_e32 v1, s618110; GFX8-NEXT:    v_mov_b32_e32 v2, s628111; GFX8-NEXT:    v_mov_b32_e32 v3, s638112; GFX8-NEXT:    v_mov_b32_e32 v5, s458113; GFX8-NEXT:    s_add_u32 s44, s0, 0xa08114; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8115; GFX8-NEXT:    s_addc_u32 s45, s1, 08116; GFX8-NEXT:    v_mov_b32_e32 v4, s448117; GFX8-NEXT:    v_mov_b32_e32 v0, s648118; GFX8-NEXT:    v_mov_b32_e32 v1, s658119; GFX8-NEXT:    v_mov_b32_e32 v2, s668120; GFX8-NEXT:    v_mov_b32_e32 v3, s678121; GFX8-NEXT:    v_mov_b32_e32 v5, s458122; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8123; GFX8-NEXT:    s_nop 08124; GFX8-NEXT:    v_mov_b32_e32 v2, s408125; GFX8-NEXT:    s_add_u32 s40, s0, 0x908126; GFX8-NEXT:    v_mov_b32_e32 v3, s418127; GFX8-NEXT:    s_addc_u32 s41, s1, 08128; GFX8-NEXT:    v_mov_b32_e32 v4, s408129; GFX8-NEXT:    v_mov_b32_e32 v0, s428130; GFX8-NEXT:    v_mov_b32_e32 v1, s438131; GFX8-NEXT:    v_mov_b32_e32 v5, s418132; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8133; GFX8-NEXT:    s_nop 08134; GFX8-NEXT:    v_mov_b32_e32 v2, s368135; GFX8-NEXT:    s_add_u32 s36, s0, 0x808136; GFX8-NEXT:    v_mov_b32_e32 v3, s378137; GFX8-NEXT:    s_addc_u32 s37, s1, 08138; GFX8-NEXT:    v_mov_b32_e32 v4, s368139; GFX8-NEXT:    v_mov_b32_e32 v0, s388140; GFX8-NEXT:    v_mov_b32_e32 v1, s398141; GFX8-NEXT:    v_mov_b32_e32 v5, s378142; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8143; GFX8-NEXT:    s_nop 08144; GFX8-NEXT:    v_mov_b32_e32 v2, s308145; GFX8-NEXT:    s_add_u32 s30, s0, 0x708146; GFX8-NEXT:    v_mov_b32_e32 v3, s318147; GFX8-NEXT:    s_addc_u32 s31, s1, 08148; GFX8-NEXT:    v_mov_b32_e32 v4, s308149; GFX8-NEXT:    v_mov_b32_e32 v0, s348150; GFX8-NEXT:    v_mov_b32_e32 v1, s358151; GFX8-NEXT:    v_mov_b32_e32 v5, s318152; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8153; GFX8-NEXT:    s_nop 08154; GFX8-NEXT:    v_mov_b32_e32 v2, s268155; GFX8-NEXT:    s_add_u32 s26, s0, 0x608156; GFX8-NEXT:    v_mov_b32_e32 v3, s278157; GFX8-NEXT:    s_addc_u32 s27, s1, 08158; GFX8-NEXT:    v_mov_b32_e32 v4, s268159; GFX8-NEXT:    v_mov_b32_e32 v0, s288160; GFX8-NEXT:    v_mov_b32_e32 v1, s298161; GFX8-NEXT:    v_mov_b32_e32 v5, s278162; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8163; GFX8-NEXT:    s_nop 08164; GFX8-NEXT:    v_mov_b32_e32 v2, s228165; GFX8-NEXT:    s_add_u32 s22, s0, 0x508166; GFX8-NEXT:    v_mov_b32_e32 v3, s238167; GFX8-NEXT:    s_addc_u32 s23, s1, 08168; GFX8-NEXT:    v_mov_b32_e32 v4, s228169; GFX8-NEXT:    v_mov_b32_e32 v0, s248170; GFX8-NEXT:    v_mov_b32_e32 v1, s258171; GFX8-NEXT:    v_mov_b32_e32 v5, s238172; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8173; GFX8-NEXT:    s_nop 08174; GFX8-NEXT:    v_mov_b32_e32 v2, s188175; GFX8-NEXT:    s_add_u32 s18, s0, 648176; GFX8-NEXT:    v_mov_b32_e32 v3, s198177; GFX8-NEXT:    s_addc_u32 s19, s1, 08178; GFX8-NEXT:    v_mov_b32_e32 v4, s188179; GFX8-NEXT:    v_mov_b32_e32 v0, s208180; GFX8-NEXT:    v_mov_b32_e32 v1, s218181; GFX8-NEXT:    v_mov_b32_e32 v5, s198182; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8183; GFX8-NEXT:    s_nop 08184; GFX8-NEXT:    v_mov_b32_e32 v2, s148185; GFX8-NEXT:    s_add_u32 s14, s0, 488186; GFX8-NEXT:    v_mov_b32_e32 v3, s158187; GFX8-NEXT:    s_addc_u32 s15, s1, 08188; GFX8-NEXT:    v_mov_b32_e32 v4, s148189; GFX8-NEXT:    v_mov_b32_e32 v0, s168190; GFX8-NEXT:    v_mov_b32_e32 v1, s178191; GFX8-NEXT:    v_mov_b32_e32 v5, s158192; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8193; GFX8-NEXT:    s_nop 08194; GFX8-NEXT:    v_mov_b32_e32 v2, s108195; GFX8-NEXT:    s_add_u32 s10, s0, 328196; GFX8-NEXT:    v_mov_b32_e32 v3, s118197; GFX8-NEXT:    s_addc_u32 s11, s1, 08198; GFX8-NEXT:    v_mov_b32_e32 v4, s108199; GFX8-NEXT:    v_mov_b32_e32 v0, s128200; GFX8-NEXT:    v_mov_b32_e32 v1, s138201; GFX8-NEXT:    v_mov_b32_e32 v5, s118202; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8203; GFX8-NEXT:    s_nop 08204; GFX8-NEXT:    v_mov_b32_e32 v2, s68205; GFX8-NEXT:    s_add_u32 s6, s0, 168206; GFX8-NEXT:    v_mov_b32_e32 v3, s78207; GFX8-NEXT:    s_addc_u32 s7, s1, 08208; GFX8-NEXT:    v_mov_b32_e32 v4, s68209; GFX8-NEXT:    v_mov_b32_e32 v0, s88210; GFX8-NEXT:    v_mov_b32_e32 v1, s98211; GFX8-NEXT:    v_mov_b32_e32 v5, s78212; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8213; GFX8-NEXT:    v_mov_b32_e32 v5, s18214; GFX8-NEXT:    v_mov_b32_e32 v0, s48215; GFX8-NEXT:    v_mov_b32_e32 v1, s58216; GFX8-NEXT:    v_mov_b32_e32 v2, s28217; GFX8-NEXT:    v_mov_b32_e32 v3, s38218; GFX8-NEXT:    v_mov_b32_e32 v4, s08219; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8220; GFX8-NEXT:    s_endpgm8221;8222; EG-LABEL: constant_sextload_v32i1_to_v32i64:8223; EG:       ; %bb.0:8224; EG-NEXT:    ALU 0, @24, KC0[CB0:0-32], KC1[]8225; EG-NEXT:    TEX 0 @228226; EG-NEXT:    ALU 92, @25, KC0[CB0:0-32], KC1[]8227; EG-NEXT:    ALU 65, @118, KC0[CB0:0-32], KC1[]8228; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T26.XYZW, T42.X, 08229; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T40.XYZW, T41.X, 08230; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T27.XYZW, T34.X, 08231; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T39.XYZW, T24.X, 08232; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T28.XYZW, T23.X, 08233; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T38.XYZW, T22.X, 08234; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T29.XYZW, T21.X, 08235; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T37.XYZW, T20.X, 08236; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T30.XYZW, T19.X, 08237; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T36.XYZW, T18.X, 08238; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T31.XYZW, T17.X, 08239; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T11.XYZW, T16.X, 08240; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T32.XYZW, T15.X, 08241; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T35.XYZW, T14.X, 08242; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T33.XYZW, T13.X, 08243; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T25.XYZW, T12.X, 18244; EG-NEXT:    CF_END8245; EG-NEXT:    PAD8246; EG-NEXT:    Fetch clause starting at 22:8247; EG-NEXT:     VTX_READ_32 T11.X, T11.X, 0, #18248; EG-NEXT:    ALU clause starting at 24:8249; EG-NEXT:     MOV * T11.X, KC0[2].Z,8250; EG-NEXT:    ALU clause starting at 25:8251; EG-NEXT:     LSHR T12.X, KC0[2].Y, literal.x,8252; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,8253; EG-NEXT:    2(2.802597e-45), 16(2.242078e-44)8254; EG-NEXT:     LSHR T13.X, PV.W, literal.x,8255; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,8256; EG-NEXT:    2(2.802597e-45), 32(4.484155e-44)8257; EG-NEXT:     LSHR T14.X, PV.W, literal.x,8258; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,8259; EG-NEXT:    2(2.802597e-45), 48(6.726233e-44)8260; EG-NEXT:     LSHR T15.X, PV.W, literal.x,8261; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,8262; EG-NEXT:    2(2.802597e-45), 64(8.968310e-44)8263; EG-NEXT:     LSHR T16.X, PV.W, literal.x,8264; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,8265; EG-NEXT:    2(2.802597e-45), 80(1.121039e-43)8266; EG-NEXT:     LSHR T17.X, PV.W, literal.x,8267; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,8268; EG-NEXT:    2(2.802597e-45), 96(1.345247e-43)8269; EG-NEXT:     LSHR T18.X, PV.W, literal.x,8270; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,8271; EG-NEXT:    2(2.802597e-45), 112(1.569454e-43)8272; EG-NEXT:     LSHR T19.X, PV.W, literal.x,8273; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,8274; EG-NEXT:    2(2.802597e-45), 128(1.793662e-43)8275; EG-NEXT:     LSHR T20.X, PV.W, literal.x,8276; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,8277; EG-NEXT:    2(2.802597e-45), 144(2.017870e-43)8278; EG-NEXT:     LSHR T21.X, PV.W, literal.x,8279; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,8280; EG-NEXT:    2(2.802597e-45), 160(2.242078e-43)8281; EG-NEXT:     LSHR T22.X, PV.W, literal.x,8282; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,8283; EG-NEXT:    2(2.802597e-45), 176(2.466285e-43)8284; EG-NEXT:     LSHR T23.X, PV.W, literal.x,8285; EG-NEXT:     LSHR T0.Y, T11.X, literal.y,8286; EG-NEXT:     LSHR T0.Z, T11.X, literal.z,8287; EG-NEXT:     LSHR * T0.W, T11.X, literal.w,8288; EG-NEXT:    2(2.802597e-45), 28(3.923636e-44)8289; EG-NEXT:    29(4.063766e-44), 24(3.363116e-44)8290; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.x,8291; EG-NEXT:    192(2.690493e-43), 0(0.000000e+00)8292; EG-NEXT:     LSHR T24.X, PV.W, literal.x,8293; EG-NEXT:     LSHR T1.Y, T11.X, literal.y,8294; EG-NEXT:     LSHR T1.Z, T11.X, literal.z,8295; EG-NEXT:     LSHR * T1.W, T11.X, literal.w,8296; EG-NEXT:    2(2.802597e-45), 25(3.503246e-44)8297; EG-NEXT:    20(2.802597e-44), 21(2.942727e-44)8298; EG-NEXT:     LSHR * T2.W, T11.X, literal.x,8299; EG-NEXT:    16(2.242078e-44), 0(0.000000e+00)8300; EG-NEXT:     BFE_INT T25.X, T11.X, 0.0, 1,8301; EG-NEXT:     LSHR T2.Y, T11.X, literal.x,8302; EG-NEXT:     ASHR T26.Z, T11.X, literal.y,8303; EG-NEXT:     LSHR T3.W, T11.X, literal.z,8304; EG-NEXT:     LSHR * T4.W, T11.X, literal.w,8305; EG-NEXT:    17(2.382207e-44), 31(4.344025e-44)8306; EG-NEXT:    27(3.783506e-44), 30(4.203895e-44)8307; EG-NEXT:     BFE_INT T26.X, PS, 0.0, 1,8308; EG-NEXT:     LSHR T3.Y, T11.X, literal.x,8309; EG-NEXT:     BFE_INT T27.Z, PV.W, 0.0, 1,8310; EG-NEXT:     LSHR T3.W, T11.X, literal.y,8311; EG-NEXT:     LSHR * T4.W, T11.X, literal.z,8312; EG-NEXT:    12(1.681558e-44), 23(3.222986e-44)8313; EG-NEXT:    26(3.643376e-44), 0(0.000000e+00)8314; EG-NEXT:     BFE_INT T27.X, PS, 0.0, 1,8315; EG-NEXT:     MOV T26.Y, PV.X,8316; EG-NEXT:     BFE_INT T28.Z, PV.W, 0.0, 1,8317; EG-NEXT:     LSHR T3.W, T11.X, literal.x,8318; EG-NEXT:     LSHR * T4.W, T11.X, literal.y,8319; EG-NEXT:    19(2.662467e-44), 22(3.082857e-44)8320; EG-NEXT:     BFE_INT T28.X, PS, 0.0, 1,8321; EG-NEXT:     MOV T27.Y, PV.X,8322; EG-NEXT:     BFE_INT T29.Z, PV.W, 0.0, 1,8323; EG-NEXT:     LSHR T3.W, T11.X, literal.x,8324; EG-NEXT:     LSHR * T4.W, T11.X, literal.y,8325; EG-NEXT:    15(2.101948e-44), 18(2.522337e-44)8326; EG-NEXT:     BFE_INT T29.X, PS, 0.0, 1,8327; EG-NEXT:     MOV T28.Y, PV.X,8328; EG-NEXT:     BFE_INT T30.Z, PV.W, 0.0, 1,8329; EG-NEXT:     LSHR T3.W, T11.X, literal.x,8330; EG-NEXT:     LSHR * T4.W, T11.X, literal.y,8331; EG-NEXT:    11(1.541428e-44), 14(1.961818e-44)8332; EG-NEXT:     BFE_INT T30.X, PS, 0.0, 1,8333; EG-NEXT:     MOV T29.Y, PV.X,8334; EG-NEXT:     BFE_INT T31.Z, PV.W, 0.0, 1,8335; EG-NEXT:     LSHR T3.W, T11.X, literal.x,8336; EG-NEXT:     LSHR * T4.W, T11.X, literal.y,8337; EG-NEXT:    7(9.809089e-45), 10(1.401298e-44)8338; EG-NEXT:     BFE_INT T31.X, PS, 0.0, 1,8339; EG-NEXT:     MOV T30.Y, PV.X,8340; EG-NEXT:     BFE_INT T32.Z, PV.W, 0.0, 1,8341; EG-NEXT:     LSHR T3.W, T11.X, literal.x,8342; EG-NEXT:     LSHR * T4.W, T11.X, literal.y,8343; EG-NEXT:    3(4.203895e-45), 6(8.407791e-45)8344; EG-NEXT:    ALU clause starting at 118:8345; EG-NEXT:     BFE_INT T32.X, T4.W, 0.0, 1,8346; EG-NEXT:     MOV T31.Y, T31.X,8347; EG-NEXT:     BFE_INT T33.Z, T3.W, 0.0, 1, BS:VEC_120/SCL_2128348; EG-NEXT:     LSHR T3.W, T11.X, 1, BS:VEC_120/SCL_2128349; EG-NEXT:     LSHR * T4.W, T11.X, literal.x,8350; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)8351; EG-NEXT:     BFE_INT T33.X, PS, 0.0, 1,8352; EG-NEXT:     MOV T32.Y, PV.X,8353; EG-NEXT:     BFE_INT T25.Z, PV.W, 0.0, 1,8354; EG-NEXT:     LSHR T3.W, T11.X, literal.x,8355; EG-NEXT:     ADD_INT * T4.W, KC0[2].Y, literal.y,8356; EG-NEXT:    5(7.006492e-45), 208(2.914701e-43)8357; EG-NEXT:     LSHR T34.X, PS, literal.x,8358; EG-NEXT:     MOV T33.Y, PV.X,8359; EG-NEXT:     BFE_INT T35.Z, PV.W, 0.0, 1,8360; EG-NEXT:     LSHR T3.W, T11.X, literal.y,8361; EG-NEXT:     LSHR * T4.W, T11.X, literal.z,8362; EG-NEXT:    2(2.802597e-45), 9(1.261169e-44)8363; EG-NEXT:    4(5.605194e-45), 0(0.000000e+00)8364; EG-NEXT:     BFE_INT T35.X, PS, 0.0, 1,8365; EG-NEXT:     MOV T25.Y, T25.X,8366; EG-NEXT:     BFE_INT T11.Z, PV.W, 0.0, 1,8367; EG-NEXT:     LSHR T3.W, T11.X, literal.x, BS:VEC_120/SCL_2128368; EG-NEXT:     LSHR * T4.W, T11.X, literal.y,8369; EG-NEXT:    13(1.821688e-44), 8(1.121039e-44)8370; EG-NEXT:     BFE_INT T11.X, PS, 0.0, 1,8371; EG-NEXT:     MOV T35.Y, PV.X,8372; EG-NEXT:     BFE_INT T36.Z, PV.W, 0.0, 1,8373; EG-NEXT:     MOV T25.W, T25.Z,8374; EG-NEXT:     MOV * T33.W, T33.Z,8375; EG-NEXT:     BFE_INT T36.X, T3.Y, 0.0, 1,8376; EG-NEXT:     MOV T11.Y, PV.X,8377; EG-NEXT:     BFE_INT T37.Z, T2.Y, 0.0, 1, BS:VEC_120/SCL_2128378; EG-NEXT:     MOV T35.W, T35.Z,8379; EG-NEXT:     MOV * T32.W, T32.Z,8380; EG-NEXT:     BFE_INT T37.X, T2.W, 0.0, 1,8381; EG-NEXT:     MOV T36.Y, PV.X,8382; EG-NEXT:     BFE_INT T38.Z, T1.W, 0.0, 1, BS:VEC_120/SCL_2128383; EG-NEXT:     MOV T11.W, T11.Z,8384; EG-NEXT:     MOV * T31.W, T31.Z,8385; EG-NEXT:     BFE_INT T38.X, T1.Z, 0.0, 1,8386; EG-NEXT:     MOV T37.Y, PV.X,8387; EG-NEXT:     BFE_INT T39.Z, T1.Y, 0.0, 1,8388; EG-NEXT:     MOV T36.W, T36.Z, BS:VEC_120/SCL_2128389; EG-NEXT:     MOV * T30.W, T30.Z,8390; EG-NEXT:     BFE_INT T39.X, T0.W, 0.0, 1,8391; EG-NEXT:     MOV T38.Y, PV.X,8392; EG-NEXT:     BFE_INT T40.Z, T0.Z, 0.0, 1,8393; EG-NEXT:     MOV T37.W, T37.Z, BS:VEC_120/SCL_2128394; EG-NEXT:     MOV * T29.W, T29.Z,8395; EG-NEXT:     BFE_INT T40.X, T0.Y, 0.0, 1,8396; EG-NEXT:     MOV T39.Y, PV.X,8397; EG-NEXT:     ADD_INT T0.Z, KC0[2].Y, literal.x,8398; EG-NEXT:     MOV T38.W, T38.Z,8399; EG-NEXT:     MOV * T28.W, T28.Z,8400; EG-NEXT:    224(3.138909e-43), 0(0.000000e+00)8401; EG-NEXT:     LSHR T41.X, PV.Z, literal.x,8402; EG-NEXT:     MOV T40.Y, PV.X,8403; EG-NEXT:     ADD_INT T0.Z, KC0[2].Y, literal.y,8404; EG-NEXT:     MOV T39.W, T39.Z,8405; EG-NEXT:     MOV * T27.W, T27.Z,8406; EG-NEXT:    2(2.802597e-45), 240(3.363116e-43)8407; EG-NEXT:     LSHR T42.X, PV.Z, literal.x,8408; EG-NEXT:     MOV T40.W, T40.Z,8409; EG-NEXT:     MOV * T26.W, T26.Z,8410; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)8411;8412; GFX12-LABEL: constant_sextload_v32i1_to_v32i64:8413; GFX12:       ; %bb.0:8414; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x248415; GFX12-NEXT:    s_wait_kmcnt 0x08416; GFX12-NEXT:    s_load_b32 s2, s[2:3], 0x08417; GFX12-NEXT:    s_wait_kmcnt 0x08418; GFX12-NEXT:    s_lshr_b32 s34, s2, 308419; GFX12-NEXT:    s_lshr_b32 s36, s2, 318420; GFX12-NEXT:    s_lshr_b32 s38, s2, 288421; GFX12-NEXT:    s_lshr_b32 s40, s2, 298422; GFX12-NEXT:    s_lshr_b32 s42, s2, 268423; GFX12-NEXT:    s_lshr_b32 s44, s2, 278424; GFX12-NEXT:    s_bfe_i64 s[34:35], s[34:35], 0x100008425; GFX12-NEXT:    s_bfe_i64 s[36:37], s[36:37], 0x100008426; GFX12-NEXT:    s_lshr_b32 s46, s2, 248427; GFX12-NEXT:    s_lshr_b32 s48, s2, 258428; GFX12-NEXT:    s_bfe_i64 s[40:41], s[40:41], 0x100008429; GFX12-NEXT:    s_bfe_i64 s[38:39], s[38:39], 0x100008430; GFX12-NEXT:    v_dual_mov_b32 v24, 0 :: v_dual_mov_b32 v1, s358431; GFX12-NEXT:    s_bfe_i64 s[44:45], s[44:45], 0x100008432; GFX12-NEXT:    s_bfe_i64 s[42:43], s[42:43], 0x100008433; GFX12-NEXT:    v_dual_mov_b32 v0, s34 :: v_dual_mov_b32 v3, s378434; GFX12-NEXT:    v_dual_mov_b32 v2, s36 :: v_dual_mov_b32 v5, s398435; GFX12-NEXT:    s_lshr_b32 s26, s2, 228436; GFX12-NEXT:    s_lshr_b32 s50, s2, 238437; GFX12-NEXT:    s_bfe_i64 s[48:49], s[48:49], 0x100008438; GFX12-NEXT:    s_bfe_i64 s[46:47], s[46:47], 0x100008439; GFX12-NEXT:    v_dual_mov_b32 v4, s38 :: v_dual_mov_b32 v7, s418440; GFX12-NEXT:    v_dual_mov_b32 v6, s40 :: v_dual_mov_b32 v9, s438441; GFX12-NEXT:    s_lshr_b32 s52, s2, 208442; GFX12-NEXT:    s_lshr_b32 s54, s2, 218443; GFX12-NEXT:    v_dual_mov_b32 v8, s42 :: v_dual_mov_b32 v11, s458444; GFX12-NEXT:    v_dual_mov_b32 v10, s44 :: v_dual_mov_b32 v13, s478445; GFX12-NEXT:    s_lshr_b32 s56, s2, 188446; GFX12-NEXT:    s_lshr_b32 s58, s2, 198447; GFX12-NEXT:    s_bfe_i64 s[50:51], s[50:51], 0x100008448; GFX12-NEXT:    v_dual_mov_b32 v12, s46 :: v_dual_mov_b32 v15, s498449; GFX12-NEXT:    s_bfe_i64 s[26:27], s[26:27], 0x100008450; GFX12-NEXT:    v_mov_b32_e32 v14, s488451; GFX12-NEXT:    s_lshr_b32 s60, s2, 168452; GFX12-NEXT:    s_lshr_b32 s62, s2, 178453; GFX12-NEXT:    s_bfe_i64 s[54:55], s[54:55], 0x100008454; GFX12-NEXT:    s_bfe_i64 s[52:53], s[52:53], 0x100008455; GFX12-NEXT:    s_lshr_b32 s64, s2, 148456; GFX12-NEXT:    s_lshr_b32 s66, s2, 158457; GFX12-NEXT:    s_bfe_i64 s[58:59], s[58:59], 0x100008458; GFX12-NEXT:    s_bfe_i64 s[56:57], s[56:57], 0x100008459; GFX12-NEXT:    s_clause 0x38460; GFX12-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:2408461; GFX12-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:2248462; GFX12-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:2088463; GFX12-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:1928464; GFX12-NEXT:    v_dual_mov_b32 v0, s26 :: v_dual_mov_b32 v3, s518465; GFX12-NEXT:    v_dual_mov_b32 v1, s27 :: v_dual_mov_b32 v2, s508466; GFX12-NEXT:    v_mov_b32_e32 v5, s538467; GFX12-NEXT:    s_lshr_b32 s30, s2, 128468; GFX12-NEXT:    s_lshr_b32 s28, s2, 138469; GFX12-NEXT:    s_lshr_b32 s24, s2, 108470; GFX12-NEXT:    s_lshr_b32 s22, s2, 118471; GFX12-NEXT:    s_bfe_i64 s[62:63], s[62:63], 0x100008472; GFX12-NEXT:    s_bfe_i64 s[60:61], s[60:61], 0x100008473; GFX12-NEXT:    v_dual_mov_b32 v4, s52 :: v_dual_mov_b32 v7, s558474; GFX12-NEXT:    v_dual_mov_b32 v6, s54 :: v_dual_mov_b32 v9, s578475; GFX12-NEXT:    s_lshr_b32 s20, s2, 88476; GFX12-NEXT:    s_lshr_b32 s18, s2, 98477; GFX12-NEXT:    s_bfe_i64 s[66:67], s[66:67], 0x100008478; GFX12-NEXT:    s_bfe_i64 s[64:65], s[64:65], 0x100008479; GFX12-NEXT:    v_dual_mov_b32 v8, s56 :: v_dual_mov_b32 v11, s598480; GFX12-NEXT:    v_dual_mov_b32 v10, s58 :: v_dual_mov_b32 v13, s618481; GFX12-NEXT:    s_lshr_b32 s16, s2, 68482; GFX12-NEXT:    s_lshr_b32 s14, s2, 78483; GFX12-NEXT:    s_bfe_i64 s[22:23], s[22:23], 0x100008484; GFX12-NEXT:    s_bfe_i64 s[24:25], s[24:25], 0x100008485; GFX12-NEXT:    s_bfe_i64 s[28:29], s[28:29], 0x100008486; GFX12-NEXT:    s_bfe_i64 s[30:31], s[30:31], 0x100008487; GFX12-NEXT:    v_dual_mov_b32 v12, s60 :: v_dual_mov_b32 v15, s638488; GFX12-NEXT:    v_dual_mov_b32 v14, s62 :: v_dual_mov_b32 v17, s658489; GFX12-NEXT:    s_lshr_b32 s12, s2, 48490; GFX12-NEXT:    s_lshr_b32 s10, s2, 58491; GFX12-NEXT:    s_bfe_i64 s[18:19], s[18:19], 0x100008492; GFX12-NEXT:    s_bfe_i64 s[20:21], s[20:21], 0x100008493; GFX12-NEXT:    v_dual_mov_b32 v16, s64 :: v_dual_mov_b32 v19, s678494; GFX12-NEXT:    v_dual_mov_b32 v18, s66 :: v_dual_mov_b32 v21, s318495; GFX12-NEXT:    s_lshr_b32 s8, s2, 28496; GFX12-NEXT:    s_lshr_b32 s6, s2, 38497; GFX12-NEXT:    s_bfe_i64 s[14:15], s[14:15], 0x100008498; GFX12-NEXT:    s_bfe_i64 s[16:17], s[16:17], 0x100008499; GFX12-NEXT:    v_dual_mov_b32 v20, s30 :: v_dual_mov_b32 v23, s298500; GFX12-NEXT:    v_mov_b32_e32 v22, s288501; GFX12-NEXT:    s_clause 0x58502; GFX12-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:1768503; GFX12-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:1608504; GFX12-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:1448505; GFX12-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:1288506; GFX12-NEXT:    global_store_b128 v24, v[16:19], s[0:1] offset:1128507; GFX12-NEXT:    global_store_b128 v24, v[20:23], s[0:1] offset:968508; GFX12-NEXT:    v_dual_mov_b32 v0, s24 :: v_dual_mov_b32 v3, s238509; GFX12-NEXT:    v_dual_mov_b32 v1, s25 :: v_dual_mov_b32 v2, s228510; GFX12-NEXT:    v_mov_b32_e32 v5, s218511; GFX12-NEXT:    s_lshr_b32 s68, s2, 18512; GFX12-NEXT:    s_bfe_i64 s[10:11], s[10:11], 0x100008513; GFX12-NEXT:    s_bfe_i64 s[12:13], s[12:13], 0x100008514; GFX12-NEXT:    v_dual_mov_b32 v4, s20 :: v_dual_mov_b32 v7, s198515; GFX12-NEXT:    v_dual_mov_b32 v6, s18 :: v_dual_mov_b32 v9, s178516; GFX12-NEXT:    s_bfe_i64 s[6:7], s[6:7], 0x100008517; GFX12-NEXT:    s_bfe_i64 s[8:9], s[8:9], 0x100008518; GFX12-NEXT:    v_dual_mov_b32 v8, s16 :: v_dual_mov_b32 v11, s158519; GFX12-NEXT:    v_dual_mov_b32 v10, s14 :: v_dual_mov_b32 v13, s138520; GFX12-NEXT:    s_bfe_i64 s[4:5], s[2:3], 0x100008521; GFX12-NEXT:    s_bfe_i64 s[2:3], s[68:69], 0x100008522; GFX12-NEXT:    v_dual_mov_b32 v12, s12 :: v_dual_mov_b32 v15, s118523; GFX12-NEXT:    v_dual_mov_b32 v14, s10 :: v_dual_mov_b32 v17, s98524; GFX12-NEXT:    v_dual_mov_b32 v16, s8 :: v_dual_mov_b32 v19, s78525; GFX12-NEXT:    v_dual_mov_b32 v18, s6 :: v_dual_mov_b32 v21, s58526; GFX12-NEXT:    v_dual_mov_b32 v20, s4 :: v_dual_mov_b32 v23, s38527; GFX12-NEXT:    v_mov_b32_e32 v22, s28528; GFX12-NEXT:    s_clause 0x58529; GFX12-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:808530; GFX12-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:648531; GFX12-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:488532; GFX12-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:328533; GFX12-NEXT:    global_store_b128 v24, v[16:19], s[0:1] offset:168534; GFX12-NEXT:    global_store_b128 v24, v[20:23], s[0:1]8535; GFX12-NEXT:    s_endpgm8536;8537; GFX1250-LABEL: constant_sextload_v32i1_to_v32i64:8538; GFX1250:       ; %bb.0:8539; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 18540; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x248541; GFX1250-NEXT:    s_wait_kmcnt 0x08542; GFX1250-NEXT:    s_load_b32 s2, s[2:3], 0x08543; GFX1250-NEXT:    s_wait_kmcnt 0x08544; GFX1250-NEXT:    s_lshr_b32 s34, s2, 308545; GFX1250-NEXT:    s_lshr_b32 s36, s2, 318546; GFX1250-NEXT:    s_lshr_b32 s38, s2, 288547; GFX1250-NEXT:    s_lshr_b32 s40, s2, 298548; GFX1250-NEXT:    s_lshr_b32 s42, s2, 268549; GFX1250-NEXT:    s_lshr_b32 s44, s2, 278550; GFX1250-NEXT:    s_bfe_i64 s[34:35], s[34:35], 0x100008551; GFX1250-NEXT:    s_bfe_i64 s[36:37], s[36:37], 0x100008552; GFX1250-NEXT:    s_lshr_b32 s46, s2, 248553; GFX1250-NEXT:    s_lshr_b32 s48, s2, 258554; GFX1250-NEXT:    s_bfe_i64 s[40:41], s[40:41], 0x100008555; GFX1250-NEXT:    s_bfe_i64 s[38:39], s[38:39], 0x100008556; GFX1250-NEXT:    v_dual_mov_b32 v24, 0 :: v_dual_mov_b32 v0, s348557; GFX1250-NEXT:    s_bfe_i64 s[44:45], s[44:45], 0x100008558; GFX1250-NEXT:    s_bfe_i64 s[42:43], s[42:43], 0x100008559; GFX1250-NEXT:    v_dual_mov_b32 v1, s35 :: v_dual_mov_b32 v2, s368560; GFX1250-NEXT:    v_dual_mov_b32 v3, s37 :: v_dual_mov_b32 v4, s388561; GFX1250-NEXT:    s_lshr_b32 s26, s2, 228562; GFX1250-NEXT:    s_lshr_b32 s50, s2, 238563; GFX1250-NEXT:    s_bfe_i64 s[48:49], s[48:49], 0x100008564; GFX1250-NEXT:    s_bfe_i64 s[46:47], s[46:47], 0x100008565; GFX1250-NEXT:    v_dual_mov_b32 v5, s39 :: v_dual_mov_b32 v6, s408566; GFX1250-NEXT:    v_dual_mov_b32 v7, s41 :: v_dual_mov_b32 v8, s428567; GFX1250-NEXT:    s_lshr_b32 s52, s2, 208568; GFX1250-NEXT:    s_lshr_b32 s54, s2, 218569; GFX1250-NEXT:    v_dual_mov_b32 v9, s43 :: v_dual_mov_b32 v10, s448570; GFX1250-NEXT:    v_dual_mov_b32 v11, s45 :: v_dual_mov_b32 v12, s468571; GFX1250-NEXT:    s_lshr_b32 s56, s2, 188572; GFX1250-NEXT:    s_lshr_b32 s58, s2, 198573; GFX1250-NEXT:    s_bfe_i64 s[50:51], s[50:51], 0x100008574; GFX1250-NEXT:    v_dual_mov_b32 v13, s47 :: v_dual_mov_b32 v14, s488575; GFX1250-NEXT:    s_bfe_i64 s[26:27], s[26:27], 0x100008576; GFX1250-NEXT:    v_mov_b32_e32 v15, s498577; GFX1250-NEXT:    s_lshr_b32 s60, s2, 168578; GFX1250-NEXT:    s_lshr_b32 s62, s2, 178579; GFX1250-NEXT:    s_bfe_i64 s[54:55], s[54:55], 0x100008580; GFX1250-NEXT:    s_bfe_i64 s[52:53], s[52:53], 0x100008581; GFX1250-NEXT:    s_lshr_b32 s64, s2, 148582; GFX1250-NEXT:    s_lshr_b32 s66, s2, 158583; GFX1250-NEXT:    s_bfe_i64 s[58:59], s[58:59], 0x100008584; GFX1250-NEXT:    s_bfe_i64 s[56:57], s[56:57], 0x100008585; GFX1250-NEXT:    s_clause 0x38586; GFX1250-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:2408587; GFX1250-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:2248588; GFX1250-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:2088589; GFX1250-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:1928590; GFX1250-NEXT:    s_wait_xcnt 0x38591; GFX1250-NEXT:    v_dual_mov_b32 v0, s26 :: v_dual_mov_b32 v1, s278592; GFX1250-NEXT:    v_dual_mov_b32 v2, s50 :: v_dual_mov_b32 v3, s518593; GFX1250-NEXT:    s_wait_xcnt 0x28594; GFX1250-NEXT:    v_mov_b32_e32 v4, s528595; GFX1250-NEXT:    s_lshr_b32 s30, s2, 128596; GFX1250-NEXT:    s_lshr_b32 s28, s2, 138597; GFX1250-NEXT:    s_lshr_b32 s24, s2, 108598; GFX1250-NEXT:    s_lshr_b32 s22, s2, 118599; GFX1250-NEXT:    s_bfe_i64 s[62:63], s[62:63], 0x100008600; GFX1250-NEXT:    s_bfe_i64 s[60:61], s[60:61], 0x100008601; GFX1250-NEXT:    v_dual_mov_b32 v5, s53 :: v_dual_mov_b32 v6, s548602; GFX1250-NEXT:    s_wait_xcnt 0x18603; GFX1250-NEXT:    v_dual_mov_b32 v7, s55 :: v_dual_mov_b32 v8, s568604; GFX1250-NEXT:    s_lshr_b32 s20, s2, 88605; GFX1250-NEXT:    s_lshr_b32 s18, s2, 98606; GFX1250-NEXT:    s_bfe_i64 s[66:67], s[66:67], 0x100008607; GFX1250-NEXT:    s_bfe_i64 s[64:65], s[64:65], 0x100008608; GFX1250-NEXT:    v_dual_mov_b32 v9, s57 :: v_dual_mov_b32 v10, s588609; GFX1250-NEXT:    s_wait_xcnt 0x08610; GFX1250-NEXT:    v_dual_mov_b32 v11, s59 :: v_dual_mov_b32 v12, s608611; GFX1250-NEXT:    s_lshr_b32 s16, s2, 68612; GFX1250-NEXT:    s_lshr_b32 s14, s2, 78613; GFX1250-NEXT:    s_bfe_i64 s[22:23], s[22:23], 0x100008614; GFX1250-NEXT:    s_bfe_i64 s[24:25], s[24:25], 0x100008615; GFX1250-NEXT:    s_bfe_i64 s[28:29], s[28:29], 0x100008616; GFX1250-NEXT:    s_bfe_i64 s[30:31], s[30:31], 0x100008617; GFX1250-NEXT:    v_dual_mov_b32 v13, s61 :: v_dual_mov_b32 v14, s628618; GFX1250-NEXT:    v_dual_mov_b32 v15, s63 :: v_dual_mov_b32 v16, s648619; GFX1250-NEXT:    s_lshr_b32 s12, s2, 48620; GFX1250-NEXT:    s_lshr_b32 s10, s2, 58621; GFX1250-NEXT:    s_bfe_i64 s[18:19], s[18:19], 0x100008622; GFX1250-NEXT:    s_bfe_i64 s[20:21], s[20:21], 0x100008623; GFX1250-NEXT:    v_dual_mov_b32 v17, s65 :: v_dual_mov_b32 v18, s668624; GFX1250-NEXT:    v_dual_mov_b32 v19, s67 :: v_dual_mov_b32 v20, s308625; GFX1250-NEXT:    s_lshr_b32 s8, s2, 28626; GFX1250-NEXT:    s_lshr_b32 s6, s2, 38627; GFX1250-NEXT:    s_bfe_i64 s[14:15], s[14:15], 0x100008628; GFX1250-NEXT:    s_bfe_i64 s[16:17], s[16:17], 0x100008629; GFX1250-NEXT:    v_dual_mov_b32 v21, s31 :: v_dual_mov_b32 v22, s288630; GFX1250-NEXT:    v_mov_b32_e32 v23, s298631; GFX1250-NEXT:    s_clause 0x58632; GFX1250-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:1768633; GFX1250-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:1608634; GFX1250-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:1448635; GFX1250-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:1288636; GFX1250-NEXT:    global_store_b128 v24, v[16:19], s[0:1] offset:1128637; GFX1250-NEXT:    global_store_b128 v24, v[20:23], s[0:1] offset:968638; GFX1250-NEXT:    s_wait_xcnt 0x58639; GFX1250-NEXT:    v_dual_mov_b32 v0, s24 :: v_dual_mov_b32 v1, s258640; GFX1250-NEXT:    v_dual_mov_b32 v2, s22 :: v_dual_mov_b32 v3, s238641; GFX1250-NEXT:    s_wait_xcnt 0x48642; GFX1250-NEXT:    v_mov_b32_e32 v4, s208643; GFX1250-NEXT:    s_lshr_b32 s68, s2, 18644; GFX1250-NEXT:    s_bfe_i64 s[10:11], s[10:11], 0x100008645; GFX1250-NEXT:    s_bfe_i64 s[12:13], s[12:13], 0x100008646; GFX1250-NEXT:    v_dual_mov_b32 v5, s21 :: v_dual_mov_b32 v6, s188647; GFX1250-NEXT:    s_wait_xcnt 0x38648; GFX1250-NEXT:    v_dual_mov_b32 v7, s19 :: v_dual_mov_b32 v8, s168649; GFX1250-NEXT:    s_bfe_i64 s[6:7], s[6:7], 0x100008650; GFX1250-NEXT:    s_bfe_i64 s[8:9], s[8:9], 0x100008651; GFX1250-NEXT:    v_dual_mov_b32 v9, s17 :: v_dual_mov_b32 v10, s148652; GFX1250-NEXT:    s_wait_xcnt 0x28653; GFX1250-NEXT:    v_dual_mov_b32 v11, s15 :: v_dual_mov_b32 v12, s128654; GFX1250-NEXT:    s_bfe_i64 s[4:5], s[2:3], 0x100008655; GFX1250-NEXT:    s_bfe_i64 s[2:3], s[68:69], 0x100008656; GFX1250-NEXT:    v_dual_mov_b32 v13, s13 :: v_dual_mov_b32 v14, s108657; GFX1250-NEXT:    s_wait_xcnt 0x18658; GFX1250-NEXT:    v_dual_mov_b32 v15, s11 :: v_dual_mov_b32 v16, s88659; GFX1250-NEXT:    v_dual_mov_b32 v17, s9 :: v_dual_mov_b32 v18, s68660; GFX1250-NEXT:    s_wait_xcnt 0x08661; GFX1250-NEXT:    v_dual_mov_b32 v19, s7 :: v_dual_mov_b32 v20, s48662; GFX1250-NEXT:    v_dual_mov_b32 v21, s5 :: v_dual_mov_b32 v22, s28663; GFX1250-NEXT:    v_mov_b32_e32 v23, s38664; GFX1250-NEXT:    s_clause 0x58665; GFX1250-NEXT:    global_store_b128 v24, v[0:3], s[0:1] offset:808666; GFX1250-NEXT:    global_store_b128 v24, v[4:7], s[0:1] offset:648667; GFX1250-NEXT:    global_store_b128 v24, v[8:11], s[0:1] offset:488668; GFX1250-NEXT:    global_store_b128 v24, v[12:15], s[0:1] offset:328669; GFX1250-NEXT:    global_store_b128 v24, v[16:19], s[0:1] offset:168670; GFX1250-NEXT:    global_store_b128 v24, v[20:23], s[0:1]8671; GFX1250-NEXT:    s_endpgm8672  %load = load <32 x i1>, ptr addrspace(4) %in8673  %ext = sext <32 x i1> %load to <32 x i64>8674  store <32 x i64> %ext, ptr addrspace(1) %out8675  ret void8676}8677 8678define amdgpu_kernel void @constant_zextload_v64i1_to_v64i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {8679; GFX6-LABEL: constant_zextload_v64i1_to_v64i64:8680; GFX6:       ; %bb.0:8681; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x98682; GFX6-NEXT:    s_waitcnt lgkmcnt(0)8683; GFX6-NEXT:    s_load_dwordx2 s[2:3], s[2:3], 0x08684; GFX6-NEXT:    s_waitcnt lgkmcnt(0)8685; GFX6-NEXT:    s_bfe_u32 s4, s2, 0x100038686; GFX6-NEXT:    s_bfe_u32 s5, s2, 0x100058687; GFX6-NEXT:    s_bfe_u32 s8, s2, 0x100078688; GFX6-NEXT:    s_bfe_u32 s11, s2, 0x100098689; GFX6-NEXT:    s_bfe_u32 s13, s2, 0x1000b8690; GFX6-NEXT:    s_bfe_u32 s15, s2, 0x1000d8691; GFX6-NEXT:    s_bfe_u32 s17, s2, 0x1000f8692; GFX6-NEXT:    s_bfe_u32 s19, s2, 0x100118693; GFX6-NEXT:    s_bfe_u32 s21, s2, 0x100138694; GFX6-NEXT:    s_bfe_u32 s23, s2, 0x100158695; GFX6-NEXT:    s_bfe_u32 s25, s2, 0x100178696; GFX6-NEXT:    s_bfe_u32 s27, s2, 0x100198697; GFX6-NEXT:    s_bfe_u32 s29, s2, 0x1001b8698; GFX6-NEXT:    s_bfe_u32 s31, s2, 0x1001d8699; GFX6-NEXT:    s_lshr_b32 s34, s2, 318700; GFX6-NEXT:    s_bfe_u32 s35, s3, 0x100038701; GFX6-NEXT:    s_bfe_u32 s36, s3, 0x100058702; GFX6-NEXT:    s_bfe_u32 s37, s3, 0x100078703; GFX6-NEXT:    s_bfe_u32 s38, s3, 0x100098704; GFX6-NEXT:    s_bfe_u32 s39, s3, 0x1000b8705; GFX6-NEXT:    s_bfe_u32 s40, s3, 0x1000d8706; GFX6-NEXT:    s_bfe_u32 s41, s3, 0x1000f8707; GFX6-NEXT:    s_bfe_u32 s42, s3, 0x100118708; GFX6-NEXT:    s_bfe_u32 s43, s3, 0x100138709; GFX6-NEXT:    s_bfe_u32 s44, s3, 0x100158710; GFX6-NEXT:    s_bfe_u32 s45, s3, 0x100178711; GFX6-NEXT:    s_bfe_u32 s46, s3, 0x100198712; GFX6-NEXT:    s_bfe_u32 s47, s3, 0x1001b8713; GFX6-NEXT:    s_bfe_u32 s48, s3, 0x1001d8714; GFX6-NEXT:    s_lshr_b32 s49, s3, 318715; GFX6-NEXT:    s_bfe_u32 s9, s3, 0x100018716; GFX6-NEXT:    s_bfe_u32 s6, s2, 0x100018717; GFX6-NEXT:    s_and_b32 s7, s2, 18718; GFX6-NEXT:    s_and_b32 s10, s3, 18719; GFX6-NEXT:    s_bfe_u32 s12, s2, 0x100028720; GFX6-NEXT:    s_bfe_u32 s14, s2, 0x100048721; GFX6-NEXT:    s_bfe_u32 s16, s2, 0x100068722; GFX6-NEXT:    s_bfe_u32 s18, s2, 0x100088723; GFX6-NEXT:    s_bfe_u32 s20, s2, 0x1000a8724; GFX6-NEXT:    s_bfe_u32 s22, s2, 0x1000c8725; GFX6-NEXT:    s_bfe_u32 s24, s2, 0x1000e8726; GFX6-NEXT:    s_bfe_u32 s26, s2, 0x100108727; GFX6-NEXT:    s_bfe_u32 s28, s2, 0x100128728; GFX6-NEXT:    s_bfe_u32 s30, s2, 0x100148729; GFX6-NEXT:    s_bfe_u32 s33, s2, 0x100168730; GFX6-NEXT:    s_bfe_u32 s50, s2, 0x100188731; GFX6-NEXT:    s_bfe_u32 s51, s2, 0x1001a8732; GFX6-NEXT:    s_bfe_u32 s52, s2, 0x1001c8733; GFX6-NEXT:    s_bfe_u32 s53, s2, 0x1001e8734; GFX6-NEXT:    s_bfe_u32 s54, s3, 0x100028735; GFX6-NEXT:    s_bfe_u32 s55, s3, 0x100048736; GFX6-NEXT:    s_bfe_u32 s56, s3, 0x100068737; GFX6-NEXT:    s_bfe_u32 s57, s3, 0x100088738; GFX6-NEXT:    s_bfe_u32 s58, s3, 0x1000a8739; GFX6-NEXT:    s_bfe_u32 s59, s3, 0x1000c8740; GFX6-NEXT:    s_bfe_u32 s60, s3, 0x1000e8741; GFX6-NEXT:    s_bfe_u32 s61, s3, 0x100108742; GFX6-NEXT:    s_bfe_u32 s62, s3, 0x100128743; GFX6-NEXT:    s_bfe_u32 s63, s3, 0x100148744; GFX6-NEXT:    s_bfe_u32 s64, s3, 0x100168745; GFX6-NEXT:    s_bfe_u32 s65, s3, 0x100188746; GFX6-NEXT:    s_bfe_u32 s66, s3, 0x1001a8747; GFX6-NEXT:    s_bfe_u32 s67, s3, 0x1001e8748; GFX6-NEXT:    s_bfe_u32 s68, s3, 0x1001c8749; GFX6-NEXT:    s_mov_b32 s3, 0xf0008750; GFX6-NEXT:    v_mov_b32_e32 v1, 08751; GFX6-NEXT:    s_mov_b32 s2, -18752; GFX6-NEXT:    v_mov_b32_e32 v3, v18753; GFX6-NEXT:    v_mov_b32_e32 v0, s678754; GFX6-NEXT:    v_mov_b32_e32 v2, s498755; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:4968756; GFX6-NEXT:    s_waitcnt expcnt(0)8757; GFX6-NEXT:    v_mov_b32_e32 v0, s688758; GFX6-NEXT:    v_mov_b32_e32 v2, s488759; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:4808760; GFX6-NEXT:    s_waitcnt expcnt(0)8761; GFX6-NEXT:    v_mov_b32_e32 v0, s668762; GFX6-NEXT:    v_mov_b32_e32 v2, s478763; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:4648764; GFX6-NEXT:    s_waitcnt expcnt(0)8765; GFX6-NEXT:    v_mov_b32_e32 v0, s658766; GFX6-NEXT:    v_mov_b32_e32 v2, s468767; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:4488768; GFX6-NEXT:    s_waitcnt expcnt(0)8769; GFX6-NEXT:    v_mov_b32_e32 v0, s648770; GFX6-NEXT:    v_mov_b32_e32 v2, s458771; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:4328772; GFX6-NEXT:    s_waitcnt expcnt(0)8773; GFX6-NEXT:    v_mov_b32_e32 v0, s638774; GFX6-NEXT:    v_mov_b32_e32 v2, s448775; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:4168776; GFX6-NEXT:    s_waitcnt expcnt(0)8777; GFX6-NEXT:    v_mov_b32_e32 v0, s628778; GFX6-NEXT:    v_mov_b32_e32 v2, s438779; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:4008780; GFX6-NEXT:    s_waitcnt expcnt(0)8781; GFX6-NEXT:    v_mov_b32_e32 v0, s618782; GFX6-NEXT:    v_mov_b32_e32 v2, s428783; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:3848784; GFX6-NEXT:    s_waitcnt expcnt(0)8785; GFX6-NEXT:    v_mov_b32_e32 v0, s608786; GFX6-NEXT:    v_mov_b32_e32 v2, s418787; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:3688788; GFX6-NEXT:    s_waitcnt expcnt(0)8789; GFX6-NEXT:    v_mov_b32_e32 v0, s598790; GFX6-NEXT:    v_mov_b32_e32 v2, s408791; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:3528792; GFX6-NEXT:    s_waitcnt expcnt(0)8793; GFX6-NEXT:    v_mov_b32_e32 v0, s588794; GFX6-NEXT:    v_mov_b32_e32 v2, s398795; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:3368796; GFX6-NEXT:    s_waitcnt expcnt(0)8797; GFX6-NEXT:    v_mov_b32_e32 v0, s578798; GFX6-NEXT:    v_mov_b32_e32 v2, s388799; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:3208800; GFX6-NEXT:    s_waitcnt expcnt(0)8801; GFX6-NEXT:    v_mov_b32_e32 v0, s568802; GFX6-NEXT:    v_mov_b32_e32 v2, s378803; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:3048804; GFX6-NEXT:    s_waitcnt expcnt(0)8805; GFX6-NEXT:    v_mov_b32_e32 v0, s558806; GFX6-NEXT:    v_mov_b32_e32 v2, s368807; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:2888808; GFX6-NEXT:    s_waitcnt expcnt(0)8809; GFX6-NEXT:    v_mov_b32_e32 v0, s548810; GFX6-NEXT:    v_mov_b32_e32 v2, s358811; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:2728812; GFX6-NEXT:    s_waitcnt expcnt(0)8813; GFX6-NEXT:    v_mov_b32_e32 v0, s538814; GFX6-NEXT:    v_mov_b32_e32 v2, s348815; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:2408816; GFX6-NEXT:    s_waitcnt expcnt(0)8817; GFX6-NEXT:    v_mov_b32_e32 v0, s528818; GFX6-NEXT:    v_mov_b32_e32 v2, s318819; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:2248820; GFX6-NEXT:    s_waitcnt expcnt(0)8821; GFX6-NEXT:    v_mov_b32_e32 v0, s518822; GFX6-NEXT:    v_mov_b32_e32 v2, s298823; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:2088824; GFX6-NEXT:    s_waitcnt expcnt(0)8825; GFX6-NEXT:    v_mov_b32_e32 v0, s508826; GFX6-NEXT:    v_mov_b32_e32 v2, s278827; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1928828; GFX6-NEXT:    s_waitcnt expcnt(0)8829; GFX6-NEXT:    v_mov_b32_e32 v0, s338830; GFX6-NEXT:    v_mov_b32_e32 v2, s258831; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1768832; GFX6-NEXT:    s_waitcnt expcnt(0)8833; GFX6-NEXT:    v_mov_b32_e32 v0, s308834; GFX6-NEXT:    v_mov_b32_e32 v2, s238835; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1608836; GFX6-NEXT:    s_waitcnt expcnt(0)8837; GFX6-NEXT:    v_mov_b32_e32 v0, s288838; GFX6-NEXT:    v_mov_b32_e32 v2, s218839; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1448840; GFX6-NEXT:    s_waitcnt expcnt(0)8841; GFX6-NEXT:    v_mov_b32_e32 v0, s268842; GFX6-NEXT:    v_mov_b32_e32 v2, s198843; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1288844; GFX6-NEXT:    s_waitcnt expcnt(0)8845; GFX6-NEXT:    v_mov_b32_e32 v0, s248846; GFX6-NEXT:    v_mov_b32_e32 v2, s178847; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:1128848; GFX6-NEXT:    s_waitcnt expcnt(0)8849; GFX6-NEXT:    v_mov_b32_e32 v0, s228850; GFX6-NEXT:    v_mov_b32_e32 v2, s158851; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:968852; GFX6-NEXT:    s_waitcnt expcnt(0)8853; GFX6-NEXT:    v_mov_b32_e32 v0, s208854; GFX6-NEXT:    v_mov_b32_e32 v2, s138855; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:808856; GFX6-NEXT:    s_waitcnt expcnt(0)8857; GFX6-NEXT:    v_mov_b32_e32 v0, s188858; GFX6-NEXT:    v_mov_b32_e32 v2, s118859; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:648860; GFX6-NEXT:    s_waitcnt expcnt(0)8861; GFX6-NEXT:    v_mov_b32_e32 v0, s168862; GFX6-NEXT:    v_mov_b32_e32 v2, s88863; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:488864; GFX6-NEXT:    s_waitcnt expcnt(0)8865; GFX6-NEXT:    v_mov_b32_e32 v0, s148866; GFX6-NEXT:    v_mov_b32_e32 v2, s58867; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:328868; GFX6-NEXT:    s_waitcnt expcnt(0)8869; GFX6-NEXT:    v_mov_b32_e32 v0, s128870; GFX6-NEXT:    v_mov_b32_e32 v2, s48871; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:168872; GFX6-NEXT:    s_waitcnt expcnt(0)8873; GFX6-NEXT:    v_mov_b32_e32 v0, s108874; GFX6-NEXT:    v_mov_b32_e32 v2, s98875; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:2568876; GFX6-NEXT:    s_waitcnt expcnt(0)8877; GFX6-NEXT:    v_mov_b32_e32 v0, s78878; GFX6-NEXT:    v_mov_b32_e32 v2, s68879; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 08880; GFX6-NEXT:    s_endpgm8881;8882; GFX8-LABEL: constant_zextload_v64i1_to_v64i64:8883; GFX8:       ; %bb.0:8884; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x248885; GFX8-NEXT:    v_mov_b32_e32 v1, 08886; GFX8-NEXT:    v_mov_b32_e32 v3, v18887; GFX8-NEXT:    s_waitcnt lgkmcnt(0)8888; GFX8-NEXT:    s_load_dwordx2 s[42:43], s[2:3], 0x08889; GFX8-NEXT:    s_waitcnt lgkmcnt(0)8890; GFX8-NEXT:    s_lshr_b32 s44, s43, 318891; GFX8-NEXT:    s_bfe_u32 s45, s43, 0x1001d8892; GFX8-NEXT:    s_bfe_u32 s46, s43, 0x1001b8893; GFX8-NEXT:    s_bfe_u32 s47, s43, 0x100198894; GFX8-NEXT:    s_bfe_u32 s48, s43, 0x100178895; GFX8-NEXT:    s_bfe_u32 s49, s43, 0x100138896; GFX8-NEXT:    s_bfe_u32 s50, s43, 0x100118897; GFX8-NEXT:    s_bfe_u32 s51, s43, 0x1000f8898; GFX8-NEXT:    s_bfe_u32 s52, s43, 0x1000d8899; GFX8-NEXT:    s_bfe_u32 s53, s43, 0x1000b8900; GFX8-NEXT:    s_bfe_u32 s40, s43, 0x100098901; GFX8-NEXT:    s_bfe_u32 s38, s43, 0x100078902; GFX8-NEXT:    s_bfe_u32 s37, s43, 0x100058903; GFX8-NEXT:    s_bfe_u32 s35, s43, 0x100038904; GFX8-NEXT:    s_bfe_u32 s33, s43, 0x100018905; GFX8-NEXT:    s_lshr_b32 s30, s42, 318906; GFX8-NEXT:    s_bfe_u32 s28, s42, 0x1001d8907; GFX8-NEXT:    s_bfe_u32 s26, s42, 0x1001b8908; GFX8-NEXT:    s_bfe_u32 s25, s42, 0x100198909; GFX8-NEXT:    s_bfe_u32 s22, s42, 0x100178910; GFX8-NEXT:    s_bfe_u32 s19, s42, 0x100138911; GFX8-NEXT:    s_bfe_u32 s17, s42, 0x100118912; GFX8-NEXT:    s_bfe_u32 s15, s42, 0x1000f8913; GFX8-NEXT:    s_bfe_u32 s13, s42, 0x1000d8914; GFX8-NEXT:    s_bfe_u32 s12, s42, 0x1000b8915; GFX8-NEXT:    s_bfe_u32 s10, s42, 0x100098916; GFX8-NEXT:    s_bfe_u32 s8, s42, 0x100078917; GFX8-NEXT:    s_bfe_u32 s6, s42, 0x100058918; GFX8-NEXT:    s_bfe_u32 s4, s42, 0x100038919; GFX8-NEXT:    s_bfe_u32 s2, s42, 0x100018920; GFX8-NEXT:    s_and_b32 s3, s42, 18921; GFX8-NEXT:    s_bfe_u32 s5, s42, 0x100028922; GFX8-NEXT:    s_bfe_u32 s7, s42, 0x100048923; GFX8-NEXT:    s_bfe_u32 s9, s42, 0x100068924; GFX8-NEXT:    s_bfe_u32 s11, s42, 0x100088925; GFX8-NEXT:    s_bfe_u32 s14, s42, 0x1000a8926; GFX8-NEXT:    s_bfe_u32 s16, s42, 0x1000c8927; GFX8-NEXT:    s_bfe_u32 s18, s42, 0x1000e8928; GFX8-NEXT:    s_bfe_u32 s20, s42, 0x100108929; GFX8-NEXT:    s_bfe_u32 s21, s42, 0x100128930; GFX8-NEXT:    s_bfe_u32 s23, s42, 0x100148931; GFX8-NEXT:    s_bfe_u32 s24, s42, 0x100158932; GFX8-NEXT:    s_bfe_u32 s27, s42, 0x100168933; GFX8-NEXT:    s_bfe_u32 s29, s42, 0x100188934; GFX8-NEXT:    s_bfe_u32 s31, s42, 0x1001a8935; GFX8-NEXT:    s_bfe_u32 s34, s42, 0x1001c8936; GFX8-NEXT:    s_bfe_u32 s36, s42, 0x1001e8937; GFX8-NEXT:    s_and_b32 s39, s43, 18938; GFX8-NEXT:    s_bfe_u32 s41, s43, 0x100028939; GFX8-NEXT:    s_bfe_u32 s54, s43, 0x100048940; GFX8-NEXT:    s_bfe_u32 s55, s43, 0x100068941; GFX8-NEXT:    s_bfe_u32 s56, s43, 0x100088942; GFX8-NEXT:    s_bfe_u32 s57, s43, 0x1000a8943; GFX8-NEXT:    s_bfe_u32 s58, s43, 0x1000c8944; GFX8-NEXT:    s_bfe_u32 s59, s43, 0x1000e8945; GFX8-NEXT:    s_bfe_u32 s60, s43, 0x100108946; GFX8-NEXT:    s_bfe_u32 s61, s43, 0x100128947; GFX8-NEXT:    s_bfe_u32 s62, s43, 0x100168948; GFX8-NEXT:    s_bfe_u32 s63, s43, 0x100188949; GFX8-NEXT:    s_bfe_u32 s64, s43, 0x1001a8950; GFX8-NEXT:    s_bfe_u32 s65, s43, 0x1001c8951; GFX8-NEXT:    s_bfe_u32 s66, s43, 0x1001e8952; GFX8-NEXT:    s_bfe_u32 s42, s43, 0x100158953; GFX8-NEXT:    s_bfe_u32 s43, s43, 0x100148954; GFX8-NEXT:    v_mov_b32_e32 v2, s428955; GFX8-NEXT:    s_add_u32 s42, s0, 0x1a08956; GFX8-NEXT:    v_mov_b32_e32 v0, s438957; GFX8-NEXT:    s_addc_u32 s43, s1, 08958; GFX8-NEXT:    v_mov_b32_e32 v4, s428959; GFX8-NEXT:    v_mov_b32_e32 v5, s438960; GFX8-NEXT:    s_add_u32 s42, s0, 0x1f08961; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8962; GFX8-NEXT:    s_addc_u32 s43, s1, 08963; GFX8-NEXT:    v_mov_b32_e32 v4, s428964; GFX8-NEXT:    v_mov_b32_e32 v0, s668965; GFX8-NEXT:    v_mov_b32_e32 v2, s448966; GFX8-NEXT:    v_mov_b32_e32 v5, s438967; GFX8-NEXT:    s_add_u32 s42, s0, 0x1e08968; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8969; GFX8-NEXT:    s_addc_u32 s43, s1, 08970; GFX8-NEXT:    v_mov_b32_e32 v4, s428971; GFX8-NEXT:    v_mov_b32_e32 v0, s658972; GFX8-NEXT:    v_mov_b32_e32 v2, s458973; GFX8-NEXT:    v_mov_b32_e32 v5, s438974; GFX8-NEXT:    s_add_u32 s42, s0, 0x1d08975; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8976; GFX8-NEXT:    s_addc_u32 s43, s1, 08977; GFX8-NEXT:    v_mov_b32_e32 v4, s428978; GFX8-NEXT:    v_mov_b32_e32 v0, s648979; GFX8-NEXT:    v_mov_b32_e32 v2, s468980; GFX8-NEXT:    v_mov_b32_e32 v5, s438981; GFX8-NEXT:    s_add_u32 s42, s0, 0x1c08982; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8983; GFX8-NEXT:    s_addc_u32 s43, s1, 08984; GFX8-NEXT:    v_mov_b32_e32 v4, s428985; GFX8-NEXT:    v_mov_b32_e32 v0, s638986; GFX8-NEXT:    v_mov_b32_e32 v2, s478987; GFX8-NEXT:    v_mov_b32_e32 v5, s438988; GFX8-NEXT:    s_add_u32 s42, s0, 0x1b08989; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8990; GFX8-NEXT:    s_addc_u32 s43, s1, 08991; GFX8-NEXT:    v_mov_b32_e32 v4, s428992; GFX8-NEXT:    v_mov_b32_e32 v0, s628993; GFX8-NEXT:    v_mov_b32_e32 v2, s488994; GFX8-NEXT:    v_mov_b32_e32 v5, s438995; GFX8-NEXT:    s_add_u32 s42, s0, 0x1908996; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]8997; GFX8-NEXT:    s_addc_u32 s43, s1, 08998; GFX8-NEXT:    v_mov_b32_e32 v4, s428999; GFX8-NEXT:    v_mov_b32_e32 v0, s619000; GFX8-NEXT:    v_mov_b32_e32 v2, s499001; GFX8-NEXT:    v_mov_b32_e32 v5, s439002; GFX8-NEXT:    s_add_u32 s42, s0, 0x1809003; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9004; GFX8-NEXT:    s_addc_u32 s43, s1, 09005; GFX8-NEXT:    v_mov_b32_e32 v4, s429006; GFX8-NEXT:    v_mov_b32_e32 v0, s609007; GFX8-NEXT:    v_mov_b32_e32 v2, s509008; GFX8-NEXT:    v_mov_b32_e32 v5, s439009; GFX8-NEXT:    s_add_u32 s42, s0, 0x1709010; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9011; GFX8-NEXT:    s_addc_u32 s43, s1, 09012; GFX8-NEXT:    v_mov_b32_e32 v4, s429013; GFX8-NEXT:    v_mov_b32_e32 v0, s599014; GFX8-NEXT:    v_mov_b32_e32 v2, s519015; GFX8-NEXT:    v_mov_b32_e32 v5, s439016; GFX8-NEXT:    s_add_u32 s42, s0, 0x1609017; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9018; GFX8-NEXT:    s_addc_u32 s43, s1, 09019; GFX8-NEXT:    v_mov_b32_e32 v4, s429020; GFX8-NEXT:    v_mov_b32_e32 v0, s589021; GFX8-NEXT:    v_mov_b32_e32 v2, s529022; GFX8-NEXT:    v_mov_b32_e32 v5, s439023; GFX8-NEXT:    s_add_u32 s42, s0, 0x1509024; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9025; GFX8-NEXT:    s_addc_u32 s43, s1, 09026; GFX8-NEXT:    v_mov_b32_e32 v4, s429027; GFX8-NEXT:    v_mov_b32_e32 v0, s579028; GFX8-NEXT:    v_mov_b32_e32 v2, s539029; GFX8-NEXT:    v_mov_b32_e32 v5, s439030; GFX8-NEXT:    s_add_u32 s42, s0, 0x1409031; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9032; GFX8-NEXT:    s_addc_u32 s43, s1, 09033; GFX8-NEXT:    v_mov_b32_e32 v4, s429034; GFX8-NEXT:    v_mov_b32_e32 v0, s569035; GFX8-NEXT:    v_mov_b32_e32 v2, s409036; GFX8-NEXT:    v_mov_b32_e32 v5, s439037; GFX8-NEXT:    s_add_u32 s42, s0, 0x1309038; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9039; GFX8-NEXT:    s_addc_u32 s43, s1, 09040; GFX8-NEXT:    v_mov_b32_e32 v4, s429041; GFX8-NEXT:    v_mov_b32_e32 v0, s559042; GFX8-NEXT:    v_mov_b32_e32 v2, s389043; GFX8-NEXT:    v_mov_b32_e32 v5, s439044; GFX8-NEXT:    s_add_u32 s42, s0, 0x1209045; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9046; GFX8-NEXT:    s_addc_u32 s43, s1, 09047; GFX8-NEXT:    v_mov_b32_e32 v4, s429048; GFX8-NEXT:    v_mov_b32_e32 v0, s549049; GFX8-NEXT:    v_mov_b32_e32 v2, s379050; GFX8-NEXT:    v_mov_b32_e32 v5, s439051; GFX8-NEXT:    s_add_u32 s40, s0, 0x1109052; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9053; GFX8-NEXT:    s_nop 09054; GFX8-NEXT:    v_mov_b32_e32 v0, s419055; GFX8-NEXT:    s_addc_u32 s41, s1, 09056; GFX8-NEXT:    v_mov_b32_e32 v4, s409057; GFX8-NEXT:    v_mov_b32_e32 v2, s359058; GFX8-NEXT:    v_mov_b32_e32 v5, s419059; GFX8-NEXT:    s_add_u32 s38, s0, 0x1009060; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9061; GFX8-NEXT:    s_nop 09062; GFX8-NEXT:    v_mov_b32_e32 v0, s399063; GFX8-NEXT:    s_addc_u32 s39, s1, 09064; GFX8-NEXT:    v_mov_b32_e32 v4, s389065; GFX8-NEXT:    v_mov_b32_e32 v2, s339066; GFX8-NEXT:    v_mov_b32_e32 v5, s399067; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9068; GFX8-NEXT:    s_nop 09069; GFX8-NEXT:    v_mov_b32_e32 v0, s369070; GFX8-NEXT:    s_add_u32 s36, s0, 0xf09071; GFX8-NEXT:    s_addc_u32 s37, s1, 09072; GFX8-NEXT:    v_mov_b32_e32 v4, s369073; GFX8-NEXT:    v_mov_b32_e32 v2, s309074; GFX8-NEXT:    v_mov_b32_e32 v5, s379075; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9076; GFX8-NEXT:    s_nop 09077; GFX8-NEXT:    v_mov_b32_e32 v0, s349078; GFX8-NEXT:    s_add_u32 s34, s0, 0xe09079; GFX8-NEXT:    s_addc_u32 s35, s1, 09080; GFX8-NEXT:    v_mov_b32_e32 v4, s349081; GFX8-NEXT:    v_mov_b32_e32 v2, s289082; GFX8-NEXT:    v_mov_b32_e32 v5, s359083; GFX8-NEXT:    s_add_u32 s30, s0, 0xd09084; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9085; GFX8-NEXT:    s_nop 09086; GFX8-NEXT:    v_mov_b32_e32 v0, s319087; GFX8-NEXT:    s_addc_u32 s31, s1, 09088; GFX8-NEXT:    v_mov_b32_e32 v4, s309089; GFX8-NEXT:    v_mov_b32_e32 v2, s269090; GFX8-NEXT:    v_mov_b32_e32 v5, s319091; GFX8-NEXT:    s_add_u32 s28, s0, 0xc09092; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9093; GFX8-NEXT:    s_nop 09094; GFX8-NEXT:    v_mov_b32_e32 v0, s299095; GFX8-NEXT:    s_addc_u32 s29, s1, 09096; GFX8-NEXT:    v_mov_b32_e32 v4, s289097; GFX8-NEXT:    v_mov_b32_e32 v2, s259098; GFX8-NEXT:    v_mov_b32_e32 v5, s299099; GFX8-NEXT:    s_add_u32 s26, s0, 0xb09100; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9101; GFX8-NEXT:    s_nop 09102; GFX8-NEXT:    v_mov_b32_e32 v0, s279103; GFX8-NEXT:    s_addc_u32 s27, s1, 09104; GFX8-NEXT:    v_mov_b32_e32 v4, s269105; GFX8-NEXT:    v_mov_b32_e32 v2, s229106; GFX8-NEXT:    v_mov_b32_e32 v5, s279107; GFX8-NEXT:    s_add_u32 s22, s0, 0xa09108; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9109; GFX8-NEXT:    s_nop 09110; GFX8-NEXT:    v_mov_b32_e32 v0, s239111; GFX8-NEXT:    s_addc_u32 s23, s1, 09112; GFX8-NEXT:    v_mov_b32_e32 v4, s229113; GFX8-NEXT:    v_mov_b32_e32 v2, s249114; GFX8-NEXT:    v_mov_b32_e32 v5, s239115; GFX8-NEXT:    s_add_u32 s22, s0, 0x909116; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9117; GFX8-NEXT:    s_addc_u32 s23, s1, 09118; GFX8-NEXT:    v_mov_b32_e32 v4, s229119; GFX8-NEXT:    v_mov_b32_e32 v0, s219120; GFX8-NEXT:    v_mov_b32_e32 v2, s199121; GFX8-NEXT:    v_mov_b32_e32 v5, s239122; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9123; GFX8-NEXT:    s_nop 09124; GFX8-NEXT:    v_mov_b32_e32 v0, s209125; GFX8-NEXT:    s_add_u32 s20, s0, 0x809126; GFX8-NEXT:    s_addc_u32 s21, s1, 09127; GFX8-NEXT:    v_mov_b32_e32 v4, s209128; GFX8-NEXT:    v_mov_b32_e32 v2, s179129; GFX8-NEXT:    v_mov_b32_e32 v5, s219130; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9131; GFX8-NEXT:    s_nop 09132; GFX8-NEXT:    v_mov_b32_e32 v0, s189133; GFX8-NEXT:    s_add_u32 s18, s0, 0x709134; GFX8-NEXT:    s_addc_u32 s19, s1, 09135; GFX8-NEXT:    v_mov_b32_e32 v4, s189136; GFX8-NEXT:    v_mov_b32_e32 v2, s159137; GFX8-NEXT:    v_mov_b32_e32 v5, s199138; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9139; GFX8-NEXT:    s_nop 09140; GFX8-NEXT:    v_mov_b32_e32 v0, s169141; GFX8-NEXT:    s_add_u32 s16, s0, 0x609142; GFX8-NEXT:    s_addc_u32 s17, s1, 09143; GFX8-NEXT:    v_mov_b32_e32 v4, s169144; GFX8-NEXT:    v_mov_b32_e32 v2, s139145; GFX8-NEXT:    v_mov_b32_e32 v5, s179146; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9147; GFX8-NEXT:    s_nop 09148; GFX8-NEXT:    v_mov_b32_e32 v2, s129149; GFX8-NEXT:    s_add_u32 s12, s0, 0x509150; GFX8-NEXT:    s_addc_u32 s13, s1, 09151; GFX8-NEXT:    v_mov_b32_e32 v4, s129152; GFX8-NEXT:    v_mov_b32_e32 v0, s149153; GFX8-NEXT:    v_mov_b32_e32 v5, s139154; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9155; GFX8-NEXT:    s_nop 09156; GFX8-NEXT:    v_mov_b32_e32 v2, s109157; GFX8-NEXT:    s_add_u32 s10, s0, 649158; GFX8-NEXT:    v_mov_b32_e32 v0, s119159; GFX8-NEXT:    s_addc_u32 s11, s1, 09160; GFX8-NEXT:    v_mov_b32_e32 v4, s109161; GFX8-NEXT:    v_mov_b32_e32 v5, s119162; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9163; GFX8-NEXT:    s_nop 09164; GFX8-NEXT:    v_mov_b32_e32 v2, s89165; GFX8-NEXT:    s_add_u32 s8, s0, 489166; GFX8-NEXT:    v_mov_b32_e32 v0, s99167; GFX8-NEXT:    s_addc_u32 s9, s1, 09168; GFX8-NEXT:    v_mov_b32_e32 v4, s89169; GFX8-NEXT:    v_mov_b32_e32 v5, s99170; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9171; GFX8-NEXT:    s_nop 09172; GFX8-NEXT:    v_mov_b32_e32 v2, s69173; GFX8-NEXT:    s_add_u32 s6, s0, 329174; GFX8-NEXT:    v_mov_b32_e32 v0, s79175; GFX8-NEXT:    s_addc_u32 s7, s1, 09176; GFX8-NEXT:    v_mov_b32_e32 v4, s69177; GFX8-NEXT:    v_mov_b32_e32 v5, s79178; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9179; GFX8-NEXT:    s_nop 09180; GFX8-NEXT:    v_mov_b32_e32 v2, s49181; GFX8-NEXT:    s_add_u32 s4, s0, 169182; GFX8-NEXT:    v_mov_b32_e32 v0, s59183; GFX8-NEXT:    s_addc_u32 s5, s1, 09184; GFX8-NEXT:    v_mov_b32_e32 v4, s49185; GFX8-NEXT:    v_mov_b32_e32 v5, s59186; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9187; GFX8-NEXT:    v_mov_b32_e32 v5, s19188; GFX8-NEXT:    v_mov_b32_e32 v0, s39189; GFX8-NEXT:    v_mov_b32_e32 v2, s29190; GFX8-NEXT:    v_mov_b32_e32 v4, s09191; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]9192; GFX8-NEXT:    s_endpgm9193;9194; EG-LABEL: constant_zextload_v64i1_to_v64i64:9195; EG:       ; %bb.0:9196; EG-NEXT:    ALU 0, @40, KC0[CB0:0-32], KC1[]9197; EG-NEXT:    TEX 0 @389198; EG-NEXT:    ALU 95, @41, KC0[], KC1[]9199; EG-NEXT:    ALU 99, @137, KC0[CB0:0-32], KC1[]9200; EG-NEXT:    ALU 60, @237, KC0[CB0:0-32], KC1[]9201; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T19.XYZW, T82.X, 09202; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T20.XYZW, T81.X, 09203; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T21.XYZW, T80.X, 09204; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T22.XYZW, T79.X, 09205; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T23.XYZW, T78.X, 09206; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T24.XYZW, T77.X, 09207; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T26.XYZW, T76.X, 09208; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T27.XYZW, T75.X, 09209; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T28.XYZW, T74.X, 09210; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T29.XYZW, T73.X, 09211; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T30.XYZW, T72.X, 09212; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T31.XYZW, T71.X, 09213; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T32.XYZW, T70.X, 09214; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T33.XYZW, T69.X, 09215; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T34.XYZW, T68.X, 09216; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T35.XYZW, T67.X, 09217; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T36.XYZW, T66.X, 09218; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T37.XYZW, T65.X, 09219; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T38.XYZW, T64.X, 09220; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T39.XYZW, T63.X, 09221; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T40.XYZW, T62.X, 09222; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T41.XYZW, T61.X, 09223; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T42.XYZW, T60.X, 09224; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T43.XYZW, T59.X, 09225; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T44.XYZW, T58.X, 09226; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T45.XYZW, T57.X, 09227; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T46.XYZW, T56.X, 09228; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T47.XYZW, T55.X, 09229; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T48.XYZW, T54.X, 09230; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T49.XYZW, T53.X, 09231; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T50.XYZW, T52.X, 09232; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T25.XYZW, T51.X, 19233; EG-NEXT:    CF_END9234; EG-NEXT:    Fetch clause starting at 38:9235; EG-NEXT:     VTX_READ_64 T25.XY, T19.X, 0, #19236; EG-NEXT:    ALU clause starting at 40:9237; EG-NEXT:     MOV * T19.X, KC0[2].Z,9238; EG-NEXT:    ALU clause starting at 41:9239; EG-NEXT:     LSHR * T19.Z, T25.Y, literal.x,9240; EG-NEXT:    31(4.344025e-44), 0(0.000000e+00)9241; EG-NEXT:     BFE_UINT T19.X, T25.Y, literal.x, 1,9242; EG-NEXT:     MOV T19.Y, 0.0,9243; EG-NEXT:     BFE_UINT * T20.Z, T25.Y, literal.y, 1,9244; EG-NEXT:    30(4.203895e-44), 29(4.063766e-44)9245; EG-NEXT:     BFE_UINT T20.X, T25.Y, literal.x, 1,9246; EG-NEXT:     MOV T20.Y, 0.0,9247; EG-NEXT:     BFE_UINT * T21.Z, T25.Y, literal.y, 1,9248; EG-NEXT:    28(3.923636e-44), 27(3.783506e-44)9249; EG-NEXT:     BFE_UINT T21.X, T25.Y, literal.x, 1,9250; EG-NEXT:     MOV T21.Y, 0.0,9251; EG-NEXT:     BFE_UINT * T22.Z, T25.Y, literal.y, 1,9252; EG-NEXT:    26(3.643376e-44), 25(3.503246e-44)9253; EG-NEXT:     BFE_UINT T22.X, T25.Y, literal.x, 1,9254; EG-NEXT:     MOV T22.Y, 0.0,9255; EG-NEXT:     BFE_UINT * T23.Z, T25.Y, literal.y, 1,9256; EG-NEXT:    24(3.363116e-44), 23(3.222986e-44)9257; EG-NEXT:     BFE_UINT T23.X, T25.Y, literal.x, 1,9258; EG-NEXT:     MOV T23.Y, 0.0,9259; EG-NEXT:     BFE_UINT * T24.Z, T25.Y, literal.y, 1,9260; EG-NEXT:    22(3.082857e-44), 21(2.942727e-44)9261; EG-NEXT:     BFE_UINT T24.X, T25.Y, literal.x, 1,9262; EG-NEXT:     MOV T24.Y, 0.0,9263; EG-NEXT:     BFE_UINT * T26.Z, T25.Y, literal.y, 1,9264; EG-NEXT:    20(2.802597e-44), 19(2.662467e-44)9265; EG-NEXT:     BFE_UINT T26.X, T25.Y, literal.x, 1,9266; EG-NEXT:     MOV T26.Y, 0.0,9267; EG-NEXT:     BFE_UINT * T27.Z, T25.Y, literal.y, 1,9268; EG-NEXT:    18(2.522337e-44), 17(2.382207e-44)9269; EG-NEXT:     BFE_UINT T27.X, T25.Y, literal.x, 1,9270; EG-NEXT:     MOV T27.Y, 0.0,9271; EG-NEXT:     BFE_UINT * T28.Z, T25.Y, literal.y, 1,9272; EG-NEXT:    16(2.242078e-44), 15(2.101948e-44)9273; EG-NEXT:     BFE_UINT T28.X, T25.Y, literal.x, 1,9274; EG-NEXT:     MOV T28.Y, 0.0,9275; EG-NEXT:     BFE_UINT * T29.Z, T25.Y, literal.y, 1,9276; EG-NEXT:    14(1.961818e-44), 13(1.821688e-44)9277; EG-NEXT:     BFE_UINT T29.X, T25.Y, literal.x, 1,9278; EG-NEXT:     MOV T29.Y, 0.0,9279; EG-NEXT:     BFE_UINT * T30.Z, T25.Y, literal.y, 1,9280; EG-NEXT:    12(1.681558e-44), 11(1.541428e-44)9281; EG-NEXT:     BFE_UINT T30.X, T25.Y, literal.x, 1,9282; EG-NEXT:     MOV T30.Y, 0.0,9283; EG-NEXT:     BFE_UINT * T31.Z, T25.Y, literal.y, 1,9284; EG-NEXT:    10(1.401298e-44), 9(1.261169e-44)9285; EG-NEXT:     BFE_UINT T31.X, T25.Y, literal.x, 1,9286; EG-NEXT:     MOV T31.Y, 0.0,9287; EG-NEXT:     BFE_UINT * T32.Z, T25.Y, literal.y, 1,9288; EG-NEXT:    8(1.121039e-44), 7(9.809089e-45)9289; EG-NEXT:     BFE_UINT T32.X, T25.Y, literal.x, 1,9290; EG-NEXT:     MOV T32.Y, 0.0,9291; EG-NEXT:     BFE_UINT * T33.Z, T25.Y, literal.y, 1,9292; EG-NEXT:    6(8.407791e-45), 5(7.006492e-45)9293; EG-NEXT:     BFE_UINT T33.X, T25.Y, literal.x, 1,9294; EG-NEXT:     MOV T33.Y, 0.0,9295; EG-NEXT:     BFE_UINT * T34.Z, T25.Y, literal.y, 1,9296; EG-NEXT:    4(5.605194e-45), 3(4.203895e-45)9297; EG-NEXT:     BFE_UINT T34.X, T25.Y, literal.x, 1,9298; EG-NEXT:     MOV T34.Y, 0.0,9299; EG-NEXT:     BFE_UINT T35.Z, T25.Y, 1, 1,9300; EG-NEXT:     AND_INT * T35.X, T25.Y, 1,9301; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)9302; EG-NEXT:     MOV T35.Y, 0.0,9303; EG-NEXT:     LSHR * T36.Z, T25.X, literal.x,9304; EG-NEXT:    31(4.344025e-44), 0(0.000000e+00)9305; EG-NEXT:     BFE_UINT T36.X, T25.X, literal.x, 1,9306; EG-NEXT:     MOV T36.Y, 0.0,9307; EG-NEXT:     BFE_UINT * T37.Z, T25.X, literal.y, 1,9308; EG-NEXT:    30(4.203895e-44), 29(4.063766e-44)9309; EG-NEXT:     BFE_UINT T37.X, T25.X, literal.x, 1,9310; EG-NEXT:     MOV T37.Y, 0.0,9311; EG-NEXT:     BFE_UINT * T38.Z, T25.X, literal.y, 1,9312; EG-NEXT:    28(3.923636e-44), 27(3.783506e-44)9313; EG-NEXT:     BFE_UINT T38.X, T25.X, literal.x, 1,9314; EG-NEXT:     MOV T38.Y, 0.0,9315; EG-NEXT:     BFE_UINT * T39.Z, T25.X, literal.y, 1,9316; EG-NEXT:    26(3.643376e-44), 25(3.503246e-44)9317; EG-NEXT:     BFE_UINT T39.X, T25.X, literal.x, 1,9318; EG-NEXT:     MOV T39.Y, 0.0,9319; EG-NEXT:     BFE_UINT * T40.Z, T25.X, literal.y, 1,9320; EG-NEXT:    24(3.363116e-44), 23(3.222986e-44)9321; EG-NEXT:     BFE_UINT T40.X, T25.X, literal.x, 1,9322; EG-NEXT:     MOV T40.Y, 0.0,9323; EG-NEXT:     BFE_UINT * T41.Z, T25.X, literal.y, 1,9324; EG-NEXT:    22(3.082857e-44), 21(2.942727e-44)9325; EG-NEXT:     BFE_UINT T41.X, T25.X, literal.x, 1,9326; EG-NEXT:     MOV T41.Y, 0.0,9327; EG-NEXT:     BFE_UINT * T42.Z, T25.X, literal.y, 1,9328; EG-NEXT:    20(2.802597e-44), 19(2.662467e-44)9329; EG-NEXT:     BFE_UINT T42.X, T25.X, literal.x, 1,9330; EG-NEXT:     MOV T42.Y, 0.0,9331; EG-NEXT:     BFE_UINT * T43.Z, T25.X, literal.y, 1,9332; EG-NEXT:    18(2.522337e-44), 17(2.382207e-44)9333; EG-NEXT:     BFE_UINT * T43.X, T25.X, literal.x, 1,9334; EG-NEXT:    16(2.242078e-44), 0(0.000000e+00)9335; EG-NEXT:    ALU clause starting at 137:9336; EG-NEXT:     MOV T43.Y, 0.0,9337; EG-NEXT:     BFE_UINT * T44.Z, T25.X, literal.x, 1,9338; EG-NEXT:    15(2.101948e-44), 0(0.000000e+00)9339; EG-NEXT:     BFE_UINT T44.X, T25.X, literal.x, 1,9340; EG-NEXT:     MOV T44.Y, 0.0,9341; EG-NEXT:     BFE_UINT * T45.Z, T25.X, literal.y, 1,9342; EG-NEXT:    14(1.961818e-44), 13(1.821688e-44)9343; EG-NEXT:     BFE_UINT T45.X, T25.X, literal.x, 1,9344; EG-NEXT:     MOV T45.Y, 0.0,9345; EG-NEXT:     BFE_UINT * T46.Z, T25.X, literal.y, 1,9346; EG-NEXT:    12(1.681558e-44), 11(1.541428e-44)9347; EG-NEXT:     BFE_UINT T46.X, T25.X, literal.x, 1,9348; EG-NEXT:     MOV T46.Y, 0.0,9349; EG-NEXT:     BFE_UINT * T47.Z, T25.X, literal.y, 1,9350; EG-NEXT:    10(1.401298e-44), 9(1.261169e-44)9351; EG-NEXT:     BFE_UINT T47.X, T25.X, literal.x, 1,9352; EG-NEXT:     MOV T47.Y, 0.0,9353; EG-NEXT:     BFE_UINT * T48.Z, T25.X, literal.y, 1,9354; EG-NEXT:    8(1.121039e-44), 7(9.809089e-45)9355; EG-NEXT:     BFE_UINT T48.X, T25.X, literal.x, 1,9356; EG-NEXT:     MOV T48.Y, 0.0,9357; EG-NEXT:     BFE_UINT * T49.Z, T25.X, literal.y, 1,9358; EG-NEXT:    6(8.407791e-45), 5(7.006492e-45)9359; EG-NEXT:     BFE_UINT T49.X, T25.X, literal.x, 1,9360; EG-NEXT:     MOV T49.Y, 0.0,9361; EG-NEXT:     BFE_UINT * T50.Z, T25.X, literal.y, 1,9362; EG-NEXT:    4(5.605194e-45), 3(4.203895e-45)9363; EG-NEXT:     BFE_UINT T50.X, T25.X, literal.x, 1,9364; EG-NEXT:     MOV T50.Y, 0.0,9365; EG-NEXT:     BFE_UINT T25.Z, T25.X, 1, 1,9366; EG-NEXT:     AND_INT * T25.X, T25.X, 1,9367; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)9368; EG-NEXT:     MOV T25.Y, 0.0,9369; EG-NEXT:     MOV T19.W, 0.0,9370; EG-NEXT:     MOV * T20.W, 0.0,9371; EG-NEXT:     MOV T21.W, 0.0,9372; EG-NEXT:     MOV * T22.W, 0.0,9373; EG-NEXT:     MOV T23.W, 0.0,9374; EG-NEXT:     MOV * T24.W, 0.0,9375; EG-NEXT:     MOV T26.W, 0.0,9376; EG-NEXT:     MOV * T27.W, 0.0,9377; EG-NEXT:     MOV T28.W, 0.0,9378; EG-NEXT:     MOV * T29.W, 0.0,9379; EG-NEXT:     MOV T30.W, 0.0,9380; EG-NEXT:     MOV * T31.W, 0.0,9381; EG-NEXT:     MOV T32.W, 0.0,9382; EG-NEXT:     MOV * T33.W, 0.0,9383; EG-NEXT:     MOV T34.W, 0.0,9384; EG-NEXT:     MOV * T35.W, 0.0,9385; EG-NEXT:     MOV T36.W, 0.0,9386; EG-NEXT:     MOV * T37.W, 0.0,9387; EG-NEXT:     MOV T38.W, 0.0,9388; EG-NEXT:     MOV * T39.W, 0.0,9389; EG-NEXT:     MOV T40.W, 0.0,9390; EG-NEXT:     MOV * T41.W, 0.0,9391; EG-NEXT:     MOV T42.W, 0.0,9392; EG-NEXT:     MOV * T43.W, 0.0,9393; EG-NEXT:     MOV T44.W, 0.0,9394; EG-NEXT:     MOV * T45.W, 0.0,9395; EG-NEXT:     MOV T46.W, 0.0,9396; EG-NEXT:     MOV * T47.W, 0.0,9397; EG-NEXT:     MOV T48.W, 0.0,9398; EG-NEXT:     MOV * T49.W, 0.0,9399; EG-NEXT:     MOV T50.W, 0.0,9400; EG-NEXT:     MOV * T25.W, 0.0,9401; EG-NEXT:     LSHR T51.X, KC0[2].Y, literal.x,9402; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9403; EG-NEXT:    2(2.802597e-45), 16(2.242078e-44)9404; EG-NEXT:     LSHR T52.X, PV.W, literal.x,9405; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9406; EG-NEXT:    2(2.802597e-45), 32(4.484155e-44)9407; EG-NEXT:     LSHR T53.X, PV.W, literal.x,9408; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9409; EG-NEXT:    2(2.802597e-45), 48(6.726233e-44)9410; EG-NEXT:     LSHR T54.X, PV.W, literal.x,9411; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9412; EG-NEXT:    2(2.802597e-45), 64(8.968310e-44)9413; EG-NEXT:     LSHR T55.X, PV.W, literal.x,9414; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9415; EG-NEXT:    2(2.802597e-45), 80(1.121039e-43)9416; EG-NEXT:     LSHR T56.X, PV.W, literal.x,9417; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9418; EG-NEXT:    2(2.802597e-45), 96(1.345247e-43)9419; EG-NEXT:     LSHR T57.X, PV.W, literal.x,9420; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9421; EG-NEXT:    2(2.802597e-45), 112(1.569454e-43)9422; EG-NEXT:     LSHR T58.X, PV.W, literal.x,9423; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9424; EG-NEXT:    2(2.802597e-45), 128(1.793662e-43)9425; EG-NEXT:     LSHR T59.X, PV.W, literal.x,9426; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9427; EG-NEXT:    2(2.802597e-45), 144(2.017870e-43)9428; EG-NEXT:     LSHR T60.X, PV.W, literal.x,9429; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9430; EG-NEXT:    2(2.802597e-45), 160(2.242078e-43)9431; EG-NEXT:     LSHR T61.X, PV.W, literal.x,9432; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9433; EG-NEXT:    2(2.802597e-45), 176(2.466285e-43)9434; EG-NEXT:     LSHR * T62.X, PV.W, literal.x,9435; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)9436; EG-NEXT:    ALU clause starting at 237:9437; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.x,9438; EG-NEXT:    192(2.690493e-43), 0(0.000000e+00)9439; EG-NEXT:     LSHR T63.X, PV.W, literal.x,9440; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9441; EG-NEXT:    2(2.802597e-45), 208(2.914701e-43)9442; EG-NEXT:     LSHR T64.X, PV.W, literal.x,9443; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9444; EG-NEXT:    2(2.802597e-45), 224(3.138909e-43)9445; EG-NEXT:     LSHR T65.X, PV.W, literal.x,9446; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9447; EG-NEXT:    2(2.802597e-45), 240(3.363116e-43)9448; EG-NEXT:     LSHR T66.X, PV.W, literal.x,9449; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9450; EG-NEXT:    2(2.802597e-45), 256(3.587324e-43)9451; EG-NEXT:     LSHR T67.X, PV.W, literal.x,9452; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9453; EG-NEXT:    2(2.802597e-45), 272(3.811532e-43)9454; EG-NEXT:     LSHR T68.X, PV.W, literal.x,9455; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9456; EG-NEXT:    2(2.802597e-45), 288(4.035740e-43)9457; EG-NEXT:     LSHR T69.X, PV.W, literal.x,9458; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9459; EG-NEXT:    2(2.802597e-45), 304(4.259947e-43)9460; EG-NEXT:     LSHR T70.X, PV.W, literal.x,9461; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9462; EG-NEXT:    2(2.802597e-45), 320(4.484155e-43)9463; EG-NEXT:     LSHR T71.X, PV.W, literal.x,9464; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9465; EG-NEXT:    2(2.802597e-45), 336(4.708363e-43)9466; EG-NEXT:     LSHR T72.X, PV.W, literal.x,9467; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9468; EG-NEXT:    2(2.802597e-45), 352(4.932571e-43)9469; EG-NEXT:     LSHR T73.X, PV.W, literal.x,9470; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9471; EG-NEXT:    2(2.802597e-45), 368(5.156778e-43)9472; EG-NEXT:     LSHR T74.X, PV.W, literal.x,9473; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9474; EG-NEXT:    2(2.802597e-45), 384(5.380986e-43)9475; EG-NEXT:     LSHR T75.X, PV.W, literal.x,9476; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9477; EG-NEXT:    2(2.802597e-45), 400(5.605194e-43)9478; EG-NEXT:     LSHR T76.X, PV.W, literal.x,9479; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9480; EG-NEXT:    2(2.802597e-45), 416(5.829402e-43)9481; EG-NEXT:     LSHR T77.X, PV.W, literal.x,9482; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9483; EG-NEXT:    2(2.802597e-45), 432(6.053609e-43)9484; EG-NEXT:     LSHR T78.X, PV.W, literal.x,9485; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9486; EG-NEXT:    2(2.802597e-45), 448(6.277817e-43)9487; EG-NEXT:     LSHR T79.X, PV.W, literal.x,9488; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9489; EG-NEXT:    2(2.802597e-45), 464(6.502025e-43)9490; EG-NEXT:     LSHR T80.X, PV.W, literal.x,9491; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9492; EG-NEXT:    2(2.802597e-45), 480(6.726233e-43)9493; EG-NEXT:     LSHR T81.X, PV.W, literal.x,9494; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,9495; EG-NEXT:    2(2.802597e-45), 496(6.950440e-43)9496; EG-NEXT:     LSHR * T82.X, PV.W, literal.x,9497; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)9498;9499; GFX12-LABEL: constant_zextload_v64i1_to_v64i64:9500; GFX12:       ; %bb.0:9501; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x249502; GFX12-NEXT:    s_wait_kmcnt 0x09503; GFX12-NEXT:    s_load_b64 s[2:3], s[2:3], 0x09504; GFX12-NEXT:    s_wait_kmcnt 0x09505; GFX12-NEXT:    s_bfe_u32 s4, s3, 0x100149506; GFX12-NEXT:    s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_3) | instid1(VALU_DEP_1)9507; GFX12-NEXT:    v_dual_mov_b32 v1, 0 :: v_dual_mov_b32 v0, s49508; GFX12-NEXT:    s_bfe_u32 s5, s3, 0x100159509; GFX12-NEXT:    s_lshr_b32 s4, s3, 319510; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9511; GFX12-NEXT:    v_dual_mov_b32 v2, s5 :: v_dual_mov_b32 v3, v19512; GFX12-NEXT:    s_bfe_u32 s5, s3, 0x1001e9513; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:4169514; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9515; GFX12-NEXT:    v_mov_b32_e32 v0, s59516; GFX12-NEXT:    v_mov_b32_e32 v2, s49517; GFX12-NEXT:    s_bfe_u32 s4, s3, 0x1001d9518; GFX12-NEXT:    s_bfe_u32 s5, s3, 0x1001c9519; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:4969520; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9521; GFX12-NEXT:    v_mov_b32_e32 v0, s59522; GFX12-NEXT:    v_mov_b32_e32 v2, s49523; GFX12-NEXT:    s_bfe_u32 s4, s3, 0x1001b9524; GFX12-NEXT:    s_bfe_u32 s5, s3, 0x1001a9525; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:4809526; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9527; GFX12-NEXT:    v_mov_b32_e32 v0, s59528; GFX12-NEXT:    v_mov_b32_e32 v2, s49529; GFX12-NEXT:    s_bfe_u32 s4, s3, 0x100199530; GFX12-NEXT:    s_bfe_u32 s5, s3, 0x100189531; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:4649532; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9533; GFX12-NEXT:    v_mov_b32_e32 v0, s59534; GFX12-NEXT:    v_mov_b32_e32 v2, s49535; GFX12-NEXT:    s_bfe_u32 s4, s3, 0x100179536; GFX12-NEXT:    s_bfe_u32 s5, s3, 0x100169537; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:4489538; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9539; GFX12-NEXT:    v_mov_b32_e32 v0, s59540; GFX12-NEXT:    v_mov_b32_e32 v2, s49541; GFX12-NEXT:    s_bfe_u32 s4, s3, 0x100139542; GFX12-NEXT:    s_bfe_u32 s5, s3, 0x100129543; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:4329544; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9545; GFX12-NEXT:    v_mov_b32_e32 v0, s59546; GFX12-NEXT:    v_mov_b32_e32 v2, s49547; GFX12-NEXT:    s_bfe_u32 s4, s3, 0x100119548; GFX12-NEXT:    s_bfe_u32 s5, s3, 0x100109549; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:4009550; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9551; GFX12-NEXT:    v_mov_b32_e32 v0, s59552; GFX12-NEXT:    v_mov_b32_e32 v2, s49553; GFX12-NEXT:    s_bfe_u32 s4, s3, 0x1000f9554; GFX12-NEXT:    s_bfe_u32 s5, s3, 0x1000e9555; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:3849556; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9557; GFX12-NEXT:    v_mov_b32_e32 v0, s59558; GFX12-NEXT:    v_mov_b32_e32 v2, s49559; GFX12-NEXT:    s_bfe_u32 s4, s3, 0x1000d9560; GFX12-NEXT:    s_bfe_u32 s5, s3, 0x1000c9561; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:3689562; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9563; GFX12-NEXT:    v_mov_b32_e32 v0, s59564; GFX12-NEXT:    v_mov_b32_e32 v2, s49565; GFX12-NEXT:    s_bfe_u32 s4, s3, 0x1000b9566; GFX12-NEXT:    s_bfe_u32 s5, s3, 0x1000a9567; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:3529568; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9569; GFX12-NEXT:    v_mov_b32_e32 v0, s59570; GFX12-NEXT:    v_mov_b32_e32 v2, s49571; GFX12-NEXT:    s_bfe_u32 s4, s3, 0x100099572; GFX12-NEXT:    s_bfe_u32 s5, s3, 0x100089573; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:3369574; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9575; GFX12-NEXT:    v_mov_b32_e32 v0, s59576; GFX12-NEXT:    v_mov_b32_e32 v2, s49577; GFX12-NEXT:    s_bfe_u32 s4, s3, 0x100079578; GFX12-NEXT:    s_bfe_u32 s5, s3, 0x100069579; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:3209580; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9581; GFX12-NEXT:    v_mov_b32_e32 v0, s59582; GFX12-NEXT:    v_mov_b32_e32 v2, s49583; GFX12-NEXT:    s_bfe_u32 s4, s3, 0x100059584; GFX12-NEXT:    s_bfe_u32 s5, s3, 0x100049585; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:3049586; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9587; GFX12-NEXT:    v_mov_b32_e32 v0, s59588; GFX12-NEXT:    v_mov_b32_e32 v2, s49589; GFX12-NEXT:    s_bfe_u32 s4, s3, 0x100039590; GFX12-NEXT:    s_bfe_u32 s5, s3, 0x100029591; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:2889592; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9593; GFX12-NEXT:    v_mov_b32_e32 v0, s59594; GFX12-NEXT:    v_mov_b32_e32 v2, s49595; GFX12-NEXT:    s_bfe_u32 s4, s3, 0x100019596; GFX12-NEXT:    s_and_b32 s3, s3, 19597; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:2729598; GFX12-NEXT:    v_mov_b32_e32 v0, s39599; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9600; GFX12-NEXT:    v_mov_b32_e32 v2, s49601; GFX12-NEXT:    s_lshr_b32 s3, s2, 319602; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x1001e9603; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:2569604; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9605; GFX12-NEXT:    v_mov_b32_e32 v0, s49606; GFX12-NEXT:    v_mov_b32_e32 v2, s39607; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x1001d9608; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x1001c9609; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:2409610; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9611; GFX12-NEXT:    v_mov_b32_e32 v0, s49612; GFX12-NEXT:    v_mov_b32_e32 v2, s39613; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x1001b9614; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x1001a9615; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:2249616; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9617; GFX12-NEXT:    v_mov_b32_e32 v0, s49618; GFX12-NEXT:    v_mov_b32_e32 v2, s39619; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100199620; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100189621; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:2089622; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9623; GFX12-NEXT:    v_mov_b32_e32 v0, s49624; GFX12-NEXT:    v_mov_b32_e32 v2, s39625; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100179626; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100169627; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1929628; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9629; GFX12-NEXT:    v_mov_b32_e32 v0, s49630; GFX12-NEXT:    v_mov_b32_e32 v2, s39631; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100149632; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100159633; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1769634; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9635; GFX12-NEXT:    v_mov_b32_e32 v0, s39636; GFX12-NEXT:    v_mov_b32_e32 v2, s49637; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100139638; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100129639; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1609640; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9641; GFX12-NEXT:    v_mov_b32_e32 v0, s49642; GFX12-NEXT:    v_mov_b32_e32 v2, s39643; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100119644; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100109645; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1449646; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9647; GFX12-NEXT:    v_mov_b32_e32 v0, s49648; GFX12-NEXT:    v_mov_b32_e32 v2, s39649; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x1000f9650; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x1000e9651; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1289652; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9653; GFX12-NEXT:    v_mov_b32_e32 v0, s49654; GFX12-NEXT:    v_mov_b32_e32 v2, s39655; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x1000d9656; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x1000c9657; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:1129658; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9659; GFX12-NEXT:    v_mov_b32_e32 v0, s49660; GFX12-NEXT:    v_mov_b32_e32 v2, s39661; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x1000b9662; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x1000a9663; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:969664; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9665; GFX12-NEXT:    v_mov_b32_e32 v0, s49666; GFX12-NEXT:    v_mov_b32_e32 v2, s39667; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100099668; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100089669; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:809670; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9671; GFX12-NEXT:    v_mov_b32_e32 v0, s49672; GFX12-NEXT:    v_mov_b32_e32 v2, s39673; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100079674; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100069675; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:649676; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9677; GFX12-NEXT:    v_mov_b32_e32 v0, s49678; GFX12-NEXT:    v_mov_b32_e32 v2, s39679; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100059680; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100049681; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:489682; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9683; GFX12-NEXT:    v_mov_b32_e32 v0, s49684; GFX12-NEXT:    v_mov_b32_e32 v2, s39685; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100039686; GFX12-NEXT:    s_bfe_u32 s4, s2, 0x100029687; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:329688; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9689; GFX12-NEXT:    v_mov_b32_e32 v0, s49690; GFX12-NEXT:    v_mov_b32_e32 v2, s39691; GFX12-NEXT:    s_bfe_u32 s3, s2, 0x100019692; GFX12-NEXT:    s_and_b32 s2, s2, 19693; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1] offset:169694; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)9695; GFX12-NEXT:    v_mov_b32_e32 v0, s29696; GFX12-NEXT:    v_mov_b32_e32 v2, s39697; GFX12-NEXT:    global_store_b128 v1, v[0:3], s[0:1]9698; GFX12-NEXT:    s_endpgm9699;9700; GFX1250-LABEL: constant_zextload_v64i1_to_v64i64:9701; GFX1250:       ; %bb.0:9702; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 19703; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x249704; GFX1250-NEXT:    s_wait_kmcnt 0x09705; GFX1250-NEXT:    s_load_b64 s[2:3], s[2:3], 0x09706; GFX1250-NEXT:    s_wait_kmcnt 0x09707; GFX1250-NEXT:    s_bfe_u32 s4, s3, 0x100149708; GFX1250-NEXT:    s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(VALU_DEP_1)9709; GFX1250-NEXT:    v_dual_mov_b32 v3, 0 :: v_dual_mov_b32 v2, s49710; GFX1250-NEXT:    s_bfe_u32 s5, s3, 0x100159711; GFX1250-NEXT:    s_lshr_b32 s4, s3, 319712; GFX1250-NEXT:    v_dual_mov_b32 v4, s5 :: v_dual_mov_b32 v5, v39713; GFX1250-NEXT:    s_bfe_u32 s5, s3, 0x1001e9714; GFX1250-NEXT:    s_bfe_u32 s6, s3, 0x100029715; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:4169716; GFX1250-NEXT:    s_wait_xcnt 0x09717; GFX1250-NEXT:    v_dual_mov_b32 v2, s5 :: v_dual_mov_b32 v4, s49718; GFX1250-NEXT:    s_bfe_u32 s4, s3, 0x1001d9719; GFX1250-NEXT:    s_bfe_u32 s5, s3, 0x1001c9720; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:4969721; GFX1250-NEXT:    s_wait_xcnt 0x09722; GFX1250-NEXT:    v_dual_mov_b32 v2, s5 :: v_dual_mov_b32 v4, s49723; GFX1250-NEXT:    s_bfe_u32 s4, s3, 0x1001b9724; GFX1250-NEXT:    s_bfe_u32 s5, s3, 0x1001a9725; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:4809726; GFX1250-NEXT:    s_wait_xcnt 0x09727; GFX1250-NEXT:    v_dual_mov_b32 v2, s5 :: v_dual_mov_b32 v4, s49728; GFX1250-NEXT:    s_bfe_u32 s4, s3, 0x100199729; GFX1250-NEXT:    s_bfe_u32 s5, s3, 0x100189730; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:4649731; GFX1250-NEXT:    s_wait_xcnt 0x09732; GFX1250-NEXT:    v_dual_mov_b32 v2, s5 :: v_dual_mov_b32 v4, s49733; GFX1250-NEXT:    s_bfe_u32 s4, s3, 0x100179734; GFX1250-NEXT:    s_bfe_u32 s5, s3, 0x100169735; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:4489736; GFX1250-NEXT:    s_wait_xcnt 0x09737; GFX1250-NEXT:    v_dual_mov_b32 v2, s5 :: v_dual_mov_b32 v4, s49738; GFX1250-NEXT:    s_bfe_u32 s4, s3, 0x100139739; GFX1250-NEXT:    s_bfe_u32 s5, s3, 0x100129740; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:4329741; GFX1250-NEXT:    s_wait_xcnt 0x09742; GFX1250-NEXT:    v_dual_mov_b32 v2, s5 :: v_dual_mov_b32 v4, s49743; GFX1250-NEXT:    s_bfe_u32 s4, s3, 0x100119744; GFX1250-NEXT:    s_bfe_u32 s5, s3, 0x100109745; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:4009746; GFX1250-NEXT:    s_wait_xcnt 0x09747; GFX1250-NEXT:    v_dual_mov_b32 v2, s5 :: v_dual_mov_b32 v4, s49748; GFX1250-NEXT:    s_bfe_u32 s4, s3, 0x1000f9749; GFX1250-NEXT:    s_bfe_u32 s5, s3, 0x1000e9750; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:3849751; GFX1250-NEXT:    s_wait_xcnt 0x09752; GFX1250-NEXT:    v_dual_mov_b32 v2, s5 :: v_dual_mov_b32 v4, s49753; GFX1250-NEXT:    s_bfe_u32 s4, s3, 0x1000d9754; GFX1250-NEXT:    s_bfe_u32 s5, s3, 0x1000c9755; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:3689756; GFX1250-NEXT:    s_wait_xcnt 0x09757; GFX1250-NEXT:    v_dual_mov_b32 v2, s5 :: v_dual_mov_b32 v4, s49758; GFX1250-NEXT:    s_bfe_u32 s4, s3, 0x1000b9759; GFX1250-NEXT:    s_bfe_u32 s5, s3, 0x1000a9760; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:3529761; GFX1250-NEXT:    s_wait_xcnt 0x09762; GFX1250-NEXT:    v_dual_mov_b32 v2, s5 :: v_dual_mov_b32 v4, s49763; GFX1250-NEXT:    s_bfe_u32 s4, s3, 0x100099764; GFX1250-NEXT:    s_bfe_u32 s5, s3, 0x100089765; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:3369766; GFX1250-NEXT:    s_wait_xcnt 0x09767; GFX1250-NEXT:    v_dual_mov_b32 v2, s5 :: v_dual_mov_b32 v4, s49768; GFX1250-NEXT:    s_bfe_u32 s4, s3, 0x100079769; GFX1250-NEXT:    s_bfe_u32 s5, s3, 0x100069770; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:3209771; GFX1250-NEXT:    s_wait_xcnt 0x09772; GFX1250-NEXT:    v_dual_mov_b32 v2, s5 :: v_dual_mov_b32 v4, s49773; GFX1250-NEXT:    s_bfe_u32 s4, s3, 0x100059774; GFX1250-NEXT:    s_bfe_u32 s5, s3, 0x100049775; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:3049776; GFX1250-NEXT:    s_wait_xcnt 0x09777; GFX1250-NEXT:    v_dual_mov_b32 v2, s5 :: v_dual_mov_b32 v4, s49778; GFX1250-NEXT:    s_bfe_u32 s5, s3, 0x100039779; GFX1250-NEXT:    s_mov_b32 s4, s39780; GFX1250-NEXT:    s_bfe_u32 s3, s3, 0x100019781; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:2889782; GFX1250-NEXT:    s_wait_xcnt 0x09783; GFX1250-NEXT:    v_dual_mov_b32 v2, s6 :: v_dual_mov_b32 v4, s59784; GFX1250-NEXT:    s_and_b64 s[4:5], s[4:5], 19785; GFX1250-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)9786; GFX1250-NEXT:    v_dual_mov_b32 v0, s4 :: v_dual_mov_b32 v1, s59787; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:2729788; GFX1250-NEXT:    s_wait_xcnt 0x09789; GFX1250-NEXT:    v_mov_b32_e32 v2, s39790; GFX1250-NEXT:    s_lshr_b32 s3, s2, 319791; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x1001e9792; GFX1250-NEXT:    v_mov_b32_e32 v4, s39793; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x1001d9794; GFX1250-NEXT:    global_store_b128 v3, v[0:3], s[0:1] offset:2569795; GFX1250-NEXT:    s_wait_xcnt 0x09796; GFX1250-NEXT:    v_mov_b32_e32 v2, s49797; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x1001c9798; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:2409799; GFX1250-NEXT:    s_wait_xcnt 0x09800; GFX1250-NEXT:    v_mov_b32_e32 v4, s39801; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x1001b9802; GFX1250-NEXT:    v_mov_b32_e32 v2, s49803; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x1001a9804; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:2249805; GFX1250-NEXT:    s_wait_xcnt 0x09806; GFX1250-NEXT:    v_mov_b32_e32 v4, s39807; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100199808; GFX1250-NEXT:    v_mov_b32_e32 v2, s49809; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100189810; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:2089811; GFX1250-NEXT:    s_wait_xcnt 0x09812; GFX1250-NEXT:    v_mov_b32_e32 v4, s39813; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100179814; GFX1250-NEXT:    v_mov_b32_e32 v2, s49815; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100169816; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:1929817; GFX1250-NEXT:    s_wait_xcnt 0x09818; GFX1250-NEXT:    v_dual_mov_b32 v2, s4 :: v_dual_mov_b32 v4, s39819; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100149820; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100159821; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:1769822; GFX1250-NEXT:    s_wait_xcnt 0x09823; GFX1250-NEXT:    v_dual_mov_b32 v2, s3 :: v_dual_mov_b32 v4, s49824; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100139825; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100129826; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:1609827; GFX1250-NEXT:    s_wait_xcnt 0x09828; GFX1250-NEXT:    v_mov_b32_e32 v4, s39829; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100119830; GFX1250-NEXT:    v_mov_b32_e32 v2, s49831; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100109832; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:1449833; GFX1250-NEXT:    s_wait_xcnt 0x09834; GFX1250-NEXT:    v_mov_b32_e32 v4, s39835; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x1000f9836; GFX1250-NEXT:    v_mov_b32_e32 v2, s49837; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x1000e9838; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:1289839; GFX1250-NEXT:    s_wait_xcnt 0x09840; GFX1250-NEXT:    v_mov_b32_e32 v4, s39841; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x1000d9842; GFX1250-NEXT:    v_mov_b32_e32 v2, s49843; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x1000c9844; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:1129845; GFX1250-NEXT:    s_wait_xcnt 0x09846; GFX1250-NEXT:    v_mov_b32_e32 v4, s39847; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x1000b9848; GFX1250-NEXT:    v_mov_b32_e32 v2, s49849; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x1000a9850; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:969851; GFX1250-NEXT:    s_wait_xcnt 0x09852; GFX1250-NEXT:    v_mov_b32_e32 v4, s39853; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100099854; GFX1250-NEXT:    v_mov_b32_e32 v2, s49855; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100089856; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:809857; GFX1250-NEXT:    s_wait_xcnt 0x09858; GFX1250-NEXT:    v_mov_b32_e32 v4, s39859; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100079860; GFX1250-NEXT:    v_mov_b32_e32 v2, s49861; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100069862; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:649863; GFX1250-NEXT:    s_wait_xcnt 0x09864; GFX1250-NEXT:    v_mov_b32_e32 v4, s39865; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100059866; GFX1250-NEXT:    v_mov_b32_e32 v2, s49867; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100049868; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:489869; GFX1250-NEXT:    s_wait_xcnt 0x09870; GFX1250-NEXT:    v_mov_b32_e32 v4, s39871; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100039872; GFX1250-NEXT:    v_mov_b32_e32 v2, s49873; GFX1250-NEXT:    s_bfe_u32 s4, s2, 0x100029874; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:329875; GFX1250-NEXT:    s_wait_xcnt 0x09876; GFX1250-NEXT:    v_mov_b32_e32 v4, s39877; GFX1250-NEXT:    s_bfe_u32 s3, s2, 0x100019878; GFX1250-NEXT:    v_mov_b32_e32 v2, s49879; GFX1250-NEXT:    s_and_b32 s2, s2, 19880; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1] offset:169881; GFX1250-NEXT:    s_wait_xcnt 0x09882; GFX1250-NEXT:    v_dual_mov_b32 v2, s2 :: v_dual_mov_b32 v4, s39883; GFX1250-NEXT:    global_store_b128 v3, v[2:5], s[0:1]9884; GFX1250-NEXT:    s_endpgm9885  %load = load <64 x i1>, ptr addrspace(4) %in9886  %ext = zext <64 x i1> %load to <64 x i64>9887  store <64 x i64> %ext, ptr addrspace(1) %out9888  ret void9889}9890 9891define amdgpu_kernel void @constant_sextload_v64i1_to_v64i64(ptr addrspace(1) %out, ptr addrspace(4) nocapture %in) #0 {9892; GFX6-LABEL: constant_sextload_v64i1_to_v64i64:9893; GFX6:       ; %bb.0:9894; GFX6-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x99895; GFX6-NEXT:    s_waitcnt lgkmcnt(0)9896; GFX6-NEXT:    s_load_dwordx2 s[4:5], s[2:3], 0x09897; GFX6-NEXT:    s_mov_b32 s3, 0xf0009898; GFX6-NEXT:    s_mov_b32 s2, -19899; GFX6-NEXT:    s_waitcnt lgkmcnt(0)9900; GFX6-NEXT:    s_lshr_b32 s42, s5, 309901; GFX6-NEXT:    s_lshr_b32 s36, s4, 309902; GFX6-NEXT:    s_lshr_b32 s38, s4, 319903; GFX6-NEXT:    s_lshr_b32 s30, s4, 289904; GFX6-NEXT:    s_lshr_b32 s34, s4, 299905; GFX6-NEXT:    s_lshr_b32 s26, s4, 269906; GFX6-NEXT:    s_lshr_b32 s28, s4, 279907; GFX6-NEXT:    s_lshr_b32 s22, s4, 249908; GFX6-NEXT:    s_lshr_b32 s24, s4, 259909; GFX6-NEXT:    s_lshr_b32 s18, s4, 229910; GFX6-NEXT:    s_lshr_b32 s20, s4, 239911; GFX6-NEXT:    s_lshr_b32 s14, s4, 209912; GFX6-NEXT:    s_lshr_b32 s16, s4, 219913; GFX6-NEXT:    s_lshr_b32 s10, s4, 189914; GFX6-NEXT:    s_lshr_b32 s12, s4, 199915; GFX6-NEXT:    s_lshr_b32 s6, s4, 169916; GFX6-NEXT:    s_lshr_b32 s8, s4, 179917; GFX6-NEXT:    s_ashr_i32 s7, s5, 319918; GFX6-NEXT:    s_bfe_i64 s[44:45], s[4:5], 0x100009919; GFX6-NEXT:    v_mov_b32_e32 v4, s79920; GFX6-NEXT:    s_lshr_b32 s40, s4, 149921; GFX6-NEXT:    v_mov_b32_e32 v0, s449922; GFX6-NEXT:    v_mov_b32_e32 v1, s459923; GFX6-NEXT:    s_mov_b32 s44, s59924; GFX6-NEXT:    s_bfe_i64 s[44:45], s[44:45], 0x100009925; GFX6-NEXT:    s_bfe_i64 s[42:43], s[42:43], 0x100009926; GFX6-NEXT:    v_mov_b32_e32 v6, s449927; GFX6-NEXT:    v_mov_b32_e32 v7, s459928; GFX6-NEXT:    s_lshr_b32 s44, s4, 159929; GFX6-NEXT:    v_mov_b32_e32 v2, s429930; GFX6-NEXT:    v_mov_b32_e32 v3, s439931; GFX6-NEXT:    s_lshr_b32 s42, s4, 129932; GFX6-NEXT:    s_bfe_i64 s[36:37], s[36:37], 0x100009933; GFX6-NEXT:    s_bfe_i64 s[38:39], s[38:39], 0x100009934; GFX6-NEXT:    v_mov_b32_e32 v8, s369935; GFX6-NEXT:    v_mov_b32_e32 v9, s379936; GFX6-NEXT:    s_lshr_b32 s36, s4, 139937; GFX6-NEXT:    v_mov_b32_e32 v10, s389938; GFX6-NEXT:    v_mov_b32_e32 v11, s399939; GFX6-NEXT:    s_lshr_b32 s38, s4, 109940; GFX6-NEXT:    s_bfe_i64 s[30:31], s[30:31], 0x100009941; GFX6-NEXT:    s_bfe_i64 s[34:35], s[34:35], 0x100009942; GFX6-NEXT:    v_mov_b32_e32 v12, s309943; GFX6-NEXT:    v_mov_b32_e32 v13, s319944; GFX6-NEXT:    s_lshr_b32 s30, s4, 119945; GFX6-NEXT:    v_mov_b32_e32 v14, s349946; GFX6-NEXT:    v_mov_b32_e32 v15, s359947; GFX6-NEXT:    s_lshr_b32 s34, s4, 89948; GFX6-NEXT:    s_bfe_i64 s[28:29], s[28:29], 0x100009949; GFX6-NEXT:    s_bfe_i64 s[26:27], s[26:27], 0x100009950; GFX6-NEXT:    v_mov_b32_e32 v5, s79951; GFX6-NEXT:    buffer_store_dwordx4 v[2:5], off, s[0:3], 0 offset:4969952; GFX6-NEXT:    s_waitcnt expcnt(0)9953; GFX6-NEXT:    v_mov_b32_e32 v2, s269954; GFX6-NEXT:    v_mov_b32_e32 v3, s279955; GFX6-NEXT:    s_lshr_b32 s26, s4, 99956; GFX6-NEXT:    v_mov_b32_e32 v4, s289957; GFX6-NEXT:    v_mov_b32_e32 v5, s299958; GFX6-NEXT:    s_lshr_b32 s28, s4, 69959; GFX6-NEXT:    s_bfe_i64 s[24:25], s[24:25], 0x100009960; GFX6-NEXT:    s_bfe_i64 s[22:23], s[22:23], 0x100009961; GFX6-NEXT:    buffer_store_dwordx4 v[8:11], off, s[0:3], 0 offset:2409962; GFX6-NEXT:    s_waitcnt expcnt(0)9963; GFX6-NEXT:    v_mov_b32_e32 v8, s229964; GFX6-NEXT:    v_mov_b32_e32 v9, s239965; GFX6-NEXT:    s_lshr_b32 s22, s4, 79966; GFX6-NEXT:    v_mov_b32_e32 v10, s249967; GFX6-NEXT:    v_mov_b32_e32 v11, s259968; GFX6-NEXT:    s_lshr_b32 s24, s4, 49969; GFX6-NEXT:    s_bfe_i64 s[20:21], s[20:21], 0x100009970; GFX6-NEXT:    s_bfe_i64 s[18:19], s[18:19], 0x100009971; GFX6-NEXT:    buffer_store_dwordx4 v[12:15], off, s[0:3], 0 offset:2249972; GFX6-NEXT:    s_waitcnt expcnt(0)9973; GFX6-NEXT:    v_mov_b32_e32 v12, s189974; GFX6-NEXT:    v_mov_b32_e32 v13, s199975; GFX6-NEXT:    s_lshr_b32 s18, s4, 59976; GFX6-NEXT:    v_mov_b32_e32 v14, s209977; GFX6-NEXT:    v_mov_b32_e32 v15, s219978; GFX6-NEXT:    s_lshr_b32 s20, s4, 29979; GFX6-NEXT:    s_bfe_i64 s[16:17], s[16:17], 0x100009980; GFX6-NEXT:    s_bfe_i64 s[14:15], s[14:15], 0x100009981; GFX6-NEXT:    buffer_store_dwordx4 v[2:5], off, s[0:3], 0 offset:2089982; GFX6-NEXT:    s_waitcnt expcnt(0)9983; GFX6-NEXT:    v_mov_b32_e32 v2, s149984; GFX6-NEXT:    v_mov_b32_e32 v3, s159985; GFX6-NEXT:    s_lshr_b32 s14, s4, 39986; GFX6-NEXT:    v_mov_b32_e32 v4, s169987; GFX6-NEXT:    v_mov_b32_e32 v5, s179988; GFX6-NEXT:    s_lshr_b32 s16, s4, 19989; GFX6-NEXT:    s_bfe_i64 s[12:13], s[12:13], 0x100009990; GFX6-NEXT:    s_bfe_i64 s[10:11], s[10:11], 0x100009991; GFX6-NEXT:    buffer_store_dwordx4 v[8:11], off, s[0:3], 0 offset:1929992; GFX6-NEXT:    s_waitcnt expcnt(0)9993; GFX6-NEXT:    v_mov_b32_e32 v8, s109994; GFX6-NEXT:    v_mov_b32_e32 v9, s119995; GFX6-NEXT:    s_lshr_b32 s10, s5, 299996; GFX6-NEXT:    v_mov_b32_e32 v10, s129997; GFX6-NEXT:    v_mov_b32_e32 v11, s139998; GFX6-NEXT:    s_lshr_b32 s12, s5, 289999; GFX6-NEXT:    s_bfe_i64 s[8:9], s[8:9], 0x1000010000; GFX6-NEXT:    s_bfe_i64 s[6:7], s[6:7], 0x1000010001; GFX6-NEXT:    buffer_store_dwordx4 v[12:15], off, s[0:3], 0 offset:17610002; GFX6-NEXT:    s_waitcnt expcnt(0)10003; GFX6-NEXT:    v_mov_b32_e32 v12, s610004; GFX6-NEXT:    v_mov_b32_e32 v13, s710005; GFX6-NEXT:    s_lshr_b32 s6, s5, 2610006; GFX6-NEXT:    v_mov_b32_e32 v14, s810007; GFX6-NEXT:    v_mov_b32_e32 v15, s910008; GFX6-NEXT:    s_lshr_b32 s8, s5, 2710009; GFX6-NEXT:    s_bfe_i64 s[44:45], s[44:45], 0x1000010010; GFX6-NEXT:    s_bfe_i64 s[40:41], s[40:41], 0x1000010011; GFX6-NEXT:    buffer_store_dwordx4 v[2:5], off, s[0:3], 0 offset:16010012; GFX6-NEXT:    s_waitcnt expcnt(0)10013; GFX6-NEXT:    v_mov_b32_e32 v2, s4010014; GFX6-NEXT:    v_mov_b32_e32 v3, s4110015; GFX6-NEXT:    s_lshr_b32 s40, s5, 2510016; GFX6-NEXT:    v_mov_b32_e32 v4, s4410017; GFX6-NEXT:    v_mov_b32_e32 v5, s4510018; GFX6-NEXT:    s_lshr_b32 s44, s5, 2410019; GFX6-NEXT:    s_bfe_i64 s[36:37], s[36:37], 0x1000010020; GFX6-NEXT:    s_bfe_i64 s[42:43], s[42:43], 0x1000010021; GFX6-NEXT:    buffer_store_dwordx4 v[8:11], off, s[0:3], 0 offset:14410022; GFX6-NEXT:    s_waitcnt expcnt(0)10023; GFX6-NEXT:    v_mov_b32_e32 v8, s4210024; GFX6-NEXT:    v_mov_b32_e32 v9, s4310025; GFX6-NEXT:    s_lshr_b32 s42, s5, 2210026; GFX6-NEXT:    v_mov_b32_e32 v10, s3610027; GFX6-NEXT:    v_mov_b32_e32 v11, s3710028; GFX6-NEXT:    s_lshr_b32 s36, s5, 2310029; GFX6-NEXT:    s_bfe_i64 s[30:31], s[30:31], 0x1000010030; GFX6-NEXT:    s_bfe_i64 s[38:39], s[38:39], 0x1000010031; GFX6-NEXT:    buffer_store_dwordx4 v[12:15], off, s[0:3], 0 offset:12810032; GFX6-NEXT:    s_waitcnt expcnt(0)10033; GFX6-NEXT:    v_mov_b32_e32 v12, s3810034; GFX6-NEXT:    v_mov_b32_e32 v13, s3910035; GFX6-NEXT:    s_lshr_b32 s38, s5, 2010036; GFX6-NEXT:    v_mov_b32_e32 v14, s3010037; GFX6-NEXT:    v_mov_b32_e32 v15, s3110038; GFX6-NEXT:    s_lshr_b32 s4, s5, 2110039; GFX6-NEXT:    s_bfe_i64 s[26:27], s[26:27], 0x1000010040; GFX6-NEXT:    s_bfe_i64 s[30:31], s[34:35], 0x1000010041; GFX6-NEXT:    buffer_store_dwordx4 v[2:5], off, s[0:3], 0 offset:11210042; GFX6-NEXT:    s_waitcnt expcnt(0)10043; GFX6-NEXT:    v_mov_b32_e32 v2, s3010044; GFX6-NEXT:    v_mov_b32_e32 v3, s3110045; GFX6-NEXT:    s_lshr_b32 s30, s5, 1810046; GFX6-NEXT:    v_mov_b32_e32 v4, s2610047; GFX6-NEXT:    v_mov_b32_e32 v5, s2710048; GFX6-NEXT:    s_lshr_b32 s26, s5, 1910049; GFX6-NEXT:    s_bfe_i64 s[22:23], s[22:23], 0x1000010050; GFX6-NEXT:    s_bfe_i64 s[28:29], s[28:29], 0x1000010051; GFX6-NEXT:    buffer_store_dwordx4 v[8:11], off, s[0:3], 0 offset:9610052; GFX6-NEXT:    s_waitcnt expcnt(0)10053; GFX6-NEXT:    v_mov_b32_e32 v8, s2810054; GFX6-NEXT:    v_mov_b32_e32 v9, s2910055; GFX6-NEXT:    s_lshr_b32 s28, s5, 1710056; GFX6-NEXT:    v_mov_b32_e32 v10, s2210057; GFX6-NEXT:    v_mov_b32_e32 v11, s2310058; GFX6-NEXT:    s_lshr_b32 s22, s5, 1610059; GFX6-NEXT:    s_bfe_i64 s[18:19], s[18:19], 0x1000010060; GFX6-NEXT:    s_bfe_i64 s[24:25], s[24:25], 0x1000010061; GFX6-NEXT:    buffer_store_dwordx4 v[12:15], off, s[0:3], 0 offset:8010062; GFX6-NEXT:    s_waitcnt expcnt(0)10063; GFX6-NEXT:    v_mov_b32_e32 v12, s2410064; GFX6-NEXT:    v_mov_b32_e32 v13, s2510065; GFX6-NEXT:    s_lshr_b32 s24, s5, 1410066; GFX6-NEXT:    v_mov_b32_e32 v14, s1810067; GFX6-NEXT:    v_mov_b32_e32 v15, s1910068; GFX6-NEXT:    s_lshr_b32 s18, s5, 1510069; GFX6-NEXT:    s_bfe_i64 s[20:21], s[20:21], 0x1000010070; GFX6-NEXT:    buffer_store_dwordx4 v[2:5], off, s[0:3], 0 offset:6410071; GFX6-NEXT:    v_mov_b32_e32 v16, s2010072; GFX6-NEXT:    v_mov_b32_e32 v17, s2110073; GFX6-NEXT:    s_lshr_b32 s20, s5, 1210074; GFX6-NEXT:    s_bfe_i64 s[14:15], s[14:15], 0x1000010075; GFX6-NEXT:    s_bfe_i64 s[16:17], s[16:17], 0x1000010076; GFX6-NEXT:    v_mov_b32_e32 v18, s1410077; GFX6-NEXT:    v_mov_b32_e32 v19, s1510078; GFX6-NEXT:    s_lshr_b32 s14, s5, 1310079; GFX6-NEXT:    s_waitcnt expcnt(0)10080; GFX6-NEXT:    v_mov_b32_e32 v2, s1610081; GFX6-NEXT:    v_mov_b32_e32 v3, s1710082; GFX6-NEXT:    s_lshr_b32 s16, s5, 1010083; GFX6-NEXT:    s_bfe_i64 s[12:13], s[12:13], 0x1000010084; GFX6-NEXT:    s_bfe_i64 s[10:11], s[10:11], 0x1000010085; GFX6-NEXT:    buffer_store_dwordx4 v[8:11], off, s[0:3], 0 offset:4810086; GFX6-NEXT:    s_waitcnt expcnt(0)10087; GFX6-NEXT:    v_mov_b32_e32 v8, s1210088; GFX6-NEXT:    v_mov_b32_e32 v9, s1310089; GFX6-NEXT:    s_lshr_b32 s12, s5, 1110090; GFX6-NEXT:    v_mov_b32_e32 v10, s1010091; GFX6-NEXT:    v_mov_b32_e32 v11, s1110092; GFX6-NEXT:    s_lshr_b32 s10, s5, 810093; GFX6-NEXT:    s_bfe_i64 s[8:9], s[8:9], 0x1000010094; GFX6-NEXT:    s_bfe_i64 s[6:7], s[6:7], 0x1000010095; GFX6-NEXT:    buffer_store_dwordx4 v[12:15], off, s[0:3], 0 offset:3210096; GFX6-NEXT:    s_waitcnt expcnt(0)10097; GFX6-NEXT:    v_mov_b32_e32 v12, s610098; GFX6-NEXT:    v_mov_b32_e32 v13, s710099; GFX6-NEXT:    s_lshr_b32 s6, s5, 910100; GFX6-NEXT:    v_mov_b32_e32 v14, s810101; GFX6-NEXT:    v_mov_b32_e32 v15, s910102; GFX6-NEXT:    s_lshr_b32 s8, s5, 610103; GFX6-NEXT:    s_bfe_i64 s[34:35], s[44:45], 0x1000010104; GFX6-NEXT:    s_bfe_i64 s[40:41], s[40:41], 0x1000010105; GFX6-NEXT:    buffer_store_dwordx4 v[16:19], off, s[0:3], 0 offset:1610106; GFX6-NEXT:    s_waitcnt expcnt(0)10107; GFX6-NEXT:    v_mov_b32_e32 v16, s3410108; GFX6-NEXT:    v_mov_b32_e32 v17, s3510109; GFX6-NEXT:    s_lshr_b32 s34, s5, 710110; GFX6-NEXT:    v_mov_b32_e32 v18, s4010111; GFX6-NEXT:    v_mov_b32_e32 v19, s4110112; GFX6-NEXT:    s_lshr_b32 s40, s5, 410113; GFX6-NEXT:    s_bfe_i64 s[36:37], s[36:37], 0x1000010114; GFX6-NEXT:    s_bfe_i64 s[42:43], s[42:43], 0x1000010115; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 010116; GFX6-NEXT:    s_waitcnt expcnt(0)10117; GFX6-NEXT:    v_mov_b32_e32 v0, s4210118; GFX6-NEXT:    v_mov_b32_e32 v1, s4310119; GFX6-NEXT:    s_lshr_b32 s42, s5, 510120; GFX6-NEXT:    v_mov_b32_e32 v2, s3610121; GFX6-NEXT:    v_mov_b32_e32 v3, s3710122; GFX6-NEXT:    s_lshr_b32 s36, s5, 210123; GFX6-NEXT:    s_bfe_i64 s[38:39], s[38:39], 0x1000010124; GFX6-NEXT:    buffer_store_dwordx4 v[8:11], off, s[0:3], 0 offset:48010125; GFX6-NEXT:    s_waitcnt expcnt(0)10126; GFX6-NEXT:    v_mov_b32_e32 v8, s3810127; GFX6-NEXT:    v_mov_b32_e32 v9, s3910128; GFX6-NEXT:    s_lshr_b32 s38, s5, 310129; GFX6-NEXT:    s_lshr_b32 s44, s5, 110130; GFX6-NEXT:    s_bfe_i64 s[44:45], s[44:45], 0x1000010131; GFX6-NEXT:    s_bfe_i64 s[38:39], s[38:39], 0x1000010132; GFX6-NEXT:    s_bfe_i64 s[36:37], s[36:37], 0x1000010133; GFX6-NEXT:    s_bfe_i64 s[42:43], s[42:43], 0x1000010134; GFX6-NEXT:    s_bfe_i64 s[40:41], s[40:41], 0x1000010135; GFX6-NEXT:    s_bfe_i64 s[34:35], s[34:35], 0x1000010136; GFX6-NEXT:    s_bfe_i64 s[8:9], s[8:9], 0x1000010137; GFX6-NEXT:    s_bfe_i64 s[6:7], s[6:7], 0x1000010138; GFX6-NEXT:    s_bfe_i64 s[10:11], s[10:11], 0x1000010139; GFX6-NEXT:    s_bfe_i64 s[12:13], s[12:13], 0x1000010140; GFX6-NEXT:    s_bfe_i64 s[16:17], s[16:17], 0x1000010141; GFX6-NEXT:    s_bfe_i64 s[14:15], s[14:15], 0x1000010142; GFX6-NEXT:    s_bfe_i64 s[20:21], s[20:21], 0x1000010143; GFX6-NEXT:    s_bfe_i64 s[18:19], s[18:19], 0x1000010144; GFX6-NEXT:    s_bfe_i64 s[24:25], s[24:25], 0x1000010145; GFX6-NEXT:    s_bfe_i64 s[22:23], s[22:23], 0x1000010146; GFX6-NEXT:    s_bfe_i64 s[28:29], s[28:29], 0x1000010147; GFX6-NEXT:    s_bfe_i64 s[26:27], s[26:27], 0x1000010148; GFX6-NEXT:    s_bfe_i64 s[30:31], s[30:31], 0x1000010149; GFX6-NEXT:    s_bfe_i64 s[4:5], s[4:5], 0x1000010150; GFX6-NEXT:    buffer_store_dwordx4 v[12:15], off, s[0:3], 0 offset:46410151; GFX6-NEXT:    buffer_store_dwordx4 v[16:19], off, s[0:3], 0 offset:44810152; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:43210153; GFX6-NEXT:    v_mov_b32_e32 v10, s410154; GFX6-NEXT:    v_mov_b32_e32 v11, s510155; GFX6-NEXT:    buffer_store_dwordx4 v[8:11], off, s[0:3], 0 offset:41610156; GFX6-NEXT:    s_waitcnt expcnt(1)10157; GFX6-NEXT:    v_mov_b32_e32 v0, s3010158; GFX6-NEXT:    v_mov_b32_e32 v1, s3110159; GFX6-NEXT:    v_mov_b32_e32 v2, s2610160; GFX6-NEXT:    v_mov_b32_e32 v3, s2710161; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:40010162; GFX6-NEXT:    s_waitcnt expcnt(0)10163; GFX6-NEXT:    v_mov_b32_e32 v0, s2210164; GFX6-NEXT:    v_mov_b32_e32 v1, s2310165; GFX6-NEXT:    v_mov_b32_e32 v2, s2810166; GFX6-NEXT:    v_mov_b32_e32 v3, s2910167; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:38410168; GFX6-NEXT:    s_waitcnt expcnt(0)10169; GFX6-NEXT:    v_mov_b32_e32 v0, s2410170; GFX6-NEXT:    v_mov_b32_e32 v1, s2510171; GFX6-NEXT:    v_mov_b32_e32 v2, s1810172; GFX6-NEXT:    v_mov_b32_e32 v3, s1910173; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:36810174; GFX6-NEXT:    s_waitcnt expcnt(0)10175; GFX6-NEXT:    v_mov_b32_e32 v0, s2010176; GFX6-NEXT:    v_mov_b32_e32 v1, s2110177; GFX6-NEXT:    v_mov_b32_e32 v2, s1410178; GFX6-NEXT:    v_mov_b32_e32 v3, s1510179; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:35210180; GFX6-NEXT:    s_waitcnt expcnt(0)10181; GFX6-NEXT:    v_mov_b32_e32 v0, s1610182; GFX6-NEXT:    v_mov_b32_e32 v1, s1710183; GFX6-NEXT:    v_mov_b32_e32 v2, s1210184; GFX6-NEXT:    v_mov_b32_e32 v3, s1310185; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:33610186; GFX6-NEXT:    s_waitcnt expcnt(0)10187; GFX6-NEXT:    v_mov_b32_e32 v0, s1010188; GFX6-NEXT:    v_mov_b32_e32 v1, s1110189; GFX6-NEXT:    v_mov_b32_e32 v2, s610190; GFX6-NEXT:    v_mov_b32_e32 v3, s710191; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:32010192; GFX6-NEXT:    s_waitcnt expcnt(0)10193; GFX6-NEXT:    v_mov_b32_e32 v0, s810194; GFX6-NEXT:    v_mov_b32_e32 v1, s910195; GFX6-NEXT:    v_mov_b32_e32 v2, s3410196; GFX6-NEXT:    v_mov_b32_e32 v3, s3510197; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:30410198; GFX6-NEXT:    s_waitcnt expcnt(0)10199; GFX6-NEXT:    v_mov_b32_e32 v0, s4010200; GFX6-NEXT:    v_mov_b32_e32 v1, s4110201; GFX6-NEXT:    v_mov_b32_e32 v2, s4210202; GFX6-NEXT:    v_mov_b32_e32 v3, s4310203; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:28810204; GFX6-NEXT:    s_waitcnt expcnt(0)10205; GFX6-NEXT:    v_mov_b32_e32 v0, s3610206; GFX6-NEXT:    v_mov_b32_e32 v1, s3710207; GFX6-NEXT:    v_mov_b32_e32 v2, s3810208; GFX6-NEXT:    v_mov_b32_e32 v3, s3910209; GFX6-NEXT:    buffer_store_dwordx4 v[0:3], off, s[0:3], 0 offset:27210210; GFX6-NEXT:    v_mov_b32_e32 v8, s4410211; GFX6-NEXT:    v_mov_b32_e32 v9, s4510212; GFX6-NEXT:    buffer_store_dwordx4 v[6:9], off, s[0:3], 0 offset:25610213; GFX6-NEXT:    s_endpgm10214;10215; GFX8-LABEL: constant_sextload_v64i1_to_v64i64:10216; GFX8:       ; %bb.0:10217; GFX8-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x2410218; GFX8-NEXT:    ; implicit-def: $vgpr62 : SGPR spill to VGPR lane10219; GFX8-NEXT:    s_waitcnt lgkmcnt(0)10220; GFX8-NEXT:    s_load_dwordx2 s[2:3], s[2:3], 0x010221; GFX8-NEXT:    s_waitcnt lgkmcnt(0)10222; GFX8-NEXT:    s_lshr_b32 s4, s3, 810223; GFX8-NEXT:    s_lshr_b32 s48, s3, 1510224; GFX8-NEXT:    v_writelane_b32 v62, s4, 010225; GFX8-NEXT:    s_lshr_b32 s74, s3, 3010226; GFX8-NEXT:    s_lshr_b32 s30, s3, 3110227; GFX8-NEXT:    s_lshr_b32 s72, s3, 2810228; GFX8-NEXT:    s_lshr_b32 s34, s3, 2910229; GFX8-NEXT:    s_lshr_b32 s70, s3, 2610230; GFX8-NEXT:    s_lshr_b32 s36, s3, 2710231; GFX8-NEXT:    s_lshr_b32 s68, s3, 2410232; GFX8-NEXT:    s_lshr_b32 s38, s3, 2510233; GFX8-NEXT:    s_lshr_b32 s64, s3, 2210234; GFX8-NEXT:    s_lshr_b32 s40, s3, 2310235; GFX8-NEXT:    s_lshr_b32 s60, s3, 2010236; GFX8-NEXT:    s_lshr_b32 s42, s3, 2110237; GFX8-NEXT:    s_lshr_b32 s66, s3, 1810238; GFX8-NEXT:    s_lshr_b32 s44, s3, 1910239; GFX8-NEXT:    s_lshr_b32 s56, s3, 1610240; GFX8-NEXT:    s_lshr_b32 s46, s3, 1710241; GFX8-NEXT:    s_lshr_b32 s58, s3, 1410242; GFX8-NEXT:    s_lshr_b32 s62, s3, 1210243; GFX8-NEXT:    s_lshr_b32 s54, s3, 1010244; GFX8-NEXT:    v_writelane_b32 v62, s5, 110245; GFX8-NEXT:    s_lshr_b32 s4, s3, 910246; GFX8-NEXT:    s_bfe_i64 s[48:49], s[48:49], 0x1000010247; GFX8-NEXT:    s_lshr_b32 s52, s3, 1110248; GFX8-NEXT:    v_writelane_b32 v62, s4, 210249; GFX8-NEXT:    s_bfe_i64 s[60:61], s[60:61], 0x1000010250; GFX8-NEXT:    s_bfe_i64 s[64:65], s[64:65], 0x1000010251; GFX8-NEXT:    s_bfe_i64 s[68:69], s[68:69], 0x1000010252; GFX8-NEXT:    s_bfe_i64 s[70:71], s[70:71], 0x1000010253; GFX8-NEXT:    s_bfe_i64 s[72:73], s[72:73], 0x1000010254; GFX8-NEXT:    s_bfe_i64 s[74:75], s[74:75], 0x1000010255; GFX8-NEXT:    s_bfe_i64 s[66:67], s[66:67], 0x1000010256; GFX8-NEXT:    s_bfe_i64 s[62:63], s[62:63], 0x1000010257; GFX8-NEXT:    s_bfe_i64 s[58:59], s[58:59], 0x1000010258; GFX8-NEXT:    s_bfe_i64 s[56:57], s[56:57], 0x1000010259; GFX8-NEXT:    s_bfe_i64 s[54:55], s[54:55], 0x1000010260; GFX8-NEXT:    s_bfe_i64 s[46:47], s[46:47], 0x1000010261; GFX8-NEXT:    s_bfe_i64 s[44:45], s[44:45], 0x1000010262; GFX8-NEXT:    s_bfe_i64 s[42:43], s[42:43], 0x1000010263; GFX8-NEXT:    s_bfe_i64 s[40:41], s[40:41], 0x1000010264; GFX8-NEXT:    s_bfe_i64 s[38:39], s[38:39], 0x1000010265; GFX8-NEXT:    s_bfe_i64 s[36:37], s[36:37], 0x1000010266; GFX8-NEXT:    s_bfe_i64 s[34:35], s[34:35], 0x1000010267; GFX8-NEXT:    s_bfe_i64 s[30:31], s[30:31], 0x1000010268; GFX8-NEXT:    v_mov_b32_e32 v34, s4810269; GFX8-NEXT:    s_lshr_b32 s48, s2, 110270; GFX8-NEXT:    s_lshr_b32 s50, s3, 1310271; GFX8-NEXT:    v_writelane_b32 v62, s5, 310272; GFX8-NEXT:    s_lshr_b32 s8, s3, 610273; GFX8-NEXT:    s_lshr_b32 s10, s3, 710274; GFX8-NEXT:    s_lshr_b32 s12, s3, 410275; GFX8-NEXT:    s_lshr_b32 s14, s3, 510276; GFX8-NEXT:    s_lshr_b32 s16, s3, 210277; GFX8-NEXT:    s_lshr_b32 s18, s3, 310278; GFX8-NEXT:    s_lshr_b32 s20, s3, 110279; GFX8-NEXT:    s_mov_b32 s22, s310280; GFX8-NEXT:    s_lshr_b32 s24, s2, 3010281; GFX8-NEXT:    s_lshr_b32 s26, s2, 3110282; GFX8-NEXT:    s_lshr_b32 s28, s2, 2810283; GFX8-NEXT:    v_mov_b32_e32 v4, s7410284; GFX8-NEXT:    v_mov_b32_e32 v12, s7210285; GFX8-NEXT:    v_mov_b32_e32 v0, s7010286; GFX8-NEXT:    v_mov_b32_e32 v8, s6810287; GFX8-NEXT:    v_mov_b32_e32 v16, s6410288; GFX8-NEXT:    v_mov_b32_e32 v20, s6010289; GFX8-NEXT:    v_mov_b32_e32 v24, s6610290; GFX8-NEXT:    v_mov_b32_e32 v28, s5610291; GFX8-NEXT:    v_mov_b32_e32 v32, s5810292; GFX8-NEXT:    v_mov_b32_e32 v36, s6210293; GFX8-NEXT:    s_lshr_b32 s86, s2, 2910294; GFX8-NEXT:    v_mov_b32_e32 v40, s5410295; GFX8-NEXT:    s_lshr_b32 s84, s2, 2610296; GFX8-NEXT:    s_lshr_b32 s82, s2, 2710297; GFX8-NEXT:    s_bfe_i64 vcc, s[52:53], 0x1000010298; GFX8-NEXT:    s_lshr_b32 s80, s2, 2410299; GFX8-NEXT:    v_mov_b32_e32 v6, s3010300; GFX8-NEXT:    v_mov_b32_e32 v7, s3110301; GFX8-NEXT:    s_lshr_b32 s78, s2, 2510302; GFX8-NEXT:    s_lshr_b32 s76, s2, 2210303; GFX8-NEXT:    v_mov_b32_e32 v14, s3410304; GFX8-NEXT:    s_lshr_b32 s74, s2, 2310305; GFX8-NEXT:    s_lshr_b32 s72, s2, 2010306; GFX8-NEXT:    v_mov_b32_e32 v2, s3610307; GFX8-NEXT:    s_lshr_b32 s70, s2, 2110308; GFX8-NEXT:    s_lshr_b32 s68, s2, 1810309; GFX8-NEXT:    v_mov_b32_e32 v10, s3810310; GFX8-NEXT:    s_lshr_b32 s66, s2, 1910311; GFX8-NEXT:    s_lshr_b32 s64, s2, 1610312; GFX8-NEXT:    v_mov_b32_e32 v18, s4010313; GFX8-NEXT:    s_lshr_b32 s62, s2, 1710314; GFX8-NEXT:    s_lshr_b32 s60, s2, 1410315; GFX8-NEXT:    v_mov_b32_e32 v22, s4210316; GFX8-NEXT:    s_lshr_b32 s58, s2, 1510317; GFX8-NEXT:    s_lshr_b32 s56, s2, 1210318; GFX8-NEXT:    v_mov_b32_e32 v26, s4410319; GFX8-NEXT:    s_lshr_b32 s54, s2, 1310320; GFX8-NEXT:    s_lshr_b32 s52, s2, 1010321; GFX8-NEXT:    v_mov_b32_e32 v30, s4610322; GFX8-NEXT:    s_lshr_b32 s6, s2, 1110323; GFX8-NEXT:    s_lshr_b32 s4, s2, 810324; GFX8-NEXT:    s_lshr_b32 s46, s2, 910325; GFX8-NEXT:    s_lshr_b32 s44, s2, 610326; GFX8-NEXT:    s_lshr_b32 s42, s2, 710327; GFX8-NEXT:    s_lshr_b32 s40, s2, 410328; GFX8-NEXT:    s_lshr_b32 s38, s2, 510329; GFX8-NEXT:    s_lshr_b32 s36, s2, 210330; GFX8-NEXT:    s_lshr_b32 s34, s2, 310331; GFX8-NEXT:    s_bfe_i64 s[30:31], s[2:3], 0x1000010332; GFX8-NEXT:    s_bfe_i64 s[2:3], s[48:49], 0x1000010333; GFX8-NEXT:    v_writelane_b32 v62, s2, 410334; GFX8-NEXT:    v_writelane_b32 v62, s3, 510335; GFX8-NEXT:    v_readlane_b32 s2, v62, 210336; GFX8-NEXT:    v_readlane_b32 s3, v62, 310337; GFX8-NEXT:    v_mov_b32_e32 v35, s4910338; GFX8-NEXT:    s_bfe_i64 s[48:49], s[4:5], 0x1000010339; GFX8-NEXT:    s_bfe_i64 s[4:5], s[2:3], 0x1000010340; GFX8-NEXT:    v_readlane_b32 s2, v62, 010341; GFX8-NEXT:    s_bfe_i64 s[50:51], s[50:51], 0x1000010342; GFX8-NEXT:    v_readlane_b32 s3, v62, 110343; GFX8-NEXT:    v_mov_b32_e32 v5, s7510344; GFX8-NEXT:    v_mov_b32_e32 v13, s7310345; GFX8-NEXT:    v_mov_b32_e32 v15, s3510346; GFX8-NEXT:    v_mov_b32_e32 v1, s7110347; GFX8-NEXT:    v_mov_b32_e32 v3, s3710348; GFX8-NEXT:    v_mov_b32_e32 v9, s6910349; GFX8-NEXT:    v_mov_b32_e32 v11, s3910350; GFX8-NEXT:    v_mov_b32_e32 v17, s6510351; GFX8-NEXT:    v_mov_b32_e32 v19, s4110352; GFX8-NEXT:    v_mov_b32_e32 v21, s6110353; GFX8-NEXT:    v_mov_b32_e32 v23, s4310354; GFX8-NEXT:    v_mov_b32_e32 v25, s6710355; GFX8-NEXT:    v_mov_b32_e32 v27, s4510356; GFX8-NEXT:    v_mov_b32_e32 v29, s5710357; GFX8-NEXT:    v_mov_b32_e32 v31, s4710358; GFX8-NEXT:    v_mov_b32_e32 v33, s5910359; GFX8-NEXT:    v_mov_b32_e32 v37, s6310360; GFX8-NEXT:    v_mov_b32_e32 v38, s5010361; GFX8-NEXT:    v_mov_b32_e32 v39, s5110362; GFX8-NEXT:    v_mov_b32_e32 v41, s5510363; GFX8-NEXT:    s_bfe_i64 s[34:35], s[34:35], 0x1000010364; GFX8-NEXT:    s_bfe_i64 s[36:37], s[36:37], 0x1000010365; GFX8-NEXT:    s_bfe_i64 s[38:39], s[38:39], 0x1000010366; GFX8-NEXT:    s_bfe_i64 s[40:41], s[40:41], 0x1000010367; GFX8-NEXT:    s_bfe_i64 s[42:43], s[42:43], 0x1000010368; GFX8-NEXT:    s_bfe_i64 s[44:45], s[44:45], 0x1000010369; GFX8-NEXT:    s_bfe_i64 s[46:47], s[46:47], 0x1000010370; GFX8-NEXT:    s_bfe_i64 s[50:51], s[6:7], 0x1000010371; GFX8-NEXT:    s_bfe_i64 s[52:53], s[52:53], 0x1000010372; GFX8-NEXT:    s_bfe_i64 s[54:55], s[54:55], 0x1000010373; GFX8-NEXT:    s_bfe_i64 s[56:57], s[56:57], 0x1000010374; GFX8-NEXT:    s_bfe_i64 s[58:59], s[58:59], 0x1000010375; GFX8-NEXT:    s_bfe_i64 s[60:61], s[60:61], 0x1000010376; GFX8-NEXT:    s_bfe_i64 s[62:63], s[62:63], 0x1000010377; GFX8-NEXT:    s_bfe_i64 s[64:65], s[64:65], 0x1000010378; GFX8-NEXT:    s_bfe_i64 s[66:67], s[66:67], 0x1000010379; GFX8-NEXT:    s_bfe_i64 s[68:69], s[68:69], 0x1000010380; GFX8-NEXT:    s_bfe_i64 s[70:71], s[70:71], 0x1000010381; GFX8-NEXT:    s_bfe_i64 s[72:73], s[72:73], 0x1000010382; GFX8-NEXT:    s_bfe_i64 s[74:75], s[74:75], 0x1000010383; GFX8-NEXT:    s_bfe_i64 s[76:77], s[76:77], 0x1000010384; GFX8-NEXT:    s_bfe_i64 s[78:79], s[78:79], 0x1000010385; GFX8-NEXT:    s_bfe_i64 s[80:81], s[80:81], 0x1000010386; GFX8-NEXT:    s_bfe_i64 s[82:83], s[82:83], 0x1000010387; GFX8-NEXT:    s_bfe_i64 s[84:85], s[84:85], 0x1000010388; GFX8-NEXT:    s_bfe_i64 s[86:87], s[86:87], 0x1000010389; GFX8-NEXT:    s_bfe_i64 s[28:29], s[28:29], 0x1000010390; GFX8-NEXT:    s_bfe_i64 s[26:27], s[26:27], 0x1000010391; GFX8-NEXT:    s_bfe_i64 s[24:25], s[24:25], 0x1000010392; GFX8-NEXT:    s_bfe_i64 s[22:23], s[22:23], 0x1000010393; GFX8-NEXT:    s_bfe_i64 s[20:21], s[20:21], 0x1000010394; GFX8-NEXT:    s_bfe_i64 s[18:19], s[18:19], 0x1000010395; GFX8-NEXT:    s_bfe_i64 s[16:17], s[16:17], 0x1000010396; GFX8-NEXT:    s_bfe_i64 s[14:15], s[14:15], 0x1000010397; GFX8-NEXT:    s_bfe_i64 s[12:13], s[12:13], 0x1000010398; GFX8-NEXT:    s_bfe_i64 s[10:11], s[10:11], 0x1000010399; GFX8-NEXT:    s_bfe_i64 s[8:9], s[8:9], 0x1000010400; GFX8-NEXT:    s_bfe_i64 s[6:7], s[2:3], 0x1000010401; GFX8-NEXT:    s_add_u32 s2, s0, 0x1f010402; GFX8-NEXT:    s_addc_u32 s3, s1, 010403; GFX8-NEXT:    v_mov_b32_e32 v43, s310404; GFX8-NEXT:    v_mov_b32_e32 v42, s210405; GFX8-NEXT:    s_add_u32 s2, s0, 0x1e010406; GFX8-NEXT:    s_addc_u32 s3, s1, 010407; GFX8-NEXT:    v_mov_b32_e32 v45, s310408; GFX8-NEXT:    v_mov_b32_e32 v44, s210409; GFX8-NEXT:    s_add_u32 s2, s0, 0x1d010410; GFX8-NEXT:    s_addc_u32 s3, s1, 010411; GFX8-NEXT:    v_mov_b32_e32 v47, s310412; GFX8-NEXT:    v_mov_b32_e32 v46, s210413; GFX8-NEXT:    s_add_u32 s2, s0, 0x1c010414; GFX8-NEXT:    s_addc_u32 s3, s1, 010415; GFX8-NEXT:    v_mov_b32_e32 v49, s310416; GFX8-NEXT:    v_mov_b32_e32 v48, s210417; GFX8-NEXT:    s_add_u32 s2, s0, 0x1b010418; GFX8-NEXT:    s_addc_u32 s3, s1, 010419; GFX8-NEXT:    v_mov_b32_e32 v51, s310420; GFX8-NEXT:    v_mov_b32_e32 v50, s210421; GFX8-NEXT:    s_add_u32 s2, s0, 0x1a010422; GFX8-NEXT:    s_addc_u32 s3, s1, 010423; GFX8-NEXT:    v_mov_b32_e32 v53, s310424; GFX8-NEXT:    v_mov_b32_e32 v52, s210425; GFX8-NEXT:    s_add_u32 s2, s0, 0x19010426; GFX8-NEXT:    s_addc_u32 s3, s1, 010427; GFX8-NEXT:    v_mov_b32_e32 v55, s310428; GFX8-NEXT:    v_mov_b32_e32 v54, s210429; GFX8-NEXT:    s_add_u32 s2, s0, 0x18010430; GFX8-NEXT:    s_addc_u32 s3, s1, 010431; GFX8-NEXT:    v_mov_b32_e32 v57, s310432; GFX8-NEXT:    v_mov_b32_e32 v56, s210433; GFX8-NEXT:    s_add_u32 s2, s0, 0x17010434; GFX8-NEXT:    s_addc_u32 s3, s1, 010435; GFX8-NEXT:    v_mov_b32_e32 v59, s310436; GFX8-NEXT:    v_mov_b32_e32 v58, s210437; GFX8-NEXT:    s_add_u32 s2, s0, 0x16010438; GFX8-NEXT:    s_addc_u32 s3, s1, 010439; GFX8-NEXT:    v_mov_b32_e32 v61, s310440; GFX8-NEXT:    v_mov_b32_e32 v60, s210441; GFX8-NEXT:    s_add_u32 s2, s0, 0x15010442; GFX8-NEXT:    s_addc_u32 s3, s1, 010443; GFX8-NEXT:    flat_store_dwordx4 v[44:45], v[12:15]10444; GFX8-NEXT:    flat_store_dwordx4 v[48:49], v[8:11]10445; GFX8-NEXT:    flat_store_dwordx4 v[50:51], v[16:19]10446; GFX8-NEXT:    v_mov_b32_e32 v13, s310447; GFX8-NEXT:    v_mov_b32_e32 v12, s210448; GFX8-NEXT:    s_add_u32 s2, s0, 0x14010449; GFX8-NEXT:    s_addc_u32 s3, s1, 010450; GFX8-NEXT:    v_mov_b32_e32 v15, s310451; GFX8-NEXT:    v_mov_b32_e32 v14, s210452; GFX8-NEXT:    s_add_u32 s2, s0, 0x13010453; GFX8-NEXT:    s_addc_u32 s3, s1, 010454; GFX8-NEXT:    v_mov_b32_e32 v17, s310455; GFX8-NEXT:    v_mov_b32_e32 v16, s210456; GFX8-NEXT:    s_add_u32 s2, s0, 0x12010457; GFX8-NEXT:    s_addc_u32 s3, s1, 010458; GFX8-NEXT:    v_mov_b32_e32 v19, s310459; GFX8-NEXT:    v_mov_b32_e32 v18, s210460; GFX8-NEXT:    s_add_u32 s2, s0, 0x11010461; GFX8-NEXT:    flat_store_dwordx4 v[42:43], v[4:7]10462; GFX8-NEXT:    s_addc_u32 s3, s1, 010463; GFX8-NEXT:    v_mov_b32_e32 v4, s610464; GFX8-NEXT:    v_mov_b32_e32 v5, s710465; GFX8-NEXT:    v_mov_b32_e32 v42, vcc_lo10466; GFX8-NEXT:    v_mov_b32_e32 v43, vcc_hi10467; GFX8-NEXT:    v_mov_b32_e32 v6, s410468; GFX8-NEXT:    v_mov_b32_e32 v7, s510469; GFX8-NEXT:    flat_store_dwordx4 v[46:47], v[0:3]10470; GFX8-NEXT:    v_mov_b32_e32 v8, s1210471; GFX8-NEXT:    v_mov_b32_e32 v0, s810472; GFX8-NEXT:    v_mov_b32_e32 v1, s910473; GFX8-NEXT:    v_mov_b32_e32 v2, s1010474; GFX8-NEXT:    v_mov_b32_e32 v3, s1110475; GFX8-NEXT:    v_mov_b32_e32 v9, s1310476; GFX8-NEXT:    v_mov_b32_e32 v10, s1410477; GFX8-NEXT:    v_mov_b32_e32 v11, s1510478; GFX8-NEXT:    flat_store_dwordx4 v[56:57], v[28:31]10479; GFX8-NEXT:    flat_store_dwordx4 v[58:59], v[32:35]10480; GFX8-NEXT:    flat_store_dwordx4 v[60:61], v[36:39]10481; GFX8-NEXT:    flat_store_dwordx4 v[12:13], v[40:43]10482; GFX8-NEXT:    flat_store_dwordx4 v[14:15], v[4:7]10483; GFX8-NEXT:    flat_store_dwordx4 v[16:17], v[0:3]10484; GFX8-NEXT:    flat_store_dwordx4 v[18:19], v[8:11]10485; GFX8-NEXT:    v_mov_b32_e32 v5, s310486; GFX8-NEXT:    v_mov_b32_e32 v4, s210487; GFX8-NEXT:    s_add_u32 s2, s0, 0x10010488; GFX8-NEXT:    v_mov_b32_e32 v0, s1610489; GFX8-NEXT:    v_mov_b32_e32 v1, s1710490; GFX8-NEXT:    v_mov_b32_e32 v2, s1810491; GFX8-NEXT:    v_mov_b32_e32 v3, s1910492; GFX8-NEXT:    s_addc_u32 s3, s1, 010493; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10494; GFX8-NEXT:    v_mov_b32_e32 v5, s310495; GFX8-NEXT:    v_mov_b32_e32 v4, s210496; GFX8-NEXT:    s_add_u32 s2, s0, 0xf010497; GFX8-NEXT:    v_mov_b32_e32 v0, s2210498; GFX8-NEXT:    v_mov_b32_e32 v1, s2310499; GFX8-NEXT:    v_mov_b32_e32 v2, s2010500; GFX8-NEXT:    v_mov_b32_e32 v3, s2110501; GFX8-NEXT:    s_addc_u32 s3, s1, 010502; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10503; GFX8-NEXT:    v_mov_b32_e32 v5, s310504; GFX8-NEXT:    v_mov_b32_e32 v4, s210505; GFX8-NEXT:    s_add_u32 s2, s0, 0xe010506; GFX8-NEXT:    v_mov_b32_e32 v0, s2410507; GFX8-NEXT:    v_mov_b32_e32 v1, s2510508; GFX8-NEXT:    v_mov_b32_e32 v2, s2610509; GFX8-NEXT:    v_mov_b32_e32 v3, s2710510; GFX8-NEXT:    s_addc_u32 s3, s1, 010511; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10512; GFX8-NEXT:    v_mov_b32_e32 v5, s310513; GFX8-NEXT:    v_mov_b32_e32 v4, s210514; GFX8-NEXT:    s_add_u32 s2, s0, 0xd010515; GFX8-NEXT:    v_mov_b32_e32 v0, s2810516; GFX8-NEXT:    v_mov_b32_e32 v1, s2910517; GFX8-NEXT:    v_mov_b32_e32 v2, s8610518; GFX8-NEXT:    v_mov_b32_e32 v3, s8710519; GFX8-NEXT:    s_addc_u32 s3, s1, 010520; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10521; GFX8-NEXT:    v_mov_b32_e32 v5, s310522; GFX8-NEXT:    v_mov_b32_e32 v4, s210523; GFX8-NEXT:    s_add_u32 s2, s0, 0xc010524; GFX8-NEXT:    v_mov_b32_e32 v0, s8410525; GFX8-NEXT:    v_mov_b32_e32 v1, s8510526; GFX8-NEXT:    v_mov_b32_e32 v2, s8210527; GFX8-NEXT:    v_mov_b32_e32 v3, s8310528; GFX8-NEXT:    s_addc_u32 s3, s1, 010529; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10530; GFX8-NEXT:    v_mov_b32_e32 v5, s310531; GFX8-NEXT:    v_mov_b32_e32 v4, s210532; GFX8-NEXT:    s_add_u32 s2, s0, 0xb010533; GFX8-NEXT:    v_mov_b32_e32 v0, s8010534; GFX8-NEXT:    v_mov_b32_e32 v1, s8110535; GFX8-NEXT:    v_mov_b32_e32 v2, s7810536; GFX8-NEXT:    v_mov_b32_e32 v3, s7910537; GFX8-NEXT:    s_addc_u32 s3, s1, 010538; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10539; GFX8-NEXT:    v_mov_b32_e32 v5, s310540; GFX8-NEXT:    v_mov_b32_e32 v4, s210541; GFX8-NEXT:    s_add_u32 s2, s0, 0xa010542; GFX8-NEXT:    v_mov_b32_e32 v0, s7610543; GFX8-NEXT:    v_mov_b32_e32 v1, s7710544; GFX8-NEXT:    v_mov_b32_e32 v2, s7410545; GFX8-NEXT:    v_mov_b32_e32 v3, s7510546; GFX8-NEXT:    s_addc_u32 s3, s1, 010547; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10548; GFX8-NEXT:    v_mov_b32_e32 v5, s310549; GFX8-NEXT:    v_mov_b32_e32 v4, s210550; GFX8-NEXT:    s_add_u32 s2, s0, 0x9010551; GFX8-NEXT:    v_mov_b32_e32 v0, s7210552; GFX8-NEXT:    v_mov_b32_e32 v1, s7310553; GFX8-NEXT:    v_mov_b32_e32 v2, s7010554; GFX8-NEXT:    v_mov_b32_e32 v3, s7110555; GFX8-NEXT:    s_addc_u32 s3, s1, 010556; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10557; GFX8-NEXT:    v_mov_b32_e32 v5, s310558; GFX8-NEXT:    v_mov_b32_e32 v4, s210559; GFX8-NEXT:    s_add_u32 s2, s0, 0x8010560; GFX8-NEXT:    v_mov_b32_e32 v0, s6810561; GFX8-NEXT:    v_mov_b32_e32 v1, s6910562; GFX8-NEXT:    v_mov_b32_e32 v2, s6610563; GFX8-NEXT:    v_mov_b32_e32 v3, s6710564; GFX8-NEXT:    s_addc_u32 s3, s1, 010565; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10566; GFX8-NEXT:    v_mov_b32_e32 v5, s310567; GFX8-NEXT:    v_mov_b32_e32 v4, s210568; GFX8-NEXT:    s_add_u32 s2, s0, 0x7010569; GFX8-NEXT:    v_mov_b32_e32 v0, s6410570; GFX8-NEXT:    v_mov_b32_e32 v1, s6510571; GFX8-NEXT:    v_mov_b32_e32 v2, s6210572; GFX8-NEXT:    v_mov_b32_e32 v3, s6310573; GFX8-NEXT:    s_addc_u32 s3, s1, 010574; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10575; GFX8-NEXT:    v_mov_b32_e32 v5, s310576; GFX8-NEXT:    v_mov_b32_e32 v4, s210577; GFX8-NEXT:    s_add_u32 s2, s0, 0x6010578; GFX8-NEXT:    v_mov_b32_e32 v0, s6010579; GFX8-NEXT:    v_mov_b32_e32 v1, s6110580; GFX8-NEXT:    v_mov_b32_e32 v2, s5810581; GFX8-NEXT:    v_mov_b32_e32 v3, s5910582; GFX8-NEXT:    s_addc_u32 s3, s1, 010583; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10584; GFX8-NEXT:    v_mov_b32_e32 v5, s310585; GFX8-NEXT:    v_mov_b32_e32 v4, s210586; GFX8-NEXT:    s_add_u32 s2, s0, 0x5010587; GFX8-NEXT:    v_mov_b32_e32 v0, s5610588; GFX8-NEXT:    v_mov_b32_e32 v1, s5710589; GFX8-NEXT:    v_mov_b32_e32 v2, s5410590; GFX8-NEXT:    v_mov_b32_e32 v3, s5510591; GFX8-NEXT:    s_addc_u32 s3, s1, 010592; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10593; GFX8-NEXT:    v_mov_b32_e32 v5, s310594; GFX8-NEXT:    v_mov_b32_e32 v4, s210595; GFX8-NEXT:    s_add_u32 s2, s0, 6410596; GFX8-NEXT:    v_mov_b32_e32 v0, s5210597; GFX8-NEXT:    v_mov_b32_e32 v1, s5310598; GFX8-NEXT:    v_mov_b32_e32 v2, s5010599; GFX8-NEXT:    v_mov_b32_e32 v3, s5110600; GFX8-NEXT:    s_addc_u32 s3, s1, 010601; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10602; GFX8-NEXT:    v_mov_b32_e32 v5, s310603; GFX8-NEXT:    v_mov_b32_e32 v4, s210604; GFX8-NEXT:    s_add_u32 s2, s0, 4810605; GFX8-NEXT:    v_mov_b32_e32 v0, s4810606; GFX8-NEXT:    v_mov_b32_e32 v1, s4910607; GFX8-NEXT:    v_mov_b32_e32 v2, s4610608; GFX8-NEXT:    v_mov_b32_e32 v3, s4710609; GFX8-NEXT:    s_addc_u32 s3, s1, 010610; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10611; GFX8-NEXT:    v_mov_b32_e32 v5, s310612; GFX8-NEXT:    v_mov_b32_e32 v4, s210613; GFX8-NEXT:    s_add_u32 s2, s0, 3210614; GFX8-NEXT:    v_mov_b32_e32 v0, s4410615; GFX8-NEXT:    v_mov_b32_e32 v1, s4510616; GFX8-NEXT:    v_mov_b32_e32 v2, s4210617; GFX8-NEXT:    v_mov_b32_e32 v3, s4310618; GFX8-NEXT:    s_addc_u32 s3, s1, 010619; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10620; GFX8-NEXT:    v_mov_b32_e32 v5, s310621; GFX8-NEXT:    v_mov_b32_e32 v4, s210622; GFX8-NEXT:    s_add_u32 s2, s0, 1610623; GFX8-NEXT:    v_mov_b32_e32 v0, s4010624; GFX8-NEXT:    v_mov_b32_e32 v1, s4110625; GFX8-NEXT:    v_mov_b32_e32 v2, s3810626; GFX8-NEXT:    v_mov_b32_e32 v3, s3910627; GFX8-NEXT:    s_addc_u32 s3, s1, 010628; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10629; GFX8-NEXT:    v_mov_b32_e32 v5, s310630; GFX8-NEXT:    v_mov_b32_e32 v0, s3610631; GFX8-NEXT:    v_mov_b32_e32 v1, s3710632; GFX8-NEXT:    v_mov_b32_e32 v2, s3410633; GFX8-NEXT:    v_mov_b32_e32 v3, s3510634; GFX8-NEXT:    v_mov_b32_e32 v4, s210635; GFX8-NEXT:    v_readlane_b32 s2, v62, 410636; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10637; GFX8-NEXT:    v_readlane_b32 s3, v62, 510638; GFX8-NEXT:    v_mov_b32_e32 v5, s110639; GFX8-NEXT:    v_mov_b32_e32 v0, s3010640; GFX8-NEXT:    v_mov_b32_e32 v1, s3110641; GFX8-NEXT:    v_mov_b32_e32 v2, s210642; GFX8-NEXT:    v_mov_b32_e32 v3, s310643; GFX8-NEXT:    v_mov_b32_e32 v4, s010644; GFX8-NEXT:    flat_store_dwordx4 v[52:53], v[20:23]10645; GFX8-NEXT:    flat_store_dwordx4 v[54:55], v[24:27]10646; GFX8-NEXT:    flat_store_dwordx4 v[4:5], v[0:3]10647; GFX8-NEXT:    s_endpgm10648;10649; EG-LABEL: constant_sextload_v64i1_to_v64i64:10650; EG:       ; %bb.0:10651; EG-NEXT:    ALU 22, @40, KC0[CB0:0-32], KC1[]10652; EG-NEXT:    TEX 0 @3810653; EG-NEXT:    ALU 89, @63, KC0[CB0:0-32], KC1[]10654; EG-NEXT:    ALU 99, @153, KC0[], KC1[]10655; EG-NEXT:    ALU 107, @253, KC0[CB0:0-32], KC1[]10656; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T50.XYZW, T82.X, 010657; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T80.XYZW, T81.X, 010658; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T51.XYZW, T73.X, 010659; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T79.XYZW, T48.X, 010660; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T52.XYZW, T47.X, 010661; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T78.XYZW, T46.X, 010662; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T53.XYZW, T45.X, 010663; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T77.XYZW, T44.X, 010664; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T54.XYZW, T43.X, 010665; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T76.XYZW, T42.X, 010666; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T55.XYZW, T41.X, 010667; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T75.XYZW, T39.X, 010668; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T56.XYZW, T38.X, 010669; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T74.XYZW, T37.X, 010670; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T57.XYZW, T36.X, 010671; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T66.XYZW, T35.X, 010672; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T58.XYZW, T34.X, 010673; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T72.XYZW, T33.X, 010674; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T59.XYZW, T32.X, 010675; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T71.XYZW, T31.X, 010676; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T60.XYZW, T30.X, 010677; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T70.XYZW, T29.X, 010678; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T61.XYZW, T28.X, 010679; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T69.XYZW, T27.X, 010680; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T62.XYZW, T26.X, 010681; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T68.XYZW, T25.X, 010682; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T63.XYZW, T24.X, 010683; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T40.XYZW, T23.X, 010684; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T64.XYZW, T22.X, 010685; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T67.XYZW, T21.X, 010686; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T65.XYZW, T20.X, 010687; EG-NEXT:    MEM_RAT_CACHELESS STORE_RAW T49.XYZW, T19.X, 110688; EG-NEXT:    CF_END10689; EG-NEXT:    Fetch clause starting at 38:10690; EG-NEXT:     VTX_READ_64 T40.XY, T26.X, 0, #110691; EG-NEXT:    ALU clause starting at 40:10692; EG-NEXT:     LSHR T19.X, KC0[2].Y, literal.x,10693; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10694; EG-NEXT:    2(2.802597e-45), 16(2.242078e-44)10695; EG-NEXT:     LSHR T20.X, PV.W, literal.x,10696; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10697; EG-NEXT:    2(2.802597e-45), 32(4.484155e-44)10698; EG-NEXT:     LSHR T21.X, PV.W, literal.x,10699; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10700; EG-NEXT:    2(2.802597e-45), 48(6.726233e-44)10701; EG-NEXT:     LSHR T22.X, PV.W, literal.x,10702; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10703; EG-NEXT:    2(2.802597e-45), 64(8.968310e-44)10704; EG-NEXT:     LSHR T23.X, PV.W, literal.x,10705; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10706; EG-NEXT:    2(2.802597e-45), 80(1.121039e-43)10707; EG-NEXT:     LSHR T24.X, PV.W, literal.x,10708; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10709; EG-NEXT:    2(2.802597e-45), 96(1.345247e-43)10710; EG-NEXT:     LSHR T25.X, PV.W, literal.x,10711; EG-NEXT:     MOV * T26.X, KC0[2].Z,10712; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)10713; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.x,10714; EG-NEXT:    112(1.569454e-43), 0(0.000000e+00)10715; EG-NEXT:    ALU clause starting at 63:10716; EG-NEXT:     LSHR T26.X, T0.W, literal.x,10717; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10718; EG-NEXT:    2(2.802597e-45), 128(1.793662e-43)10719; EG-NEXT:     LSHR T27.X, PV.W, literal.x,10720; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10721; EG-NEXT:    2(2.802597e-45), 144(2.017870e-43)10722; EG-NEXT:     LSHR T28.X, PV.W, literal.x,10723; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10724; EG-NEXT:    2(2.802597e-45), 160(2.242078e-43)10725; EG-NEXT:     LSHR T29.X, PV.W, literal.x,10726; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10727; EG-NEXT:    2(2.802597e-45), 176(2.466285e-43)10728; EG-NEXT:     LSHR T30.X, PV.W, literal.x,10729; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10730; EG-NEXT:    2(2.802597e-45), 192(2.690493e-43)10731; EG-NEXT:     LSHR T31.X, PV.W, literal.x,10732; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10733; EG-NEXT:    2(2.802597e-45), 208(2.914701e-43)10734; EG-NEXT:     LSHR T32.X, PV.W, literal.x,10735; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10736; EG-NEXT:    2(2.802597e-45), 224(3.138909e-43)10737; EG-NEXT:     LSHR T33.X, PV.W, literal.x,10738; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10739; EG-NEXT:    2(2.802597e-45), 240(3.363116e-43)10740; EG-NEXT:     LSHR T34.X, PV.W, literal.x,10741; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10742; EG-NEXT:    2(2.802597e-45), 256(3.587324e-43)10743; EG-NEXT:     LSHR T35.X, PV.W, literal.x,10744; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10745; EG-NEXT:    2(2.802597e-45), 272(3.811532e-43)10746; EG-NEXT:     LSHR T36.X, PV.W, literal.x,10747; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10748; EG-NEXT:    2(2.802597e-45), 288(4.035740e-43)10749; EG-NEXT:     LSHR T37.X, PV.W, literal.x,10750; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10751; EG-NEXT:    2(2.802597e-45), 304(4.259947e-43)10752; EG-NEXT:     LSHR T38.X, PV.W, literal.x,10753; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10754; EG-NEXT:    2(2.802597e-45), 320(4.484155e-43)10755; EG-NEXT:     LSHR T39.X, PV.W, literal.x,10756; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10757; EG-NEXT:    2(2.802597e-45), 336(4.708363e-43)10758; EG-NEXT:     LSHR T41.X, PV.W, literal.x,10759; EG-NEXT:     ADD_INT * T0.W, KC0[2].Y, literal.y,10760; EG-NEXT:    2(2.802597e-45), 352(4.932571e-43)10761; EG-NEXT:     LSHR T42.X, PV.W, literal.x,10762; EG-NEXT:     LSHR T0.Z, T40.Y, literal.y,10763; EG-NEXT:     LSHR T0.W, T40.Y, literal.z,10764; EG-NEXT:     ADD_INT * T1.W, KC0[2].Y, literal.w,10765; EG-NEXT:    2(2.802597e-45), 28(3.923636e-44)10766; EG-NEXT:    29(4.063766e-44), 368(5.156778e-43)10767; EG-NEXT:     LSHR T43.X, PS, literal.x,10768; EG-NEXT:     LSHR T0.Y, T40.Y, literal.y,10769; EG-NEXT:     LSHR T1.Z, T40.Y, literal.z,10770; EG-NEXT:     LSHR * T1.W, T40.Y, literal.w,10771; EG-NEXT:    2(2.802597e-45), 24(3.363116e-44)10772; EG-NEXT:    25(3.503246e-44), 20(2.802597e-44)10773; EG-NEXT:     ADD_INT * T2.W, KC0[2].Y, literal.x,10774; EG-NEXT:    384(5.380986e-43), 0(0.000000e+00)10775; EG-NEXT:     LSHR T44.X, PV.W, literal.x,10776; EG-NEXT:     LSHR T1.Y, T40.Y, literal.y,10777; EG-NEXT:     LSHR T2.Z, T40.Y, literal.z,10778; EG-NEXT:     LSHR * T2.W, T40.Y, literal.w,10779; EG-NEXT:    2(2.802597e-45), 21(2.942727e-44)10780; EG-NEXT:    16(2.242078e-44), 17(2.382207e-44)10781; EG-NEXT:     ADD_INT * T3.W, KC0[2].Y, literal.x,10782; EG-NEXT:    400(5.605194e-43), 0(0.000000e+00)10783; EG-NEXT:     LSHR T45.X, PV.W, literal.x,10784; EG-NEXT:     LSHR T2.Y, T40.Y, literal.y,10785; EG-NEXT:     LSHR T3.Z, T40.Y, literal.z,10786; EG-NEXT:     LSHR * T3.W, T40.Y, literal.w,10787; EG-NEXT:    2(2.802597e-45), 12(1.681558e-44)10788; EG-NEXT:    13(1.821688e-44), 8(1.121039e-44)10789; EG-NEXT:     ADD_INT * T4.W, KC0[2].Y, literal.x,10790; EG-NEXT:    416(5.829402e-43), 0(0.000000e+00)10791; EG-NEXT:     LSHR T46.X, PV.W, literal.x,10792; EG-NEXT:     LSHR T3.Y, T40.Y, literal.y,10793; EG-NEXT:     LSHR T4.Z, T40.Y, literal.z,10794; EG-NEXT:     LSHR * T4.W, T40.Y, literal.w,10795; EG-NEXT:    2(2.802597e-45), 9(1.261169e-44)10796; EG-NEXT:    4(5.605194e-45), 5(7.006492e-45)10797; EG-NEXT:     ADD_INT * T5.W, KC0[2].Y, literal.x,10798; EG-NEXT:    432(6.053609e-43), 0(0.000000e+00)10799; EG-NEXT:     LSHR T47.X, PV.W, literal.x,10800; EG-NEXT:     ADD_INT T4.Y, KC0[2].Y, literal.y,10801; EG-NEXT:     LSHR T5.Z, T40.Y, 1,10802; EG-NEXT:     LSHR T5.W, T40.X, literal.z,10803; EG-NEXT:     ADD_INT * T6.W, KC0[2].Y, literal.w,10804; EG-NEXT:    2(2.802597e-45), 464(6.502025e-43)10805; EG-NEXT:    28(3.923636e-44), 448(6.277817e-43)10806; EG-NEXT:    ALU clause starting at 153:10807; EG-NEXT:     LSHR T48.X, T6.W, literal.x,10808; EG-NEXT:     LSHR T5.Y, T40.X, literal.y,10809; EG-NEXT:     LSHR T6.Z, T40.X, literal.z,10810; EG-NEXT:     LSHR * T6.W, T40.X, literal.w,10811; EG-NEXT:    2(2.802597e-45), 29(4.063766e-44)10812; EG-NEXT:    24(3.363116e-44), 25(3.503246e-44)10813; EG-NEXT:     LSHR * T7.W, T40.X, literal.x,10814; EG-NEXT:    20(2.802597e-44), 0(0.000000e+00)10815; EG-NEXT:     BFE_INT T49.X, T40.X, 0.0, 1,10816; EG-NEXT:     LSHR T6.Y, T40.X, literal.x,10817; EG-NEXT:     ASHR T50.Z, T40.Y, literal.y,10818; EG-NEXT:     LSHR T8.W, T40.Y, literal.z,10819; EG-NEXT:     LSHR * T9.W, T40.Y, literal.w,10820; EG-NEXT:    21(2.942727e-44), 31(4.344025e-44)10821; EG-NEXT:    27(3.783506e-44), 30(4.203895e-44)10822; EG-NEXT:     BFE_INT T50.X, PS, 0.0, 1,10823; EG-NEXT:     LSHR T7.Y, T40.X, literal.x,10824; EG-NEXT:     BFE_INT T51.Z, PV.W, 0.0, 1,10825; EG-NEXT:     LSHR T8.W, T40.Y, literal.y,10826; EG-NEXT:     LSHR * T9.W, T40.Y, literal.z,10827; EG-NEXT:    16(2.242078e-44), 23(3.222986e-44)10828; EG-NEXT:    26(3.643376e-44), 0(0.000000e+00)10829; EG-NEXT:     BFE_INT T51.X, PS, 0.0, 1,10830; EG-NEXT:     MOV T50.Y, PV.X,10831; EG-NEXT:     BFE_INT T52.Z, PV.W, 0.0, 1,10832; EG-NEXT:     LSHR T8.W, T40.Y, literal.x,10833; EG-NEXT:     LSHR * T9.W, T40.Y, literal.y,10834; EG-NEXT:    19(2.662467e-44), 22(3.082857e-44)10835; EG-NEXT:     BFE_INT T52.X, PS, 0.0, 1,10836; EG-NEXT:     MOV T51.Y, PV.X,10837; EG-NEXT:     BFE_INT T53.Z, PV.W, 0.0, 1,10838; EG-NEXT:     LSHR T8.W, T40.Y, literal.x,10839; EG-NEXT:     LSHR * T9.W, T40.Y, literal.y,10840; EG-NEXT:    15(2.101948e-44), 18(2.522337e-44)10841; EG-NEXT:     BFE_INT T53.X, PS, 0.0, 1,10842; EG-NEXT:     MOV T52.Y, PV.X,10843; EG-NEXT:     BFE_INT T54.Z, PV.W, 0.0, 1,10844; EG-NEXT:     LSHR T8.W, T40.Y, literal.x,10845; EG-NEXT:     LSHR * T9.W, T40.Y, literal.y,10846; EG-NEXT:    11(1.541428e-44), 14(1.961818e-44)10847; EG-NEXT:     BFE_INT T54.X, PS, 0.0, 1,10848; EG-NEXT:     MOV T53.Y, PV.X,10849; EG-NEXT:     BFE_INT T55.Z, PV.W, 0.0, 1,10850; EG-NEXT:     LSHR T8.W, T40.Y, literal.x,10851; EG-NEXT:     LSHR * T9.W, T40.Y, literal.y,10852; EG-NEXT:    7(9.809089e-45), 10(1.401298e-44)10853; EG-NEXT:     BFE_INT T55.X, PS, 0.0, 1,10854; EG-NEXT:     MOV T54.Y, PV.X,10855; EG-NEXT:     BFE_INT T56.Z, PV.W, 0.0, 1,10856; EG-NEXT:     LSHR T8.W, T40.Y, literal.x,10857; EG-NEXT:     LSHR * T9.W, T40.Y, literal.y,10858; EG-NEXT:    3(4.203895e-45), 6(8.407791e-45)10859; EG-NEXT:     BFE_INT T56.X, PS, 0.0, 1,10860; EG-NEXT:     MOV T55.Y, PV.X,10861; EG-NEXT:     BFE_INT T57.Z, PV.W, 0.0, 1,10862; EG-NEXT:     LSHR T8.W, T40.X, literal.x,10863; EG-NEXT:     LSHR * T9.W, T40.Y, literal.y,10864; EG-NEXT:    17(2.382207e-44), 2(2.802597e-45)10865; EG-NEXT:     BFE_INT T57.X, PS, 0.0, 1,10866; EG-NEXT:     MOV T56.Y, PV.X,10867; EG-NEXT:     ASHR T58.Z, T40.X, literal.x,10868; EG-NEXT:     LSHR T9.W, T40.X, literal.y,10869; EG-NEXT:     LSHR * T10.W, T40.X, literal.z,10870; EG-NEXT:    31(4.344025e-44), 27(3.783506e-44)10871; EG-NEXT:    30(4.203895e-44), 0(0.000000e+00)10872; EG-NEXT:     BFE_INT T58.X, PS, 0.0, 1,10873; EG-NEXT:     MOV T57.Y, PV.X,10874; EG-NEXT:     BFE_INT T59.Z, PV.W, 0.0, 1,10875; EG-NEXT:     LSHR T9.W, T40.X, literal.x,10876; EG-NEXT:     LSHR * T10.W, T40.X, literal.y,10877; EG-NEXT:    23(3.222986e-44), 26(3.643376e-44)10878; EG-NEXT:     BFE_INT T59.X, PS, 0.0, 1,10879; EG-NEXT:     MOV T58.Y, PV.X,10880; EG-NEXT:     BFE_INT T60.Z, PV.W, 0.0, 1,10881; EG-NEXT:     LSHR T9.W, T40.X, literal.x,10882; EG-NEXT:     LSHR * T10.W, T40.X, literal.y,10883; EG-NEXT:    19(2.662467e-44), 22(3.082857e-44)10884; EG-NEXT:     BFE_INT T60.X, PS, 0.0, 1,10885; EG-NEXT:     MOV T59.Y, PV.X,10886; EG-NEXT:     BFE_INT T61.Z, PV.W, 0.0, 1,10887; EG-NEXT:     LSHR T9.W, T40.X, literal.x,10888; EG-NEXT:     LSHR * T10.W, T40.X, literal.y,10889; EG-NEXT:    15(2.101948e-44), 18(2.522337e-44)10890; EG-NEXT:     BFE_INT T61.X, PS, 0.0, 1,10891; EG-NEXT:     MOV T60.Y, PV.X,10892; EG-NEXT:     BFE_INT T62.Z, PV.W, 0.0, 1,10893; EG-NEXT:     LSHR T9.W, T40.X, literal.x,10894; EG-NEXT:     LSHR * T10.W, T40.X, literal.y,10895; EG-NEXT:    11(1.541428e-44), 14(1.961818e-44)10896; EG-NEXT:     BFE_INT T62.X, PS, 0.0, 1,10897; EG-NEXT:     MOV T61.Y, PV.X,10898; EG-NEXT:     BFE_INT T63.Z, PV.W, 0.0, 1,10899; EG-NEXT:     LSHR T9.W, T40.X, literal.x,10900; EG-NEXT:     LSHR * T10.W, T40.X, literal.y,10901; EG-NEXT:    7(9.809089e-45), 10(1.401298e-44)10902; EG-NEXT:     BFE_INT T63.X, PS, 0.0, 1,10903; EG-NEXT:     MOV T62.Y, PV.X,10904; EG-NEXT:     BFE_INT T64.Z, PV.W, 0.0, 1,10905; EG-NEXT:     LSHR * T9.W, T40.X, literal.x,10906; EG-NEXT:    3(4.203895e-45), 0(0.000000e+00)10907; EG-NEXT:    ALU clause starting at 253:10908; EG-NEXT:     LSHR * T10.W, T40.X, literal.x,10909; EG-NEXT:    6(8.407791e-45), 0(0.000000e+00)10910; EG-NEXT:     BFE_INT T64.X, PV.W, 0.0, 1,10911; EG-NEXT:     MOV T63.Y, T63.X,10912; EG-NEXT:     BFE_INT T65.Z, T9.W, 0.0, 1,10913; EG-NEXT:     LSHR T9.W, T40.X, 1, BS:VEC_120/SCL_21210914; EG-NEXT:     LSHR * T10.W, T40.X, literal.x,10915; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)10916; EG-NEXT:     BFE_INT T65.X, PS, 0.0, 1,10917; EG-NEXT:     MOV T64.Y, PV.X,10918; EG-NEXT:     BFE_INT T49.Z, PV.W, 0.0, 1,10919; EG-NEXT:     LSHR T9.W, T40.X, literal.x,10920; EG-NEXT:     LSHR * T10.W, T40.X, literal.y,10921; EG-NEXT:    12(1.681558e-44), 5(7.006492e-45)10922; EG-NEXT:     BFE_INT T66.X, T40.Y, 0.0, 1,10923; EG-NEXT:     MOV T65.Y, PV.X,10924; EG-NEXT:     BFE_INT T67.Z, PS, 0.0, 1,10925; EG-NEXT:     LSHR T10.W, T40.X, literal.x,10926; EG-NEXT:     LSHR * T11.W, T40.X, literal.y,10927; EG-NEXT:    9(1.261169e-44), 4(5.605194e-45)10928; EG-NEXT:     BFE_INT T67.X, PS, 0.0, 1,10929; EG-NEXT:     MOV T49.Y, T49.X,10930; EG-NEXT:     BFE_INT T40.Z, PV.W, 0.0, 1,10931; EG-NEXT:     LSHR T10.W, T40.X, literal.x, BS:VEC_120/SCL_21210932; EG-NEXT:     LSHR * T11.W, T40.X, literal.y,10933; EG-NEXT:    13(1.821688e-44), 8(1.121039e-44)10934; EG-NEXT:     BFE_INT T40.X, PS, 0.0, 1,10935; EG-NEXT:     MOV T67.Y, PV.X,10936; EG-NEXT:     BFE_INT T68.Z, PV.W, 0.0, 1,10937; EG-NEXT:     MOV T49.W, T49.Z,10938; EG-NEXT:     MOV * T65.W, T65.Z,10939; EG-NEXT:     BFE_INT T68.X, T9.W, 0.0, 1,10940; EG-NEXT:     MOV T40.Y, PV.X,10941; EG-NEXT:     BFE_INT T69.Z, T8.W, 0.0, 1, BS:VEC_120/SCL_21210942; EG-NEXT:     MOV T67.W, T67.Z,10943; EG-NEXT:     MOV * T64.W, T64.Z,10944; EG-NEXT:     BFE_INT T69.X, T7.Y, 0.0, 1,10945; EG-NEXT:     MOV T68.Y, PV.X,10946; EG-NEXT:     BFE_INT T70.Z, T6.Y, 0.0, 1, BS:VEC_120/SCL_21210947; EG-NEXT:     MOV T40.W, T40.Z,10948; EG-NEXT:     MOV * T63.W, T63.Z,10949; EG-NEXT:     BFE_INT T70.X, T7.W, 0.0, 1,10950; EG-NEXT:     MOV T69.Y, PV.X,10951; EG-NEXT:     BFE_INT T71.Z, T6.W, 0.0, 1, BS:VEC_120/SCL_21210952; EG-NEXT:     MOV T68.W, T68.Z,10953; EG-NEXT:     MOV * T62.W, T62.Z,10954; EG-NEXT:     BFE_INT T71.X, T6.Z, 0.0, 1,10955; EG-NEXT:     MOV T70.Y, PV.X,10956; EG-NEXT:     BFE_INT T72.Z, T5.Y, 0.0, 1,10957; EG-NEXT:     MOV T69.W, T69.Z, BS:VEC_120/SCL_21210958; EG-NEXT:     MOV * T61.W, T61.Z,10959; EG-NEXT:     BFE_INT T72.X, T5.W, 0.0, 1,10960; EG-NEXT:     MOV T71.Y, PV.X,10961; EG-NEXT:     BFE_INT T66.Z, T5.Z, 0.0, 1,10962; EG-NEXT:     MOV T70.W, T70.Z, BS:VEC_120/SCL_21210963; EG-NEXT:     MOV * T60.W, T60.Z,10964; EG-NEXT:     LSHR T73.X, T4.Y, literal.x,10965; EG-NEXT:     MOV T72.Y, PV.X,10966; EG-NEXT:     BFE_INT T74.Z, T4.W, 0.0, 1,10967; EG-NEXT:     MOV T71.W, T71.Z,10968; EG-NEXT:     MOV * T59.W, T59.Z,10969; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)10970; EG-NEXT:     BFE_INT T74.X, T4.Z, 0.0, 1,10971; EG-NEXT:     MOV T66.Y, T66.X,10972; EG-NEXT:     BFE_INT T75.Z, T3.Y, 0.0, 1,10973; EG-NEXT:     MOV T72.W, T72.Z, BS:VEC_120/SCL_21210974; EG-NEXT:     MOV * T58.W, T58.Z,10975; EG-NEXT:     BFE_INT T75.X, T3.W, 0.0, 1,10976; EG-NEXT:     MOV T74.Y, PV.X,10977; EG-NEXT:     BFE_INT T76.Z, T3.Z, 0.0, 1,10978; EG-NEXT:     MOV T66.W, T66.Z, BS:VEC_120/SCL_21210979; EG-NEXT:     MOV * T57.W, T57.Z,10980; EG-NEXT:     BFE_INT T76.X, T2.Y, 0.0, 1,10981; EG-NEXT:     MOV T75.Y, PV.X,10982; EG-NEXT:     BFE_INT T77.Z, T2.W, 0.0, 1,10983; EG-NEXT:     MOV T74.W, T74.Z,10984; EG-NEXT:     MOV * T56.W, T56.Z,10985; EG-NEXT:     BFE_INT T77.X, T2.Z, 0.0, 1,10986; EG-NEXT:     MOV T76.Y, PV.X,10987; EG-NEXT:     BFE_INT T78.Z, T1.Y, 0.0, 1,10988; EG-NEXT:     MOV T75.W, T75.Z, BS:VEC_120/SCL_21210989; EG-NEXT:     MOV * T55.W, T55.Z,10990; EG-NEXT:     BFE_INT T78.X, T1.W, 0.0, 1,10991; EG-NEXT:     MOV T77.Y, PV.X,10992; EG-NEXT:     BFE_INT T79.Z, T1.Z, 0.0, 1,10993; EG-NEXT:     MOV T76.W, T76.Z, BS:VEC_120/SCL_21210994; EG-NEXT:     MOV * T54.W, T54.Z,10995; EG-NEXT:     BFE_INT T79.X, T0.Y, 0.0, 1,10996; EG-NEXT:     MOV T78.Y, PV.X,10997; EG-NEXT:     BFE_INT T80.Z, T0.W, 0.0, 1,10998; EG-NEXT:     MOV T77.W, T77.Z,10999; EG-NEXT:     MOV * T53.W, T53.Z,11000; EG-NEXT:     BFE_INT T80.X, T0.Z, 0.0, 1,11001; EG-NEXT:     MOV T79.Y, PV.X,11002; EG-NEXT:     ADD_INT T0.Z, KC0[2].Y, literal.x,11003; EG-NEXT:     MOV T78.W, T78.Z, BS:VEC_120/SCL_21211004; EG-NEXT:     MOV * T52.W, T52.Z,11005; EG-NEXT:    480(6.726233e-43), 0(0.000000e+00)11006; EG-NEXT:     LSHR T81.X, PV.Z, literal.x,11007; EG-NEXT:     MOV T80.Y, PV.X,11008; EG-NEXT:     ADD_INT T0.Z, KC0[2].Y, literal.y,11009; EG-NEXT:     MOV T79.W, T79.Z,11010; EG-NEXT:     MOV * T51.W, T51.Z,11011; EG-NEXT:    2(2.802597e-45), 496(6.950440e-43)11012; EG-NEXT:     LSHR T82.X, PV.Z, literal.x,11013; EG-NEXT:     MOV T80.W, T80.Z,11014; EG-NEXT:     MOV * T50.W, T50.Z,11015; EG-NEXT:    2(2.802597e-45), 0(0.000000e+00)11016;11017; GFX12-LABEL: constant_sextload_v64i1_to_v64i64:11018; GFX12:       ; %bb.0:11019; GFX12-NEXT:    s_load_b128 s[0:3], s[4:5], 0x2411020; GFX12-NEXT:    s_wait_kmcnt 0x011021; GFX12-NEXT:    s_load_b64 s[10:11], s[2:3], 0x011022; GFX12-NEXT:    s_wait_kmcnt 0x011023; GFX12-NEXT:    s_lshr_b32 s96, s11, 3011024; GFX12-NEXT:    s_lshr_b32 s98, s11, 3111025; GFX12-NEXT:    s_lshr_b32 s92, s11, 2811026; GFX12-NEXT:    s_lshr_b32 s94, s11, 2911027; GFX12-NEXT:    s_lshr_b32 s78, s11, 2611028; GFX12-NEXT:    s_lshr_b32 s88, s11, 2711029; GFX12-NEXT:    s_bfe_i64 s[96:97], s[96:97], 0x1000011030; GFX12-NEXT:    s_bfe_i64 s[100:101], s[98:99], 0x1000011031; GFX12-NEXT:    s_lshr_b32 s66, s11, 2411032; GFX12-NEXT:    s_lshr_b32 s74, s11, 2511033; GFX12-NEXT:    s_bfe_i64 s[92:93], s[92:93], 0x1000011034; GFX12-NEXT:    s_bfe_i64 s[94:95], s[94:95], 0x1000011035; GFX12-NEXT:    v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, s9611036; GFX12-NEXT:    s_lshr_b32 s56, s11, 2211037; GFX12-NEXT:    s_lshr_b32 s62, s11, 2311038; GFX12-NEXT:    v_dual_mov_b32 v2, s97 :: v_dual_mov_b32 v3, s10011039; GFX12-NEXT:    v_dual_mov_b32 v4, s101 :: v_dual_mov_b32 v5, s9211040; GFX12-NEXT:    s_bfe_i64 s[78:79], s[78:79], 0x1000011041; GFX12-NEXT:    s_bfe_i64 s[88:89], s[88:89], 0x1000011042; GFX12-NEXT:    s_lshr_b32 s44, s11, 2011043; GFX12-NEXT:    s_lshr_b32 s52, s11, 2111044; GFX12-NEXT:    s_lshr_b32 s30, s11, 1811045; GFX12-NEXT:    s_lshr_b32 s40, s11, 1911046; GFX12-NEXT:    s_lshr_b32 s18, s11, 1611047; GFX12-NEXT:    s_lshr_b32 s26, s11, 1711048; GFX12-NEXT:    s_lshr_b32 s2, s11, 1411049; GFX12-NEXT:    s_lshr_b32 s4, s11, 1511050; GFX12-NEXT:    v_dual_mov_b32 v6, s93 :: v_dual_mov_b32 v7, s9411051; GFX12-NEXT:    v_dual_mov_b32 v8, s95 :: v_dual_mov_b32 v9, s7811052; GFX12-NEXT:    s_bfe_i64 s[66:67], s[66:67], 0x1000011053; GFX12-NEXT:    s_bfe_i64 s[74:75], s[74:75], 0x1000011054; GFX12-NEXT:    s_lshr_b32 s6, s11, 1211055; GFX12-NEXT:    s_lshr_b32 s8, s11, 1311056; GFX12-NEXT:    v_dual_mov_b32 v10, s79 :: v_dual_mov_b32 v11, s8811057; GFX12-NEXT:    v_dual_mov_b32 v12, s89 :: v_dual_mov_b32 v13, s6611058; GFX12-NEXT:    s_bfe_i64 s[56:57], s[56:57], 0x1000011059; GFX12-NEXT:    s_bfe_i64 s[62:63], s[62:63], 0x1000011060; GFX12-NEXT:    s_lshr_b32 s12, s11, 1011061; GFX12-NEXT:    s_lshr_b32 s14, s11, 1111062; GFX12-NEXT:    v_dual_mov_b32 v14, s67 :: v_dual_mov_b32 v15, s7411063; GFX12-NEXT:    v_dual_mov_b32 v16, s75 :: v_dual_mov_b32 v17, s5611064; GFX12-NEXT:    s_bfe_i64 s[44:45], s[44:45], 0x1000011065; GFX12-NEXT:    s_bfe_i64 s[52:53], s[52:53], 0x1000011066; GFX12-NEXT:    s_bfe_i64 s[30:31], s[30:31], 0x1000011067; GFX12-NEXT:    s_bfe_i64 s[40:41], s[40:41], 0x1000011068; GFX12-NEXT:    s_bfe_i64 s[18:19], s[18:19], 0x1000011069; GFX12-NEXT:    s_bfe_i64 s[26:27], s[26:27], 0x1000011070; GFX12-NEXT:    s_bfe_i64 s[4:5], s[4:5], 0x1000011071; GFX12-NEXT:    s_bfe_i64 s[2:3], s[2:3], 0x1000011072; GFX12-NEXT:    s_lshr_b32 s16, s11, 811073; GFX12-NEXT:    s_lshr_b32 s20, s11, 911074; GFX12-NEXT:    v_dual_mov_b32 v18, s57 :: v_dual_mov_b32 v19, s6211075; GFX12-NEXT:    v_dual_mov_b32 v20, s63 :: v_dual_mov_b32 v21, s4411076; GFX12-NEXT:    s_bfe_i64 s[8:9], s[8:9], 0x1000011077; GFX12-NEXT:    s_bfe_i64 s[6:7], s[6:7], 0x1000011078; GFX12-NEXT:    s_lshr_b32 s22, s11, 611079; GFX12-NEXT:    s_lshr_b32 s24, s11, 711080; GFX12-NEXT:    v_dual_mov_b32 v22, s45 :: v_dual_mov_b32 v23, s5211081; GFX12-NEXT:    v_dual_mov_b32 v24, s53 :: v_dual_mov_b32 v25, s3011082; GFX12-NEXT:    v_dual_mov_b32 v26, s31 :: v_dual_mov_b32 v27, s4011083; GFX12-NEXT:    v_dual_mov_b32 v28, s41 :: v_dual_mov_b32 v29, s1811084; GFX12-NEXT:    v_dual_mov_b32 v30, s19 :: v_dual_mov_b32 v31, s2611085; GFX12-NEXT:    v_mov_b32_e32 v32, s2711086; GFX12-NEXT:    s_bfe_i64 s[14:15], s[14:15], 0x1000011087; GFX12-NEXT:    s_bfe_i64 s[12:13], s[12:13], 0x1000011088; GFX12-NEXT:    s_clause 0x711089; GFX12-NEXT:    global_store_b128 v0, v[1:4], s[0:1] offset:49611090; GFX12-NEXT:    global_store_b128 v0, v[5:8], s[0:1] offset:48011091; GFX12-NEXT:    global_store_b128 v0, v[9:12], s[0:1] offset:46411092; GFX12-NEXT:    global_store_b128 v0, v[13:16], s[0:1] offset:44811093; GFX12-NEXT:    global_store_b128 v0, v[17:20], s[0:1] offset:43211094; GFX12-NEXT:    global_store_b128 v0, v[21:24], s[0:1] offset:41611095; GFX12-NEXT:    global_store_b128 v0, v[25:28], s[0:1] offset:40011096; GFX12-NEXT:    global_store_b128 v0, v[29:32], s[0:1] offset:38411097; GFX12-NEXT:    v_dual_mov_b32 v1, s2 :: v_dual_mov_b32 v2, s311098; GFX12-NEXT:    v_dual_mov_b32 v3, s4 :: v_dual_mov_b32 v4, s511099; GFX12-NEXT:    v_mov_b32_e32 v5, s611100; GFX12-NEXT:    s_lshr_b32 s28, s11, 411101; GFX12-NEXT:    s_lshr_b32 s34, s11, 511102; GFX12-NEXT:    s_lshr_b32 s36, s11, 211103; GFX12-NEXT:    s_lshr_b32 s38, s11, 311104; GFX12-NEXT:    s_bfe_i64 s[20:21], s[20:21], 0x1000011105; GFX12-NEXT:    s_bfe_i64 s[16:17], s[16:17], 0x1000011106; GFX12-NEXT:    v_dual_mov_b32 v6, s7 :: v_dual_mov_b32 v7, s811107; GFX12-NEXT:    v_dual_mov_b32 v8, s9 :: v_dual_mov_b32 v9, s1211108; GFX12-NEXT:    s_lshr_b32 s42, s11, 111109; GFX12-NEXT:    s_mov_b32 s46, s1111110; GFX12-NEXT:    s_bfe_i64 s[24:25], s[24:25], 0x1000011111; GFX12-NEXT:    s_bfe_i64 s[22:23], s[22:23], 0x1000011112; GFX12-NEXT:    v_dual_mov_b32 v10, s13 :: v_dual_mov_b32 v11, s1411113; GFX12-NEXT:    v_dual_mov_b32 v12, s15 :: v_dual_mov_b32 v13, s1611114; GFX12-NEXT:    s_lshr_b32 s48, s10, 3011115; GFX12-NEXT:    s_lshr_b32 s50, s10, 3111116; GFX12-NEXT:    s_bfe_i64 s[38:39], s[38:39], 0x1000011117; GFX12-NEXT:    s_bfe_i64 s[36:37], s[36:37], 0x1000011118; GFX12-NEXT:    s_bfe_i64 s[34:35], s[34:35], 0x1000011119; GFX12-NEXT:    s_bfe_i64 s[28:29], s[28:29], 0x1000011120; GFX12-NEXT:    v_dual_mov_b32 v14, s17 :: v_dual_mov_b32 v15, s2011121; GFX12-NEXT:    v_dual_mov_b32 v16, s21 :: v_dual_mov_b32 v17, s2211122; GFX12-NEXT:    s_lshr_b32 s54, s10, 2811123; GFX12-NEXT:    s_lshr_b32 s58, s10, 2911124; GFX12-NEXT:    s_bfe_i64 s[46:47], s[46:47], 0x1000011125; GFX12-NEXT:    s_bfe_i64 s[42:43], s[42:43], 0x1000011126; GFX12-NEXT:    v_dual_mov_b32 v18, s23 :: v_dual_mov_b32 v19, s2411127; GFX12-NEXT:    v_dual_mov_b32 v20, s25 :: v_dual_mov_b32 v21, s2811128; GFX12-NEXT:    s_lshr_b32 s60, s10, 2611129; GFX12-NEXT:    s_lshr_b32 s64, s10, 2711130; GFX12-NEXT:    s_bfe_i64 s[50:51], s[50:51], 0x1000011131; GFX12-NEXT:    s_bfe_i64 s[48:49], s[48:49], 0x1000011132; GFX12-NEXT:    v_dual_mov_b32 v22, s29 :: v_dual_mov_b32 v23, s3411133; GFX12-NEXT:    v_mov_b32_e32 v24, s3511134; GFX12-NEXT:    s_clause 0x511135; GFX12-NEXT:    global_store_b128 v0, v[1:4], s[0:1] offset:36811136; GFX12-NEXT:    global_store_b128 v0, v[5:8], s[0:1] offset:35211137; GFX12-NEXT:    global_store_b128 v0, v[9:12], s[0:1] offset:33611138; GFX12-NEXT:    global_store_b128 v0, v[13:16], s[0:1] offset:32011139; GFX12-NEXT:    global_store_b128 v0, v[17:20], s[0:1] offset:30411140; GFX12-NEXT:    global_store_b128 v0, v[21:24], s[0:1] offset:28811141; GFX12-NEXT:    v_dual_mov_b32 v1, s36 :: v_dual_mov_b32 v2, s3711142; GFX12-NEXT:    v_dual_mov_b32 v3, s38 :: v_dual_mov_b32 v4, s3911143; GFX12-NEXT:    v_mov_b32_e32 v5, s4611144; GFX12-NEXT:    s_lshr_b32 s68, s10, 2411145; GFX12-NEXT:    s_lshr_b32 s70, s10, 2511146; GFX12-NEXT:    s_lshr_b32 s72, s10, 2211147; GFX12-NEXT:    s_lshr_b32 s76, s10, 2311148; GFX12-NEXT:    s_bfe_i64 s[58:59], s[58:59], 0x1000011149; GFX12-NEXT:    s_bfe_i64 s[54:55], s[54:55], 0x1000011150; GFX12-NEXT:    v_dual_mov_b32 v6, s47 :: v_dual_mov_b32 v7, s4211151; GFX12-NEXT:    v_dual_mov_b32 v8, s43 :: v_dual_mov_b32 v9, s4811152; GFX12-NEXT:    s_lshr_b32 s80, s10, 2011153; GFX12-NEXT:    s_lshr_b32 s82, s10, 2111154; GFX12-NEXT:    s_bfe_i64 s[64:65], s[64:65], 0x1000011155; GFX12-NEXT:    s_bfe_i64 s[60:61], s[60:61], 0x1000011156; GFX12-NEXT:    v_dual_mov_b32 v10, s49 :: v_dual_mov_b32 v11, s5011157; GFX12-NEXT:    v_dual_mov_b32 v12, s51 :: v_dual_mov_b32 v13, s5411158; GFX12-NEXT:    s_lshr_b32 s84, s10, 1811159; GFX12-NEXT:    s_lshr_b32 s86, s10, 1911160; GFX12-NEXT:    s_bfe_i64 s[76:77], s[76:77], 0x1000011161; GFX12-NEXT:    s_bfe_i64 s[72:73], s[72:73], 0x1000011162; GFX12-NEXT:    s_bfe_i64 s[70:71], s[70:71], 0x1000011163; GFX12-NEXT:    s_bfe_i64 s[68:69], s[68:69], 0x1000011164; GFX12-NEXT:    v_dual_mov_b32 v14, s55 :: v_dual_mov_b32 v15, s5811165; GFX12-NEXT:    v_dual_mov_b32 v16, s59 :: v_dual_mov_b32 v17, s6011166; GFX12-NEXT:    s_lshr_b32 s90, s10, 1611167; GFX12-NEXT:    s_lshr_b32 s98, s10, 1711168; GFX12-NEXT:    s_bfe_i64 s[82:83], s[82:83], 0x1000011169; GFX12-NEXT:    s_bfe_i64 s[80:81], s[80:81], 0x1000011170; GFX12-NEXT:    v_dual_mov_b32 v18, s61 :: v_dual_mov_b32 v19, s6411171; GFX12-NEXT:    v_dual_mov_b32 v20, s65 :: v_dual_mov_b32 v21, s6811172; GFX12-NEXT:    s_lshr_b32 s96, s10, 1411173; GFX12-NEXT:    s_lshr_b32 s100, s10, 1511174; GFX12-NEXT:    s_lshr_b32 s94, s10, 1311175; GFX12-NEXT:    s_lshr_b32 s88, s10, 1111176; GFX12-NEXT:    s_lshr_b32 s74, s10, 911177; GFX12-NEXT:    s_lshr_b32 s62, s10, 711178; GFX12-NEXT:    s_lshr_b32 s52, s10, 511179; GFX12-NEXT:    s_lshr_b32 s40, s10, 311180; GFX12-NEXT:    s_lshr_b32 s26, s10, 111181; GFX12-NEXT:    s_bfe_i64 s[86:87], s[86:87], 0x1000011182; GFX12-NEXT:    s_bfe_i64 s[84:85], s[84:85], 0x1000011183; GFX12-NEXT:    v_dual_mov_b32 v22, s69 :: v_dual_mov_b32 v23, s7011184; GFX12-NEXT:    v_mov_b32_e32 v24, s7111185; GFX12-NEXT:    s_clause 0x511186; GFX12-NEXT:    global_store_b128 v0, v[1:4], s[0:1] offset:27211187; GFX12-NEXT:    global_store_b128 v0, v[5:8], s[0:1] offset:25611188; GFX12-NEXT:    global_store_b128 v0, v[9:12], s[0:1] offset:24011189; GFX12-NEXT:    global_store_b128 v0, v[13:16], s[0:1] offset:22411190; GFX12-NEXT:    global_store_b128 v0, v[17:20], s[0:1] offset:20811191; GFX12-NEXT:    global_store_b128 v0, v[21:24], s[0:1] offset:19211192; GFX12-NEXT:    v_dual_mov_b32 v1, s72 :: v_dual_mov_b32 v2, s7311193; GFX12-NEXT:    v_dual_mov_b32 v3, s76 :: v_dual_mov_b32 v4, s7711194; GFX12-NEXT:    v_mov_b32_e32 v5, s8011195; GFX12-NEXT:    s_lshr_b32 s92, s10, 1211196; GFX12-NEXT:    s_lshr_b32 s78, s10, 1011197; GFX12-NEXT:    s_bfe_i64 s[98:99], s[98:99], 0x1000011198; GFX12-NEXT:    s_bfe_i64 s[90:91], s[90:91], 0x1000011199; GFX12-NEXT:    v_dual_mov_b32 v6, s81 :: v_dual_mov_b32 v7, s8211200; GFX12-NEXT:    v_dual_mov_b32 v8, s83 :: v_dual_mov_b32 v9, s8411201; GFX12-NEXT:    s_lshr_b32 s66, s10, 811202; GFX12-NEXT:    s_lshr_b32 s56, s10, 611203; GFX12-NEXT:    s_lshr_b32 s44, s10, 411204; GFX12-NEXT:    s_lshr_b32 s30, s10, 211205; GFX12-NEXT:    s_bfe_i64 s[18:19], s[10:11], 0x1000011206; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)11207; GFX12-NEXT:    s_bfe_i64 s[10:11], s[26:27], 0x1000011208; GFX12-NEXT:    s_bfe_i64 s[26:27], s[40:41], 0x1000011209; GFX12-NEXT:    s_bfe_i64 s[40:41], s[52:53], 0x1000011210; GFX12-NEXT:    s_bfe_i64 s[52:53], s[62:63], 0x1000011211; GFX12-NEXT:    s_bfe_i64 s[62:63], s[74:75], 0x1000011212; GFX12-NEXT:    s_bfe_i64 s[74:75], s[88:89], 0x1000011213; GFX12-NEXT:    s_bfe_i64 s[88:89], s[94:95], 0x1000011214; GFX12-NEXT:    s_bfe_i64 s[94:95], s[100:101], 0x1000011215; GFX12-NEXT:    s_bfe_i64 s[96:97], s[96:97], 0x1000011216; GFX12-NEXT:    v_dual_mov_b32 v10, s85 :: v_dual_mov_b32 v11, s8611217; GFX12-NEXT:    v_dual_mov_b32 v12, s87 :: v_dual_mov_b32 v13, s9011218; GFX12-NEXT:    s_bfe_i64 s[78:79], s[78:79], 0x1000011219; GFX12-NEXT:    s_bfe_i64 s[92:93], s[92:93], 0x1000011220; GFX12-NEXT:    v_dual_mov_b32 v14, s91 :: v_dual_mov_b32 v15, s9811221; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)11222; GFX12-NEXT:    v_dual_mov_b32 v16, s99 :: v_dual_mov_b32 v17, s9611223; GFX12-NEXT:    s_bfe_i64 s[66:67], s[66:67], 0x1000011224; GFX12-NEXT:    v_dual_mov_b32 v18, s97 :: v_dual_mov_b32 v19, s9411225; GFX12-NEXT:    v_dual_mov_b32 v20, s95 :: v_dual_mov_b32 v21, s9211226; GFX12-NEXT:    s_bfe_i64 s[56:57], s[56:57], 0x1000011227; GFX12-NEXT:    v_dual_mov_b32 v22, s93 :: v_dual_mov_b32 v23, s8811228; GFX12-NEXT:    v_mov_b32_e32 v24, s8911229; GFX12-NEXT:    s_clause 0x511230; GFX12-NEXT:    global_store_b128 v0, v[1:4], s[0:1] offset:17611231; GFX12-NEXT:    global_store_b128 v0, v[5:8], s[0:1] offset:16011232; GFX12-NEXT:    global_store_b128 v0, v[9:12], s[0:1] offset:14411233; GFX12-NEXT:    global_store_b128 v0, v[13:16], s[0:1] offset:12811234; GFX12-NEXT:    global_store_b128 v0, v[17:20], s[0:1] offset:11211235; GFX12-NEXT:    global_store_b128 v0, v[21:24], s[0:1] offset:9611236; GFX12-NEXT:    v_dual_mov_b32 v1, s78 :: v_dual_mov_b32 v2, s7911237; GFX12-NEXT:    v_dual_mov_b32 v3, s74 :: v_dual_mov_b32 v4, s7511238; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)11239; GFX12-NEXT:    v_mov_b32_e32 v5, s6611240; GFX12-NEXT:    s_bfe_i64 s[44:45], s[44:45], 0x1000011241; GFX12-NEXT:    v_dual_mov_b32 v6, s67 :: v_dual_mov_b32 v7, s6211242; GFX12-NEXT:    v_dual_mov_b32 v8, s63 :: v_dual_mov_b32 v9, s5611243; GFX12-NEXT:    s_bfe_i64 s[30:31], s[30:31], 0x1000011244; GFX12-NEXT:    v_dual_mov_b32 v10, s57 :: v_dual_mov_b32 v11, s5211245; GFX12-NEXT:    s_wait_alu depctr_sa_sdst(0)11246; GFX12-NEXT:    v_dual_mov_b32 v12, s53 :: v_dual_mov_b32 v13, s4411247; GFX12-NEXT:    v_dual_mov_b32 v14, s45 :: v_dual_mov_b32 v15, s4011248; GFX12-NEXT:    v_dual_mov_b32 v16, s41 :: v_dual_mov_b32 v17, s3011249; GFX12-NEXT:    v_dual_mov_b32 v18, s31 :: v_dual_mov_b32 v19, s2611250; GFX12-NEXT:    v_dual_mov_b32 v20, s27 :: v_dual_mov_b32 v21, s1811251; GFX12-NEXT:    v_dual_mov_b32 v22, s19 :: v_dual_mov_b32 v23, s1011252; GFX12-NEXT:    v_mov_b32_e32 v24, s1111253; GFX12-NEXT:    s_clause 0x511254; GFX12-NEXT:    global_store_b128 v0, v[1:4], s[0:1] offset:8011255; GFX12-NEXT:    global_store_b128 v0, v[5:8], s[0:1] offset:6411256; GFX12-NEXT:    global_store_b128 v0, v[9:12], s[0:1] offset:4811257; GFX12-NEXT:    global_store_b128 v0, v[13:16], s[0:1] offset:3211258; GFX12-NEXT:    global_store_b128 v0, v[17:20], s[0:1] offset:1611259; GFX12-NEXT:    global_store_b128 v0, v[21:24], s[0:1]11260; GFX12-NEXT:    s_endpgm11261;11262; GFX1250-LABEL: constant_sextload_v64i1_to_v64i64:11263; GFX1250:       ; %bb.0:11264; GFX1250-NEXT:    s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 111265; GFX1250-NEXT:    s_load_b128 s[0:3], s[4:5], 0x2411266; GFX1250-NEXT:    s_wait_kmcnt 0x011267; GFX1250-NEXT:    s_load_b64 s[10:11], s[2:3], 0x011268; GFX1250-NEXT:    s_wait_kmcnt 0x011269; GFX1250-NEXT:    s_lshr_b32 s96, s11, 3011270; GFX1250-NEXT:    s_lshr_b32 s98, s11, 3111271; GFX1250-NEXT:    s_lshr_b32 s92, s11, 2811272; GFX1250-NEXT:    s_lshr_b32 s94, s11, 2911273; GFX1250-NEXT:    s_lshr_b32 s78, s11, 2611274; GFX1250-NEXT:    s_lshr_b32 s88, s11, 2711275; GFX1250-NEXT:    s_bfe_i64 s[96:97], s[96:97], 0x1000011276; GFX1250-NEXT:    s_bfe_i64 s[100:101], s[98:99], 0x1000011277; GFX1250-NEXT:    s_lshr_b32 s66, s11, 2411278; GFX1250-NEXT:    s_lshr_b32 s74, s11, 2511279; GFX1250-NEXT:    s_bfe_i64 s[92:93], s[92:93], 0x1000011280; GFX1250-NEXT:    s_bfe_i64 s[94:95], s[94:95], 0x1000011281; GFX1250-NEXT:    v_dual_mov_b32 v8, 0 :: v_dual_mov_b32 v0, s9611282; GFX1250-NEXT:    s_lshr_b32 s56, s11, 2211283; GFX1250-NEXT:    s_lshr_b32 s62, s11, 2311284; GFX1250-NEXT:    v_dual_mov_b32 v1, s97 :: v_dual_mov_b32 v2, s10011285; GFX1250-NEXT:    v_dual_mov_b32 v3, s101 :: v_dual_mov_b32 v4, s9211286; GFX1250-NEXT:    s_bfe_i64 s[78:79], s[78:79], 0x1000011287; GFX1250-NEXT:    s_bfe_i64 s[88:89], s[88:89], 0x1000011288; GFX1250-NEXT:    s_lshr_b32 s44, s11, 2011289; GFX1250-NEXT:    s_lshr_b32 s52, s11, 2111290; GFX1250-NEXT:    s_lshr_b32 s30, s11, 1811291; GFX1250-NEXT:    s_lshr_b32 s40, s11, 1911292; GFX1250-NEXT:    s_lshr_b32 s18, s11, 1611293; GFX1250-NEXT:    s_lshr_b32 s26, s11, 1711294; GFX1250-NEXT:    s_lshr_b32 s2, s11, 1411295; GFX1250-NEXT:    s_lshr_b32 s4, s11, 1511296; GFX1250-NEXT:    v_dual_mov_b32 v5, s93 :: v_dual_mov_b32 v6, s9411297; GFX1250-NEXT:    v_dual_mov_b32 v7, s95 :: v_dual_mov_b32 v10, s7811298; GFX1250-NEXT:    s_bfe_i64 s[66:67], s[66:67], 0x1000011299; GFX1250-NEXT:    s_bfe_i64 s[74:75], s[74:75], 0x1000011300; GFX1250-NEXT:    s_lshr_b32 s6, s11, 1211301; GFX1250-NEXT:    s_lshr_b32 s8, s11, 1311302; GFX1250-NEXT:    v_dual_mov_b32 v11, s79 :: v_dual_mov_b32 v12, s8811303; GFX1250-NEXT:    v_dual_mov_b32 v13, s89 :: v_dual_mov_b32 v14, s6611304; GFX1250-NEXT:    s_bfe_i64 s[56:57], s[56:57], 0x1000011305; GFX1250-NEXT:    s_bfe_i64 s[62:63], s[62:63], 0x1000011306; GFX1250-NEXT:    s_lshr_b32 s12, s11, 1011307; GFX1250-NEXT:    s_lshr_b32 s14, s11, 1111308; GFX1250-NEXT:    v_dual_mov_b32 v15, s67 :: v_dual_mov_b32 v16, s7411309; GFX1250-NEXT:    v_dual_mov_b32 v17, s75 :: v_dual_mov_b32 v18, s5611310; GFX1250-NEXT:    s_bfe_i64 s[44:45], s[44:45], 0x1000011311; GFX1250-NEXT:    s_bfe_i64 s[52:53], s[52:53], 0x1000011312; GFX1250-NEXT:    s_bfe_i64 s[30:31], s[30:31], 0x1000011313; GFX1250-NEXT:    s_bfe_i64 s[40:41], s[40:41], 0x1000011314; GFX1250-NEXT:    s_bfe_i64 s[18:19], s[18:19], 0x1000011315; GFX1250-NEXT:    s_bfe_i64 s[26:27], s[26:27], 0x1000011316; GFX1250-NEXT:    s_bfe_i64 s[4:5], s[4:5], 0x1000011317; GFX1250-NEXT:    s_bfe_i64 s[2:3], s[2:3], 0x1000011318; GFX1250-NEXT:    s_lshr_b32 s16, s11, 811319; GFX1250-NEXT:    s_lshr_b32 s20, s11, 911320; GFX1250-NEXT:    v_dual_mov_b32 v19, s57 :: v_dual_mov_b32 v20, s6211321; GFX1250-NEXT:    v_dual_mov_b32 v21, s63 :: v_dual_mov_b32 v22, s4411322; GFX1250-NEXT:    s_bfe_i64 s[8:9], s[8:9], 0x1000011323; GFX1250-NEXT:    s_bfe_i64 s[6:7], s[6:7], 0x1000011324; GFX1250-NEXT:    s_lshr_b32 s22, s11, 611325; GFX1250-NEXT:    s_lshr_b32 s24, s11, 711326; GFX1250-NEXT:    v_dual_mov_b32 v23, s45 :: v_dual_mov_b32 v24, s5211327; GFX1250-NEXT:    v_dual_mov_b32 v25, s53 :: v_dual_mov_b32 v26, s3011328; GFX1250-NEXT:    v_dual_mov_b32 v27, s31 :: v_dual_mov_b32 v28, s4011329; GFX1250-NEXT:    v_dual_mov_b32 v29, s41 :: v_dual_mov_b32 v30, s1811330; GFX1250-NEXT:    v_dual_mov_b32 v31, s19 :: v_dual_mov_b32 v32, s2611331; GFX1250-NEXT:    v_mov_b32_e32 v33, s2711332; GFX1250-NEXT:    s_bfe_i64 s[14:15], s[14:15], 0x1000011333; GFX1250-NEXT:    s_bfe_i64 s[12:13], s[12:13], 0x1000011334; GFX1250-NEXT:    s_clause 0x711335; GFX1250-NEXT:    global_store_b128 v8, v[0:3], s[0:1] offset:49611336; GFX1250-NEXT:    global_store_b128 v8, v[4:7], s[0:1] offset:48011337; GFX1250-NEXT:    global_store_b128 v8, v[10:13], s[0:1] offset:46411338; GFX1250-NEXT:    global_store_b128 v8, v[14:17], s[0:1] offset:44811339; GFX1250-NEXT:    global_store_b128 v8, v[18:21], s[0:1] offset:43211340; GFX1250-NEXT:    global_store_b128 v8, v[22:25], s[0:1] offset:41611341; GFX1250-NEXT:    global_store_b128 v8, v[26:29], s[0:1] offset:40011342; GFX1250-NEXT:    global_store_b128 v8, v[30:33], s[0:1] offset:38411343; GFX1250-NEXT:    s_wait_xcnt 0x711344; GFX1250-NEXT:    v_dual_mov_b32 v0, s2 :: v_dual_mov_b32 v1, s311345; GFX1250-NEXT:    v_dual_mov_b32 v2, s4 :: v_dual_mov_b32 v3, s511346; GFX1250-NEXT:    s_wait_xcnt 0x611347; GFX1250-NEXT:    v_mov_b32_e32 v4, s611348; GFX1250-NEXT:    s_lshr_b32 s28, s11, 411349; GFX1250-NEXT:    s_lshr_b32 s34, s11, 511350; GFX1250-NEXT:    s_lshr_b32 s36, s11, 211351; GFX1250-NEXT:    s_lshr_b32 s38, s11, 311352; GFX1250-NEXT:    s_bfe_i64 s[20:21], s[20:21], 0x1000011353; GFX1250-NEXT:    s_bfe_i64 s[16:17], s[16:17], 0x1000011354; GFX1250-NEXT:    v_dual_mov_b32 v5, s7 :: v_dual_mov_b32 v6, s811355; GFX1250-NEXT:    s_wait_xcnt 0x511356; GFX1250-NEXT:    v_dual_mov_b32 v7, s9 :: v_dual_mov_b32 v10, s1211357; GFX1250-NEXT:    s_lshr_b32 s42, s11, 111358; GFX1250-NEXT:    s_mov_b32 s46, s1111359; GFX1250-NEXT:    s_bfe_i64 s[24:25], s[24:25], 0x1000011360; GFX1250-NEXT:    s_bfe_i64 s[22:23], s[22:23], 0x1000011361; GFX1250-NEXT:    v_dual_mov_b32 v11, s13 :: v_dual_mov_b32 v12, s1411362; GFX1250-NEXT:    s_wait_xcnt 0x411363; GFX1250-NEXT:    v_dual_mov_b32 v13, s15 :: v_dual_mov_b32 v14, s1611364; GFX1250-NEXT:    s_lshr_b32 s48, s10, 3011365; GFX1250-NEXT:    s_lshr_b32 s50, s10, 3111366; GFX1250-NEXT:    s_bfe_i64 s[38:39], s[38:39], 0x1000011367; GFX1250-NEXT:    s_bfe_i64 s[36:37], s[36:37], 0x1000011368; GFX1250-NEXT:    s_bfe_i64 s[34:35], s[34:35], 0x1000011369; GFX1250-NEXT:    s_bfe_i64 s[28:29], s[28:29], 0x1000011370; GFX1250-NEXT:    v_dual_mov_b32 v15, s17 :: v_dual_mov_b32 v16, s2011371; GFX1250-NEXT:    s_wait_xcnt 0x311372; GFX1250-NEXT:    v_dual_mov_b32 v17, s21 :: v_dual_mov_b32 v18, s2211373; GFX1250-NEXT:    s_lshr_b32 s54, s10, 2811374; GFX1250-NEXT:    s_lshr_b32 s58, s10, 2911375; GFX1250-NEXT:    s_bfe_i64 s[46:47], s[46:47], 0x1000011376; GFX1250-NEXT:    s_bfe_i64 s[42:43], s[42:43], 0x1000011377; GFX1250-NEXT:    v_dual_mov_b32 v19, s23 :: v_dual_mov_b32 v20, s2411378; GFX1250-NEXT:    s_wait_xcnt 0x211379; GFX1250-NEXT:    v_dual_mov_b32 v21, s25 :: v_dual_mov_b32 v22, s2811380; GFX1250-NEXT:    s_lshr_b32 s60, s10, 2611381; GFX1250-NEXT:    s_lshr_b32 s64, s10, 2711382; GFX1250-NEXT:    s_bfe_i64 s[50:51], s[50:51], 0x1000011383; GFX1250-NEXT:    s_bfe_i64 s[48:49], s[48:49], 0x1000011384; GFX1250-NEXT:    v_dual_mov_b32 v23, s29 :: v_dual_mov_b32 v24, s3411385; GFX1250-NEXT:    v_mov_b32_e32 v25, s3511386; GFX1250-NEXT:    s_clause 0x511387; GFX1250-NEXT:    global_store_b128 v8, v[0:3], s[0:1] offset:36811388; GFX1250-NEXT:    global_store_b128 v8, v[4:7], s[0:1] offset:35211389; GFX1250-NEXT:    global_store_b128 v8, v[10:13], s[0:1] offset:33611390; GFX1250-NEXT:    global_store_b128 v8, v[14:17], s[0:1] offset:32011391; GFX1250-NEXT:    global_store_b128 v8, v[18:21], s[0:1] offset:30411392; GFX1250-NEXT:    global_store_b128 v8, v[22:25], s[0:1] offset:28811393; GFX1250-NEXT:    s_wait_xcnt 0x511394; GFX1250-NEXT:    v_dual_mov_b32 v0, s36 :: v_dual_mov_b32 v1, s3711395; GFX1250-NEXT:    v_dual_mov_b32 v2, s38 :: v_dual_mov_b32 v3, s3911396; GFX1250-NEXT:    s_wait_xcnt 0x411397; GFX1250-NEXT:    v_mov_b32_e32 v4, s4611398; GFX1250-NEXT:    s_lshr_b32 s68, s10, 2411399; GFX1250-NEXT:    s_lshr_b32 s70, s10, 2511400; GFX1250-NEXT:    s_lshr_b32 s72, s10, 2211401; GFX1250-NEXT:    s_lshr_b32 s76, s10, 2311402; GFX1250-NEXT:    s_bfe_i64 s[58:59], s[58:59], 0x1000011403; GFX1250-NEXT:    s_bfe_i64 s[54:55], s[54:55], 0x1000011404; GFX1250-NEXT:    v_dual_mov_b32 v5, s47 :: v_dual_mov_b32 v6, s4211405; GFX1250-NEXT:    s_wait_xcnt 0x311406; GFX1250-NEXT:    v_dual_mov_b32 v7, s43 :: v_dual_mov_b32 v10, s4811407; GFX1250-NEXT:    s_lshr_b32 s80, s10, 2011408; GFX1250-NEXT:    s_lshr_b32 s82, s10, 2111409; GFX1250-NEXT:    s_bfe_i64 s[64:65], s[64:65], 0x1000011410; GFX1250-NEXT:    s_bfe_i64 s[60:61], s[60:61], 0x1000011411; GFX1250-NEXT:    v_dual_mov_b32 v11, s49 :: v_dual_mov_b32 v12, s5011412; GFX1250-NEXT:    s_wait_xcnt 0x211413; GFX1250-NEXT:    v_dual_mov_b32 v13, s51 :: v_dual_mov_b32 v14, s5411414; GFX1250-NEXT:    s_lshr_b32 s84, s10, 1811415; GFX1250-NEXT:    s_lshr_b32 s86, s10, 1911416; GFX1250-NEXT:    s_bfe_i64 s[76:77], s[76:77], 0x1000011417; GFX1250-NEXT:    s_bfe_i64 s[72:73], s[72:73], 0x1000011418; GFX1250-NEXT:    s_bfe_i64 s[70:71], s[70:71], 0x1000011419; GFX1250-NEXT:    s_bfe_i64 s[68:69], s[68:69], 0x1000011420; GFX1250-NEXT:    v_dual_mov_b32 v15, s55 :: v_dual_mov_b32 v16, s5811421; GFX1250-NEXT:    s_wait_xcnt 0x111422; GFX1250-NEXT:    v_dual_mov_b32 v17, s59 :: v_dual_mov_b32 v18, s6011423; GFX1250-NEXT:    s_lshr_b32 s90, s10, 1611424; GFX1250-NEXT:    s_lshr_b32 s98, s10, 1711425; GFX1250-NEXT:    s_bfe_i64 s[82:83], s[82:83], 0x1000011426; GFX1250-NEXT:    s_bfe_i64 s[80:81], s[80:81], 0x1000011427; GFX1250-NEXT:    v_dual_mov_b32 v19, s61 :: v_dual_mov_b32 v20, s6411428; GFX1250-NEXT:    s_wait_xcnt 0x011429; GFX1250-NEXT:    v_dual_mov_b32 v21, s65 :: v_dual_mov_b32 v22, s6811430; GFX1250-NEXT:    s_lshr_b32 s96, s10, 1411431; GFX1250-NEXT:    s_lshr_b32 s100, s10, 1511432; GFX1250-NEXT:    s_lshr_b32 s94, s10, 1311433; GFX1250-NEXT:    s_lshr_b32 s88, s10, 1111434; GFX1250-NEXT:    s_lshr_b32 s74, s10, 911435; GFX1250-NEXT:    s_lshr_b32 s62, s10, 711436; GFX1250-NEXT:    s_lshr_b32 s52, s10, 511437; GFX1250-NEXT:    s_lshr_b32 s40, s10, 311438; GFX1250-NEXT:    s_lshr_b32 s26, s10, 111439; GFX1250-NEXT:    s_bfe_i64 s[86:87], s[86:87], 0x1000011440; GFX1250-NEXT:    s_bfe_i64 s[84:85], s[84:85], 0x1000011441; GFX1250-NEXT:    v_dual_mov_b32 v23, s69 :: v_dual_mov_b32 v24, s7011442; GFX1250-NEXT:    v_mov_b32_e32 v25, s7111443; GFX1250-NEXT:    s_clause 0x511444; GFX1250-NEXT:    global_store_b128 v8, v[0:3], s[0:1] offset:27211445; GFX1250-NEXT:    global_store_b128 v8, v[4:7], s[0:1] offset:25611446; GFX1250-NEXT:    global_store_b128 v8, v[10:13], s[0:1] offset:24011447; GFX1250-NEXT:    global_store_b128 v8, v[14:17], s[0:1] offset:22411448; GFX1250-NEXT:    global_store_b128 v8, v[18:21], s[0:1] offset:20811449; GFX1250-NEXT:    global_store_b128 v8, v[22:25], s[0:1] offset:19211450; GFX1250-NEXT:    s_wait_xcnt 0x511451; GFX1250-NEXT:    v_dual_mov_b32 v0, s72 :: v_dual_mov_b32 v1, s7311452; GFX1250-NEXT:    v_dual_mov_b32 v2, s76 :: v_dual_mov_b32 v3, s7711453; GFX1250-NEXT:    s_wait_xcnt 0x411454; GFX1250-NEXT:    v_mov_b32_e32 v4, s8011455; GFX1250-NEXT:    s_lshr_b32 s92, s10, 1211456; GFX1250-NEXT:    s_lshr_b32 s78, s10, 1011457; GFX1250-NEXT:    s_bfe_i64 s[98:99], s[98:99], 0x1000011458; GFX1250-NEXT:    s_bfe_i64 s[90:91], s[90:91], 0x1000011459; GFX1250-NEXT:    v_dual_mov_b32 v5, s81 :: v_dual_mov_b32 v6, s8211460; GFX1250-NEXT:    s_wait_xcnt 0x311461; GFX1250-NEXT:    v_dual_mov_b32 v7, s83 :: v_dual_mov_b32 v10, s8411462; GFX1250-NEXT:    s_lshr_b32 s66, s10, 811463; GFX1250-NEXT:    s_lshr_b32 s56, s10, 611464; GFX1250-NEXT:    s_lshr_b32 s44, s10, 411465; GFX1250-NEXT:    s_lshr_b32 s30, s10, 211466; GFX1250-NEXT:    s_bfe_i64 s[18:19], s[10:11], 0x1000011467; GFX1250-NEXT:    s_bfe_i64 s[10:11], s[26:27], 0x1000011468; GFX1250-NEXT:    s_bfe_i64 s[26:27], s[40:41], 0x1000011469; GFX1250-NEXT:    s_bfe_i64 s[40:41], s[52:53], 0x1000011470; GFX1250-NEXT:    s_bfe_i64 s[52:53], s[62:63], 0x1000011471; GFX1250-NEXT:    s_bfe_i64 s[62:63], s[74:75], 0x1000011472; GFX1250-NEXT:    s_bfe_i64 s[74:75], s[88:89], 0x1000011473; GFX1250-NEXT:    s_bfe_i64 s[88:89], s[94:95], 0x1000011474; GFX1250-NEXT:    s_bfe_i64 s[94:95], s[100:101], 0x1000011475; GFX1250-NEXT:    s_bfe_i64 s[96:97], s[96:97], 0x1000011476; GFX1250-NEXT:    v_dual_mov_b32 v11, s85 :: v_dual_mov_b32 v12, s8611477; GFX1250-NEXT:    s_wait_xcnt 0x211478; GFX1250-NEXT:    v_dual_mov_b32 v13, s87 :: v_dual_mov_b32 v14, s9011479; GFX1250-NEXT:    s_bfe_i64 s[78:79], s[78:79], 0x1000011480; GFX1250-NEXT:    s_bfe_i64 s[92:93], s[92:93], 0x1000011481; GFX1250-NEXT:    v_dual_mov_b32 v15, s91 :: v_dual_mov_b32 v16, s9811482; GFX1250-NEXT:    s_wait_xcnt 0x111483; GFX1250-NEXT:    v_dual_mov_b32 v17, s99 :: v_dual_mov_b32 v18, s9611484; GFX1250-NEXT:    s_bfe_i64 s[66:67], s[66:67], 0x1000011485; GFX1250-NEXT:    v_dual_mov_b32 v19, s97 :: v_dual_mov_b32 v20, s9411486; GFX1250-NEXT:    s_wait_xcnt 0x011487; GFX1250-NEXT:    v_dual_mov_b32 v21, s95 :: v_dual_mov_b32 v22, s9211488; GFX1250-NEXT:    s_bfe_i64 s[56:57], s[56:57], 0x1000011489; GFX1250-NEXT:    v_dual_mov_b32 v23, s93 :: v_dual_mov_b32 v24, s8811490; GFX1250-NEXT:    v_mov_b32_e32 v25, s8911491; GFX1250-NEXT:    s_clause 0x511492; GFX1250-NEXT:    global_store_b128 v8, v[0:3], s[0:1] offset:17611493; GFX1250-NEXT:    global_store_b128 v8, v[4:7], s[0:1] offset:16011494; GFX1250-NEXT:    global_store_b128 v8, v[10:13], s[0:1] offset:14411495; GFX1250-NEXT:    global_store_b128 v8, v[14:17], s[0:1] offset:12811496; GFX1250-NEXT:    global_store_b128 v8, v[18:21], s[0:1] offset:11211497; GFX1250-NEXT:    global_store_b128 v8, v[22:25], s[0:1] offset:9611498; GFX1250-NEXT:    s_wait_xcnt 0x511499; GFX1250-NEXT:    v_dual_mov_b32 v0, s78 :: v_dual_mov_b32 v1, s7911500; GFX1250-NEXT:    v_dual_mov_b32 v2, s74 :: v_dual_mov_b32 v3, s7511501; GFX1250-NEXT:    s_wait_xcnt 0x411502; GFX1250-NEXT:    v_mov_b32_e32 v4, s6611503; GFX1250-NEXT:    s_bfe_i64 s[44:45], s[44:45], 0x1000011504; GFX1250-NEXT:    v_dual_mov_b32 v5, s67 :: v_dual_mov_b32 v6, s6211505; GFX1250-NEXT:    s_wait_xcnt 0x311506; GFX1250-NEXT:    v_dual_mov_b32 v7, s63 :: v_dual_mov_b32 v10, s5611507; GFX1250-NEXT:    s_bfe_i64 s[30:31], s[30:31], 0x1000011508; GFX1250-NEXT:    v_dual_mov_b32 v11, s57 :: v_dual_mov_b32 v12, s5211509; GFX1250-NEXT:    s_wait_xcnt 0x211510; GFX1250-NEXT:    v_dual_mov_b32 v13, s53 :: v_dual_mov_b32 v14, s4411511; GFX1250-NEXT:    v_dual_mov_b32 v15, s45 :: v_dual_mov_b32 v16, s4011512; GFX1250-NEXT:    s_wait_xcnt 0x111513; GFX1250-NEXT:    v_dual_mov_b32 v17, s41 :: v_dual_mov_b32 v18, s3011514; GFX1250-NEXT:    v_dual_mov_b32 v19, s31 :: v_dual_mov_b32 v20, s2611515; GFX1250-NEXT:    s_wait_xcnt 0x011516; GFX1250-NEXT:    v_dual_mov_b32 v21, s27 :: v_dual_mov_b32 v22, s1811517; GFX1250-NEXT:    v_dual_mov_b32 v23, s19 :: v_dual_mov_b32 v24, s1011518; GFX1250-NEXT:    v_mov_b32_e32 v25, s1111519; GFX1250-NEXT:    s_clause 0x511520; GFX1250-NEXT:    global_store_b128 v8, v[0:3], s[0:1] offset:8011521; GFX1250-NEXT:    global_store_b128 v8, v[4:7], s[0:1] offset:6411522; GFX1250-NEXT:    global_store_b128 v8, v[10:13], s[0:1] offset:4811523; GFX1250-NEXT:    global_store_b128 v8, v[14:17], s[0:1] offset:3211524; GFX1250-NEXT:    global_store_b128 v8, v[18:21], s[0:1] offset:1611525; GFX1250-NEXT:    global_store_b128 v8, v[22:25], s[0:1]11526; GFX1250-NEXT:    s_endpgm11527  %load = load <64 x i1>, ptr addrspace(4) %in11528  %ext = sext <64 x i1> %load to <64 x i64>11529  store <64 x i64> %ext, ptr addrspace(1) %out11530  ret void11531}11532 11533attributes #0 = { nounwind }11534