Module: Mesa
Branch: master
Commit: f47845596bce36aeb84a8a7f6c7e643486ec2185
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=f47845596bce36aeb84a8a7f6c7e643486ec2185

Author: Ilia Mirkin <[email protected]>
Date:   Sat Jun 11 11:50:15 2016 -0400

nv50: enable indirect addressing of fragment shader inputs

Signed-off-by: Ilia Mirkin <[email protected]>

---

 src/gallium/drivers/nouveau/codegen/nv50_ir_emit_nv50.cpp | 1 +
 src/gallium/drivers/nouveau/nv50/nv50_screen.c            | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_nv50.cpp 
b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_nv50.cpp
index 5d68e99..0fe399b 100644
--- a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_nv50.cpp
+++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_nv50.cpp
@@ -911,6 +911,7 @@ CodeEmitterNV50::emitINTERP(const Instruction *i)
 
    defId(i->def(0), 2);
    srcAddr8(i->src(0), 16);
+   setAReg16(i, 0);
 
    if (i->encSize != 8 && i->getInterpMode() == NV50_IR_INTERP_FLAT) {
       code[0] |= 1 << 8;
diff --git a/src/gallium/drivers/nouveau/nv50/nv50_screen.c 
b/src/gallium/drivers/nouveau/nv50/nv50_screen.c
index bcb1ae9..03f4591 100644
--- a/src/gallium/drivers/nouveau/nv50/nv50_screen.c
+++ b/src/gallium/drivers/nouveau/nv50/nv50_screen.c
@@ -306,9 +306,9 @@ nv50_screen_get_shader_param(struct pipe_screen *pscreen, 
unsigned shader,
       return 65536;
    case PIPE_SHADER_CAP_MAX_CONST_BUFFERS:
       return NV50_MAX_PIPE_CONSTBUFS;
-   case PIPE_SHADER_CAP_INDIRECT_INPUT_ADDR:
    case PIPE_SHADER_CAP_INDIRECT_OUTPUT_ADDR:
       return shader != PIPE_SHADER_FRAGMENT;
+   case PIPE_SHADER_CAP_INDIRECT_INPUT_ADDR:
    case PIPE_SHADER_CAP_INDIRECT_TEMP_ADDR:
    case PIPE_SHADER_CAP_INDIRECT_CONST_ADDR:
       return 1;

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

Reply via email to