Searched refs:MUBUF (Results 1 – 25 of 75) sorted by relevance
123
2 …amdhsa -mcpu=gfx900 -verify-machineinstrs < %s | FileCheck -check-prefixes=GCN,DEFAULTSIZE,MUBUF %s3 …dgpu-assume-dynamic-stack-object-size=1024 < %s | FileCheck -check-prefixes=GCN,ASSUME1024,MUBUF %s16 ; MUBUF-LABEL: kernel_non_entry_block_static_alloca_uniformly_reached_align4:17 ; MUBUF: ; %bb.0: ; %entry18 ; MUBUF-NEXT: s_add_u32 flat_scratch_lo, s6, s919 ; MUBUF-NEXT: s_addc_u32 flat_scratch_hi, s7, 020 ; MUBUF-NEXT: s_add_u32 s0, s0, s921 ; MUBUF-NEXT: s_load_dwordx4 s[8:11], s[4:5], 0x822 ; MUBUF-NEXT: s_addc_u32 s1, s1, 023 ; MUBUF-NEXT: s_movk_i32 s32, 0x400[all …]
2 ; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx906 < %s | FileCheck -check-prefixes=GCN,GFX9,MUBUF …20 ; MUBUF-LABEL: local_stack_offset_uses_sp:21 ; MUBUF: ; %bb.0: ; %entry22 ; MUBUF-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x023 ; MUBUF-NEXT: s_add_u32 flat_scratch_lo, s6, s924 ; MUBUF-NEXT: s_addc_u32 flat_scratch_hi, s7, 025 ; MUBUF-NEXT: s_add_u32 s0, s0, s926 ; MUBUF-NEXT: v_mov_b32_e32 v1, 0x300027 ; MUBUF-NEXT: s_addc_u32 s1, s1, 028 ; MUBUF-NEXT: v_add_u32_e32 v0, 64, v1[all …]
2 ; RUN: llc < %s -march=amdgcn -mcpu=gfx1010 -verify-machineinstrs | FileCheck -check-prefix=MUBUF %s5 ; FIXME: The MUBUF loads in this test output are incorrect, their SOffset7 ; rely on the frame index argument of MUBUF stack accesses to survive until PEI11 ; into the MUBUF instruction, and so we end up emitting an incorrect offset.17 ; MUBUF-LABEL: kernel_background_evaluate:18 ; MUBUF: ; %bb.0: ; %entry19 ; MUBUF-NEXT: s_load_dword s0, s[0:1], 0x2420 ; MUBUF-NEXT: s_mov_b32 s36, SCRATCH_RSRC_DWORD021 ; MUBUF-NEXT: s_mov_b32 s37, SCRATCH_RSRC_DWORD122 ; MUBUF-NEXT: s_mov_b32 s38, -1[all …]
2 ; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 < %s | FileCheck %s -check-prefix=MUBUF7 ; MUBUF-LABEL: memcpy_fixed_align:8 ; MUBUF: ; %bb.0:9 ; MUBUF-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)10 ; MUBUF-NEXT: global_load_dword v0, v[1:2], off offset:3611 ; MUBUF-NEXT: global_load_dword v11, v[1:2], off offset:3212 ; MUBUF-NEXT: global_load_dwordx4 v[3:6], v[1:2], off offset:1613 ; MUBUF-NEXT: global_load_dwordx4 v[7:10], v[1:2], off14 ; MUBUF-NEXT: s_waitcnt vmcnt(3)15 ; MUBUF-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:36[all …]
1 …ble-misched=0 -post-RA-scheduler=0 -stress-regalloc=8 < %s | FileCheck %s -check-prefixes=GCN,MUBUF5 ; MUBUF-DAG: buffer_store_dword v{{.*}} offset:16 ; 4-byte Folded Spill6 ; MUBUF-DAG: buffer_store_dword v{{.*}} offset:20 ; 4-byte Folded Spill11 ; MUBUF-DAG: buffer_load_dword v{{.*}} offset:16 ; 4-byte Folded Reload12 ; MUBUF-DAG: buffer_load_dword v{{.*}} offset:20 ; 4-byte Folded Reload33 ; MUBUF-DAG: buffer_store_dword v{{.*}} offset:16 ; 4-byte Folded Spill34 ; MUBUF-DAG: buffer_store_dword v{{.*}} offset:20 ; 4-byte Folded Spill39 ; MUBUF-DAG: buffer_load_dword v{{.*}} offset:16 ; 4-byte Folded Reload40 ; MUBUF-DAG: buffer_load_dword v{{.*}} offset:20 ; 4-byte Folded Reload61 ; MUBUF-DAG: buffer_store_dword v{{.*}} offset:32 ; 4-byte Folded Spill[all …]
1 …pu=hawaii -verify-machineinstrs < %s | FileCheck -enable-var-scope -check-prefixes=GCN,CI,MUBUF %s2 …=gfx900 -verify-machineinstrs < %s | FileCheck -enable-var-scope -check-prefixes=GCN,GFX9,MUBUF %s16 ; MUBUF-NEXT: s_mov_b32 [[FP_COPY:s4]], s3337 ; MUBUF-NEXT: buffer_store_dword v0, off, s[0:3], s32{{$}}52 ; MUBUF-NEXT: s_mov_b32 [[FP_COPY:s4]], s3355 ; MUBUF-NEXT: s_add_u32 s32, s32, 0x20058 ; MUBUF-NEXT: buffer_store_dword v0, off, s[0:3], s33 offset:4{{$}}60 ; MUBUF-NEXT: s_sub_u32 s32, s32, 0x20075 ; MUBUF-NEXT: buffer_store_dword v0, off, s[0:3], s32{{$}}89 ; MUBUF-NEXT: buffer_store_dword [[CSR_VGPR:v[0-9]+]], off, s[0:3], s32 offset:4 ; 4-byte Folded …[all …]
1 …gpu-sroa=0 -verify-machineinstrs < %s | FileCheck -enable-var-scope -check-prefixes=GCN,CI,MUBUF %s2 …erify-machineinstrs < %s | FileCheck -enable-var-scope -check-prefixes=GCN,GFX9,GFX9-MUBUF,MUBUF %s13 ; GFX9-MUBUF-NEXT: v_lshrrev_b32_e64 v0, 6, s3218 ; MUBUF-NOT: v_mov38 ; GFX9-MUBUF-NEXT: v_lshrrev_b32_e64 v0, 6, s3242 ; GFX9-MUBUF-NEXT: v_lshrrev_b32_e64 [[SCALED:v[0-9]+]], 6, s3243 ; GFX9-MUBUF-NEXT: v_add_u32_e32 v0, 4, [[SCALED]]63 ; GFX9-MUBUF: v_lshrrev_b32_e64 [[SCALED:v[0-9]+]], 6, s3264 ; GFX9-MUBUF-NEXT: v_add_u32_e32 v0, 4, [[SCALED]]85 ; GFX9-MUBUF: v_lshrrev_b32_e64 v0, 6, s32[all …]
2 …cpu=gfx900 -verify-machineinstrs -run-pass=prologepilog %s -o - | FileCheck --check-prefix=MUBUF %s25 ; MUBUF-LABEL: name: scavenge_sgpr_pei_no_sgprs26 ; MUBUF: liveins: $sgpr27, $vgpr127 ; MUBUF: $sgpr27 = frame-setup COPY $sgpr3328 ; MUBUF: $sgpr4 = frame-setup S_ADD_U32 $sgpr32, 524224, implicit-def $scc29 ; MUBUF: $sgpr33 = frame-setup S_AND_B32 killed $sgpr4, 4294443008, implicit-def $scc30 ; MUBUF: $sgpr32 = frame-setup S_ADD_U32 $sgpr32, 1572864, implicit-def $scc31 …; MUBUF: S_NOP 0, implicit-def $sgpr4, implicit-def $sgpr5, implicit-def $sgpr6, implicit-def $sgp…32 ; MUBUF: $vgpr0 = V_LSHRREV_B32_e64 6, $sgpr33, implicit $exec33 ; MUBUF: $vgpr2 = V_LSHRREV_B32_e64 6, $sgpr33, implicit $exec[all …]
1 …mdhsa -mcpu=fiji -enable-ipra=0 -verify-machineinstrs < %s | FileCheck -check-prefixes=GCN,MUBUF %s2 …hsa -mcpu=hawaii -enable-ipra=0 -verify-machineinstrs < %s | FileCheck -check-prefixes=GCN,MUBUF %s3 …hsa -mcpu=gfx900 -enable-ipra=0 -verify-machineinstrs < %s | FileCheck -check-prefixes=GCN,MUBUF %s26 ; MUBUF: buffer_store_dword38 ; MUBUF-DAG: v_readlane_b32 s4, v40, 239 ; MUBUF-DAG: v_readlane_b32 s5, v40, 346 ; MUBUF: buffer_load_dword57 ; MUBUF: buffer_store_dword v4062 ; MUBUF: s_add_u32 s32, s32, 0x40068 ; MUBUF: buffer_load_dword v40[all …]
2 …r=-promote-alloca -verify-machineinstrs < %s | FileCheck -check-prefixes=GCN,GFX900,GFX900-MUBUF %s1181 ; GFX900-MUBUF-LABEL: load_private_lo_v2i16_reglo_vreg:1182 ; GFX900-MUBUF: ; %bb.0: ; %entry1183 ; GFX900-MUBUF-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)1184 ; GFX900-MUBUF-NEXT: buffer_load_short_d16 v0, off, s[0:3], s32 offset:40941185 ; GFX900-MUBUF-NEXT: s_waitcnt vmcnt(0)1186 ; GFX900-MUBUF-NEXT: global_store_dword v[0:1], v0, off1187 ; GFX900-MUBUF-NEXT: s_waitcnt vmcnt(0)1188 ; GFX900-MUBUF-NEXT: s_setpc_b64 s[30:31]1230 ; GFX900-MUBUF-LABEL: load_private_lo_v2i16_reghi_vreg:[all …]
1 …erify-machineinstrs -run-pass=prologepilog %s -o - | FileCheck -check-prefixes=CHECK,GCN64,MUBUF %s2 …erify-machineinstrs -run-pass=prologepilog %s -o - | FileCheck -check-prefixes=CHECK,GCN32,MUBUF %s16 # MUBUF: BUFFER_STORE_DWORD_OFFSET killed $vgpr{{[0-9]+}}, ${{(sgpr[0-9_]+)*}}, $sgpr33, 424 # MUBUF: BUFFER_STORE_DWORD_OFFSET $vgpr{{[0-9]+}}, ${{(sgpr[0-9_]+)*}}, $sgpr33, 435 # MUBUF: BUFFER_STORE_DWORD_OFFSET killed $vgpr{{[0-9]+}}, ${{(sgpr[0-9_]+)*}}, $sgpr33, 847 # MUBUF: BUFFER_STORE_DWORD_OFFSET $vgpr{{[0-9]+}}, ${{(sgpr[0-9_]+)*}}, $sgpr33, 862 # MUBUF: BUFFER_STORE_DWORD_OFFSET killed $vgpr{{[0-9]+}}, ${{(sgpr[0-9_]+)*}}, $sgpr33, 1676 # MUBUF: BUFFER_STORE_DWORD_OFFSET killed $vgpr{{[0-9]+}}, ${{(sgpr[0-9_]+)*}}, $sgpr33, 2891 # MUBUF: BUFFER_STORE_DWORD_OFFSET {{(killed )?}}$vgpr{{[0-9]+}}, ${{(sgpr[0-9_]+)*}}, $sgpr33, 44109 # MUBUF: BUFFER_STORE_DWORD_OFFSET {{(killed )?}}$vgpr{{[0-9]+}}, ${{(sgpr[0-9_]+)*}}, $sgpr33, 64[all …]
1 …ble-misched=0 -post-RA-scheduler=0 -stress-regalloc=8 < %s | FileCheck -check-prefixes=GCN,MUBUF %s17 …; MUBUF: buffer_store_dword v{{[0-9]+}}, off, s[{{[0-9]+:[0-9]+}}], 0 offset:4092 ; 4-byte Folde…40 ; MUBUF: s_mov_b32 s6, 0x4000041 ; MUBUF: buffer_store_dword v{{[0-9]+}}, off, s[{{[0-9]+:[0-9]+}}], s6 ; 4-byte Folded Spill81 ; MUBUF: s_add_u32 s32, s32, 0x4000082 ; MUBUF: buffer_store_dword v{{[0-9]+}}, off, s[{{[0-9]+:[0-9]+}}], s32 ; 4-byte Folded Spill83 ; MUBUF: s_sub_u32 s32, s32, 0x40000100 ; MUBUF: s_add_u32 s32, s32, 0x40000101 ; MUBUF: buffer_load_dword v{{[0-9]+}}, off, s[{{[0-9]+:[0-9]+}}], s32 ; 4-byte Folded Reload102 ; MUBUF: s_sub_u32 s32, s32, 0x40000[all …]
1 …gent-register-indexing -verify-machineinstrs < %s | FileCheck --check-prefixes=GCN,SI,SIVI,MUBUF %s2 …gent-register-indexing -verify-machineinstrs < %s | FileCheck --check-prefixes=GCN,VI,SIVI,MUBUF %s3 …-machineinstrs < %s | FileCheck --check-prefixes=GCN,GFX9,GFX9_10,MUBUF,GFX9-MUBUF,GFX9_10-MUBUF %s5 …strs < %s | FileCheck --check-prefixes=GCN,GFX10_W32,GFX9_10,MUBUF,GFX10_W32-MUBUF,GFX9_10-MUBUF %s6 …strs < %s | FileCheck --check-prefixes=GCN,GFX10_W64,GFX9_10,MUBUF,GFX10_W64-MUBUF,GFX9_10-MUBUF %s52 ; MUBUF-DAG: s_mov_b32 s0, SCRATCH_RSRC_DWORD053 ; MUBUF-DAG: s_mov_b32 s1, SCRATCH_RSRC_DWORD154 ; MUBUF-DAG: s_mov_b32 s2, -157 ; GFX9-MUBUF-DAG: s_mov_b32 s3, 0xe0000058 ; GFX10_W32-MUBUF-DAG: s_mov_b32 s3, 0x31c16000[all …]
4 ;;; MUBUF LOAD TESTS7 ; MUBUF load with an immediate byte offset that fits into 12-bits18 ; MUBUF load with the largest possible immediate offset29 ; MUBUF load with an immediate byte offset that doesn't fit into 12-bits41 ; MUBUF load with a 12-bit immediate offset and a register offset88 ;;; MUBUF STORE TESTS91 ; MUBUF store with an immediate byte offset that fits into 12-bits101 ; MUBUF store with the largest possible immediate offset112 ; MUBUF store with an immediate byte offset that doesn't fit into 12-bits123 ; MUBUF store with a 12-bit immediate offset and a register offset
1 …strs < %s | FileCheck -allow-deprecated-dag-overlap -check-prefixes=GCN,GFX900,GFX9,GFX900-MUBUF %s393 ; GFX900-MUBUF-NEXT: buffer_store_short_d16_hi v1, v0, s[0:3], 0 offen{{$}}413 ; GFX900-MUBUF-NEXT: buffer_store_short_d16_hi v1, v0, s[0:3], 0 offen{{$}}433 ; GFX900-MUBUF-NEXT: buffer_store_short_d16_hi v1, v0, s[0:3], 0 offen{{$}}452 ; GFX900-MUBUF-NEXT: buffer_store_byte_d16_hi v1, v0, s[0:3], 0 offen{{$}}472 ; GFX900-MUBUF-NEXT: buffer_store_byte_d16_hi v1, v0, s[0:3], 0 offen{{$}}490 ; GFX900-MUBUF: buffer_store_short_d16_hi v0, off, s[0:3], s32 offset:4094{{$}}512 ; GFX900-MUBUF-NEXT: buffer_store_short_d16_hi v0, off, s[0:3], 0{{$}}534 ; GFX900-MUBUF-NEXT: buffer_store_byte_d16_hi v0, off, s[0:3], 0{{$}}648 ; GFX900-MUBUF: buffer_store_dword[all …]
1 …r=-promote-alloca -verify-machineinstrs < %s | FileCheck -check-prefixes=GCN,GFX900,GFX900-MUBUF %s497 ; GFX900-MUBUF: buffer_load_short_d16_hi v0, off, s[0:3], s32 offset:4094{{$}}517 ; GFX900-MUBUF: buffer_load_short_d16_hi v0, off, s[0:3], s32 offset:4094{{$}}557 ; GFX900-MUBUF-NEXT: buffer_load_short_d16_hi v1, off, s[0:3], 0 offset:4094{{$}}577 ; GFX900-MUBUF: buffer_load_ubyte_d16_hi v0, off, s[0:3], s32 offset:4095{{$}}598 ; GFX900-MUBUF: buffer_load_ubyte_d16_hi v0, off, s[0:3], s32 offset:4095{{$}}620 ; GFX900-MUBUF: buffer_load_sbyte_d16_hi v0, off, s[0:3], s32 offset:4095{{$}}642 ; GFX900-MUBUF: buffer_load_sbyte_d16_hi v0, off, s[0:3], s32 offset:4095{{$}}663 ; GFX900-MUBUF-NEXT: buffer_load_ubyte_d16_hi v1, off, s[0:3], 0 offset:4094{{$}}684 ; GFX900-MUBUF-NEXT: buffer_load_sbyte_d16_hi v1, off, s[0:3], 0 offset:4094{{$}}[all …]
23 ; an MUBUF load which does not have a vaddr operand.
6 ; MUBUF instructions, so a new base register is needed. This used to not
6 ;;; MUBUF LOAD TESTS9 ; MUBUF load with an immediate byte offset that fits into 12-bits20 ; MUBUF load with the largest possible immediate offset31 ; MUBUF load with an immediate byte offset that doesn't fit into 12-bits43 ; MUBUF load with a 12-bit immediate offset and a register offset88 ;;; MUBUF STORE TESTS91 ; MUBUF store with an immediate byte offset that fits into 12-bits101 ; MUBUF store with the largest possible immediate offset112 ; MUBUF store with an immediate byte offset that doesn't fit into 12-bits123 ; MUBUF store with a 12-bit immediate offset and a register offset
24 ; an MUBUF load which does not have a vaddr operand.
43 MUBUF = 10 variable in Format88 elif self == Format.MUBUF:1249 MUBUF = { variable1331 for (gfx6, gfx7, gfx8, gfx9, gfx10, name) in MUBUF:1332 opcode(name, gfx7, gfx9, gfx10, Format.MUBUF, is_atomic = "atomic" in name)
93 const uint64_t MemFlags = SIInstrFlags::MTBUF | SIInstrFlags::MUBUF | in runOnMachineFunction()
55 MUBUF Instructions57 All non-atomic MUBUF instructions are supported.
928 // MUBUF Instructions2159 (!cast<MUBUF>(opcode # _OFFSET) $rsrc, $soffset, (as_i16imm $offset),2167 (!cast<MUBUF>(opcode # _IDXEN) $vindex, $rsrc, $soffset, (as_i16imm $offset),2175 (!cast<MUBUF>(opcode # _OFFEN) $voffset, $rsrc, $soffset, (as_i16imm $offset),2183 (!cast<MUBUF>(opcode # _BOTHEN)2203 (!cast<MUBUF>(opcode # _OFFSET) $vdata, $rsrc, $soffset, (as_i16imm $offset),2211 (!cast<MUBUF>(opcode # _IDXEN) $vdata, $vindex, $rsrc, $soffset,2220 (!cast<MUBUF>(opcode # _OFFEN) $vdata, $voffset, $rsrc, $soffset,2229 (!cast<MUBUF>(opcode # _BOTHEN)2252 (!cast<MUBUF>(opcode # _RTN_OFFSET) $vdata_in, $rsrc, $soffset,[all …]
38 field bits<1> MUBUF = 0;74 let TSFlags{16} = MUBUF;686 class MUBUF <dag outs, dag ins, string asm, list<dag> pattern> :691 let MUBUF = 1;