Mesa (7.10): i915: Set correct values for range/ precision of fragment shader types
Ian Romanick
idr at kemper.freedesktop.org
Mon Feb 28 22:27:46 UTC 2011
Module: Mesa
Branch: 7.10
Commit: 0a92301c8086752542b4a961762e0964bc75aee9
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=0a92301c8086752542b4a961762e0964bc75aee9
Author: Ian Romanick <ian.d.romanick at intel.com>
Date: Thu Jan 20 12:07:51 2011 -0800
i915: Set correct values for range/precision of fragment shader types
(cherry picked from commit 790ff232e2607a83e6207d06900a5e3de613d161)
---
src/mesa/drivers/dri/i915/i915_context.c | 14 ++++++++++++++
1 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/src/mesa/drivers/dri/i915/i915_context.c b/src/mesa/drivers/dri/i915/i915_context.c
index f32f3cf..49ad7db 100644
--- a/src/mesa/drivers/dri/i915/i915_context.c
+++ b/src/mesa/drivers/dri/i915/i915_context.c
@@ -168,6 +168,20 @@ i915CreateContext(int api,
MIN2(ctx->Const.FragmentProgram.MaxNativeParameters,
ctx->Const.FragmentProgram.MaxEnvParams);
+ /* i915 stores all values in single-precision floats. Values aren't set
+ * for other program targets because software is used for those targets.
+ */
+ ctx->FragmentProgram.MediumFloat.RangeMin = 127;
+ ctx->FragmentProgram.MediumFloat.RangeMax = 127;
+ ctx->FragmentProgram.MediumFloat.Precision = 23;
+ ctx->FragmentProgram.LowFloat = ctx->FragmentProgram.HighFloat =
+ ctx->FragmentProgram.MediumFloat;
+ ctx->FragmentProgram.MediumInt.RangeMin = 24;
+ ctx->FragmentProgram.MediumInt.RangeMax = 24;
+ ctx->FragmentProgram.MediumInt.Precision = 0;
+ ctx->FragmentProgram.LowInt = ctx->FragmentProgram.HighInt =
+ ctx->FragmentProgram.MediumInt;
+
ctx->FragmentProgram._MaintainTexEnvProgram = GL_TRUE;
/* FINISHME: Are there other options that should be enabled for software
More information about the mesa-commit
mailing list