• Home
  • Raw
  • Download

Lines Matching refs:mubuf

4436    aco_ptr<MUBUF_instruction> mubuf{create_instruction<MUBUF_instruction>(op, Format::MUBUF, 3, 1)};  in mubuf_load_callback()  local
4437 mubuf->operands[0] = Operand(info.resource); in mubuf_load_callback()
4438 mubuf->operands[1] = vaddr; in mubuf_load_callback()
4439 mubuf->operands[2] = soffset; in mubuf_load_callback()
4440 mubuf->offen = (offset.type() == RegType::vgpr); in mubuf_load_callback()
4441 mubuf->glc = info.glc; in mubuf_load_callback()
4442 mubuf->dlc = in mubuf_load_callback()
4444 mubuf->slc = info.slc; in mubuf_load_callback()
4445 mubuf->sync = info.sync; in mubuf_load_callback()
4446 mubuf->offset = const_offset; in mubuf_load_callback()
4447 mubuf->swizzled = info.swizzle_component_size != 0; in mubuf_load_callback()
4450 mubuf->definitions[0] = Definition(val); in mubuf_load_callback()
4451 bld.insert(std::move(mubuf)); in mubuf_load_callback()
4649 aco_ptr<MUBUF_instruction> mubuf{ in global_load_callback() local
4651 mubuf->operands[0] = Operand(get_gfx6_global_rsrc(bld, addr)); in global_load_callback()
4652 mubuf->operands[1] = addr.type() == RegType::vgpr ? Operand(addr) : Operand(v1); in global_load_callback()
4653 mubuf->operands[2] = Operand(offset); in global_load_callback()
4654 mubuf->glc = info.glc; in global_load_callback()
4655 mubuf->dlc = false; in global_load_callback()
4656 mubuf->offset = const_offset; in global_load_callback()
4657 mubuf->addr64 = addr.type() == RegType::vgpr; in global_load_callback()
4658 mubuf->disable_wqm = false; in global_load_callback()
4659 mubuf->sync = info.sync; in global_load_callback()
4660 mubuf->definitions[0] = Definition(val); in global_load_callback()
4661 bld.insert(std::move(mubuf)); in global_load_callback()
5087 bld.mubuf(op, Operand(descriptor), voffset_op, soffset_op, Operand(vdata), const_offset, in emit_single_mubuf_store()
5092 r.instr->mubuf().sync = sync; in emit_single_mubuf_store()
5635 Instruction* mubuf = bld.mubuf(opcode, Definition(fetch_dst), list, fetch_index, in visit_load_input() local
5638 mubuf->mubuf().vtx_binding = attrib_binding + 1; in visit_load_input()
6528 aco_ptr<MUBUF_instruction> mubuf{create_instruction<MUBUF_instruction>( in visit_image_atomic() local
6530 mubuf->operands[0] = Operand(resource); in visit_image_atomic()
6531 mubuf->operands[1] = Operand(vindex); in visit_image_atomic()
6532 mubuf->operands[2] = Operand::c32(0); in visit_image_atomic()
6533 mubuf->operands[3] = Operand(data); in visit_image_atomic()
6537 mubuf->definitions[0] = def; in visit_image_atomic()
6538 mubuf->offset = 0; in visit_image_atomic()
6539 mubuf->idxen = true; in visit_image_atomic()
6540 mubuf->glc = return_previous; in visit_image_atomic()
6541 mubuf->dlc = false; /* Not needed for atomics */ in visit_image_atomic()
6542 mubuf->disable_wqm = true; in visit_image_atomic()
6543 mubuf->sync = sync; in visit_image_atomic()
6545 ctx->block->instructions.emplace_back(std::move(mubuf)); in visit_image_atomic()
6817 aco_ptr<MUBUF_instruction> mubuf{ in visit_atomic_ssbo() local
6819 mubuf->operands[0] = Operand(rsrc); in visit_atomic_ssbo()
6820 mubuf->operands[1] = offset.type() == RegType::vgpr ? Operand(offset) : Operand(v1); in visit_atomic_ssbo()
6821 mubuf->operands[2] = offset.type() == RegType::sgpr ? Operand(offset) : Operand::c32(0); in visit_atomic_ssbo()
6822 mubuf->operands[3] = Operand(data); in visit_atomic_ssbo()
6826 mubuf->definitions[0] = def; in visit_atomic_ssbo()
6827 mubuf->offset = 0; in visit_atomic_ssbo()
6828 mubuf->offen = (offset.type() == RegType::vgpr); in visit_atomic_ssbo()
6829 mubuf->glc = return_previous; in visit_atomic_ssbo()
6830 mubuf->dlc = false; /* Not needed for atomics */ in visit_atomic_ssbo()
6831 mubuf->disable_wqm = true; in visit_atomic_ssbo()
6832 mubuf->sync = get_memory_sync_info(instr, storage_buffer, semantic_atomicrmw); in visit_atomic_ssbo()
6834 ctx->block->instructions.emplace_back(std::move(mubuf)); in visit_atomic_ssbo()
6979 aco_ptr<MUBUF_instruction> mubuf{ in visit_store_global() local
6981 mubuf->operands[0] = Operand(rsrc); in visit_store_global()
6982 mubuf->operands[1] = in visit_store_global()
6984 mubuf->operands[2] = Operand(write_offset); in visit_store_global()
6985 mubuf->operands[3] = Operand(write_datas[i]); in visit_store_global()
6986 mubuf->glc = glc; in visit_store_global()
6987 mubuf->dlc = false; in visit_store_global()
6988 mubuf->offset = write_const_offset; in visit_store_global()
6989 mubuf->addr64 = write_address.type() == RegType::vgpr; in visit_store_global()
6990 mubuf->disable_wqm = true; in visit_store_global()
6991 mubuf->sync = sync; in visit_store_global()
6993 ctx->block->instructions.emplace_back(std::move(mubuf)); in visit_store_global()
7159 aco_ptr<MUBUF_instruction> mubuf{ in visit_global_atomic() local
7161 mubuf->operands[0] = Operand(rsrc); in visit_global_atomic()
7162 mubuf->operands[1] = addr.type() == RegType::vgpr ? Operand(addr) : Operand(v1); in visit_global_atomic()
7163 mubuf->operands[2] = Operand(offset); in visit_global_atomic()
7164 mubuf->operands[3] = Operand(data); in visit_global_atomic()
7168 mubuf->definitions[0] = def; in visit_global_atomic()
7169 mubuf->glc = return_previous; in visit_global_atomic()
7170 mubuf->dlc = false; in visit_global_atomic()
7171 mubuf->offset = const_offset; in visit_global_atomic()
7172 mubuf->addr64 = addr.type() == RegType::vgpr; in visit_global_atomic()
7173 mubuf->disable_wqm = true; in visit_global_atomic()
7174 mubuf->sync = get_memory_sync_info(instr, storage_buffer, semantic_atomicrmw); in visit_global_atomic()
7176 ctx->block->instructions.emplace_back(std::move(mubuf)); in visit_global_atomic()
7686 Instruction* mubuf = bld.mubuf(op, rsrc, offset, ctx->program->scratch_offset, in visit_store_scratch() local
7688 mubuf->mubuf().sync = memory_sync_info(storage_scratch, semantic_private); in visit_store_scratch()
7765 aco_ptr<MUBUF_instruction> mubuf{create_instruction<MUBUF_instruction>( in visit_emit_vertex_with_counter() local
7767 mubuf->operands[0] = Operand(gsvs_ring); in visit_emit_vertex_with_counter()
7768 mubuf->operands[1] = vaddr_offset; in visit_emit_vertex_with_counter()
7769 mubuf->operands[2] = Operand(get_arg(ctx, ctx->args->ac.gs2vs_offset)); in visit_emit_vertex_with_counter()
7770 mubuf->operands[3] = Operand(ctx->outputs.temps[i * 4u + j]); in visit_emit_vertex_with_counter()
7771 mubuf->offen = !vaddr_offset.isUndefined(); in visit_emit_vertex_with_counter()
7772 mubuf->offset = const_offset; in visit_emit_vertex_with_counter()
7773 mubuf->glc = ctx->program->gfx_level < GFX11; in visit_emit_vertex_with_counter()
7774 mubuf->slc = true; in visit_emit_vertex_with_counter()
7775 mubuf->sync = memory_sync_info(storage_vmem_output, semantic_can_reorder); in visit_emit_vertex_with_counter()
7776 bld.insert(std::move(mubuf)); in visit_emit_vertex_with_counter()
9820 aco_ptr<MUBUF_instruction> mubuf{ in visit_tex() local
9822 mubuf->operands[0] = Operand(resource); in visit_tex()
9823 mubuf->operands[1] = Operand(coords[0]); in visit_tex()
9824 mubuf->operands[2] = Operand::c32(0); in visit_tex()
9825 mubuf->definitions[0] = Definition(tmp_dst); in visit_tex()
9826 mubuf->idxen = true; in visit_tex()
9827 mubuf->tfe = instr->is_sparse; in visit_tex()
9828 if (mubuf->tfe) in visit_tex()
9829 mubuf->operands[3] = emit_tfe_init(bld, tmp_dst); in visit_tex()
9830 ctx->block->instructions.emplace_back(std::move(mubuf)); in visit_tex()
12445 bld.mubuf(aco_opcode::buffer_load_dword, Definition(dest.advance(j * 4u), v1), in select_vs_prolog()
12462 bld.mubuf(aco_opcode::buffer_load_format_xyzw, Definition(dest, v4), in select_vs_prolog()