Searched refs:RegClass (Results 1 - 19 of 19) sorted by relevance

/xsrc/external/mit/MesaLib/dist/src/amd/compiler/
H A Daco_ir.h307 struct RegClass { struct in namespace:aco
337 RegClass() = default;
338 constexpr RegClass(RC rc_) : rc(rc_) {} function in struct:aco::RegClass
339 constexpr RegClass(RegType type, unsigned size) function in struct:aco::RegClass
353 constexpr RegClass as_linear() const { return RegClass((RC)(rc | (1 << 6))); }
354 constexpr RegClass as_subdword() const { return RegClass((RC)(rc | 1 << 7)); }
356 static constexpr RegClass get(RegType type, unsigned bytes)
359 return RegClass(typ
[all...]
H A Daco_reindex_ssa.cpp33 std::vector<RegClass> temp_rc = {s1};
44 RegClass rc = def.regClass();
H A Daco_instruction_selection.h45 std::fill_n(temps, VARYING_SLOT_MAX * 4u, Temp(0, RegClass::v1));
H A Daco_instruction_selection_setup.cpp240 RegClass
244 return RegClass(RegType::sgpr, ctx->program->lane_mask.size() * components);
246 return RegClass::get(type, components * bitsize / 8u);
451 RegClass* regclasses = ctx->program->temp_rc.data() + ctx->first_temp_id;
559 RegClass rc = get_reg_class(ctx, type, alu_instr->dest.dest.ssa.num_components,
567 RegClass rc = get_reg_class(ctx, RegType::sgpr, num_components, bit_size);
741 RegClass rc = get_reg_class(ctx, type, intrinsic->dest.ssa.num_components,
754 RegClass rc =
768 RegClass rc = get_reg_class(ctx, RegType::sgpr, num_components, bit_size);
788 RegClass r
[all...]
H A Daco_reduce_assign.cpp60 Temp reduceTmp(0, RegClass(RegType::vgpr, maxSize).as_linear());
61 Temp vtmp(0, RegClass(RegType::vgpr, maxSize).as_linear());
H A Daco_register_allocation.cpp41 unsigned idx, RegClass rc);
43 RegClass rc);
45 get_subdword_definition_info(Program* program, const aco_ptr<Instruction>& instr, RegClass rc);
50 RegClass rc;
54 assignment(PhysReg reg_, RegClass rc_) : reg(reg_), rc(rc_), assigned(-1) {}
167 get_stride(RegClass rc)
197 RegClass rc;
199 DefInfo(ra_ctx& ctx, aco_ptr<Instruction>& instr, RegClass rc_, int operand) : rc(rc_)
213 rc = RegClass::get(rc.type(), info.second);
264 void block(PhysReg start, RegClass r
[all...]
H A Daco_lower_to_hw_instr.cpp304 RegClass src0_rc = src0_reg.reg() >= 256 ? v1 : s1;
391 RegClass rc = RegClass(RegType::vgpr, size);
431 RegClass rc = RegClass(RegType::vgpr, size);
433 Operand src0(src0_reg, RegClass(src0_reg.reg() >= 256 ? RegType::vgpr : RegType::sgpr, size));
1003 RegClass op_cls = src.op.regClass().resize(bytes);
1204 Definition(lo_reg, RegClass::get(RegType::vgpr, def.physReg().byte()));
1206 Definition(lo_reg, RegClass::get(RegType::vgpr, lo_half.bytes() + op.bytes()));
1521 RegClass r
[all...]
H A Daco_instruction_selection.cpp151 RegClass rc = RegClass(mask.regClass().type(), 1);
338 emit_extract_vector(isel_context* ctx, Temp src, uint32_t idx, RegClass dst_rc)
379 RegClass rc;
387 rc = RegClass(RegType::vgpr, vec_src.bytes() / num_components).as_subdword();
389 rc = RegClass(vec_src.type(), vec_src.size() / num_components);
432 emit_extract_vector(ctx, vec_src, k++, RegClass(vec_src.type(), component_size));
536 RegClass rc = RegClass(RegType::vgpr, component_size).as_subdword();
555 vec = bld.pseudo(aco_opcode::p_as_uniform, bld.def(RegClass(RegTyp
[all...]
H A Daco_optimizer_postRA.cpp109 last_writer_idx(pr_opt_ctx& ctx, PhysReg physReg, RegClass rc)
143 is_clobbered_since(pr_opt_ctx& ctx, PhysReg reg, RegClass rc, const Idx& idx)
H A Daco_live_var_analysis.cpp215 RegClass rc = program->temp_rc[t];
H A Daco_lower_phis.cpp326 Temp tmp = bld.tmp(RegClass(RegType::vgpr, phi_src.size()));
H A Daco_spill.cpp78 std::vector<std::pair<RegClass, std::unordered_set<uint32_t>>> interferences;
133 uint32_t allocate_spill_id(RegClass rc)
1440 RegClass other_rc = ctx.interferences[other].first;
H A Daco_insert_waitcnt.cpp570 insert_wait_entry(wait_ctx& ctx, PhysReg reg, RegClass rc, wait_event event, bool wait_on_read,
H A Daco_print_ir.cpp90 print_reg_class(const RegClass rc, FILE* output)
/xsrc/external/mit/MesaLib/dist/src/amd/compiler/tests/
H A Dhelpers.cpp119 RegClass cls(input_spec[i * 3] == 'v' ? RegType::vgpr : RegType::sgpr, input_spec[i * 3 + 1] - '0');
H A Dtest_to_hw_instr.cpp712 RegClass v1_linear = v1.as_linear();
/xsrc/external/mit/MesaLib/dist/docs/relnotes/
H A D20.1.0.rst1253 - aco: refactor get_reg() to take Temp instead of RegClass
3581 - aco: add and use RegClass::get() helper
H A D21.3.0.rst3587 - aco: add RegClass::is_linear_vgpr helper
3588 - aco: add and use RegClass::resize helper
H A D21.2.0.rst1559 - aco: simplify Phi RegClass selection

Completed in 58 milliseconds