Thanks. I forgot to add that this should also be applied to the 12.0 stable branch.

MM

On 08/10/2016 03:07 PM, Marek Olšák wrote:
Pushed, thanks.

Marek

On Mon, Aug 8, 2016 at 12:48 AM, Miklós Máté <[email protected]> wrote:
The temporaries are allocated dynamically.

Signed-off-by: Miklós Máté <[email protected]>
---
  src/mesa/state_tracker/st_atifs_to_tgsi.c | 5 +++--
  1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/mesa/state_tracker/st_atifs_to_tgsi.c 
b/src/mesa/state_tracker/st_atifs_to_tgsi.c
index 66f442a..ae08796 100644
--- a/src/mesa/state_tracker/st_atifs_to_tgsi.c
+++ b/src/mesa/state_tracker/st_atifs_to_tgsi.c
@@ -691,6 +691,7 @@ transform_inst:
        struct tgsi_full_instruction inst;
        unsigned i;
        int fogc_index = -1;
+      int reg0_index = current_inst->Src[0].Register.Index;

        /* find FOGC input */
        for (i = 0; i < ctx->info.num_inputs; i++) {
@@ -804,11 +805,11 @@ transform_inst:
        inst.Instruction.Opcode = TGSI_OPCODE_LRP;
        inst.Instruction.NumDstRegs = 1;
        inst.Dst[0].Register.File  = TGSI_FILE_TEMPORARY;
-      inst.Dst[0].Register.Index = 0;
+      inst.Dst[0].Register.Index = reg0_index;
        inst.Dst[0].Register.WriteMask = TGSI_WRITEMASK_XYZW;
        inst.Instruction.NumSrcRegs = 3;
        SET_SRC(&inst, 0, TGSI_FILE_TEMPORARY, ctx->fog_factor_temp, X, X, X, 
Y);
-      SET_SRC(&inst, 1, TGSI_FILE_TEMPORARY, 0, X, Y, Z, W);
+      SET_SRC(&inst, 1, TGSI_FILE_TEMPORARY, reg0_index, X, Y, Z, W);
        SET_SRC(&inst, 2, TGSI_FILE_CONSTANT, MAX_NUM_FRAGMENT_CONSTANTS_ATI + 
1, X, Y, Z, W);
        tctx->emit_instruction(tctx, &inst);
     }
--
2.8.1

_______________________________________________
mesa-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


_______________________________________________
mesa-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to