Mesa (master): i915g: Implement fake DDX/DDY.

Stephane Marchesin marcheu at kemper.freedesktop.org
Mon Jun 27 09:06:04 UTC 2011


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

Author: Stéphane Marchesin <marcheu at chromium.org>
Date:   Sun Jun 26 13:40:54 2011 -0700

i915g: Implement fake DDX/DDY.

---

 src/gallium/drivers/i915/i915_fpc_translate.c |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/src/gallium/drivers/i915/i915_fpc_translate.c b/src/gallium/drivers/i915/i915_fpc_translate.c
index ec2c316..6948fc3 100644
--- a/src/gallium/drivers/i915/i915_fpc_translate.c
+++ b/src/gallium/drivers/i915/i915_fpc_translate.c
@@ -516,6 +516,18 @@ i915_translate_instruction(struct i915_fp_compile *p,
                       i915_emit_const4fv(p, cos_constants), 0);
       break;
 
+  case TGSI_OPCODE_DDX:
+  case TGSI_OPCODE_DDY:
+      /* XXX We just output 0 here */
+      debug_printf("Punting DDX/DDX\n");
+      src0 = get_result_vector(p, &inst->Dst[0]);
+      i915_emit_arith(p,
+                      A0_MOV,
+                      get_result_vector(p, &inst->Dst[0]),
+                      get_result_flags(inst), 0,
+                      swizzle(src0, ZERO, ZERO, ZERO, ZERO), 0, 0);
+      break;
+
   case TGSI_OPCODE_DP2:
       src0 = src_vector(p, &inst->Src[0], fs);
       src1 = src_vector(p, &inst->Src[1], fs);




More information about the mesa-commit mailing list