diff options
author | Ilia Mirkin <[email protected]> | 2016-09-10 12:53:37 -0400 |
---|---|---|
committer | Ilia Mirkin <[email protected]> | 2016-09-10 13:36:20 -0400 |
commit | a22aee5ad1154918aff77af5102fecd2aa39a631 (patch) | |
tree | 8fe2f4a99fbf39a9dd2e2f48df37c5d3f2dd1dd8 /src/gallium/drivers | |
parent | 83e8617f4b13e75f44ba45dd156c0656a5e07b08 (diff) |
gm107/ir: AL2P writes to a predicate register
We have to force it to write to predicate 7 (aka PT) in order for it not
to mess up another predicate. Unclear what would be returned in the
predicate, perhaps an error code for out-of-bounds requests. Blob
doesn't seem to check it.
Signed-off-by: Ilia Mirkin <[email protected]>
Reviewed-by: Samuel Pitoiset <[email protected]>
Cc: [email protected]
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r-- | src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp index 791273faa0b..cfde66cd4ed 100644 --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp @@ -2307,6 +2307,7 @@ CodeEmitterGM107::emitAL2P() { emitInsn (0xefa00000); emitField(0x2f, 2, (insn->getDef(0)->reg.size / 4) - 1); + emitPRED (0x2c); emitO (0x20); emitField(0x14, 11, insn->src(0).get()->reg.data.offset); emitGPR (0x08, insn->src(0).getIndirect(0)); |