mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-06 11:38:05 +02:00
radv: fix allocating USER SGPRs on GFX10
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
parent
71446bf8e3
commit
53c75f17ec
1 changed files with 8 additions and 7 deletions
|
|
@ -1004,13 +1004,6 @@ static void create_function(struct radv_shader_context *ctx,
|
|||
struct arg_info args = {};
|
||||
LLVMValueRef desc_sets;
|
||||
bool needs_view_index = needs_view_index_sgpr(ctx, stage);
|
||||
allocate_user_sgprs(ctx, stage, has_previous_stage,
|
||||
previous_stage, needs_view_index, &user_sgpr_info);
|
||||
|
||||
if (user_sgpr_info.need_ring_offsets && !ctx->options->supports_spill) {
|
||||
add_arg(&args, ARG_SGPR, ac_array_in_const_addr_space(ctx->ac.v4i32),
|
||||
&ctx->ring_offsets);
|
||||
}
|
||||
|
||||
if (ctx->ac.chip_class >= GFX10) {
|
||||
if (is_pre_gs_stage(stage) && ctx->options->key.vs.out.as_ngg) {
|
||||
|
|
@ -1021,6 +1014,14 @@ static void create_function(struct radv_shader_context *ctx,
|
|||
}
|
||||
}
|
||||
|
||||
allocate_user_sgprs(ctx, stage, has_previous_stage,
|
||||
previous_stage, needs_view_index, &user_sgpr_info);
|
||||
|
||||
if (user_sgpr_info.need_ring_offsets && !ctx->options->supports_spill) {
|
||||
add_arg(&args, ARG_SGPR, ac_array_in_const_addr_space(ctx->ac.v4i32),
|
||||
&ctx->ring_offsets);
|
||||
}
|
||||
|
||||
switch (stage) {
|
||||
case MESA_SHADER_COMPUTE:
|
||||
declare_global_input_sgprs(ctx, &user_sgpr_info, &args,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue