mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-07 15:10:12 +01:00
ir_to_mesa: set IndirectRegisterFiles
This fixes relative addressing of temporaries (and maybe others) in all gallium drivers. Acked on irc by Eric Anholt.
This commit is contained in:
parent
57e66ed9b1
commit
5755d1d6a7
1 changed files with 8 additions and 0 deletions
|
|
@ -2569,6 +2569,14 @@ get_mesa_program(GLcontext *ctx, struct gl_shader_program *shader_program,
|
|||
mesa_inst->TexShadow = inst->tex_shadow;
|
||||
mesa_instruction_annotation[i] = inst->ir;
|
||||
|
||||
/* Set IndirectRegisterFiles. */
|
||||
if (mesa_inst->DstReg.RelAddr)
|
||||
prog->IndirectRegisterFiles |= 1 << mesa_inst->DstReg.File;
|
||||
|
||||
for (unsigned src = 0; src < 3; src++)
|
||||
if (mesa_inst->SrcReg[src].RelAddr)
|
||||
prog->IndirectRegisterFiles |= 1 << mesa_inst->SrcReg[src].File;
|
||||
|
||||
if (ctx->Shader.EmitNoIfs && mesa_inst->Opcode == OPCODE_IF) {
|
||||
shader_program->InfoLog =
|
||||
talloc_asprintf_append(shader_program->InfoLog,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue