mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-22 02:40:11 +01:00
aco: support 32bit address in nir_load_smem_amd
radeonsi uses 32bit address. Reviewed-by: Rhys Perry <pendingchaos02@gmail.com> Signed-off-by: Qiang Yu <yuq825@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22525>
This commit is contained in:
parent
3ff9153a3b
commit
31bfad83ec
1 changed files with 6 additions and 0 deletions
|
|
@ -7179,6 +7179,12 @@ visit_load_smem(isel_context* ctx, nir_intrinsic_instr* instr)
|
|||
Temp base = bld.as_uniform(get_ssa_temp(ctx, instr->src[0].ssa));
|
||||
Temp offset = bld.as_uniform(get_ssa_temp(ctx, instr->src[1].ssa));
|
||||
|
||||
/* If base address is 32bit, convert to 64bit with the high 32bit part. */
|
||||
if (base.bytes() == 4) {
|
||||
base = bld.pseudo(aco_opcode::p_create_vector, bld.def(s2),
|
||||
base, Operand::c32(ctx->options->address32_hi));
|
||||
}
|
||||
|
||||
aco_opcode opcode = aco_opcode::s_load_dword;
|
||||
unsigned size = 1;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue