i965: Set correct values for range/precision of fragment shader types
authorIan Romanick <ian.d.romanick@intel.com>
Thu, 20 Jan 2011 20:07:21 +0000 (12:07 -0800)
committerIan Romanick <ian.d.romanick@intel.com>
Thu, 20 Jan 2011 21:35:59 +0000 (13:35 -0800)
src/mesa/drivers/dri/i965/brw_context.c

index 8fc322f..d3b61ab 100644 (file)
@@ -151,6 +151,15 @@ GLboolean brwCreateContext( int api,
       MIN2(ctx->Const.FragmentProgram.MaxNativeParameters,
           ctx->Const.FragmentProgram.MaxEnvParams);
 
+   /* Fragment shaders use real, 32-bit twos-complement integers for all
+    * integer types.
+    */
+   ctx->FragmentProgram.LowInt.RangeMin = 31;
+   ctx->FragmentProgram.LowInt.RangeMax = 30;
+   ctx->FragmentProgram.LowInt.Precision = 0;
+   ctx->FragmentProgram.HighInt = ctx->FragmentProgram.MediumInt
+      = ctx->FragmentProgram.LowInt;
+
    /* Gen6 converts quads to polygon in beginning of 3D pipeline,
       but we're not sure how it's actually done for vertex order,
       that affect provoking vertex decision. Always use last vertex