History log of /external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
174d44a9c4d39a030fe3528acf07f9ac9aa617a1 22-Aug-2012 Kenneth Graunke <kenneth@whitecape.org> mesa: Use a new, more specific hook for shader uniform changes.

Gallium drivers and i965 don't require special notification when
sampler uniforms change. They simply see the _NEW_TEXTURE and adjust
their indirection tables. These drivers don't want ProgramStringNotify:
it simply causes pointless recompiles.

Unfortunately, i915 still requires shader recompiles and needs
ProgramStringNotify. Rather than trying to fix that, simply change the
hook to a new, more specific one: ShaderUniformChange. On i915, this
translates to ProgramStringNotify; others simply ignore it.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
058fc6521e3bc483bc948cc90dc5ee3b08d6ec64 23-Feb-2012 Yuanhan Liu <yuanhan.liu@linux.intel.com> i915: fix wrong rendering of gl_PointSize on Pineview

The current code would ignore the point size specified by gl_PointSize
builtin variable in vertex shader on Pineview. This patch servers as
fixing that.

This patch fixes the following issues on Pineview:
webglc: https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/conformance/rendering/point-size.html
piglit: glsl-vs-point-size

NOTE: This is a candidate for stable release branches.

v2: pick Eric's nice tip for fixing this issue in hardware rendering.
v3: the last arg of EMIT_ATTR specify the size in _byte_. (Eric)

Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
dca6a28a14f22d77273d79d44f57b0d853c0242d 31-Oct-2011 Mathias Fröhlich <Mathias.Froehlich@web.de> mesa: Make gl_program::InputsRead 64 bits.

Make gl_program::InputsRead a 64 bits bitfield.
Adapt the intel and radeon driver to handle a 64 bits
InputsRead value.

Signed-off-by: Mathias Froehlich <Mathias.Froehlich@web.de>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
2e5a1a254ed81b1d3efa6064f48183eefac784d0 07-Oct-2011 Kenneth Graunke <kenneth@whitecape.org> intel: Convert from GLboolean to 'bool' from stdbool.h.

I initially produced the patch using this bash command:
for file in {intel,i915,i965}/*.{c,cpp,h}; do [ ! -h $file ] && sed -i
's/GLboolean/bool/g' $file && sed -i 's/GL_TRUE/true/g' $file && sed -i
's/GL_FALSE/false/g' $file; done

Then I manually added #include <stdbool.h> to fix compilation errors,
and converted a few functions back to GLboolean that were used in core
Mesa's function pointer table to avoid "incompatible pointer" warnings.

Finally, I cleaned up some whitespace issues introduced by the change.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Chad Versace <chad@chad-versace.us>
Acked-by: Paul Berry <stereotype441@gmail.com>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
67582e6eef789324b527b4753065aea366145f4e 30-Sep-2011 Chris Wilson <chris@chris-wilson.co.uk> i915: out-of-bounds write in calc_live_regs()

From a Coverity defect report.

src/mesa/drivers/dri/i915/i915_fragprog.c
301 /*
302 * TODO: consider moving this into core
303 */
304 static bool calc_live_regs( struct i915_fragment_program *p )
305 {
306 const struct gl_fragment_program *program = &p->FragProg;
307 GLuint regsUsed = 0xffff0000;
-> 308 uint8_t live_components[16] = { 0, };
309 GLint i;
310
311 for (i = program->Base.NumInstructions - 1; i >= 0; i--) {
312 struct prog_instruction *inst =
&program->Base.Instructions[i];
313 int opArgs = _mesa_num_inst_src_regs(inst->Opcode);
314 int a;
315
316 /* Register is written to: unmark as live for this and
preceeding ops */
317 if (inst->DstReg.File == PROGRAM_TEMPORARY) {
-> 318 if (inst->DstReg.Index > 16)
319 return false;
320
-> 321 live_components[inst->DstReg.Index] &= ~inst->DstReg.WriteMask;
322 if (live_components[inst->DstReg.Index] == 0)
323 regsUsed &= ~(1 << inst->DstReg.Index);
324 }
325
326 for (a = 0; a < opArgs; a++) {
327 /* Register is read from: mark as live for this and preceeding ops */
328 if (inst->SrcReg[a].File == PROGRAM_TEMPORARY) {
329 unsigned c;
330
331 if (inst->SrcReg[a].Index > 16)
332 return false;
333
334 regsUsed |= 1 << inst->SrcReg[a].Index;
335
336 for (c = 0; c < 4; c++) {
337 const unsigned field = GET_SWZ(inst->SrcReg[a].Swizzle, c);
338
339 if (field <= SWIZZLE_W)
340 live_components[inst->SrcReg[a].Index] |= (1U << field);
341 }
342 }
343 }
344
345 p->usedRegs[i] = regsUsed;
346 }

Reported-by: Vinson Lee <vlee@vmware.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=40022
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
a9e97d022cb68266639eb54947517454c8ffe45e 05-Aug-2011 Eric Anholt <eric@anholt.net> intel: Fix warnings from gl_constant_parameter changes.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
3bb2f0dde1cd813a0b5e0b45be376f4d6606aeb8 26-Jul-2011 Ian Romanick <ian.d.romanick@intel.com> i915: Fail without crashing if a Mesa IR program uses too many registers

This can only happen in GLSL shaders because assembly shaders that use
too many temps are rejected by core Mesa. It is easiest to make this
happen with shaders that contain flow-control that could not be lowered.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
cb5e0ba2aa97df28a9faeb7ca0d2f0cdfcf4e507 13-Jul-2011 Eric Anholt <eric@anholt.net> i915: Simplify intel_wpos_* with a helper function.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
fceda4342cadc22ce86877a19bf82b86eb022d79 13-Jul-2011 Eric Anholt <eric@anholt.net> i915: Include gl_FragCoord.w data, not just xyz.

Fixes piglit fragcoord_w test.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=34323
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
556a47a2621073185be83a0a721a8ba93392bedb 13-Jul-2011 Eric Anholt <eric@anholt.net> i915: Add support for gl_FragData[0] for output color.

We advertised ARB_draw_buffers, but either fell back to software when
using this output, or assertion failed. Fixes glsl-fs-fragdata-1, and
failures in some webgl conformance tests.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=39024
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=34906
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
499f7c0114cca195c9569c202ae099ef0277b010 16-Apr-2011 Ian Romanick <ian.d.romanick@intel.com> i915: i915_context::vertex_fog is always I915_FOG_NONE, so kill it

Reviewed-by: Eric Anholt <eric@anholt.net>
Acked-by: Corbin Simpson <MostAwesomeDude@gmail.com>
Acked-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
df7555e763b9a4d989788e9b1cd25e8740649e79 16-Apr-2011 Ian Romanick <ian.d.romanick@intel.com> i915: gl_fragment_program::FogOption is always GL_NONE so don't check it

Reviewed-by: Eric Anholt <eric@anholt.net>
Acked-by: Corbin Simpson <MostAwesomeDude@gmail.com>
Acked-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
7d41857566d900aee3319f06c272049e6211acc1 29-Mar-2011 Marek Olšák <maraeo@gmail.com> intel: fix build

broken with e5c6a92a12b5cd7db205d72039f58d302b0be9d5
(mesa: implement clamping controls (ARB_color_buffer_float))
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
e5c6a92a12b5cd7db205d72039f58d302b0be9d5 15-Feb-2011 Marek Olšák <maraeo@gmail.com> mesa: implement clamping controls (ARB_color_buffer_float)

Squashed commit of the following:

Author: Marek Olšák <maraeo@gmail.com>

mesa: fix getteximage so that it doesn't clamp values
mesa: update the compute_version function
mesa: add display list support for ARB_color_buffer_float
mesa: fix glGet query with GL_ALPHA_TEST_REF and ARB_color_buffer_float

commit b2f6ddf907935b2594d2831ddab38cf57a1729ce
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Tue Aug 31 16:50:57 2010 +0200

mesa: document known possible deviations from ARB_color_buffer_float

commit 5458935be800c1b19d1c9d1569dc4fa30a97e8b8
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Tue Aug 24 21:54:56 2010 +0200

mesa: expose GL_ARB_color_buffer_float

commit aef5c3c6be6edd076e955e37c80905bc447f8a82
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Thu Aug 26 18:12:34 2010 +0200

mesa, mesa/st: handle read color clamping properly

(I'll squash the st/mesa part to a separate commit. -Marek)

We set IMAGE_CLAMP_BIT in the caller based on _ClampReadColor, where
the operation mandates it.

TODO: did I get the set of operations mandating it right?

commit 3a9cb5e59b676b6148c50907ce6eef5441677e36
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Thu Aug 26 18:09:41 2010 +0200

mesa: respect color clamping in texenv programs (v2)

Changes in v2:
- Fix attributes other than vertex color sometimes getting clamped

commit de26f9e47e886e176aab6e5a2c3d4481efb64362
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Thu Aug 26 18:05:53 2010 +0200

mesa: restore color clamps on glPopAttrib

commit a55ac3c300c189616627c05d924c40a8b55bfafa
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Thu Aug 26 18:04:26 2010 +0200

mesa: clamp color queries if and only if fragment clamping is enabled

commit 9940a3e31c2fb76cc3d28b15ea78dde369825107
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Wed Aug 25 00:00:16 2010 +0200

mesa: introduce derived _ClampXxxColor state resolving FIXED_ONLY

To do this, we make ClampColor call FLUSH_VERTICES with the appropriate
_NEW flag.

We introduce _NEW_FRAG_CLAMP since fragment clamping has wide-ranging
effects, despite being in the Color attrib group.

This may be easily changed by s/_NEW_FRAG_CLAMP/_NEW_COLOR/g

commit 6244c446e3beed5473b4e811d10787e4019f59d6
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Thu Aug 26 17:58:24 2010 +0200

mesa: add unclamped color parameters
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
a99b23752b0182c64ebe1dc9c18ab821550771ff 07-Mar-2011 Henri Verbeet <hverbeet@gmail.com> i915: Derive the gl_fragment_program from i915_fragment_program.

Instead of using the current gl_fragment_program. These aren't necessarily
the same, for example when translate_program() is called by
i915ValidateFragmentProgram().
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
2c6793fb6bc89df16c23f727bcb072a157ab8d10 25-Nov-2010 Chris Wilson <chris@chris-wilson.co.uk> i915: Emit a single relocation per vbo

Reducing the number of relocations has lots of nice knock-on effects,
not least including reducing batch buffer size, auxilliary array sizes
(vmalloced and copied into the kernel), processing of uncached
relocations etc.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
53b8b6884355da3737d1ff714f1fadc69d1745e4 10-Feb-2011 Ian Romanick <ian.d.romanick@intel.com> i915: Calculate partial result to temp register first

Previously the SNE and SEQ instructions would calculate the partial
result to the destination register. This would cause problems if the
destination register was also one of the source registers.

Fixes piglit tests glsl-fs-any, glsl-fs-struct-equal,
glsl-fs-struct-notequal, glsl-fs-vec4-operator-equal,
glsl-fs-vec4-operator-notequal.

NOTE: This is a candidate for the 7.9 and 7.10 branches.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
a04582739e77b58cea9e2aa523109e878bf90b6a 01-Feb-2011 Ian Romanick <ian.d.romanick@intel.com> i915: Only mark a register as available if all components are written

Previously a register would be marked as available if any component
was written. This caused shaders such as this:

0: TEX TEMP[0].xyz, INPUT[14].xyyy, texture[0], 2D;
1: MUL TEMP[1], UNIFORM[0], TEMP[0].xxxx;
2: MAD TEMP[2], UNIFORM[1], TEMP[0].yyyy, TEMP[1];
3: MAD TEMP[1], UNIFORM[2], TEMP[0].zzzz, TEMP[2];
4: ADD TEMP[0].xyz, TEMP[1].xyzx, UNIFORM[3].xyzx;
5: TEX TEMP[1].w, INPUT[14].xyyy, texture[0], 2D;
6: MOV TEMP[0].w, TEMP[1].wwww;
7: MOV OUTPUT[2], TEMP[0];
8: END

to produce incorrect code such as this:

BEGIN
DCL S[0]
DCL T_TEX0
R[0] = MOV T_TEX0.xyyy
U[0] = TEXLD S[0],R[0]
R[0].xyz = MOV U[0]
R[1] = MUL CONST[0], R[0].xxxx
R[2] = MAD CONST[1], R[0].yyyy, R[1]
R[1] = MAD CONST[2], R[0].zzzz, R[2]
R[0].xyz = ADD R[1].xyzx, CONST[3].xyzx
R[0] = MOV T_TEX0.xyyy
U[0] = TEXLD S[0],R[0]
R[1].w = MOV U[0]
R[0].w = MOV R[1].wwww
oC = MOV R[0]
END

Note that T_TEX0 is copied to R[0], but the xyz components of R[0] are
still expected to hold a calculated value.

Fixes piglit tests draw-elements-vs-inputs, fp-kill, and
glsl-fs-color-matrix. It also fixes Meego bugzilla #13005.

NOTE: This is a candidate for the 7.9 and 7.10 branches.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
2bd11ea11921bcd180b354342a8786c5b7ddd6b3 15-Dec-2010 Shuang He <shuang.he@intel.com> i915: Fix INTEL_DEBUG=wm segmentation fault

The program should be disassembled after it's uploaded
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
c92550be64abd454560556599cd95b237f4375b1 01-Dec-2010 Ian Romanick <ian.d.romanick@intel.com> i915: Correctly generate unconditional KIL instructions

Fixes piglit test glsl-fs-discard-03.

NOTE: This is a candidate for the 7.9 branch.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
f9995b30756140724f41daf963fa06167912be7f 12-Oct-2010 Kristian Høgsberg <krh@bitplanet.net> Drop GLcontext typedef and use struct gl_context instead
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
55aaee602078a8a57681cd4c205a71048fd184fe 10-Sep-2010 Ian Romanick <ian.d.romanick@intel.com> intel: Remove noise opcode support from i915 and i965 drivers

With recent changes to the GLSL compiler, these opcode should never be
seen in these drivers.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
02e16398292825924d4c7ffb884961275dbadacd 18-Aug-2010 Eric Anholt <eric@anholt.net> i915: Add support for SSG opcode.

Fixes glsl-fs-sign and many of the tests of trig builtins.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
e43b250fc076aea9e4b5319fdf409e95b28ac8fc 18-Aug-2010 Eric Anholt <eric@anholt.net> i915: Add support for reading output regs in the FS.

Fixes glsl-unused-varying and many others, since we produce an output
reg read any time gl_FragColor is written inside an if statement.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
66690864efb9ab1077f87744e1afec3231f244f6 18-Aug-2010 Eric Anholt <eric@anholt.net> i915: Add support for OPCODE_DP2.

Fixes glsl-fs-dot-vec2.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
ec2b92f98c2e7f161521b447cc1d9a36bce3707c 11-Jun-2010 Brian Paul <brianp@vmware.com> mesa: rename src/mesa/shader/ to src/mesa/program/
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
edad36cff96f6d68ab8256fbe8106a313583a8c0 26-Apr-2010 Eric Anholt <eric@anholt.net> i915: Add debugging for just prorgam compile under INTEL_DEBUG=wm
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
891ad6ec1ad71d26e0d06fa620fe392d29de26c9 26-Apr-2010 Eric Anholt <eric@anholt.net> i915: Provide counts in the error messages for program limits.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
1407daf9bc9e0452a171aaca2ab8e389ccca5462 20-Apr-2010 Eric Anholt <eric@anholt.net> i915: Map sampler indices to texture units correctly for fragment shaders.

Fixes hang with "gst-launch-0.10 videotestsrc ! video/x-raw-rgb !
glupload ! gleffects effect=heat ! glimagesink" which uses 2 samplers
pointing at GL_TEXTURE1 and GL_TEXTURE2, and piglit
glsl-fs-sampler-numbering.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
ac3529eec4d08c2d9633d7b1bba8413cc507f3c1 12-Apr-2010 Eric Anholt <eric@anholt.net> i915: Add missing break; after handling the stub NOISE instructions.

Bug #27348
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
4ac9c80e5beea26e13ccf12ce6bd9ee051c229f5 05-Feb-2010 Brian Paul <brianp@vmware.com> mesa: change ctx->Driver.ProgramStringNotify() to return GLboolean

GL_TRUE indicates that the driver accepts the program.
GL_FALSE indicates the program can't be compiled/translated by the
driver for some reason (too many resources used, etc).

Propogate this result up to the GL API: set GL_INVALID_OPERATION
error if glProgramString() was called. Set shader program link
status to GL_FALSE if glLinkProgram() was called.

At this point, drivers still don't do any program checking and
always return GL_TRUE.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
e3202a8cc7178373e8e5af60c090550aef29392c 22-Dec-2009 Eric Anholt <eric@anholt.net> i915: Fix use of uninitialized variable in OPCODE_NOISE stub.

We don't actually care which register is used since we're just
swizzling (0,0,0,0), but it should be a valid variable number.
Detected by clang.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
df582ca767a38f185f9b4c449e7ed4266c414ae2 18-Nov-2009 Eric Anholt <eric@anholt.net> tnl: Replace deprecated TexCoordPtr with AttribPtr[_TNL_ATTRIB_TEX*]
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
862a2a55b35d1dec9224b025a6e7a0cf8593a6a7 29-Jul-2009 Eric Anholt <eric@anholt.net> i915: Add optional support for ARB_fragment_shader under a driconf option.

Other vendors have enabled ARB_fragment_shader as part of OpenGL 2.0
enablement even on hardware like the 915 with no dynamic branching or
dFdx/dFdy support. But for now we'll leave it disabled because we don't
do any flattening of ifs or loops, which is rather restrictive.

This support is not complete, and may be unstable depending on your shaders.
It passes 10/15 of the piglit glsl tests, but hangs on glean glsl1.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
67f4d626d39f2c340fa1632d3e4344c547301508 30-Jul-2009 Eric Anholt <eric@anholt.net> i915: Add support or fallbacks for GLSL fragment shader opcodes.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
f9f31b25740887373806cb489e5480dc9b261805 01-Oct-2009 Eric Anholt <eric@anholt.net> i915: Add support for varying inputs.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
61b512c47c9888f3ff117faf3aceccfb52d59c3a 30-Jul-2009 Eric Anholt <eric@anholt.net> i915: Update and translate the fragment program along with state updates.

Previously, we were doing it in the midst of the pipeline run, which gave
an opportunity to enable/disable fallbacks, which is certainly the wrong
time to be doing so. This manifested itself in a NULL dereference for PutRow
after transitioning out of a fallback during a run_pipeline in glean glsl1.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
994d1db079b4947e6f10ab22a4b366a676382345 30-Jul-2009 Eric Anholt <eric@anholt.net> i915: Let i915_program_error take a format string, and don't use _mesa_problem.

It's misleading to report things like the program having too many native
instructions as a Mesa implementation error, when the program may just be
too big for the hardware.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
eb0d46490332091b2ee247f32a1f08a04e1fe00f 17-Apr-2009 Brian Paul <brianp@vmware.com> Merge branch 'register-negate'
bbae8791d148d275632dfc8e105aa2df52820468 10-Apr-2009 Eric Anholt <eric@anholt.net> i915: Use DEBUG_WM (like 965) for printing the fragment program out.

This is nice when paired with INTEL_DEBUG=batch for debugging what's going
out to the hardware.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
7db7ff878d3e5a6b345228e6eaee4797bb68b360 15-Apr-2009 Brian Paul <brianp@vmware.com> mesa: merge the prog_src_register::NegateBase and NegateAbs fields

There's really no need for two negation fields. This came from the
GL_NV_fragment_program extension. The new, unified Negate bitfield applies
after the absolute value step.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
8d475822e6e19fa79719c856a2db5b6a205db1b9 28-Feb-2009 Brian Paul <brianp@vmware.com> mesa: rename, reorder FRAG_RESULT_x tokens

s/FRAG_RESULT_DEPR/FRAG_RESULT_DEPTH/
s/FRAG_RESULT_COLR/FRAG_RESULT/COLOR/
Remove FRAG_RESULT_COLH (NV half-precision) output since we never used it.
Next, we might merge the COLOR and DATA outputs (COLOR0, COLOR1, etc).
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
b8bd0b0ddc357f9b430bb6ddeb60c5a2179d3791 13-Jan-2009 Eric Anholt <eric@anholt.net> i915: Add decode for PS in batchbuffers.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
129b6bc4e33257dd27aa9b50c6fa934ccb14376e 24-Dec-2008 Xiang, Haihao <haihao.xiang@intel.com> i915: separate the fog term from the specular color term.

Previously fog parameter and specular color are packed into the
same dword. Note specular color should be packed in BGRA for device,
so if fog parameter and specular color all are present, fog parameter
will dirty the alpha term of specular color. This fixes rendering
issue when playing 'Yo Frankie' on 915/945.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
ecadb51bbcb972a79f3ed79e65a7986b9396e757 18-Sep-2008 Brian Paul <brian.paul@tungstengraphics.com> mesa: added "main/" prefix to includes, remove some -I paths from Makefile.template
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
7eef52e975e852207ee840c74cd822c8f8c90a01 15-Feb-2008 Xiang, Haihao <haihao.xiang@intel.com> i915: set fogcoord to (f,0,0,1). fix #10788 issue on 915.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
700a77fb48f364f85e013cf5fb68c04eb83317e7 07-Feb-2008 Eric Anholt <eric@anholt.net> [915] Fix COS function using same plan as SIN.

The previous COS function failed badly outside of [-pi/2, pi/2].
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
2551a5ee80ab523006618c79766e2409b2a62d84 07-Feb-2008 Eric Anholt <eric@anholt.net> [915] Use a quartic term to improve the accuracy of SIN results.

This is described in the link in the comment, and is the same technique that
r300 uses.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
d98abcbef0bd4200fc0fd30fc0524bf452df3572 06-Feb-2008 Eric Anholt <eric@anholt.net> [915] Fix fp SIN function, and use a quadratic approximation instead of Taylor.

The Taylor series notably fails at producing sin(pi) == 0, which leads to
discontinuity every 2*pi. The quadratic gets us sin(pi) == 0 behavior, at the
expense of going from 2.4% THD with working Taylor series to 3.8% THD (easily
seen on comparative graphs of the two). However, our previous implementation
was producing sin(pi) < -1 and worse, so any reasonable approximation is an
improvement. This also fixes the repeating behavior, where the previous
implementation would repeat sin(x) for x>pi as sin(x % pi) and the opposite
for x < -pi.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
3369cd9a6f943365242d7832e69788d4aede9a8f 07-Jan-2008 Xiang, Haihao <haihao.xiang@intel.com> i915: Keith Whitwell's swizzling TEX patch. fix #8283
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
8cf9085bc7b96819d2bec1e749e15af58eefb2f3 24-Sep-2007 Eric Anholt <eric@anholt.net> Move i915tex driver into place as just i915.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
8fba8d2018643444fc17c590f3e8732e1a76c6b8 24-Sep-2007 Eric Anholt <eric@anholt.net> Remove the old i915 driver now that i915tex works without TTM.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
acfeb3b6ea93bcb5b18e6f51a0727e39da608d76 11-Sep-2007 Brian <brian.paul@tungstengraphics.com> Fix-up #includes to remove some -I options.

eg: #include "shader/program.h" and remove -I$(TOP)/src/mesa/program
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
ab02552cdddf9322bfaf874f85d74e7c174a0f3b 29-Jul-2007 Roland Scheidegger <sroland@tungstengraphics.com> fix cos/sin range reduction for i915 driver too
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
1078ef83eb3458363bf9709a7c697b39020266ea 22-May-2007 Roland Scheidegger <sroland@tungstengraphics.com> i915/i915tex: minor cleanup (remove unneeded function call
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
064ae479a770bf434958d673baf6f7530f642697 23-Feb-2007 Brian <brian@yutani.localnet.net> Update DRI drivers for new glsl compiler.

Mostly:
- update #includes
- update STATE_* token code
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
d78f65cd6cf04dafcf50b4014de9d28546badcfb 02-Nov-2006 Brian Paul <brian.paul@tungstengraphics.com> Fix fragment program fog problems found with Glean.
1. add PROGRAM_CONSTANT to switch() in src_vector().
2. use _mesa_append_fog_code() to handle fog options in i915ProgramStringNotify().
3. Re-enable some vertex attribute emit code that was previously disabled in i915ValidateFragmentProgram().
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
57f09b6e5eccd32ee34f82eab94cdeb7a7243c91 01-Nov-2006 Keith Whitwell <keith@tungstengraphics.com> fix compiler warnings
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
fd60b2d5368e3385c1ba70c6d5d122b10ff20646 01-Nov-2006 Keith Whitwell <keith@tungstengraphics.com> Patch from <haihao.xiang@intel.com> -- pass program string
notification callback through to tnl/ module, fixes glean crash.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
d886423b3c0b800656ba5d4c6480bba90f8e5981 10-Oct-2006 Keith Whitwell <keith@tungstengraphics.com> Use the mesa-provided texenv program rather than rolling our own.
Turn on texture crossbar support.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
122629f27925a9dc50029bebc5079f87f416a7e1 20-Jul-2006 Brian Paul <brian.paul@tungstengraphics.com> Some structure renaming. Prefix vertex/fragment-related structs with
"gl_" to match other structs.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
e6e1c3fc11cb421ce3a703b81e8fe7057c5134a9 22-Nov-2005 Keith Whitwell <keith@tungstengraphics.com> Use correct enums for program output variables. Fixes
fp/tri-depthwrite.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
1a61462318c00f61faaa88111248d89eceac1c77 20-Nov-2005 Brian Paul <brian.paul@tungstengraphics.com> s/Saturate/SaturateMode/
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
e31ac052236ea615b4995f9ec301d8af4b864531 20-Nov-2005 Brian Paul <brian.paul@tungstengraphics.com> Make Saturate a 2-bit field again, renamed to SaturateMode with three
possible values: SATURATE_OFF, SATURATE_ZERO_ONE and SATURATE_PLUS_MINUS_ONE.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
47e511c36d5e24b1b82fc8fb47970c83f45cc148 19-Nov-2005 Brian Paul <brian.paul@tungstengraphics.com> remove #include arbfragparse.h, s/PI/M_PI/
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
de99760bf3511d05185799c4fb4347f9e5f420f4 12-Nov-2005 Brian Paul <brian.paul@tungstengraphics.com> Move stuff common to vertex/fragment_program into the base class, including:
Instructions, InputsRead, OutputsWritten, and Parameters.
Also, added debug functions: _mesa_print_instruction(),
_mesa_print_program_parameters() and revamp _mesa_print_program().
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
9ba4ef3102196844d663b82565c87765fa240e16 05-Nov-2005 Brian Paul <brian.paul@tungstengraphics.com> s/TexSrcIdx/TexSrcTarget/
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
7e807510d8c3e88ee7ae6c697393201cf08f992f 05-Nov-2005 Brian Paul <brian.paul@tungstengraphics.com> Unify vertex/fragment program instuctions.
Based on patch by Ian (#4967) but also unify instruction opcodes.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
b15f46a093b2be2a6c630d8f3a2848627a34d728 08-Sep-2005 Keith Whitwell <keith@tungstengraphics.com> Treat NegateBase as a bitfield, not a boolean.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
ab81d1fd999b1696df4c733a86b651e4c38b9bcc 10-May-2005 Keith Whitwell <keith@tungstengraphics.com> don't be fooled into emitting padding for wpos when not used
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
948fa3b295d384592ebc9396413a38aba4edf4a6 10-May-2005 Keith Whitwell <keith@tungstengraphics.com> get fog working with _TexEnvProgram
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
435eff8b852f59e13554a57f83a48bf8035ec794 09-May-2005 Keith Whitwell <keith@tungstengraphics.com> i915 will use _TexEnvProgram (if active)
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
1180fc13db5fba0a3ec95630f520128f628c58ac 09-May-2005 Keith Whitwell <keith@tungstengraphics.com> Fallback (rather than fail) on unknown program targets.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
7c26b61f9366a397e353d7b7f1f1d1f6d0dcd0c7 21-Apr-2005 Keith Whitwell <keith@tungstengraphics.com> Reduce the size of mesa's internal fragment and vertex program
representations by switching to packed structures for registers and
instructions.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
38b317d508a2a3a4cc6d700ebca80c3b06c913e2 14-Dec-2004 Alan Hourihane <alanh@tungstengraphics.com> uint*t -> u_int*t changes
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
535408addad103421f8cc82705385de754871963 31-Aug-2004 Keith Whitwell <keith@tungstengraphics.com> The i915 driver was merged after EMIT_*_BGR bug was fixed. This brings
the driver into line with the correct meaning of those symbols
and fixes color corruptions.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
594c3f67ac8fceb061e47b090ec4d149c55a1940 18-Jun-2004 Keith Whitwell <keith@tungstengraphics.com> add missing license texts
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c
41b58954e1742493452b91d9ecdb761db5de3bed 10-Jun-2004 Keith Whitwell <keith@tungstengraphics.com> New driver for i915 as well as older i830/i845/i865 chipsets.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_fragprog.c