brintos

brintos / llvm-project-archived public Read only

0
0
Text · 76.5 KiB · 931a622 Raw
1252 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 52; RUN: llc -mtriple=amdgcn -mcpu=gfx942 < %s | FileCheck -check-prefix=SDAG-GFX942 %s3; RUN: llc -mtriple=amdgcn -mcpu=gfx1100 < %s | FileCheck -check-prefix=SDAG-GFX1100 %s4; RUN: llc -mtriple=amdgcn -mcpu=gfx942 -global-isel=1 -global-isel-abort=2 < %s | FileCheck -check-prefix=GISEL-GFX942 %s5; RUN: llc -mtriple=amdgcn -mcpu=gfx1100 -global-isel=1 -global-isel-abort=2 < %s | FileCheck -check-prefix=GISEL-GFX1100 %s6 7; Note: if you're adding tests here, also add them to8; lower-buffer-fat-pointers-mem-transfer.ll to verify the IR produced by9; the lowering.10;11; This file is a sanity check to make sure that the code generated12; for buffer-related memcpy() calls turns into something reasonable in13; the backend, despite the wide intermediate vectors14 15target triple = "amdgcn--"16 17;; memcpy18 19declare void @llvm.memcpy.p7.p7.i32(ptr addrspace(7), ptr addrspace(7), i32, i1)20 21define amdgpu_kernel void @memcpy_known(ptr addrspace(7) %src, ptr addrspace(7) %dst) {22; SDAG-LABEL: memcpy_known:23; SDAG:       ; %bb.0:24; SDAG-NEXT:    s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)25; SDAG-NEXT:    s_mov_b32 s7, s2426; SDAG-NEXT:    s_mov_b32 s6, s2327; SDAG-NEXT:    s_mov_b32 s5, s2228; SDAG-NEXT:    s_mov_b32 s4, s2129; SDAG-NEXT:    s_mov_b32 s8, 030; SDAG-NEXT:    buffer_store_dword v40, off, s[0:3], s32 offset:60 ; 4-byte Folded Spill31; SDAG-NEXT:    buffer_store_dword v41, off, s[0:3], s32 offset:56 ; 4-byte Folded Spill32; SDAG-NEXT:    buffer_store_dword v42, off, s[0:3], s32 offset:52 ; 4-byte Folded Spill33; SDAG-NEXT:    buffer_store_dword v43, off, s[0:3], s32 offset:48 ; 4-byte Folded Spill34; SDAG-NEXT:    buffer_store_dword v44, off, s[0:3], s32 offset:44 ; 4-byte Folded Spill35; SDAG-NEXT:    buffer_store_dword v45, off, s[0:3], s32 offset:40 ; 4-byte Folded Spill36; SDAG-NEXT:    buffer_store_dword v46, off, s[0:3], s32 offset:36 ; 4-byte Folded Spill37; SDAG-NEXT:    buffer_store_dword v47, off, s[0:3], s32 offset:32 ; 4-byte Folded Spill38; SDAG-NEXT:    buffer_store_dword v56, off, s[0:3], s32 offset:28 ; 4-byte Folded Spill39; SDAG-NEXT:    buffer_store_dword v57, off, s[0:3], s32 offset:24 ; 4-byte Folded Spill40; SDAG-NEXT:    buffer_store_dword v58, off, s[0:3], s32 offset:20 ; 4-byte Folded Spill41; SDAG-NEXT:    buffer_store_dword v59, off, s[0:3], s32 offset:16 ; 4-byte Folded Spill42; SDAG-NEXT:    buffer_store_dword v60, off, s[0:3], s32 offset:12 ; 4-byte Folded Spill43; SDAG-NEXT:    buffer_store_dword v61, off, s[0:3], s32 offset:8 ; 4-byte Folded Spill44; SDAG-NEXT:    buffer_store_dword v62, off, s[0:3], s32 offset:4 ; 4-byte Folded Spill45; SDAG-NEXT:    buffer_store_dword v63, off, s[0:3], s32 ; 4-byte Folded Spill46; SDAG-NEXT:  .LBB0_1: ; %load-store-loop47; SDAG-NEXT:    ; =>This Inner Loop Header: Depth=148; SDAG-NEXT:    s_add_i32 s9, s20, s849; SDAG-NEXT:    v_mov_b32_e32 v60, s950; SDAG-NEXT:    buffer_load_dwordx4 v[0:3], v60, s[16:19], 0 offen51; SDAG-NEXT:    s_add_i32 s9, s25, s852; SDAG-NEXT:    s_addk_i32 s8, 0x10053; SDAG-NEXT:    s_cmpk_lt_u32 s8, 0x200054; SDAG-NEXT:    s_waitcnt vmcnt(0)55; SDAG-NEXT:    buffer_store_dword v0, off, s[0:3], s32 offset:64 ; 4-byte Folded Spill56; SDAG-NEXT:    s_nop 057; SDAG-NEXT:    buffer_store_dword v1, off, s[0:3], s32 offset:68 ; 4-byte Folded Spill58; SDAG-NEXT:    buffer_store_dword v2, off, s[0:3], s32 offset:72 ; 4-byte Folded Spill59; SDAG-NEXT:    buffer_store_dword v3, off, s[0:3], s32 offset:76 ; 4-byte Folded Spill60; SDAG-NEXT:    buffer_load_dwordx4 v[0:3], v60, s[16:19], 0 offen offset:1661; SDAG-NEXT:    s_waitcnt vmcnt(0)62; SDAG-NEXT:    buffer_store_dword v0, off, s[0:3], s32 offset:80 ; 4-byte Folded Spill63; SDAG-NEXT:    s_nop 064; SDAG-NEXT:    buffer_store_dword v1, off, s[0:3], s32 offset:84 ; 4-byte Folded Spill65; SDAG-NEXT:    buffer_store_dword v2, off, s[0:3], s32 offset:88 ; 4-byte Folded Spill66; SDAG-NEXT:    buffer_store_dword v3, off, s[0:3], s32 offset:92 ; 4-byte Folded Spill67; SDAG-NEXT:    buffer_load_dwordx4 v[8:11], v60, s[16:19], 0 offen offset:3268; SDAG-NEXT:    buffer_load_dwordx4 v[12:15], v60, s[16:19], 0 offen offset:4869; SDAG-NEXT:    buffer_load_dwordx4 v[16:19], v60, s[16:19], 0 offen offset:6470; SDAG-NEXT:    buffer_load_dwordx4 v[20:23], v60, s[16:19], 0 offen offset:8071; SDAG-NEXT:    buffer_load_dwordx4 v[24:27], v60, s[16:19], 0 offen offset:9672; SDAG-NEXT:    buffer_load_dwordx4 v[28:31], v60, s[16:19], 0 offen offset:11273; SDAG-NEXT:    buffer_load_dwordx4 v[32:35], v60, s[16:19], 0 offen offset:12874; SDAG-NEXT:    buffer_load_dwordx4 v[36:39], v60, s[16:19], 0 offen offset:14475; SDAG-NEXT:    buffer_load_dwordx4 v[48:51], v60, s[16:19], 0 offen offset:16076; SDAG-NEXT:    buffer_load_dwordx4 v[52:55], v60, s[16:19], 0 offen offset:17677; SDAG-NEXT:    buffer_load_dwordx4 v[40:43], v60, s[16:19], 0 offen offset:19278; SDAG-NEXT:    buffer_load_dwordx4 v[44:47], v60, s[16:19], 0 offen offset:20879; SDAG-NEXT:    buffer_load_dwordx4 v[56:59], v60, s[16:19], 0 offen offset:22480; SDAG-NEXT:    s_nop 081; SDAG-NEXT:    buffer_load_dwordx4 v[60:63], v60, s[16:19], 0 offen offset:24082; SDAG-NEXT:    s_nop 083; SDAG-NEXT:    buffer_load_dword v1, off, s[0:3], s32 offset:64 ; 4-byte Folded Reload84; SDAG-NEXT:    buffer_load_dword v2, off, s[0:3], s32 offset:68 ; 4-byte Folded Reload85; SDAG-NEXT:    buffer_load_dword v3, off, s[0:3], s32 offset:72 ; 4-byte Folded Reload86; SDAG-NEXT:    buffer_load_dword v4, off, s[0:3], s32 offset:76 ; 4-byte Folded Reload87; SDAG-NEXT:    v_mov_b32_e32 v0, s988; SDAG-NEXT:    s_waitcnt vmcnt(0)89; SDAG-NEXT:    buffer_store_dwordx4 v[1:4], v0, s[4:7], 0 offen90; SDAG-NEXT:    buffer_load_dword v1, off, s[0:3], s32 offset:80 ; 4-byte Folded Reload91; SDAG-NEXT:    s_nop 092; SDAG-NEXT:    buffer_load_dword v2, off, s[0:3], s32 offset:84 ; 4-byte Folded Reload93; SDAG-NEXT:    buffer_load_dword v3, off, s[0:3], s32 offset:88 ; 4-byte Folded Reload94; SDAG-NEXT:    buffer_load_dword v4, off, s[0:3], s32 offset:92 ; 4-byte Folded Reload95; SDAG-NEXT:    s_waitcnt vmcnt(0)96; SDAG-NEXT:    buffer_store_dwordx4 v[1:4], v0, s[4:7], 0 offen offset:1697; SDAG-NEXT:    buffer_store_dwordx4 v[8:11], v0, s[4:7], 0 offen offset:3298; SDAG-NEXT:    buffer_store_dwordx4 v[12:15], v0, s[4:7], 0 offen offset:4899; SDAG-NEXT:    buffer_store_dwordx4 v[16:19], v0, s[4:7], 0 offen offset:64100; SDAG-NEXT:    buffer_store_dwordx4 v[20:23], v0, s[4:7], 0 offen offset:80101; SDAG-NEXT:    buffer_store_dwordx4 v[24:27], v0, s[4:7], 0 offen offset:96102; SDAG-NEXT:    buffer_store_dwordx4 v[28:31], v0, s[4:7], 0 offen offset:112103; SDAG-NEXT:    buffer_store_dwordx4 v[32:35], v0, s[4:7], 0 offen offset:128104; SDAG-NEXT:    buffer_store_dwordx4 v[36:39], v0, s[4:7], 0 offen offset:144105; SDAG-NEXT:    buffer_store_dwordx4 v[48:51], v0, s[4:7], 0 offen offset:160106; SDAG-NEXT:    buffer_store_dwordx4 v[52:55], v0, s[4:7], 0 offen offset:176107; SDAG-NEXT:    buffer_store_dwordx4 v[40:43], v0, s[4:7], 0 offen offset:192108; SDAG-NEXT:    buffer_store_dwordx4 v[44:47], v0, s[4:7], 0 offen offset:208109; SDAG-NEXT:    buffer_store_dwordx4 v[56:59], v0, s[4:7], 0 offen offset:224110; SDAG-NEXT:    buffer_store_dwordx4 v[60:63], v0, s[4:7], 0 offen offset:240111; SDAG-NEXT:    s_cbranch_scc1 .LBB0_1112; SDAG-NEXT:  ; %bb.2: ; %memcpy-split113; SDAG-NEXT:    buffer_load_dword v63, off, s[0:3], s32 ; 4-byte Folded Reload114; SDAG-NEXT:    buffer_load_dword v62, off, s[0:3], s32 offset:4 ; 4-byte Folded Reload115; SDAG-NEXT:    buffer_load_dword v61, off, s[0:3], s32 offset:8 ; 4-byte Folded Reload116; SDAG-NEXT:    buffer_load_dword v60, off, s[0:3], s32 offset:12 ; 4-byte Folded Reload117; SDAG-NEXT:    buffer_load_dword v59, off, s[0:3], s32 offset:16 ; 4-byte Folded Reload118; SDAG-NEXT:    buffer_load_dword v58, off, s[0:3], s32 offset:20 ; 4-byte Folded Reload119; SDAG-NEXT:    buffer_load_dword v57, off, s[0:3], s32 offset:24 ; 4-byte Folded Reload120; SDAG-NEXT:    buffer_load_dword v56, off, s[0:3], s32 offset:28 ; 4-byte Folded Reload121; SDAG-NEXT:    buffer_load_dword v47, off, s[0:3], s32 offset:32 ; 4-byte Folded Reload122; SDAG-NEXT:    buffer_load_dword v46, off, s[0:3], s32 offset:36 ; 4-byte Folded Reload123; SDAG-NEXT:    buffer_load_dword v45, off, s[0:3], s32 offset:40 ; 4-byte Folded Reload124; SDAG-NEXT:    buffer_load_dword v44, off, s[0:3], s32 offset:44 ; 4-byte Folded Reload125; SDAG-NEXT:    buffer_load_dword v43, off, s[0:3], s32 offset:48 ; 4-byte Folded Reload126; SDAG-NEXT:    buffer_load_dword v42, off, s[0:3], s32 offset:52 ; 4-byte Folded Reload127; SDAG-NEXT:    buffer_load_dword v41, off, s[0:3], s32 offset:56 ; 4-byte Folded Reload128; SDAG-NEXT:    buffer_load_dword v40, off, s[0:3], s32 offset:60 ; 4-byte Folded Reload129; SDAG-NEXT:    s_waitcnt vmcnt(0)130; SDAG-NEXT:    s_setpc_b64 s[30:31]131;132; GISEL-LABEL: memcpy_known:133; GISEL:       ; %bb.0:134; GISEL-NEXT:    s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)135; GISEL-NEXT:    s_mov_b32 s8, 0136; GISEL-NEXT:    s_mov_b32 s4, s21137; GISEL-NEXT:    s_mov_b32 s5, s22138; GISEL-NEXT:    s_mov_b32 s6, s23139; GISEL-NEXT:    s_mov_b32 s7, s24140; GISEL-NEXT:    v_mov_b32_e32 v0, 0x2000141; GISEL-NEXT:    v_mov_b32_e32 v1, s8142; GISEL-NEXT:    buffer_store_dword v40, off, s[0:3], s32 offset:56 ; 4-byte Folded Spill143; GISEL-NEXT:    buffer_store_dword v41, off, s[0:3], s32 offset:52 ; 4-byte Folded Spill144; GISEL-NEXT:    buffer_store_dword v42, off, s[0:3], s32 offset:48 ; 4-byte Folded Spill145; GISEL-NEXT:    buffer_store_dword v43, off, s[0:3], s32 offset:44 ; 4-byte Folded Spill146; GISEL-NEXT:    buffer_store_dword v44, off, s[0:3], s32 offset:40 ; 4-byte Folded Spill147; GISEL-NEXT:    buffer_store_dword v45, off, s[0:3], s32 offset:36 ; 4-byte Folded Spill148; GISEL-NEXT:    buffer_store_dword v46, off, s[0:3], s32 offset:32 ; 4-byte Folded Spill149; GISEL-NEXT:    buffer_store_dword v56, off, s[0:3], s32 offset:28 ; 4-byte Folded Spill150; GISEL-NEXT:    buffer_store_dword v57, off, s[0:3], s32 offset:24 ; 4-byte Folded Spill151; GISEL-NEXT:    buffer_store_dword v58, off, s[0:3], s32 offset:20 ; 4-byte Folded Spill152; GISEL-NEXT:    buffer_store_dword v59, off, s[0:3], s32 offset:16 ; 4-byte Folded Spill153; GISEL-NEXT:    buffer_store_dword v60, off, s[0:3], s32 offset:12 ; 4-byte Folded Spill154; GISEL-NEXT:    buffer_store_dword v61, off, s[0:3], s32 offset:8 ; 4-byte Folded Spill155; GISEL-NEXT:    buffer_store_dword v62, off, s[0:3], s32 offset:4 ; 4-byte Folded Spill156; GISEL-NEXT:    buffer_store_dword v63, off, s[0:3], s32 ; 4-byte Folded Spill157; GISEL-NEXT:  .LBB0_1: ; %load-store-loop158; GISEL-NEXT:    ; =>This Inner Loop Header: Depth=1159; GISEL-NEXT:    v_add_u32_e32 v46, s20, v1160; GISEL-NEXT:    buffer_load_dwordx4 v[2:5], v46, s[16:19], 0 offen161; GISEL-NEXT:    s_waitcnt vmcnt(0)162; GISEL-NEXT:    buffer_store_dword v2, off, s[0:3], s32 offset:76 ; 4-byte Folded Spill163; GISEL-NEXT:    s_nop 0164; GISEL-NEXT:    buffer_store_dword v3, off, s[0:3], s32 offset:80 ; 4-byte Folded Spill165; GISEL-NEXT:    buffer_store_dword v4, off, s[0:3], s32 offset:84 ; 4-byte Folded Spill166; GISEL-NEXT:    buffer_store_dword v5, off, s[0:3], s32 offset:88 ; 4-byte Folded Spill167; GISEL-NEXT:    buffer_load_dwordx4 v[6:9], v46, s[16:19], 0 offen offset:16168; GISEL-NEXT:    buffer_load_dwordx4 v[10:13], v46, s[16:19], 0 offen offset:32169; GISEL-NEXT:    buffer_load_dwordx4 v[14:17], v46, s[16:19], 0 offen offset:48170; GISEL-NEXT:    buffer_load_dwordx4 v[18:21], v46, s[16:19], 0 offen offset:64171; GISEL-NEXT:    buffer_load_dwordx4 v[22:25], v46, s[16:19], 0 offen offset:80172; GISEL-NEXT:    buffer_load_dwordx4 v[26:29], v46, s[16:19], 0 offen offset:96173; GISEL-NEXT:    buffer_load_dwordx4 v[30:33], v46, s[16:19], 0 offen offset:112174; GISEL-NEXT:    buffer_load_dwordx4 v[34:37], v46, s[16:19], 0 offen offset:128175; GISEL-NEXT:    buffer_load_dwordx4 v[48:51], v46, s[16:19], 0 offen offset:144176; GISEL-NEXT:    buffer_load_dwordx4 v[52:55], v46, s[16:19], 0 offen offset:160177; GISEL-NEXT:    buffer_load_dwordx4 v[38:41], v46, s[16:19], 0 offen offset:176178; GISEL-NEXT:    buffer_load_dwordx4 v[42:45], v46, s[16:19], 0 offen offset:192179; GISEL-NEXT:    buffer_load_dwordx4 v[56:59], v46, s[16:19], 0 offen offset:208180; GISEL-NEXT:    buffer_load_dwordx4 v[60:63], v46, s[16:19], 0 offen offset:224181; GISEL-NEXT:    buffer_load_dwordx4 v[2:5], v46, s[16:19], 0 offen offset:240182; GISEL-NEXT:    v_add_u32_e32 v46, s25, v1183; GISEL-NEXT:    v_add_u32_e32 v1, 0x100, v1184; GISEL-NEXT:    v_cmp_lt_u32_e32 vcc, v1, v0185; GISEL-NEXT:    s_waitcnt vmcnt(0)186; GISEL-NEXT:    buffer_store_dword v2, off, s[0:3], s32 offset:60 ; 4-byte Folded Spill187; GISEL-NEXT:    s_nop 0188; GISEL-NEXT:    buffer_store_dword v3, off, s[0:3], s32 offset:64 ; 4-byte Folded Spill189; GISEL-NEXT:    buffer_store_dword v4, off, s[0:3], s32 offset:68 ; 4-byte Folded Spill190; GISEL-NEXT:    buffer_store_dword v5, off, s[0:3], s32 offset:72 ; 4-byte Folded Spill191; GISEL-NEXT:    buffer_load_dword v2, off, s[0:3], s32 offset:76 ; 4-byte Folded Reload192; GISEL-NEXT:    s_nop 0193; GISEL-NEXT:    buffer_load_dword v3, off, s[0:3], s32 offset:80 ; 4-byte Folded Reload194; GISEL-NEXT:    buffer_load_dword v4, off, s[0:3], s32 offset:84 ; 4-byte Folded Reload195; GISEL-NEXT:    buffer_load_dword v5, off, s[0:3], s32 offset:88 ; 4-byte Folded Reload196; GISEL-NEXT:    s_waitcnt vmcnt(0)197; GISEL-NEXT:    buffer_store_dwordx4 v[2:5], v46, s[4:7], 0 offen198; GISEL-NEXT:    buffer_store_dwordx4 v[6:9], v46, s[4:7], 0 offen offset:16199; GISEL-NEXT:    buffer_store_dwordx4 v[10:13], v46, s[4:7], 0 offen offset:32200; GISEL-NEXT:    buffer_store_dwordx4 v[14:17], v46, s[4:7], 0 offen offset:48201; GISEL-NEXT:    buffer_store_dwordx4 v[18:21], v46, s[4:7], 0 offen offset:64202; GISEL-NEXT:    buffer_store_dwordx4 v[22:25], v46, s[4:7], 0 offen offset:80203; GISEL-NEXT:    buffer_store_dwordx4 v[26:29], v46, s[4:7], 0 offen offset:96204; GISEL-NEXT:    buffer_store_dwordx4 v[30:33], v46, s[4:7], 0 offen offset:112205; GISEL-NEXT:    buffer_store_dwordx4 v[34:37], v46, s[4:7], 0 offen offset:128206; GISEL-NEXT:    buffer_store_dwordx4 v[48:51], v46, s[4:7], 0 offen offset:144207; GISEL-NEXT:    buffer_store_dwordx4 v[52:55], v46, s[4:7], 0 offen offset:160208; GISEL-NEXT:    buffer_store_dwordx4 v[38:41], v46, s[4:7], 0 offen offset:176209; GISEL-NEXT:    buffer_store_dwordx4 v[42:45], v46, s[4:7], 0 offen offset:192210; GISEL-NEXT:    buffer_store_dwordx4 v[56:59], v46, s[4:7], 0 offen offset:208211; GISEL-NEXT:    buffer_store_dwordx4 v[60:63], v46, s[4:7], 0 offen offset:224212; GISEL-NEXT:    buffer_load_dword v2, off, s[0:3], s32 offset:60 ; 4-byte Folded Reload213; GISEL-NEXT:    buffer_load_dword v3, off, s[0:3], s32 offset:64 ; 4-byte Folded Reload214; GISEL-NEXT:    buffer_load_dword v4, off, s[0:3], s32 offset:68 ; 4-byte Folded Reload215; GISEL-NEXT:    buffer_load_dword v5, off, s[0:3], s32 offset:72 ; 4-byte Folded Reload216; GISEL-NEXT:    s_waitcnt vmcnt(0)217; GISEL-NEXT:    buffer_store_dwordx4 v[2:5], v46, s[4:7], 0 offen offset:240218; GISEL-NEXT:    s_cbranch_vccnz .LBB0_1219; GISEL-NEXT:  ; %bb.2: ; %memcpy-split220; GISEL-NEXT:    buffer_load_dword v63, off, s[0:3], s32 ; 4-byte Folded Reload221; GISEL-NEXT:    buffer_load_dword v62, off, s[0:3], s32 offset:4 ; 4-byte Folded Reload222; GISEL-NEXT:    buffer_load_dword v61, off, s[0:3], s32 offset:8 ; 4-byte Folded Reload223; GISEL-NEXT:    buffer_load_dword v60, off, s[0:3], s32 offset:12 ; 4-byte Folded Reload224; GISEL-NEXT:    buffer_load_dword v59, off, s[0:3], s32 offset:16 ; 4-byte Folded Reload225; GISEL-NEXT:    buffer_load_dword v58, off, s[0:3], s32 offset:20 ; 4-byte Folded Reload226; GISEL-NEXT:    buffer_load_dword v57, off, s[0:3], s32 offset:24 ; 4-byte Folded Reload227; GISEL-NEXT:    buffer_load_dword v56, off, s[0:3], s32 offset:28 ; 4-byte Folded Reload228; GISEL-NEXT:    buffer_load_dword v46, off, s[0:3], s32 offset:32 ; 4-byte Folded Reload229; GISEL-NEXT:    buffer_load_dword v45, off, s[0:3], s32 offset:36 ; 4-byte Folded Reload230; GISEL-NEXT:    buffer_load_dword v44, off, s[0:3], s32 offset:40 ; 4-byte Folded Reload231; GISEL-NEXT:    buffer_load_dword v43, off, s[0:3], s32 offset:44 ; 4-byte Folded Reload232; GISEL-NEXT:    buffer_load_dword v42, off, s[0:3], s32 offset:48 ; 4-byte Folded Reload233; GISEL-NEXT:    buffer_load_dword v41, off, s[0:3], s32 offset:52 ; 4-byte Folded Reload234; GISEL-NEXT:    buffer_load_dword v40, off, s[0:3], s32 offset:56 ; 4-byte Folded Reload235; GISEL-NEXT:    s_waitcnt vmcnt(0)236; GISEL-NEXT:    s_setpc_b64 s[30:31]237; SDAG-GFX942-LABEL: memcpy_known:238; SDAG-GFX942:       ; %bb.0:239; SDAG-GFX942-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x24240; SDAG-GFX942-NEXT:    s_load_dword s17, s[4:5], 0x34241; SDAG-GFX942-NEXT:    s_load_dwordx4 s[8:11], s[4:5], 0x44242; SDAG-GFX942-NEXT:    s_load_dword s12, s[4:5], 0x54243; SDAG-GFX942-NEXT:    s_mov_b32 s16, 0244; SDAG-GFX942-NEXT:    s_mov_b32 s5, s16245; SDAG-GFX942-NEXT:    s_waitcnt lgkmcnt(0)246; SDAG-GFX942-NEXT:    s_mov_b32 s4, s3247; SDAG-GFX942-NEXT:    s_or_b64 s[6:7], s[4:5], s[16:17]248; SDAG-GFX942-NEXT:    s_mov_b32 s17, s2249; SDAG-GFX942-NEXT:    s_mov_b32 s2, s1250; SDAG-GFX942-NEXT:    s_mov_b32 s3, s16251; SDAG-GFX942-NEXT:    s_or_b64 s[4:5], s[2:3], s[16:17]252; SDAG-GFX942-NEXT:    s_mov_b32 s17, s12253; SDAG-GFX942-NEXT:    s_mov_b32 s2, s11254; SDAG-GFX942-NEXT:    s_or_b64 s[14:15], s[2:3], s[16:17]255; SDAG-GFX942-NEXT:    s_mov_b32 s17, s10256; SDAG-GFX942-NEXT:    s_mov_b32 s2, s9257; SDAG-GFX942-NEXT:    s_or_b64 s[12:13], s[2:3], s[16:17]258; SDAG-GFX942-NEXT:  .LBB0_1: ; %load-store-loop259; SDAG-GFX942-NEXT:    ; =>This Inner Loop Header: Depth=1260; SDAG-GFX942-NEXT:    s_add_i32 s1, s0, s16261; SDAG-GFX942-NEXT:    v_mov_b32_e32 v0, s1262; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[2:5], v0, s[4:7], 0 offen263; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[6:9], v0, s[4:7], 0 offen offset:16264; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[10:13], v0, s[4:7], 0 offen offset:32265; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[14:17], v0, s[4:7], 0 offen offset:48266; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[18:21], v0, s[4:7], 0 offen offset:64267; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[22:25], v0, s[4:7], 0 offen offset:80268; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[26:29], v0, s[4:7], 0 offen offset:96269; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[30:33], v0, s[4:7], 0 offen offset:112270; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[34:37], v0, s[4:7], 0 offen offset:128271; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[38:41], v0, s[4:7], 0 offen offset:144272; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[42:45], v0, s[4:7], 0 offen offset:160273; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[46:49], v0, s[4:7], 0 offen offset:176274; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[50:53], v0, s[4:7], 0 offen offset:192275; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[54:57], v0, s[4:7], 0 offen offset:208276; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[58:61], v0, s[4:7], 0 offen offset:224277; SDAG-GFX942-NEXT:    buffer_load_dwordx4 a[0:3], v0, s[4:7], 0 offen offset:240278; SDAG-GFX942-NEXT:    s_add_i32 s1, s8, s16279; SDAG-GFX942-NEXT:    s_addk_i32 s16, 0x100280; SDAG-GFX942-NEXT:    v_mov_b32_e32 v0, s1281; SDAG-GFX942-NEXT:    s_cmpk_lt_u32 s16, 0x2000282; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)283; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[2:5], v0, s[12:15], 0 offen284; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)285; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[6:9], v0, s[12:15], 0 offen offset:16286; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)287; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[10:13], v0, s[12:15], 0 offen offset:32288; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)289; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[14:17], v0, s[12:15], 0 offen offset:48290; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)291; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[18:21], v0, s[12:15], 0 offen offset:64292; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)293; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[22:25], v0, s[12:15], 0 offen offset:80294; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)295; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[26:29], v0, s[12:15], 0 offen offset:96296; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)297; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[30:33], v0, s[12:15], 0 offen offset:112298; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)299; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[34:37], v0, s[12:15], 0 offen offset:128300; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)301; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[38:41], v0, s[12:15], 0 offen offset:144302; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)303; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[42:45], v0, s[12:15], 0 offen offset:160304; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)305; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[46:49], v0, s[12:15], 0 offen offset:176306; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)307; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[50:53], v0, s[12:15], 0 offen offset:192308; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)309; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[54:57], v0, s[12:15], 0 offen offset:208310; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)311; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[58:61], v0, s[12:15], 0 offen offset:224312; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)313; SDAG-GFX942-NEXT:    buffer_store_dwordx4 a[0:3], v0, s[12:15], 0 offen offset:240314; SDAG-GFX942-NEXT:    s_cbranch_scc1 .LBB0_1315; SDAG-GFX942-NEXT:  ; %bb.2: ; %memcpy-split316; SDAG-GFX942-NEXT:    s_endpgm317;318; SDAG-GFX1100-LABEL: memcpy_known:319; SDAG-GFX1100:       ; %bb.0:320; SDAG-GFX1100-NEXT:    s_clause 0x3321; SDAG-GFX1100-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24322; SDAG-GFX1100-NEXT:    s_load_b32 s17, s[4:5], 0x34323; SDAG-GFX1100-NEXT:    s_load_b128 s[8:11], s[4:5], 0x44324; SDAG-GFX1100-NEXT:    s_load_b32 s18, s[4:5], 0x54325; SDAG-GFX1100-NEXT:    s_mov_b32 s16, 0326; SDAG-GFX1100-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)327; SDAG-GFX1100-NEXT:    s_mov_b32 s5, s16328; SDAG-GFX1100-NEXT:    s_mov_b32 s13, s16329; SDAG-GFX1100-NEXT:    s_mov_b32 s15, s16330; SDAG-GFX1100-NEXT:    s_waitcnt lgkmcnt(0)331; SDAG-GFX1100-NEXT:    s_mov_b32 s4, s3332; SDAG-GFX1100-NEXT:    s_mov_b32 s12, s1333; SDAG-GFX1100-NEXT:    s_or_b64 s[6:7], s[4:5], s[16:17]334; SDAG-GFX1100-NEXT:    s_mov_b32 s17, s2335; SDAG-GFX1100-NEXT:    s_mov_b32 s14, s11336; SDAG-GFX1100-NEXT:    s_or_b64 s[4:5], s[12:13], s[16:17]337; SDAG-GFX1100-NEXT:    s_mov_b32 s17, s18338; SDAG-GFX1100-NEXT:    s_mov_b32 s2, s9339; SDAG-GFX1100-NEXT:    s_or_b64 s[14:15], s[14:15], s[16:17]340; SDAG-GFX1100-NEXT:    s_mov_b32 s17, s10341; SDAG-GFX1100-NEXT:    s_mov_b32 s3, s16342; SDAG-GFX1100-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)343; SDAG-GFX1100-NEXT:    s_or_b64 s[12:13], s[2:3], s[16:17]344; SDAG-GFX1100-NEXT:  .LBB0_1: ; %load-store-loop345; SDAG-GFX1100-NEXT:    ; =>This Inner Loop Header: Depth=1346; SDAG-GFX1100-NEXT:    s_add_i32 s1, s0, s16347; SDAG-GFX1100-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)348; SDAG-GFX1100-NEXT:    v_mov_b32_e32 v60, s1349; SDAG-GFX1100-NEXT:    s_add_i32 s1, s8, s16350; SDAG-GFX1100-NEXT:    s_addk_i32 s16, 0x100351; SDAG-GFX1100-NEXT:    v_mov_b32_e32 v64, s1352; SDAG-GFX1100-NEXT:    s_cmpk_lt_u32 s16, 0x2000353; SDAG-GFX1100-NEXT:    s_clause 0xf354; SDAG-GFX1100-NEXT:    buffer_load_b128 v[0:3], v60, s[4:7], 0 offen355; SDAG-GFX1100-NEXT:    buffer_load_b128 v[4:7], v60, s[4:7], 0 offen offset:16356; SDAG-GFX1100-NEXT:    buffer_load_b128 v[8:11], v60, s[4:7], 0 offen offset:32357; SDAG-GFX1100-NEXT:    buffer_load_b128 v[12:15], v60, s[4:7], 0 offen offset:48358; SDAG-GFX1100-NEXT:    buffer_load_b128 v[16:19], v60, s[4:7], 0 offen offset:64359; SDAG-GFX1100-NEXT:    buffer_load_b128 v[20:23], v60, s[4:7], 0 offen offset:80360; SDAG-GFX1100-NEXT:    buffer_load_b128 v[24:27], v60, s[4:7], 0 offen offset:96361; SDAG-GFX1100-NEXT:    buffer_load_b128 v[28:31], v60, s[4:7], 0 offen offset:112362; SDAG-GFX1100-NEXT:    buffer_load_b128 v[32:35], v60, s[4:7], 0 offen offset:128363; SDAG-GFX1100-NEXT:    buffer_load_b128 v[36:39], v60, s[4:7], 0 offen offset:144364; SDAG-GFX1100-NEXT:    buffer_load_b128 v[40:43], v60, s[4:7], 0 offen offset:160365; SDAG-GFX1100-NEXT:    buffer_load_b128 v[44:47], v60, s[4:7], 0 offen offset:176366; SDAG-GFX1100-NEXT:    buffer_load_b128 v[48:51], v60, s[4:7], 0 offen offset:192367; SDAG-GFX1100-NEXT:    buffer_load_b128 v[52:55], v60, s[4:7], 0 offen offset:208368; SDAG-GFX1100-NEXT:    buffer_load_b128 v[56:59], v60, s[4:7], 0 offen offset:224369; SDAG-GFX1100-NEXT:    buffer_load_b128 v[60:63], v60, s[4:7], 0 offen offset:240370; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(15)371; SDAG-GFX1100-NEXT:    buffer_store_b128 v[0:3], v64, s[12:15], 0 offen372; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(14)373; SDAG-GFX1100-NEXT:    buffer_store_b128 v[4:7], v64, s[12:15], 0 offen offset:16374; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(13)375; SDAG-GFX1100-NEXT:    buffer_store_b128 v[8:11], v64, s[12:15], 0 offen offset:32376; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(12)377; SDAG-GFX1100-NEXT:    buffer_store_b128 v[12:15], v64, s[12:15], 0 offen offset:48378; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(11)379; SDAG-GFX1100-NEXT:    buffer_store_b128 v[16:19], v64, s[12:15], 0 offen offset:64380; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(10)381; SDAG-GFX1100-NEXT:    buffer_store_b128 v[20:23], v64, s[12:15], 0 offen offset:80382; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(9)383; SDAG-GFX1100-NEXT:    buffer_store_b128 v[24:27], v64, s[12:15], 0 offen offset:96384; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(8)385; SDAG-GFX1100-NEXT:    buffer_store_b128 v[28:31], v64, s[12:15], 0 offen offset:112386; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(7)387; SDAG-GFX1100-NEXT:    buffer_store_b128 v[32:35], v64, s[12:15], 0 offen offset:128388; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(6)389; SDAG-GFX1100-NEXT:    buffer_store_b128 v[36:39], v64, s[12:15], 0 offen offset:144390; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(5)391; SDAG-GFX1100-NEXT:    buffer_store_b128 v[40:43], v64, s[12:15], 0 offen offset:160392; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(4)393; SDAG-GFX1100-NEXT:    buffer_store_b128 v[44:47], v64, s[12:15], 0 offen offset:176394; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(3)395; SDAG-GFX1100-NEXT:    buffer_store_b128 v[48:51], v64, s[12:15], 0 offen offset:192396; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(2)397; SDAG-GFX1100-NEXT:    buffer_store_b128 v[52:55], v64, s[12:15], 0 offen offset:208398; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(1)399; SDAG-GFX1100-NEXT:    buffer_store_b128 v[56:59], v64, s[12:15], 0 offen offset:224400; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(0)401; SDAG-GFX1100-NEXT:    buffer_store_b128 v[60:63], v64, s[12:15], 0 offen offset:240402; SDAG-GFX1100-NEXT:    s_cbranch_scc1 .LBB0_1403; SDAG-GFX1100-NEXT:  ; %bb.2: ; %memcpy-split404; SDAG-GFX1100-NEXT:    s_endpgm405;406; GISEL-GFX942-LABEL: memcpy_known:407; GISEL-GFX942:       ; %bb.0:408; GISEL-GFX942-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x24409; GISEL-GFX942-NEXT:    s_load_dword s7, s[4:5], 0x54410; GISEL-GFX942-NEXT:    s_load_dword s11, s[4:5], 0x34411; GISEL-GFX942-NEXT:    s_load_dwordx4 s[12:15], s[4:5], 0x44412; GISEL-GFX942-NEXT:    s_mov_b32 s16, 0413; GISEL-GFX942-NEXT:    v_mov_b32_e32 v0, 0x2000414; GISEL-GFX942-NEXT:    s_waitcnt lgkmcnt(0)415; GISEL-GFX942-NEXT:    s_mov_b32 s8, s1416; GISEL-GFX942-NEXT:    s_mov_b32 s9, s2417; GISEL-GFX942-NEXT:    s_mov_b32 s10, s3418; GISEL-GFX942-NEXT:    s_mov_b32 s4, s13419; GISEL-GFX942-NEXT:    s_mov_b32 s5, s14420; GISEL-GFX942-NEXT:    s_mov_b32 s6, s15421; GISEL-GFX942-NEXT:    v_mov_b32_e32 v1, s16422; GISEL-GFX942-NEXT:  .LBB0_1: ; %load-store-loop423; GISEL-GFX942-NEXT:    ; =>This Inner Loop Header: Depth=1424; GISEL-GFX942-NEXT:    v_add_u32_e32 v62, s0, v1425; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[2:5], v62, s[8:11], 0 offen426; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[6:9], v62, s[8:11], 0 offen offset:16427; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[10:13], v62, s[8:11], 0 offen offset:32428; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[14:17], v62, s[8:11], 0 offen offset:48429; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[18:21], v62, s[8:11], 0 offen offset:64430; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[22:25], v62, s[8:11], 0 offen offset:80431; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[26:29], v62, s[8:11], 0 offen offset:96432; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[30:33], v62, s[8:11], 0 offen offset:112433; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[34:37], v62, s[8:11], 0 offen offset:128434; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[38:41], v62, s[8:11], 0 offen offset:144435; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[42:45], v62, s[8:11], 0 offen offset:160436; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[46:49], v62, s[8:11], 0 offen offset:176437; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[50:53], v62, s[8:11], 0 offen offset:192438; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[54:57], v62, s[8:11], 0 offen offset:208439; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[58:61], v62, s[8:11], 0 offen offset:224440; GISEL-GFX942-NEXT:    buffer_load_dwordx4 a[0:3], v62, s[8:11], 0 offen offset:240441; GISEL-GFX942-NEXT:    v_add_u32_e32 v63, s12, v1442; GISEL-GFX942-NEXT:    v_add_u32_e32 v1, 0x100, v1443; GISEL-GFX942-NEXT:    v_cmp_lt_u32_e32 vcc, v1, v0444; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)445; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[2:5], v63, s[4:7], 0 offen446; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)447; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[6:9], v63, s[4:7], 0 offen offset:16448; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)449; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[10:13], v63, s[4:7], 0 offen offset:32450; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)451; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[14:17], v63, s[4:7], 0 offen offset:48452; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)453; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[18:21], v63, s[4:7], 0 offen offset:64454; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)455; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[22:25], v63, s[4:7], 0 offen offset:80456; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)457; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[26:29], v63, s[4:7], 0 offen offset:96458; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)459; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[30:33], v63, s[4:7], 0 offen offset:112460; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)461; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[34:37], v63, s[4:7], 0 offen offset:128462; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)463; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[38:41], v63, s[4:7], 0 offen offset:144464; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)465; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[42:45], v63, s[4:7], 0 offen offset:160466; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)467; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[46:49], v63, s[4:7], 0 offen offset:176468; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)469; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[50:53], v63, s[4:7], 0 offen offset:192470; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)471; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[54:57], v63, s[4:7], 0 offen offset:208472; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)473; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[58:61], v63, s[4:7], 0 offen offset:224474; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)475; GISEL-GFX942-NEXT:    scratch_store_dwordx4 off, a[0:3], off ; 16-byte Folded Spill476; GISEL-GFX942-NEXT:    scratch_load_dwordx4 v[2:5], off, off ; 16-byte Folded Reload477; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(0)478; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[2:5], v63, s[4:7], 0 offen offset:240479; GISEL-GFX942-NEXT:    s_cbranch_vccnz .LBB0_1480; GISEL-GFX942-NEXT:  ; %bb.2: ; %memcpy-split481; GISEL-GFX942-NEXT:    s_endpgm482;483; GISEL-GFX1100-LABEL: memcpy_known:484; GISEL-GFX1100:       ; %bb.0:485; GISEL-GFX1100-NEXT:    s_clause 0x3486; GISEL-GFX1100-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24487; GISEL-GFX1100-NEXT:    s_load_b128 s[8:11], s[4:5], 0x44488; GISEL-GFX1100-NEXT:    s_load_b32 s7, s[4:5], 0x34489; GISEL-GFX1100-NEXT:    s_load_b32 s15, s[4:5], 0x54490; GISEL-GFX1100-NEXT:    s_mov_b32 s4, 0491; GISEL-GFX1100-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)492; GISEL-GFX1100-NEXT:    v_mov_b32_e32 v0, s4493; GISEL-GFX1100-NEXT:    s_waitcnt lgkmcnt(0)494; GISEL-GFX1100-NEXT:    s_mov_b32 s4, s1495; GISEL-GFX1100-NEXT:    s_mov_b32 s5, s2496; GISEL-GFX1100-NEXT:    s_mov_b32 s6, s3497; GISEL-GFX1100-NEXT:    s_mov_b32 s12, s9498; GISEL-GFX1100-NEXT:    s_mov_b32 s13, s10499; GISEL-GFX1100-NEXT:    s_mov_b32 s14, s11500; GISEL-GFX1100-NEXT:  .LBB0_1: ; %load-store-loop501; GISEL-GFX1100-NEXT:    ; =>This Inner Loop Header: Depth=1502; GISEL-GFX1100-NEXT:    v_add_nc_u32_e32 v61, s0, v0503; GISEL-GFX1100-NEXT:    v_add_nc_u32_e32 v65, s8, v0504; GISEL-GFX1100-NEXT:    v_add_nc_u32_e32 v0, 0x100, v0505; GISEL-GFX1100-NEXT:    s_clause 0xf506; GISEL-GFX1100-NEXT:    buffer_load_b128 v[1:4], v61, s[4:7], 0 offen507; GISEL-GFX1100-NEXT:    buffer_load_b128 v[5:8], v61, s[4:7], 0 offen offset:16508; GISEL-GFX1100-NEXT:    buffer_load_b128 v[9:12], v61, s[4:7], 0 offen offset:32509; GISEL-GFX1100-NEXT:    buffer_load_b128 v[13:16], v61, s[4:7], 0 offen offset:48510; GISEL-GFX1100-NEXT:    buffer_load_b128 v[17:20], v61, s[4:7], 0 offen offset:64511; GISEL-GFX1100-NEXT:    buffer_load_b128 v[21:24], v61, s[4:7], 0 offen offset:80512; GISEL-GFX1100-NEXT:    buffer_load_b128 v[25:28], v61, s[4:7], 0 offen offset:96513; GISEL-GFX1100-NEXT:    buffer_load_b128 v[29:32], v61, s[4:7], 0 offen offset:112514; GISEL-GFX1100-NEXT:    buffer_load_b128 v[33:36], v61, s[4:7], 0 offen offset:128515; GISEL-GFX1100-NEXT:    buffer_load_b128 v[37:40], v61, s[4:7], 0 offen offset:144516; GISEL-GFX1100-NEXT:    buffer_load_b128 v[41:44], v61, s[4:7], 0 offen offset:160517; GISEL-GFX1100-NEXT:    buffer_load_b128 v[45:48], v61, s[4:7], 0 offen offset:176518; GISEL-GFX1100-NEXT:    buffer_load_b128 v[49:52], v61, s[4:7], 0 offen offset:192519; GISEL-GFX1100-NEXT:    buffer_load_b128 v[53:56], v61, s[4:7], 0 offen offset:208520; GISEL-GFX1100-NEXT:    buffer_load_b128 v[57:60], v61, s[4:7], 0 offen offset:224521; GISEL-GFX1100-NEXT:    buffer_load_b128 v[61:64], v61, s[4:7], 0 offen offset:240522; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(15)523; GISEL-GFX1100-NEXT:    buffer_store_b128 v[1:4], v65, s[12:15], 0 offen524; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(14)525; GISEL-GFX1100-NEXT:    buffer_store_b128 v[5:8], v65, s[12:15], 0 offen offset:16526; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(13)527; GISEL-GFX1100-NEXT:    buffer_store_b128 v[9:12], v65, s[12:15], 0 offen offset:32528; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(12)529; GISEL-GFX1100-NEXT:    buffer_store_b128 v[13:16], v65, s[12:15], 0 offen offset:48530; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(11)531; GISEL-GFX1100-NEXT:    buffer_store_b128 v[17:20], v65, s[12:15], 0 offen offset:64532; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(10)533; GISEL-GFX1100-NEXT:    buffer_store_b128 v[21:24], v65, s[12:15], 0 offen offset:80534; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(9)535; GISEL-GFX1100-NEXT:    buffer_store_b128 v[25:28], v65, s[12:15], 0 offen offset:96536; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(8)537; GISEL-GFX1100-NEXT:    buffer_store_b128 v[29:32], v65, s[12:15], 0 offen offset:112538; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(7)539; GISEL-GFX1100-NEXT:    buffer_store_b128 v[33:36], v65, s[12:15], 0 offen offset:128540; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(6)541; GISEL-GFX1100-NEXT:    buffer_store_b128 v[37:40], v65, s[12:15], 0 offen offset:144542; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(5)543; GISEL-GFX1100-NEXT:    buffer_store_b128 v[41:44], v65, s[12:15], 0 offen offset:160544; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(4)545; GISEL-GFX1100-NEXT:    buffer_store_b128 v[45:48], v65, s[12:15], 0 offen offset:176546; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(3)547; GISEL-GFX1100-NEXT:    buffer_store_b128 v[49:52], v65, s[12:15], 0 offen offset:192548; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(2)549; GISEL-GFX1100-NEXT:    buffer_store_b128 v[53:56], v65, s[12:15], 0 offen offset:208550; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(1)551; GISEL-GFX1100-NEXT:    buffer_store_b128 v[57:60], v65, s[12:15], 0 offen offset:224552; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(0)553; GISEL-GFX1100-NEXT:    buffer_store_b128 v[61:64], v65, s[12:15], 0 offen offset:240554; GISEL-GFX1100-NEXT:    v_cmp_gt_u32_e32 vcc_lo, 0x2000, v0555; GISEL-GFX1100-NEXT:    s_cbranch_vccnz .LBB0_1556; GISEL-GFX1100-NEXT:  ; %bb.2: ; %memcpy-split557; GISEL-GFX1100-NEXT:    s_endpgm558  call void @llvm.memcpy.p7.p7.i32(ptr addrspace(7) noundef nonnull align 16 %dst, ptr addrspace(7) noundef nonnull align 16 %src, i32 8192, i1 false)559  ret void560}561 562define amdgpu_kernel void @memcpy_known_medium(ptr addrspace(7) %src, ptr addrspace(7) %dst) {563; SDAG-LABEL: memcpy_known_medium:564; SDAG:       ; %bb.0:565; SDAG-NEXT:    s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)566; SDAG-NEXT:    s_mov_b32 s7, s24567; SDAG-NEXT:    s_mov_b32 s6, s23568; SDAG-NEXT:    s_mov_b32 s5, s22569; SDAG-NEXT:    s_mov_b32 s4, s21570; SDAG-NEXT:    v_mov_b32_e32 v0, 0571; SDAG-NEXT:    buffer_store_dword v40, off, s[0:3], s32 offset:52 ; 4-byte Folded Spill572; SDAG-NEXT:    buffer_store_dword v41, off, s[0:3], s32 offset:48 ; 4-byte Folded Spill573; SDAG-NEXT:    buffer_store_dword v42, off, s[0:3], s32 offset:44 ; 4-byte Folded Spill574; SDAG-NEXT:    buffer_store_dword v43, off, s[0:3], s32 offset:40 ; 4-byte Folded Spill575; SDAG-NEXT:    buffer_store_dword v44, off, s[0:3], s32 offset:36 ; 4-byte Folded Spill576; SDAG-NEXT:    buffer_store_dword v45, off, s[0:3], s32 offset:32 ; 4-byte Folded Spill577; SDAG-NEXT:    buffer_store_dword v56, off, s[0:3], s32 offset:28 ; 4-byte Folded Spill578; SDAG-NEXT:    buffer_store_dword v57, off, s[0:3], s32 offset:24 ; 4-byte Folded Spill579; SDAG-NEXT:    buffer_store_dword v58, off, s[0:3], s32 offset:20 ; 4-byte Folded Spill580; SDAG-NEXT:    buffer_store_dword v59, off, s[0:3], s32 offset:16 ; 4-byte Folded Spill581; SDAG-NEXT:    buffer_store_dword v60, off, s[0:3], s32 offset:12 ; 4-byte Folded Spill582; SDAG-NEXT:    buffer_store_dword v61, off, s[0:3], s32 offset:8 ; 4-byte Folded Spill583; SDAG-NEXT:    buffer_store_dword v62, off, s[0:3], s32 offset:4 ; 4-byte Folded Spill584; SDAG-NEXT:    buffer_store_dword v63, off, s[0:3], s32 ; 4-byte Folded Spill585; SDAG-NEXT:  .LBB1_1: ; %load-store-loop586; SDAG-NEXT:    ; =>This Inner Loop Header: Depth=1587; SDAG-NEXT:    v_add_u32_e32 v45, s20, v0588; SDAG-NEXT:    buffer_load_dwordx4 v[1:4], v45, s[16:19], 0 offen589; SDAG-NEXT:    s_waitcnt vmcnt(0)590; SDAG-NEXT:    buffer_store_dword v1, off, s[0:3], s32 offset:72 ; 4-byte Folded Spill591; SDAG-NEXT:    s_nop 0592; SDAG-NEXT:    buffer_store_dword v2, off, s[0:3], s32 offset:76 ; 4-byte Folded Spill593; SDAG-NEXT:    buffer_store_dword v3, off, s[0:3], s32 offset:80 ; 4-byte Folded Spill594; SDAG-NEXT:    buffer_store_dword v4, off, s[0:3], s32 offset:84 ; 4-byte Folded Spill595; SDAG-NEXT:    buffer_load_dwordx4 v[5:8], v45, s[16:19], 0 offen offset:16596; SDAG-NEXT:    buffer_load_dwordx4 v[9:12], v45, s[16:19], 0 offen offset:32597; SDAG-NEXT:    buffer_load_dwordx4 v[13:16], v45, s[16:19], 0 offen offset:48598; SDAG-NEXT:    buffer_load_dwordx4 v[17:20], v45, s[16:19], 0 offen offset:64599; SDAG-NEXT:    buffer_load_dwordx4 v[21:24], v45, s[16:19], 0 offen offset:80600; SDAG-NEXT:    buffer_load_dwordx4 v[25:28], v45, s[16:19], 0 offen offset:96601; SDAG-NEXT:    buffer_load_dwordx4 v[29:32], v45, s[16:19], 0 offen offset:112602; SDAG-NEXT:    buffer_load_dwordx4 v[33:36], v45, s[16:19], 0 offen offset:128603; SDAG-NEXT:    buffer_load_dwordx4 v[48:51], v45, s[16:19], 0 offen offset:144604; SDAG-NEXT:    buffer_load_dwordx4 v[52:55], v45, s[16:19], 0 offen offset:160605; SDAG-NEXT:    buffer_load_dwordx4 v[37:40], v45, s[16:19], 0 offen offset:176606; SDAG-NEXT:    buffer_load_dwordx4 v[41:44], v45, s[16:19], 0 offen offset:192607; SDAG-NEXT:    buffer_load_dwordx4 v[56:59], v45, s[16:19], 0 offen offset:208608; SDAG-NEXT:    buffer_load_dwordx4 v[60:63], v45, s[16:19], 0 offen offset:224609; SDAG-NEXT:    buffer_load_dwordx4 v[1:4], v45, s[16:19], 0 offen offset:240610; SDAG-NEXT:    v_add_u32_e32 v45, s25, v0611; SDAG-NEXT:    v_add_co_u32_e32 v0, vcc, 0x100, v0612; SDAG-NEXT:    s_and_b64 vcc, exec, vcc613; SDAG-NEXT:    s_waitcnt vmcnt(0)614; SDAG-NEXT:    buffer_store_dword v1, off, s[0:3], s32 offset:56 ; 4-byte Folded Spill615; SDAG-NEXT:    s_nop 0616; SDAG-NEXT:    buffer_store_dword v2, off, s[0:3], s32 offset:60 ; 4-byte Folded Spill617; SDAG-NEXT:    buffer_store_dword v3, off, s[0:3], s32 offset:64 ; 4-byte Folded Spill618; SDAG-NEXT:    buffer_store_dword v4, off, s[0:3], s32 offset:68 ; 4-byte Folded Spill619; SDAG-NEXT:    buffer_load_dword v1, off, s[0:3], s32 offset:72 ; 4-byte Folded Reload620; SDAG-NEXT:    s_nop 0621; SDAG-NEXT:    buffer_load_dword v2, off, s[0:3], s32 offset:76 ; 4-byte Folded Reload622; SDAG-NEXT:    buffer_load_dword v3, off, s[0:3], s32 offset:80 ; 4-byte Folded Reload623; SDAG-NEXT:    buffer_load_dword v4, off, s[0:3], s32 offset:84 ; 4-byte Folded Reload624; SDAG-NEXT:    s_waitcnt vmcnt(0)625; SDAG-NEXT:    buffer_store_dwordx4 v[1:4], v45, s[4:7], 0 offen626; SDAG-NEXT:    buffer_store_dwordx4 v[5:8], v45, s[4:7], 0 offen offset:16627; SDAG-NEXT:    buffer_store_dwordx4 v[9:12], v45, s[4:7], 0 offen offset:32628; SDAG-NEXT:    buffer_store_dwordx4 v[13:16], v45, s[4:7], 0 offen offset:48629; SDAG-NEXT:    buffer_store_dwordx4 v[17:20], v45, s[4:7], 0 offen offset:64630; SDAG-NEXT:    buffer_store_dwordx4 v[21:24], v45, s[4:7], 0 offen offset:80631; SDAG-NEXT:    buffer_store_dwordx4 v[25:28], v45, s[4:7], 0 offen offset:96632; SDAG-NEXT:    buffer_store_dwordx4 v[29:32], v45, s[4:7], 0 offen offset:112633; SDAG-NEXT:    buffer_store_dwordx4 v[33:36], v45, s[4:7], 0 offen offset:128634; SDAG-NEXT:    buffer_store_dwordx4 v[48:51], v45, s[4:7], 0 offen offset:144635; SDAG-NEXT:    buffer_store_dwordx4 v[52:55], v45, s[4:7], 0 offen offset:160636; SDAG-NEXT:    buffer_store_dwordx4 v[37:40], v45, s[4:7], 0 offen offset:176637; SDAG-NEXT:    buffer_store_dwordx4 v[41:44], v45, s[4:7], 0 offen offset:192638; SDAG-NEXT:    buffer_store_dwordx4 v[56:59], v45, s[4:7], 0 offen offset:208639; SDAG-NEXT:    buffer_store_dwordx4 v[60:63], v45, s[4:7], 0 offen offset:224640; SDAG-NEXT:    buffer_load_dword v1, off, s[0:3], s32 offset:56 ; 4-byte Folded Reload641; SDAG-NEXT:    buffer_load_dword v2, off, s[0:3], s32 offset:60 ; 4-byte Folded Reload642; SDAG-NEXT:    buffer_load_dword v3, off, s[0:3], s32 offset:64 ; 4-byte Folded Reload643; SDAG-NEXT:    buffer_load_dword v4, off, s[0:3], s32 offset:68 ; 4-byte Folded Reload644; SDAG-NEXT:    s_waitcnt vmcnt(0)645; SDAG-NEXT:    buffer_store_dwordx4 v[1:4], v45, s[4:7], 0 offen offset:240646; SDAG-NEXT:    s_cbranch_vccnz .LBB1_1647; SDAG-NEXT:  ; %bb.2: ; %memcpy-split648; SDAG-NEXT:    buffer_load_dword v63, off, s[0:3], s32 ; 4-byte Folded Reload649; SDAG-NEXT:    buffer_load_dword v62, off, s[0:3], s32 offset:4 ; 4-byte Folded Reload650; SDAG-NEXT:    buffer_load_dword v61, off, s[0:3], s32 offset:8 ; 4-byte Folded Reload651; SDAG-NEXT:    buffer_load_dword v60, off, s[0:3], s32 offset:12 ; 4-byte Folded Reload652; SDAG-NEXT:    buffer_load_dword v59, off, s[0:3], s32 offset:16 ; 4-byte Folded Reload653; SDAG-NEXT:    buffer_load_dword v58, off, s[0:3], s32 offset:20 ; 4-byte Folded Reload654; SDAG-NEXT:    buffer_load_dword v57, off, s[0:3], s32 offset:24 ; 4-byte Folded Reload655; SDAG-NEXT:    buffer_load_dword v56, off, s[0:3], s32 offset:28 ; 4-byte Folded Reload656; SDAG-NEXT:    buffer_load_dword v45, off, s[0:3], s32 offset:32 ; 4-byte Folded Reload657; SDAG-NEXT:    buffer_load_dword v44, off, s[0:3], s32 offset:36 ; 4-byte Folded Reload658; SDAG-NEXT:    buffer_load_dword v43, off, s[0:3], s32 offset:40 ; 4-byte Folded Reload659; SDAG-NEXT:    buffer_load_dword v42, off, s[0:3], s32 offset:44 ; 4-byte Folded Reload660; SDAG-NEXT:    buffer_load_dword v41, off, s[0:3], s32 offset:48 ; 4-byte Folded Reload661; SDAG-NEXT:    buffer_load_dword v40, off, s[0:3], s32 offset:52 ; 4-byte Folded Reload662; SDAG-NEXT:    s_waitcnt vmcnt(0)663; SDAG-NEXT:    s_setpc_b64 s[30:31]664;665; GISEL-LABEL: memcpy_known_medium:666; GISEL:       ; %bb.0:667; GISEL-NEXT:    s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)668; GISEL-NEXT:    s_mov_b32 s8, 0669; GISEL-NEXT:    s_mov_b32 s4, s21670; GISEL-NEXT:    s_mov_b32 s5, s22671; GISEL-NEXT:    s_mov_b32 s6, s23672; GISEL-NEXT:    s_mov_b32 s7, s24673; GISEL-NEXT:    v_mov_b32_e32 v0, s8674; GISEL-NEXT:    buffer_store_dword v40, off, s[0:3], s32 offset:52 ; 4-byte Folded Spill675; GISEL-NEXT:    buffer_store_dword v41, off, s[0:3], s32 offset:48 ; 4-byte Folded Spill676; GISEL-NEXT:    buffer_store_dword v42, off, s[0:3], s32 offset:44 ; 4-byte Folded Spill677; GISEL-NEXT:    buffer_store_dword v43, off, s[0:3], s32 offset:40 ; 4-byte Folded Spill678; GISEL-NEXT:    buffer_store_dword v44, off, s[0:3], s32 offset:36 ; 4-byte Folded Spill679; GISEL-NEXT:    buffer_store_dword v45, off, s[0:3], s32 offset:32 ; 4-byte Folded Spill680; GISEL-NEXT:    buffer_store_dword v56, off, s[0:3], s32 offset:28 ; 4-byte Folded Spill681; GISEL-NEXT:    buffer_store_dword v57, off, s[0:3], s32 offset:24 ; 4-byte Folded Spill682; GISEL-NEXT:    buffer_store_dword v58, off, s[0:3], s32 offset:20 ; 4-byte Folded Spill683; GISEL-NEXT:    buffer_store_dword v59, off, s[0:3], s32 offset:16 ; 4-byte Folded Spill684; GISEL-NEXT:    buffer_store_dword v60, off, s[0:3], s32 offset:12 ; 4-byte Folded Spill685; GISEL-NEXT:    buffer_store_dword v61, off, s[0:3], s32 offset:8 ; 4-byte Folded Spill686; GISEL-NEXT:    buffer_store_dword v62, off, s[0:3], s32 offset:4 ; 4-byte Folded Spill687; GISEL-NEXT:    buffer_store_dword v63, off, s[0:3], s32 ; 4-byte Folded Spill688; GISEL-NEXT:  .LBB1_1: ; %load-store-loop689; GISEL-NEXT:    ; =>This Inner Loop Header: Depth=1690; GISEL-NEXT:    v_add_u32_e32 v45, s20, v0691; GISEL-NEXT:    buffer_load_dwordx4 v[1:4], v45, s[16:19], 0 offen692; GISEL-NEXT:    s_waitcnt vmcnt(0)693; GISEL-NEXT:    buffer_store_dword v1, off, s[0:3], s32 offset:72 ; 4-byte Folded Spill694; GISEL-NEXT:    s_nop 0695; GISEL-NEXT:    buffer_store_dword v2, off, s[0:3], s32 offset:76 ; 4-byte Folded Spill696; GISEL-NEXT:    buffer_store_dword v3, off, s[0:3], s32 offset:80 ; 4-byte Folded Spill697; GISEL-NEXT:    buffer_store_dword v4, off, s[0:3], s32 offset:84 ; 4-byte Folded Spill698; GISEL-NEXT:    buffer_load_dwordx4 v[5:8], v45, s[16:19], 0 offen offset:16699; GISEL-NEXT:    buffer_load_dwordx4 v[9:12], v45, s[16:19], 0 offen offset:32700; GISEL-NEXT:    buffer_load_dwordx4 v[13:16], v45, s[16:19], 0 offen offset:48701; GISEL-NEXT:    buffer_load_dwordx4 v[17:20], v45, s[16:19], 0 offen offset:64702; GISEL-NEXT:    buffer_load_dwordx4 v[21:24], v45, s[16:19], 0 offen offset:80703; GISEL-NEXT:    buffer_load_dwordx4 v[25:28], v45, s[16:19], 0 offen offset:96704; GISEL-NEXT:    buffer_load_dwordx4 v[29:32], v45, s[16:19], 0 offen offset:112705; GISEL-NEXT:    buffer_load_dwordx4 v[33:36], v45, s[16:19], 0 offen offset:128706; GISEL-NEXT:    buffer_load_dwordx4 v[48:51], v45, s[16:19], 0 offen offset:144707; GISEL-NEXT:    buffer_load_dwordx4 v[52:55], v45, s[16:19], 0 offen offset:160708; GISEL-NEXT:    buffer_load_dwordx4 v[37:40], v45, s[16:19], 0 offen offset:176709; GISEL-NEXT:    buffer_load_dwordx4 v[41:44], v45, s[16:19], 0 offen offset:192710; GISEL-NEXT:    buffer_load_dwordx4 v[56:59], v45, s[16:19], 0 offen offset:208711; GISEL-NEXT:    buffer_load_dwordx4 v[60:63], v45, s[16:19], 0 offen offset:224712; GISEL-NEXT:    buffer_load_dwordx4 v[1:4], v45, s[16:19], 0 offen offset:240713; GISEL-NEXT:    v_add_u32_e32 v45, s25, v0714; GISEL-NEXT:    v_add_co_u32_e32 v0, vcc, 0x100, v0715; GISEL-NEXT:    s_xor_b64 s[8:9], vcc, -1716; GISEL-NEXT:    s_xor_b64 s[8:9], s[8:9], -1717; GISEL-NEXT:    s_and_b64 vcc, s[8:9], exec718; GISEL-NEXT:    s_waitcnt vmcnt(0)719; GISEL-NEXT:    buffer_store_dword v1, off, s[0:3], s32 offset:56 ; 4-byte Folded Spill720; GISEL-NEXT:    s_nop 0721; GISEL-NEXT:    buffer_store_dword v2, off, s[0:3], s32 offset:60 ; 4-byte Folded Spill722; GISEL-NEXT:    buffer_store_dword v3, off, s[0:3], s32 offset:64 ; 4-byte Folded Spill723; GISEL-NEXT:    buffer_store_dword v4, off, s[0:3], s32 offset:68 ; 4-byte Folded Spill724; GISEL-NEXT:    buffer_load_dword v1, off, s[0:3], s32 offset:72 ; 4-byte Folded Reload725; GISEL-NEXT:    s_nop 0726; GISEL-NEXT:    buffer_load_dword v2, off, s[0:3], s32 offset:76 ; 4-byte Folded Reload727; GISEL-NEXT:    buffer_load_dword v3, off, s[0:3], s32 offset:80 ; 4-byte Folded Reload728; GISEL-NEXT:    buffer_load_dword v4, off, s[0:3], s32 offset:84 ; 4-byte Folded Reload729; GISEL-NEXT:    s_waitcnt vmcnt(0)730; GISEL-NEXT:    buffer_store_dwordx4 v[1:4], v45, s[4:7], 0 offen731; GISEL-NEXT:    buffer_store_dwordx4 v[5:8], v45, s[4:7], 0 offen offset:16732; GISEL-NEXT:    buffer_store_dwordx4 v[9:12], v45, s[4:7], 0 offen offset:32733; GISEL-NEXT:    buffer_store_dwordx4 v[13:16], v45, s[4:7], 0 offen offset:48734; GISEL-NEXT:    buffer_store_dwordx4 v[17:20], v45, s[4:7], 0 offen offset:64735; GISEL-NEXT:    buffer_store_dwordx4 v[21:24], v45, s[4:7], 0 offen offset:80736; GISEL-NEXT:    buffer_store_dwordx4 v[25:28], v45, s[4:7], 0 offen offset:96737; GISEL-NEXT:    buffer_store_dwordx4 v[29:32], v45, s[4:7], 0 offen offset:112738; GISEL-NEXT:    buffer_store_dwordx4 v[33:36], v45, s[4:7], 0 offen offset:128739; GISEL-NEXT:    buffer_store_dwordx4 v[48:51], v45, s[4:7], 0 offen offset:144740; GISEL-NEXT:    buffer_store_dwordx4 v[52:55], v45, s[4:7], 0 offen offset:160741; GISEL-NEXT:    buffer_store_dwordx4 v[37:40], v45, s[4:7], 0 offen offset:176742; GISEL-NEXT:    buffer_store_dwordx4 v[41:44], v45, s[4:7], 0 offen offset:192743; GISEL-NEXT:    buffer_store_dwordx4 v[56:59], v45, s[4:7], 0 offen offset:208744; GISEL-NEXT:    buffer_store_dwordx4 v[60:63], v45, s[4:7], 0 offen offset:224745; GISEL-NEXT:    buffer_load_dword v1, off, s[0:3], s32 offset:56 ; 4-byte Folded Reload746; GISEL-NEXT:    buffer_load_dword v2, off, s[0:3], s32 offset:60 ; 4-byte Folded Reload747; GISEL-NEXT:    buffer_load_dword v3, off, s[0:3], s32 offset:64 ; 4-byte Folded Reload748; GISEL-NEXT:    buffer_load_dword v4, off, s[0:3], s32 offset:68 ; 4-byte Folded Reload749; GISEL-NEXT:    s_waitcnt vmcnt(0)750; GISEL-NEXT:    buffer_store_dwordx4 v[1:4], v45, s[4:7], 0 offen offset:240751; GISEL-NEXT:    s_cbranch_vccnz .LBB1_1752; GISEL-NEXT:  ; %bb.2: ; %memcpy-split753; GISEL-NEXT:    buffer_load_dword v63, off, s[0:3], s32 ; 4-byte Folded Reload754; GISEL-NEXT:    buffer_load_dword v62, off, s[0:3], s32 offset:4 ; 4-byte Folded Reload755; GISEL-NEXT:    buffer_load_dword v61, off, s[0:3], s32 offset:8 ; 4-byte Folded Reload756; GISEL-NEXT:    buffer_load_dword v60, off, s[0:3], s32 offset:12 ; 4-byte Folded Reload757; GISEL-NEXT:    buffer_load_dword v59, off, s[0:3], s32 offset:16 ; 4-byte Folded Reload758; GISEL-NEXT:    buffer_load_dword v58, off, s[0:3], s32 offset:20 ; 4-byte Folded Reload759; GISEL-NEXT:    buffer_load_dword v57, off, s[0:3], s32 offset:24 ; 4-byte Folded Reload760; GISEL-NEXT:    buffer_load_dword v56, off, s[0:3], s32 offset:28 ; 4-byte Folded Reload761; GISEL-NEXT:    buffer_load_dword v45, off, s[0:3], s32 offset:32 ; 4-byte Folded Reload762; GISEL-NEXT:    buffer_load_dword v44, off, s[0:3], s32 offset:36 ; 4-byte Folded Reload763; GISEL-NEXT:    buffer_load_dword v43, off, s[0:3], s32 offset:40 ; 4-byte Folded Reload764; GISEL-NEXT:    buffer_load_dword v42, off, s[0:3], s32 offset:44 ; 4-byte Folded Reload765; GISEL-NEXT:    buffer_load_dword v41, off, s[0:3], s32 offset:48 ; 4-byte Folded Reload766; GISEL-NEXT:    buffer_load_dword v40, off, s[0:3], s32 offset:52 ; 4-byte Folded Reload767; GISEL-NEXT:    s_waitcnt vmcnt(0)768; GISEL-NEXT:    s_setpc_b64 s[30:31]769; SDAG-GFX942-LABEL: memcpy_known_medium:770; SDAG-GFX942:       ; %bb.0:771; SDAG-GFX942-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x24772; SDAG-GFX942-NEXT:    s_load_dword s17, s[4:5], 0x34773; SDAG-GFX942-NEXT:    s_load_dwordx4 s[8:11], s[4:5], 0x44774; SDAG-GFX942-NEXT:    s_load_dword s12, s[4:5], 0x54775; SDAG-GFX942-NEXT:    s_mov_b32 s16, 0776; SDAG-GFX942-NEXT:    s_mov_b32 s5, s16777; SDAG-GFX942-NEXT:    s_waitcnt lgkmcnt(0)778; SDAG-GFX942-NEXT:    s_mov_b32 s4, s3779; SDAG-GFX942-NEXT:    s_or_b64 s[6:7], s[4:5], s[16:17]780; SDAG-GFX942-NEXT:    s_mov_b32 s17, s2781; SDAG-GFX942-NEXT:    s_mov_b32 s2, s1782; SDAG-GFX942-NEXT:    s_mov_b32 s3, s16783; SDAG-GFX942-NEXT:    s_or_b64 s[4:5], s[2:3], s[16:17]784; SDAG-GFX942-NEXT:    s_mov_b32 s17, s12785; SDAG-GFX942-NEXT:    s_mov_b32 s2, s11786; SDAG-GFX942-NEXT:    s_or_b64 s[14:15], s[2:3], s[16:17]787; SDAG-GFX942-NEXT:    s_mov_b32 s17, s10788; SDAG-GFX942-NEXT:    s_mov_b32 s2, s9789; SDAG-GFX942-NEXT:    s_or_b64 s[12:13], s[2:3], s[16:17]790; SDAG-GFX942-NEXT:  .LBB1_1: ; %load-store-loop791; SDAG-GFX942-NEXT:    ; =>This Inner Loop Header: Depth=1792; SDAG-GFX942-NEXT:    s_add_i32 s1, s0, s16793; SDAG-GFX942-NEXT:    v_mov_b32_e32 v0, s1794; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[2:5], v0, s[4:7], 0 offen795; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[6:9], v0, s[4:7], 0 offen offset:16796; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[10:13], v0, s[4:7], 0 offen offset:32797; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[14:17], v0, s[4:7], 0 offen offset:48798; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[18:21], v0, s[4:7], 0 offen offset:64799; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[22:25], v0, s[4:7], 0 offen offset:80800; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[26:29], v0, s[4:7], 0 offen offset:96801; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[30:33], v0, s[4:7], 0 offen offset:112802; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[34:37], v0, s[4:7], 0 offen offset:128803; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[38:41], v0, s[4:7], 0 offen offset:144804; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[42:45], v0, s[4:7], 0 offen offset:160805; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[46:49], v0, s[4:7], 0 offen offset:176806; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[50:53], v0, s[4:7], 0 offen offset:192807; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[54:57], v0, s[4:7], 0 offen offset:208808; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[58:61], v0, s[4:7], 0 offen offset:224809; SDAG-GFX942-NEXT:    buffer_load_dwordx4 a[0:3], v0, s[4:7], 0 offen offset:240810; SDAG-GFX942-NEXT:    s_add_i32 s1, s8, s16811; SDAG-GFX942-NEXT:    s_addk_i32 s16, 0x100812; SDAG-GFX942-NEXT:    v_mov_b32_e32 v0, s1813; SDAG-GFX942-NEXT:    s_cmpk_lt_u32 s16, 0x100814; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)815; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[2:5], v0, s[12:15], 0 offen816; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)817; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[6:9], v0, s[12:15], 0 offen offset:16818; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)819; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[10:13], v0, s[12:15], 0 offen offset:32820; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)821; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[14:17], v0, s[12:15], 0 offen offset:48822; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)823; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[18:21], v0, s[12:15], 0 offen offset:64824; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)825; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[22:25], v0, s[12:15], 0 offen offset:80826; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)827; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[26:29], v0, s[12:15], 0 offen offset:96828; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)829; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[30:33], v0, s[12:15], 0 offen offset:112830; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)831; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[34:37], v0, s[12:15], 0 offen offset:128832; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)833; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[38:41], v0, s[12:15], 0 offen offset:144834; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)835; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[42:45], v0, s[12:15], 0 offen offset:160836; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)837; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[46:49], v0, s[12:15], 0 offen offset:176838; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)839; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[50:53], v0, s[12:15], 0 offen offset:192840; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)841; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[54:57], v0, s[12:15], 0 offen offset:208842; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)843; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[58:61], v0, s[12:15], 0 offen offset:224844; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(15)845; SDAG-GFX942-NEXT:    buffer_store_dwordx4 a[0:3], v0, s[12:15], 0 offen offset:240846; SDAG-GFX942-NEXT:    s_cbranch_scc1 .LBB1_1847; SDAG-GFX942-NEXT:  ; %bb.2: ; %memcpy-split848; SDAG-GFX942-NEXT:    s_endpgm849;850; SDAG-GFX1100-LABEL: memcpy_known_medium:851; SDAG-GFX1100:       ; %bb.0:852; SDAG-GFX1100-NEXT:    s_clause 0x3853; SDAG-GFX1100-NEXT:    s_load_b128 s[0:3], s[4:5], 0x24854; SDAG-GFX1100-NEXT:    s_load_b32 s17, s[4:5], 0x34855; SDAG-GFX1100-NEXT:    s_load_b128 s[8:11], s[4:5], 0x44856; SDAG-GFX1100-NEXT:    s_load_b32 s18, s[4:5], 0x54857; SDAG-GFX1100-NEXT:    s_mov_b32 s16, 0858; SDAG-GFX1100-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)859; SDAG-GFX1100-NEXT:    s_mov_b32 s5, s16860; SDAG-GFX1100-NEXT:    s_mov_b32 s13, s16861; SDAG-GFX1100-NEXT:    s_mov_b32 s15, s16862; SDAG-GFX1100-NEXT:    s_waitcnt lgkmcnt(0)863; SDAG-GFX1100-NEXT:    s_mov_b32 s4, s3864; SDAG-GFX1100-NEXT:    s_mov_b32 s12, s1865; SDAG-GFX1100-NEXT:    s_or_b64 s[6:7], s[4:5], s[16:17]866; SDAG-GFX1100-NEXT:    s_mov_b32 s17, s2867; SDAG-GFX1100-NEXT:    s_mov_b32 s14, s11868; SDAG-GFX1100-NEXT:    s_or_b64 s[4:5], s[12:13], s[16:17]869; SDAG-GFX1100-NEXT:    s_mov_b32 s17, s18870; SDAG-GFX1100-NEXT:    s_mov_b32 s2, s9871; SDAG-GFX1100-NEXT:    s_or_b64 s[14:15], s[14:15], s[16:17]872; SDAG-GFX1100-NEXT:    s_mov_b32 s17, s10873; SDAG-GFX1100-NEXT:    s_mov_b32 s3, s16874; SDAG-GFX1100-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)875; SDAG-GFX1100-NEXT:    s_or_b64 s[12:13], s[2:3], s[16:17]876; SDAG-GFX1100-NEXT:  .LBB1_1: ; %load-store-loop877; SDAG-GFX1100-NEXT:    ; =>This Inner Loop Header: Depth=1878; SDAG-GFX1100-NEXT:    s_add_i32 s1, s0, s16879; SDAG-GFX1100-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)880; SDAG-GFX1100-NEXT:    v_mov_b32_e32 v60, s1881; SDAG-GFX1100-NEXT:    s_add_i32 s1, s8, s16882; SDAG-GFX1100-NEXT:    s_addk_i32 s16, 0x100883; SDAG-GFX1100-NEXT:    v_mov_b32_e32 v64, s1884; SDAG-GFX1100-NEXT:    s_cmpk_lt_u32 s16, 0x100885; SDAG-GFX1100-NEXT:    s_clause 0xf886; SDAG-GFX1100-NEXT:    buffer_load_b128 v[0:3], v60, s[4:7], 0 offen887; SDAG-GFX1100-NEXT:    buffer_load_b128 v[4:7], v60, s[4:7], 0 offen offset:16888; SDAG-GFX1100-NEXT:    buffer_load_b128 v[8:11], v60, s[4:7], 0 offen offset:32889; SDAG-GFX1100-NEXT:    buffer_load_b128 v[12:15], v60, s[4:7], 0 offen offset:48890; SDAG-GFX1100-NEXT:    buffer_load_b128 v[16:19], v60, s[4:7], 0 offen offset:64891; SDAG-GFX1100-NEXT:    buffer_load_b128 v[20:23], v60, s[4:7], 0 offen offset:80892; SDAG-GFX1100-NEXT:    buffer_load_b128 v[24:27], v60, s[4:7], 0 offen offset:96893; SDAG-GFX1100-NEXT:    buffer_load_b128 v[28:31], v60, s[4:7], 0 offen offset:112894; SDAG-GFX1100-NEXT:    buffer_load_b128 v[32:35], v60, s[4:7], 0 offen offset:128895; SDAG-GFX1100-NEXT:    buffer_load_b128 v[36:39], v60, s[4:7], 0 offen offset:144896; SDAG-GFX1100-NEXT:    buffer_load_b128 v[40:43], v60, s[4:7], 0 offen offset:160897; SDAG-GFX1100-NEXT:    buffer_load_b128 v[44:47], v60, s[4:7], 0 offen offset:176898; SDAG-GFX1100-NEXT:    buffer_load_b128 v[48:51], v60, s[4:7], 0 offen offset:192899; SDAG-GFX1100-NEXT:    buffer_load_b128 v[52:55], v60, s[4:7], 0 offen offset:208900; SDAG-GFX1100-NEXT:    buffer_load_b128 v[56:59], v60, s[4:7], 0 offen offset:224901; SDAG-GFX1100-NEXT:    buffer_load_b128 v[60:63], v60, s[4:7], 0 offen offset:240902; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(15)903; SDAG-GFX1100-NEXT:    buffer_store_b128 v[0:3], v64, s[12:15], 0 offen904; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(14)905; SDAG-GFX1100-NEXT:    buffer_store_b128 v[4:7], v64, s[12:15], 0 offen offset:16906; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(13)907; SDAG-GFX1100-NEXT:    buffer_store_b128 v[8:11], v64, s[12:15], 0 offen offset:32908; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(12)909; SDAG-GFX1100-NEXT:    buffer_store_b128 v[12:15], v64, s[12:15], 0 offen offset:48910; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(11)911; SDAG-GFX1100-NEXT:    buffer_store_b128 v[16:19], v64, s[12:15], 0 offen offset:64912; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(10)913; SDAG-GFX1100-NEXT:    buffer_store_b128 v[20:23], v64, s[12:15], 0 offen offset:80914; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(9)915; SDAG-GFX1100-NEXT:    buffer_store_b128 v[24:27], v64, s[12:15], 0 offen offset:96916; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(8)917; SDAG-GFX1100-NEXT:    buffer_store_b128 v[28:31], v64, s[12:15], 0 offen offset:112918; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(7)919; SDAG-GFX1100-NEXT:    buffer_store_b128 v[32:35], v64, s[12:15], 0 offen offset:128920; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(6)921; SDAG-GFX1100-NEXT:    buffer_store_b128 v[36:39], v64, s[12:15], 0 offen offset:144922; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(5)923; SDAG-GFX1100-NEXT:    buffer_store_b128 v[40:43], v64, s[12:15], 0 offen offset:160924; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(4)925; SDAG-GFX1100-NEXT:    buffer_store_b128 v[44:47], v64, s[12:15], 0 offen offset:176926; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(3)927; SDAG-GFX1100-NEXT:    buffer_store_b128 v[48:51], v64, s[12:15], 0 offen offset:192928; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(2)929; SDAG-GFX1100-NEXT:    buffer_store_b128 v[52:55], v64, s[12:15], 0 offen offset:208930; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(1)931; SDAG-GFX1100-NEXT:    buffer_store_b128 v[56:59], v64, s[12:15], 0 offen offset:224932; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(0)933; SDAG-GFX1100-NEXT:    buffer_store_b128 v[60:63], v64, s[12:15], 0 offen offset:240934; SDAG-GFX1100-NEXT:    s_cbranch_scc1 .LBB1_1935; SDAG-GFX1100-NEXT:  ; %bb.2: ; %memcpy-split936; SDAG-GFX1100-NEXT:    s_endpgm937;938; GISEL-GFX942-LABEL: memcpy_known_medium:939; GISEL-GFX942:       ; %bb.0:940; GISEL-GFX942-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x24941; GISEL-GFX942-NEXT:    s_load_dword s7, s[4:5], 0x54942; GISEL-GFX942-NEXT:    s_load_dword s11, s[4:5], 0x34943; GISEL-GFX942-NEXT:    s_load_dwordx4 s[12:15], s[4:5], 0x44944; GISEL-GFX942-NEXT:    s_mov_b32 s16, 0945; GISEL-GFX942-NEXT:    v_mov_b32_e32 v0, 0x100946; GISEL-GFX942-NEXT:    s_waitcnt lgkmcnt(0)947; GISEL-GFX942-NEXT:    s_mov_b32 s8, s1948; GISEL-GFX942-NEXT:    s_mov_b32 s9, s2949; GISEL-GFX942-NEXT:    s_mov_b32 s10, s3950; GISEL-GFX942-NEXT:    s_mov_b32 s4, s13951; GISEL-GFX942-NEXT:    s_mov_b32 s5, s14952; GISEL-GFX942-NEXT:    s_mov_b32 s6, s15953; GISEL-GFX942-NEXT:    v_mov_b32_e32 v1, s16954; GISEL-GFX942-NEXT:  .LBB1_1: ; %load-store-loop955; GISEL-GFX942-NEXT:    ; =>This Inner Loop Header: Depth=1956; GISEL-GFX942-NEXT:    v_add_u32_e32 v62, s0, v1957; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[2:5], v62, s[8:11], 0 offen958; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[6:9], v62, s[8:11], 0 offen offset:16959; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[10:13], v62, s[8:11], 0 offen offset:32960; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[14:17], v62, s[8:11], 0 offen offset:48961; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[18:21], v62, s[8:11], 0 offen offset:64962; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[22:25], v62, s[8:11], 0 offen offset:80963; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[26:29], v62, s[8:11], 0 offen offset:96964; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[30:33], v62, s[8:11], 0 offen offset:112965; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[34:37], v62, s[8:11], 0 offen offset:128966; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[38:41], v62, s[8:11], 0 offen offset:144967; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[42:45], v62, s[8:11], 0 offen offset:160968; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[46:49], v62, s[8:11], 0 offen offset:176969; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[50:53], v62, s[8:11], 0 offen offset:192970; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[54:57], v62, s[8:11], 0 offen offset:208971; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[58:61], v62, s[8:11], 0 offen offset:224972; GISEL-GFX942-NEXT:    buffer_load_dwordx4 a[0:3], v62, s[8:11], 0 offen offset:240973; GISEL-GFX942-NEXT:    v_add_u32_e32 v63, s12, v1974; GISEL-GFX942-NEXT:    v_add_u32_e32 v1, 0x100, v1975; GISEL-GFX942-NEXT:    v_cmp_lt_u32_e32 vcc, v1, v0976; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)977; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[2:5], v63, s[4:7], 0 offen978; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)979; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[6:9], v63, s[4:7], 0 offen offset:16980; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)981; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[10:13], v63, s[4:7], 0 offen offset:32982; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)983; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[14:17], v63, s[4:7], 0 offen offset:48984; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)985; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[18:21], v63, s[4:7], 0 offen offset:64986; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)987; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[22:25], v63, s[4:7], 0 offen offset:80988; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)989; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[26:29], v63, s[4:7], 0 offen offset:96990; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)991; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[30:33], v63, s[4:7], 0 offen offset:112992; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)993; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[34:37], v63, s[4:7], 0 offen offset:128994; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)995; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[38:41], v63, s[4:7], 0 offen offset:144996; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)997; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[42:45], v63, s[4:7], 0 offen offset:160998; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)999; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[46:49], v63, s[4:7], 0 offen offset:1761000; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)1001; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[50:53], v63, s[4:7], 0 offen offset:1921002; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)1003; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[54:57], v63, s[4:7], 0 offen offset:2081004; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)1005; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[58:61], v63, s[4:7], 0 offen offset:2241006; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(15)1007; GISEL-GFX942-NEXT:    scratch_store_dwordx4 off, a[0:3], off ; 16-byte Folded Spill1008; GISEL-GFX942-NEXT:    scratch_load_dwordx4 v[2:5], off, off ; 16-byte Folded Reload1009; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(0)1010; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[2:5], v63, s[4:7], 0 offen offset:2401011; GISEL-GFX942-NEXT:    s_cbranch_vccnz .LBB1_11012; GISEL-GFX942-NEXT:  ; %bb.2: ; %memcpy-split1013; GISEL-GFX942-NEXT:    s_endpgm1014;1015; GISEL-GFX1100-LABEL: memcpy_known_medium:1016; GISEL-GFX1100:       ; %bb.0:1017; GISEL-GFX1100-NEXT:    s_clause 0x31018; GISEL-GFX1100-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241019; GISEL-GFX1100-NEXT:    s_load_b128 s[8:11], s[4:5], 0x441020; GISEL-GFX1100-NEXT:    s_load_b32 s7, s[4:5], 0x341021; GISEL-GFX1100-NEXT:    s_load_b32 s15, s[4:5], 0x541022; GISEL-GFX1100-NEXT:    s_mov_b32 s4, 01023; GISEL-GFX1100-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)1024; GISEL-GFX1100-NEXT:    v_mov_b32_e32 v0, s41025; GISEL-GFX1100-NEXT:    s_waitcnt lgkmcnt(0)1026; GISEL-GFX1100-NEXT:    s_mov_b32 s4, s11027; GISEL-GFX1100-NEXT:    s_mov_b32 s5, s21028; GISEL-GFX1100-NEXT:    s_mov_b32 s6, s31029; GISEL-GFX1100-NEXT:    s_mov_b32 s12, s91030; GISEL-GFX1100-NEXT:    s_mov_b32 s13, s101031; GISEL-GFX1100-NEXT:    s_mov_b32 s14, s111032; GISEL-GFX1100-NEXT:  .LBB1_1: ; %load-store-loop1033; GISEL-GFX1100-NEXT:    ; =>This Inner Loop Header: Depth=11034; GISEL-GFX1100-NEXT:    v_add_nc_u32_e32 v61, s0, v01035; GISEL-GFX1100-NEXT:    v_add_nc_u32_e32 v65, s8, v01036; GISEL-GFX1100-NEXT:    v_add_nc_u32_e32 v0, 0x100, v01037; GISEL-GFX1100-NEXT:    s_clause 0xf1038; GISEL-GFX1100-NEXT:    buffer_load_b128 v[1:4], v61, s[4:7], 0 offen1039; GISEL-GFX1100-NEXT:    buffer_load_b128 v[5:8], v61, s[4:7], 0 offen offset:161040; GISEL-GFX1100-NEXT:    buffer_load_b128 v[9:12], v61, s[4:7], 0 offen offset:321041; GISEL-GFX1100-NEXT:    buffer_load_b128 v[13:16], v61, s[4:7], 0 offen offset:481042; GISEL-GFX1100-NEXT:    buffer_load_b128 v[17:20], v61, s[4:7], 0 offen offset:641043; GISEL-GFX1100-NEXT:    buffer_load_b128 v[21:24], v61, s[4:7], 0 offen offset:801044; GISEL-GFX1100-NEXT:    buffer_load_b128 v[25:28], v61, s[4:7], 0 offen offset:961045; GISEL-GFX1100-NEXT:    buffer_load_b128 v[29:32], v61, s[4:7], 0 offen offset:1121046; GISEL-GFX1100-NEXT:    buffer_load_b128 v[33:36], v61, s[4:7], 0 offen offset:1281047; GISEL-GFX1100-NEXT:    buffer_load_b128 v[37:40], v61, s[4:7], 0 offen offset:1441048; GISEL-GFX1100-NEXT:    buffer_load_b128 v[41:44], v61, s[4:7], 0 offen offset:1601049; GISEL-GFX1100-NEXT:    buffer_load_b128 v[45:48], v61, s[4:7], 0 offen offset:1761050; GISEL-GFX1100-NEXT:    buffer_load_b128 v[49:52], v61, s[4:7], 0 offen offset:1921051; GISEL-GFX1100-NEXT:    buffer_load_b128 v[53:56], v61, s[4:7], 0 offen offset:2081052; GISEL-GFX1100-NEXT:    buffer_load_b128 v[57:60], v61, s[4:7], 0 offen offset:2241053; GISEL-GFX1100-NEXT:    buffer_load_b128 v[61:64], v61, s[4:7], 0 offen offset:2401054; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(15)1055; GISEL-GFX1100-NEXT:    buffer_store_b128 v[1:4], v65, s[12:15], 0 offen1056; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(14)1057; GISEL-GFX1100-NEXT:    buffer_store_b128 v[5:8], v65, s[12:15], 0 offen offset:161058; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(13)1059; GISEL-GFX1100-NEXT:    buffer_store_b128 v[9:12], v65, s[12:15], 0 offen offset:321060; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(12)1061; GISEL-GFX1100-NEXT:    buffer_store_b128 v[13:16], v65, s[12:15], 0 offen offset:481062; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(11)1063; GISEL-GFX1100-NEXT:    buffer_store_b128 v[17:20], v65, s[12:15], 0 offen offset:641064; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(10)1065; GISEL-GFX1100-NEXT:    buffer_store_b128 v[21:24], v65, s[12:15], 0 offen offset:801066; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(9)1067; GISEL-GFX1100-NEXT:    buffer_store_b128 v[25:28], v65, s[12:15], 0 offen offset:961068; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(8)1069; GISEL-GFX1100-NEXT:    buffer_store_b128 v[29:32], v65, s[12:15], 0 offen offset:1121070; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(7)1071; GISEL-GFX1100-NEXT:    buffer_store_b128 v[33:36], v65, s[12:15], 0 offen offset:1281072; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(6)1073; GISEL-GFX1100-NEXT:    buffer_store_b128 v[37:40], v65, s[12:15], 0 offen offset:1441074; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(5)1075; GISEL-GFX1100-NEXT:    buffer_store_b128 v[41:44], v65, s[12:15], 0 offen offset:1601076; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(4)1077; GISEL-GFX1100-NEXT:    buffer_store_b128 v[45:48], v65, s[12:15], 0 offen offset:1761078; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(3)1079; GISEL-GFX1100-NEXT:    buffer_store_b128 v[49:52], v65, s[12:15], 0 offen offset:1921080; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(2)1081; GISEL-GFX1100-NEXT:    buffer_store_b128 v[53:56], v65, s[12:15], 0 offen offset:2081082; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(1)1083; GISEL-GFX1100-NEXT:    buffer_store_b128 v[57:60], v65, s[12:15], 0 offen offset:2241084; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(0)1085; GISEL-GFX1100-NEXT:    buffer_store_b128 v[61:64], v65, s[12:15], 0 offen offset:2401086; GISEL-GFX1100-NEXT:    v_cmp_gt_u32_e32 vcc_lo, 0x100, v01087; GISEL-GFX1100-NEXT:    s_cbranch_vccnz .LBB1_11088; GISEL-GFX1100-NEXT:  ; %bb.2: ; %memcpy-split1089; GISEL-GFX1100-NEXT:    s_endpgm1090  call void @llvm.memcpy.p7.p7.i32(ptr addrspace(7) noundef nonnull align 16 %dst, ptr addrspace(7) noundef nonnull align 16 %src, i32 256, i1 false)1091  ret void1092}1093 1094define amdgpu_kernel void @memcpy_known_small(ptr addrspace(7) %src, ptr addrspace(7) %dst) {1095; SDAG-LABEL: memcpy_known_small:1096; SDAG:       ; %bb.0:1097; SDAG-NEXT:    s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)1098; SDAG-NEXT:    v_mov_b32_e32 v4, s201099; SDAG-NEXT:    buffer_load_dwordx4 v[0:3], v4, s[16:19], 0 offen1100; SDAG-NEXT:    s_mov_b32 s7, s241101; SDAG-NEXT:    s_mov_b32 s6, s231102; SDAG-NEXT:    s_mov_b32 s5, s221103; SDAG-NEXT:    s_mov_b32 s4, s211104; SDAG-NEXT:    v_mov_b32_e32 v5, s251105; SDAG-NEXT:    s_waitcnt vmcnt(0)1106; SDAG-NEXT:    buffer_store_dwordx4 v[0:3], v5, s[4:7], 0 offen1107; SDAG-NEXT:    buffer_load_dwordx4 v[0:3], v4, s[16:19], 0 offen offset:161108; SDAG-NEXT:    s_waitcnt vmcnt(0)1109; SDAG-NEXT:    buffer_store_dwordx4 v[0:3], v5, s[4:7], 0 offen offset:161110; SDAG-NEXT:    s_waitcnt vmcnt(0)1111; SDAG-NEXT:    s_setpc_b64 s[30:31]1112;1113; GISEL-LABEL: memcpy_known_small:1114; GISEL:       ; %bb.0:1115; GISEL-NEXT:    s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)1116; GISEL-NEXT:    v_mov_b32_e32 v4, s201117; GISEL-NEXT:    buffer_load_dwordx4 v[0:3], v4, s[16:19], 0 offen1118; GISEL-NEXT:    s_mov_b32 s4, s211119; GISEL-NEXT:    s_mov_b32 s5, s221120; GISEL-NEXT:    s_mov_b32 s6, s231121; GISEL-NEXT:    s_mov_b32 s7, s241122; GISEL-NEXT:    v_mov_b32_e32 v5, s251123; GISEL-NEXT:    s_waitcnt vmcnt(0)1124; GISEL-NEXT:    buffer_store_dwordx4 v[0:3], v5, s[4:7], 0 offen1125; GISEL-NEXT:    buffer_load_dwordx4 v[0:3], v4, s[16:19], 0 offen offset:161126; GISEL-NEXT:    s_waitcnt vmcnt(0)1127; GISEL-NEXT:    buffer_store_dwordx4 v[0:3], v5, s[4:7], 0 offen offset:161128; GISEL-NEXT:    s_waitcnt vmcnt(0)1129; GISEL-NEXT:    s_setpc_b64 s[30:31]1130; SDAG-GFX942-LABEL: memcpy_known_small:1131; SDAG-GFX942:       ; %bb.0:1132; SDAG-GFX942-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x241133; SDAG-GFX942-NEXT:    s_load_dword s13, s[4:5], 0x341134; SDAG-GFX942-NEXT:    s_mov_b32 s12, 01135; SDAG-GFX942-NEXT:    s_mov_b32 s7, s121136; SDAG-GFX942-NEXT:    s_waitcnt lgkmcnt(0)1137; SDAG-GFX942-NEXT:    s_mov_b32 s6, s31138; SDAG-GFX942-NEXT:    s_or_b64 s[10:11], s[6:7], s[12:13]1139; SDAG-GFX942-NEXT:    s_mov_b32 s13, s21140; SDAG-GFX942-NEXT:    s_mov_b32 s2, s11141; SDAG-GFX942-NEXT:    s_mov_b32 s3, s121142; SDAG-GFX942-NEXT:    s_or_b64 s[8:9], s[2:3], s[12:13]1143; SDAG-GFX942-NEXT:    v_mov_b32_e32 v0, s01144; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[2:5], v0, s[8:11], 0 offen1145; SDAG-GFX942-NEXT:    s_load_dword s13, s[4:5], 0x541146; SDAG-GFX942-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x441147; SDAG-GFX942-NEXT:    s_mov_b32 s5, s121148; SDAG-GFX942-NEXT:    s_waitcnt lgkmcnt(0)1149; SDAG-GFX942-NEXT:    s_mov_b32 s4, s31150; SDAG-GFX942-NEXT:    s_or_b64 s[6:7], s[4:5], s[12:13]1151; SDAG-GFX942-NEXT:    s_mov_b32 s13, s21152; SDAG-GFX942-NEXT:    s_mov_b32 s2, s11153; SDAG-GFX942-NEXT:    s_mov_b32 s3, s121154; SDAG-GFX942-NEXT:    s_or_b64 s[4:5], s[2:3], s[12:13]1155; SDAG-GFX942-NEXT:    v_mov_b32_e32 v1, s01156; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(0)1157; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[2:5], v1, s[4:7], 0 offen1158; SDAG-GFX942-NEXT:    buffer_load_dwordx4 v[2:5], v0, s[8:11], 0 offen offset:161159; SDAG-GFX942-NEXT:    s_waitcnt vmcnt(0)1160; SDAG-GFX942-NEXT:    buffer_store_dwordx4 v[2:5], v1, s[4:7], 0 offen offset:161161; SDAG-GFX942-NEXT:    s_endpgm1162;1163; SDAG-GFX1100-LABEL: memcpy_known_small:1164; SDAG-GFX1100:       ; %bb.0:1165; SDAG-GFX1100-NEXT:    s_clause 0x11166; SDAG-GFX1100-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241167; SDAG-GFX1100-NEXT:    s_load_b32 s13, s[4:5], 0x341168; SDAG-GFX1100-NEXT:    s_mov_b32 s12, 01169; SDAG-GFX1100-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)1170; SDAG-GFX1100-NEXT:    s_mov_b32 s7, s121171; SDAG-GFX1100-NEXT:    s_mov_b32 s9, s121172; SDAG-GFX1100-NEXT:    s_waitcnt lgkmcnt(0)1173; SDAG-GFX1100-NEXT:    s_mov_b32 s6, s31174; SDAG-GFX1100-NEXT:    s_mov_b32 s8, s11175; SDAG-GFX1100-NEXT:    s_or_b64 s[10:11], s[6:7], s[12:13]1176; SDAG-GFX1100-NEXT:    s_mov_b32 s13, s21177; SDAG-GFX1100-NEXT:    v_mov_b32_e32 v4, s01178; SDAG-GFX1100-NEXT:    s_or_b64 s[8:9], s[8:9], s[12:13]1179; SDAG-GFX1100-NEXT:    s_clause 0x11180; SDAG-GFX1100-NEXT:    s_load_b32 s13, s[4:5], 0x541181; SDAG-GFX1100-NEXT:    s_load_b128 s[0:3], s[4:5], 0x441182; SDAG-GFX1100-NEXT:    s_mov_b32 s5, s121183; SDAG-GFX1100-NEXT:    s_waitcnt lgkmcnt(0)1184; SDAG-GFX1100-NEXT:    v_mov_b32_e32 v5, s01185; SDAG-GFX1100-NEXT:    buffer_load_b128 v[0:3], v4, s[8:11], 0 offen1186; SDAG-GFX1100-NEXT:    s_mov_b32 s4, s31187; SDAG-GFX1100-NEXT:    s_mov_b32 s3, s121188; SDAG-GFX1100-NEXT:    s_or_b64 s[6:7], s[4:5], s[12:13]1189; SDAG-GFX1100-NEXT:    s_mov_b32 s13, s21190; SDAG-GFX1100-NEXT:    s_mov_b32 s2, s11191; SDAG-GFX1100-NEXT:    s_delay_alu instid0(SALU_CYCLE_1)1192; SDAG-GFX1100-NEXT:    s_or_b64 s[4:5], s[2:3], s[12:13]1193; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(0)1194; SDAG-GFX1100-NEXT:    buffer_store_b128 v[0:3], v5, s[4:7], 0 offen1195; SDAG-GFX1100-NEXT:    buffer_load_b128 v[0:3], v4, s[8:11], 0 offen offset:161196; SDAG-GFX1100-NEXT:    s_waitcnt vmcnt(0)1197; SDAG-GFX1100-NEXT:    buffer_store_b128 v[0:3], v5, s[4:7], 0 offen offset:161198; SDAG-GFX1100-NEXT:    s_endpgm1199;1200; GISEL-GFX942-LABEL: memcpy_known_small:1201; GISEL-GFX942:       ; %bb.0:1202; GISEL-GFX942-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x241203; GISEL-GFX942-NEXT:    s_load_dword s11, s[4:5], 0x341204; GISEL-GFX942-NEXT:    s_waitcnt lgkmcnt(0)1205; GISEL-GFX942-NEXT:    s_mov_b32 s8, s11206; GISEL-GFX942-NEXT:    s_mov_b32 s9, s21207; GISEL-GFX942-NEXT:    s_mov_b32 s10, s31208; GISEL-GFX942-NEXT:    v_mov_b32_e32 v4, s01209; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[0:3], v4, s[8:11], 0 offen1210; GISEL-GFX942-NEXT:    s_load_dwordx4 s[0:3], s[4:5], 0x441211; GISEL-GFX942-NEXT:    s_load_dword s7, s[4:5], 0x541212; GISEL-GFX942-NEXT:    s_waitcnt lgkmcnt(0)1213; GISEL-GFX942-NEXT:    s_mov_b32 s4, s11214; GISEL-GFX942-NEXT:    s_mov_b32 s5, s21215; GISEL-GFX942-NEXT:    s_mov_b32 s6, s31216; GISEL-GFX942-NEXT:    v_mov_b32_e32 v5, s01217; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(0)1218; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[0:3], v5, s[4:7], 0 offen1219; GISEL-GFX942-NEXT:    buffer_load_dwordx4 v[0:3], v4, s[8:11], 0 offen offset:161220; GISEL-GFX942-NEXT:    s_waitcnt vmcnt(0)1221; GISEL-GFX942-NEXT:    buffer_store_dwordx4 v[0:3], v5, s[4:7], 0 offen offset:161222; GISEL-GFX942-NEXT:    s_endpgm1223;1224; GISEL-GFX1100-LABEL: memcpy_known_small:1225; GISEL-GFX1100:       ; %bb.0:1226; GISEL-GFX1100-NEXT:    s_clause 0x11227; GISEL-GFX1100-NEXT:    s_load_b128 s[0:3], s[4:5], 0x241228; GISEL-GFX1100-NEXT:    s_load_b32 s11, s[4:5], 0x341229; GISEL-GFX1100-NEXT:    s_waitcnt lgkmcnt(0)1230; GISEL-GFX1100-NEXT:    v_mov_b32_e32 v4, s01231; GISEL-GFX1100-NEXT:    s_mov_b32 s8, s11232; GISEL-GFX1100-NEXT:    s_mov_b32 s9, s21233; GISEL-GFX1100-NEXT:    s_mov_b32 s10, s31234; GISEL-GFX1100-NEXT:    s_clause 0x11235; GISEL-GFX1100-NEXT:    s_load_b128 s[0:3], s[4:5], 0x441236; GISEL-GFX1100-NEXT:    s_load_b32 s7, s[4:5], 0x541237; GISEL-GFX1100-NEXT:    s_waitcnt lgkmcnt(0)1238; GISEL-GFX1100-NEXT:    v_mov_b32_e32 v5, s01239; GISEL-GFX1100-NEXT:    buffer_load_b128 v[0:3], v4, s[8:11], 0 offen1240; GISEL-GFX1100-NEXT:    s_mov_b32 s4, s11241; GISEL-GFX1100-NEXT:    s_mov_b32 s5, s21242; GISEL-GFX1100-NEXT:    s_mov_b32 s6, s31243; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(0)1244; GISEL-GFX1100-NEXT:    buffer_store_b128 v[0:3], v5, s[4:7], 0 offen1245; GISEL-GFX1100-NEXT:    buffer_load_b128 v[0:3], v4, s[8:11], 0 offen offset:161246; GISEL-GFX1100-NEXT:    s_waitcnt vmcnt(0)1247; GISEL-GFX1100-NEXT:    buffer_store_b128 v[0:3], v5, s[4:7], 0 offen offset:161248; GISEL-GFX1100-NEXT:    s_endpgm1249  call void @llvm.memcpy.p7.p7.i32(ptr addrspace(7) %dst, ptr addrspace(7) %src, i32 32, i1 false)1250  ret void1251}1252