History log of /external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
03b78ceb50b97611bcaa2d2354ff5b505306b0a1 04-Aug-2012 Marek Olšák <maraeo@gmail.com> st/mesa: don't clamp fragment color with integer colorbuffer
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
bc1c8369384b5e16547c5bf9728aa78f8dfd66cc 23-Jan-2012 Marek Olšák <maraeo@gmail.com> st/mesa: do vertex and fragment color clamping in shaders

For ARB_color_buffer_float. Most hardware can't do it and st/mesa is
the perfect place for a fallback.
The exceptions are:
- r500 (vertex clamp only)
- nv50 (both)
- nvc0 (both)
- softpipe (both)

We also have to take into account that r300 can do CLAMPED vertex colors only,
while r600 can do UNCLAMPED vertex colors only. The difference can be expressed
with the two new CAPs.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
aa5ba96d294698809186cc4b59034abbd3076812 16-Dec-2010 Brian Paul <brianp@vmware.com> st/mesa: s/varient/variant
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
3d203b610045980853d26370ee21fb2ef4aed17e 14-Dec-2010 Brian Paul <brianp@vmware.com> Squashed commit of the following (st-mesa-per-context-shaders branch):

commit 4f106f44a32eaddb6cf3fea6ba5ee9787bff609a
Author: Brian Paul <brianp@vmware.com>
Date: Mon Dec 13 14:06:08 2010 -0700

st/mesa: reorganize vertex program translation code

Now it looks like the fragment and geometry program code.
Also remove the serial number fields from programs. It was used to
determine when new translations were needed. Now the variant key is
used for that. And the st_program_string_notify() callback removes all
variants when the program's code is changed.

commit e12d6791c5e4bff60bb2e6c04414b1b4d1325f3e
Author: Brian Paul <brianp@vmware.com>
Date: Mon Dec 13 13:38:12 2010 -0700

st/mesa: implement geometry shader varients

Only needed in order to support per-context gallium shaders.

commit c5751c673644808ab069259a852f24c4c0e92b9d
Author: Brian Paul <brianp@vmware.com>
Date: Sun Dec 12 15:28:57 2010 -0700

st/mesa: restore glDraw/CopyPixels using new fragment program variants

Clean up the logic for fragment programs for glDraw/CopyPixels. We now
generate fragment program variants for glDraw/CopyPixels as needed which
do texture sampling, pixel scale/bias, pixelmap lookups, etc.

commit 7b0bb99bab6547f503a0176b5c0aef1482b02c97
Author: Brian Paul <brianp@vmware.com>
Date: Fri Dec 10 17:03:23 2010 -0700

st/mesa: checkpoint: implement fragment program variants

The fragment programs variants are per-context, as the vertex programs.

NOTE: glDrawPixels is totally broken at this point.

commit 2cc926183f957f8abac18d71276dd5bbd1f27be2
Author: Brian Paul <brianp@vmware.com>
Date: Fri Dec 10 14:59:32 2010 -0700

st/mesa: make vertex shader variants per-context

Gallium shaders are per-context but OpenGL shaders aren't. So we need
to make a different variant for each context.

During context tear-down we need to walk over all shaders/programs and
free all variants for the context being destroyed.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
d64a119c28376d7ce069dcec044ff9af7f93ff9c 07-Aug-2010 Vinson Lee <vlee@vmware.com> st/mesa: Remove unnecessary header.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
da7bd6a90e1fee5c16327338fd251c0f6be34e36 28-Jun-2010 Zack Rusin <zackr@vmware.com> mesa: initial support for ARB_geometry_shader4

laying down the foundation for everything and implementing most of the
stuff.
linking, gl_VerticesIn and multidimensional inputs are left.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
ec2b92f98c2e7f161521b447cc1d9a36bce3707c 11-Jun-2010 Brian Paul <brianp@vmware.com> mesa: rename src/mesa/shader/ to src/mesa/program/
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
b9b4e7724e5ae80121a053ca66cee73942cc16b7 12-Feb-2010 Brian Paul <brianp@vmware.com> st/mesa: rename state -> tgsi, updated comments
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
7713069ae3ec24404d944d91614e4448b7c1a2c6 04-Feb-2010 Vinson Lee <vlee@vmware.com> st/mesa: Remove unnecessary headers.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
e1906ae98ef4d8f153553056552c06ac4292d1f5 01-Feb-2010 Keith Whitwell <keithw@vmware.com> st/mesa: remove duplicate calculation of fp input mapping

This was being calculated the same way in two different places.
Now just do it in st_translate_fragment_program().
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
f8f2520e88cecf21aee5023423185deea7e44b23 31-Jan-2010 Vinson Lee <vlee@vmware.com> st/mesa: Remove unnecessary headers.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
cd8614b0287dc5a69725ec4ee0208fad61f7789e 22-Jan-2010 Brian Paul <brianp@vmware.com> Merge branch 'mesa_7_7_branch'

Conflicts:
src/gallium/auxiliary/draw/draw_context.c
src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
src/gallium/auxiliary/pipebuffer/Makefile
src/gallium/auxiliary/pipebuffer/SConscript
src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c
src/gallium/auxiliary/tgsi/tgsi_scan.c
src/gallium/drivers/i915/i915_surface.c
src/gallium/drivers/i915/i915_texture.c
src/gallium/drivers/llvmpipe/lp_setup.c
src/gallium/drivers/llvmpipe/lp_tex_sample_c.c
src/gallium/drivers/llvmpipe/lp_texture.c
src/gallium/drivers/softpipe/sp_prim_vbuf.c
src/gallium/state_trackers/xorg/xorg_dri2.c
src/gallium/winsys/drm/intel/gem/intel_drm_api.c
src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c
src/gallium/winsys/drm/radeon/core/radeon_drm.c
src/gallium/winsys/drm/vmware/core/vmw_screen_dri.c
src/mesa/state_tracker/st_cb_clear.c
28576c9ac5a3b6459d94822f333d2e3fbefe5003 18-Jan-2010 Brian Paul <brianp@vmware.com> st/mesa: change instruction count assertion to > 0

Shaders should at least have an END instruction.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
227fc5a3083290bf8c494f1f08e911eed6e4cfcc 16-Jan-2010 Vinson Lee <vlee@vmware.com> st/mesa: Remove unnecessary header from st_atom_shader.c.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
935fdbe1420277aa0c97b21c7944aa988bfbddde 12-Jan-2010 Brian Paul <brianp@vmware.com> st/mesa: comments, whitespace
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
420ff89067515a74c9625a103cadc267d5f64bd4 19-Dec-2009 Roland Scheidegger <sroland@vmware.com> gallium: don't use edgeflags if the app didn't supply them
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
1aba413a702cad3da04cf6d686ce81dd6330f1a9 19-Dec-2009 Roland Scheidegger <sroland@vmware.com> gallium: fix not generating new vp varient when polygon mode changes
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
a0127b6ced257919180ba3a1bf534b68d9c750be 14-Dec-2009 Roland Scheidegger <sroland@vmware.com> gallium: more work for edgeflags changes

fixes, cleanups, etc.
not working yet
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
a08e348a84f57ed5e8bf5888f1ce13934d2ce8fa 09-Dec-2009 Keith Whitwell <keithw@vmware.com> gallium: first steps to treat edgeflags as regular vertex element

The idea here is to eliminate the set_edgeflags() call in pipe_context
by treating edgeflags as a regular vertex element.

Edgeflags provoke special treatment in hardware, which means we need to
label them in some way, in this case we'll be passing them through the
vertex shader and labelling the vertex shader output with a new TGSI
semantic (TGSI_SEMANTIC_EDGEFLAG).
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
325f045c04121b989bddfca02711e3d03f7f9c3f 18-Dec-2009 Keith Whitwell <keithw@vmware.com> st/mesa: move assert on nr vs insns until after pos_invarient expansion

It is possible to have a 1-instruction vertex shader before expanding
pos_invarient. Not sure what this assert achieved, but at least move
it where it is correct.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
07fafc7c9346aa260829603bf3188596481e9e62 15-Nov-2009 Keith Whitwell <keithw@vmware.com> mesa/st: refactor vertex and fragment shader translation

Translate vertex shaders independently of fragment shaders.

Previously tried to make fragment shader semantic indexes always start
at zero and exclude holes. This was unnecessary but meant that vertex
shader translation had to be adjusted to take this into account.

Now use a fixed scheme for labelling special FS input semantics
(color, etc), and another fixed scheme for the generics.

With this, vertex shaders can be translated independently of the bound
fragment shader, assuming mesa has done its own job and ensured that
the vertex shader provides at least the inputs the fragment shader is
looking for. The state-tracker didn't attempt to do anything about
this previously, so it shouldn't be needed now.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
9d0b8d72d8d704ff4d8e10448b60cbb42f07eecb 30-Jul-2009 Brian Paul <brianp@vmware.com> mesa: add new FRAG_ATTRIB_FACE and FRAG_ATTRIB_PNTC fragment program inputs

Previously, the FOGC attribute contained the fragment fog coord, front/back-
face flag and the gl_PointCoord.xy values. Now each of those things are
separate fragment program attributes. This simplifies quite a few things in
Mesa and gallium.

Need to test i965 driver and fix up point coord handling in the gallium/draw
module...
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
5606dfb572bf4b89b4882265924705bacc8c182b 18-Nov-2009 Ian Romanick <ian.d.romanick@intel.com> Merge branch 'outputswritten64'

Add a GLbitfield64 type and several macros to operate on 64-bit
fields. The OutputsWritten field of gl_program is changed to use that
type. This results in a fair amount of fallout in drivers that use
programs.

No changes are strictly necessary at this point as all bits used are
below the 32-bit boundary. Fairly soon several bits will be added for
clip distances written by a vertex shader. This will cause several
bits used for varyings to be pushed above the 32-bit boundary. This
will affect any drivers that support GLSL.

At this point, only the i965 driver has been modified to support this
eventuality.

I did this as a "squash" merge. There were several places through the
outputswritten64 branch where things were broken. I foresee this
causing difficulties later for bisecting. The history is still
available in the branch.

Conflicts:
src/mesa/drivers/dri/i965/brw_wm.h
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
1c1307e7c55844f63f7bd7ac02c64f4b936f3c66 11-Jul-2009 Zack Rusin <zackr@vmware.com> gallium: compare the actual register, not all the inputs

otherwise we decrement indexes for all registers
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
7b861b9b9efdb3ac0dfc3806afcd494cd0ea006c 07-Jul-2009 Zack Rusin <zackr@vmware.com> gallium: fixup register indexes for fog/frontface/point coord
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
a4d952358d8fd0f9d135c91c37969acdcf394f0a 07-Jul-2009 Zack Rusin <zackr@vmware.com> gallium: more fog extraction fixes

fix the cases when fog coord/front face/point coord are used in the same
shader.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
1c04731b8721850b6abb12a43a3eec616b850e86 01-Jul-2009 Zack Rusin <zack@kde.org> gallium: fix the front face semantics

mesa allocates both frontface and pointcoord registers within the fog
coordinate register, by using swizzling. to make it cleaner and easier
for drivers we want each of them in its own register. so when doing
compilation from the mesa IR to tgsi allocate new registers for both
and add new semantics to the respective declarations.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
3754c4135cb29e23bd81d573af458742e9a624b2 11-Jun-2009 Brian Paul <brianp@vmware.com> mesa: rework vertex shader output / fragment shader input attribute matching

Before, if a vertex shader's outputs didn't exactly match a fragment
shader's inputs we could wind up with invalid TGSI shader declarations.
For example:

Before patch:
DCL OUT[0], POSITION
DCL OUT[1], COLOR[1]
DCL OUT[2], GENERIC[0]
DCL OUT[3], GENERIC[0] <- note duplicate [0]
DCL OUT[4], GENERIC[2]

After patch:
DCL OUT[0], POSITION
DCL OUT[1], COLOR[1]
DCL OUT[2], GENERIC[0]
DCL OUT[3], GENERIC[1]
DCL OUT[4], GENERIC[2]
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
bb0b954f1265bd6e50ef1fdade7917863477fa8c 11-Jun-2009 Brian Paul <brianp@vmware.com> st/mesa: fix typo s/BFC0/BFC1/
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
fa0f48504a32642d688d4b81f62eea54c693b23f 13-Mar-2009 Keith Whitwell <keithw@vmware.com> gallium: no need to keep a copy of shader tokens in state tracker

Any driver who needs a copy of the shader tokens must organize to
do so itself. This has been the case for a long time, but there
was still defensive code in the state tracker, which is now removed.

Any bugs resulting from this need to be fixed in the offending driver...
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
85b0c171c04c00b4ca9e11a1c79872f5e0cbaf9c 19-Feb-2009 José Fonseca <jfonseca@vmware.com> mesa: Free the util shaders with the gallium's FREE.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
f1a59a6dd7b7b0523db191d82b3af1a841c6475d 12-Feb-2009 Brian Paul <brianp@vmware.com> mesa: use new ST_CALLOC_STRUCT() macro in gallium state tracker
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
1a2f4dd8768703fbc1b2a0d5be342345644805b4 12-Feb-2009 Brian Paul <brianp@vmware.com> mesa: consistantly use mesa memory-functions in gallium state tracker

Use _mesa_malloc(), _mesa_free(), etc everywhere, not malloc(), free(), etc.
Still using CALLOC_STRUCT() at this point.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
8eb85f6f2a87e8a176569ad2270973024272fb21 27-Aug-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: remove old assertions
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
e3f3e22cf7e9af4c5416d37329b7b8ee50f0cfcb 19-Aug-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: fix vertex program output translation/mapping bug

In some cases, the vertex program output's semantic info didn't match up
with the fragment program's input semantic info. This info is now explicitly
passed into the st_translate_fragment_program() function.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
dad8a7c90d96f37fedfe912a10ba3754c1666161 03-Jul-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: fix a bug in vertex program output mapping

Need to translate VERT_RESULT_PSIZ, BFC0, BFC1 to TGSI shader output slots
after all other attributes have been handled. This fixes a bug where
generic vertex program outputs (varying vars) could get mapped to the
same slot at point size or back-face colors.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
f763cc3cb54ee419902bdf24065e7c1948e92b67 09-May-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: don't free shader.tokens in get_passthrough_fs()
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
1a82d9648b3db780e58e4966924157542d148c58 08-May-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: fix some render to texture bugs

Before, we were sometimes rendering into a stale texture because
st_finalize_texture() would discard the old texture and create a new one.

Moved st_update_framebuffer atom after texture validation so that we
can create a new renderbuffer surface if the texture changes.

Also, split texture validation into two parts: finalize_textures and
update_textures. Do finalize_textures first to avoid getting into the
situtation where we're doing a pipe->surface_copy() mid-way through
state validation.

Some debug code still in place, but disabled...
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
a56a59ce74b7f18f25a13992d2a2c1ae7cf973ce 07-May-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: implement full reference counting for vertex/fragment programs

Use _mesa_reference_vert/fragprog() wherever we assign program pointers.
Fixes a memory corruption bug found with glean/api2 test.
Another memory bug involving shaders yet to be fixed...

Picked from gallium-0.1
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
54507125e735ffa595e252282eaabf38095c21e1 02-May-2008 Alan Hourihane <alanh@tungstengraphics.com> Some changed for non-C99 compilers
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
01dfa6cde157321f565bab949f23f367ed20fa0e 21-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> use cso fs/vs handle functions
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
65efe807b9067aa07b382e3c4d9cea6222c5fc6b 21-Apr-2008 Michel Dänzer <michel@tungstengraphics.com> gallium: Use CSO cache for shaders.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
a35c1ca3ad4361fee30d21ef13d8d37ae91aee66 22-Mar-2008 Brian <brian.paul@tungstengraphics.com> gallium: fix a few more shader-related mem leaks
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
339e7ec6805e6de8794514c0a935081b5d36d38f 12-Mar-2008 Brian <brian.paul@tungstengraphics.com> gallium: rework CSO-related code in state tracker

Use the code in cso_context.c rather than st_cache.c.
Basically, binding of state objects now goes through the CSO module.
But Vertex/fragment shaders go through pipe->bind_fs/vs_state() since they're
not cached by the CSO module at this time.

Also, update softpipe driver to handle NULL state objects in various places.
This happens during context destruction. May need to update other drivers...
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
ecd50ef58b034e604ff6b2fedbb0815953e510ea 26-Feb-2008 Brian <brian.paul@tungstengraphics.com> gallium: remove input_map[] from pipe_shader_state
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
6acd63a4980951727939c0dd545a0324965b3834 15-Feb-2008 José Fonseca <jrfonseca@tungstengraphics.com> Code reorganization: update build.

Update the Makefiles and includes for the new paths.

Note that there hasn't been no separation of the Makefiles yet, and make is
jumping all over the place. That will be taken care shortly. But for now, make
should work. It was tested with linux and linux-dri. Linux-cell and linux-llvm
might require some minor tweaks.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
9677336845511be4852520d2e50f91f1df362f58 13-Feb-2008 Brian <brian.paul@tungstengraphics.com> gallium: rename st_fragment_program's fs field to cso to match st_vertex_program
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
86787043fae59869133180474cb09dac4f2e619a 31-Jan-2008 Brian <brian.paul@tungstengraphics.com> Fix problem in mapping vertex program outputs (found with "spring" game engine)

If the vertex program writes to an output that's not consumed by the
fragment program, map the vp output to an unused slot.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
ac95fee4fffee77bb7bd798d094ed2e3a7c4019b 15-Jan-2008 Brian <brian.paul@tungstengraphics.com> Fix problems with vertex shaders and the private draw module.

The CSO returned by pipe->create_vs_state() can't be passed to the
private draw module. That was causing glRasterPos to blow up.
Add a 'draw_shader' field to st_vertex_program for use with the private
draw module.
Change st_context->state.vs type from cso_vertex_shader to st_vertex_program.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
cedf6892e7cc29aab404b142012eec0b0603a414 19-Dec-2007 Brian <brian.paul@tungstengraphics.com> special-case PSIZE too
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
e785f190f0d49f0367f7468c22b77962d0f14ea0 14-Dec-2007 Brian <brian.paul@tungstengraphics.com> Don't always declare frag shader INPUT[0] as fragment position.

We were doing this for the sake of softpipe and the tgsi intergrepter since
we always need the fragment position and W-coordinate information in order
to compute fragment interpolants.
But that's not appropriate for hardware drivers.
The tgsi interpreter now get x,y,w information from a separate tgsi_exec_vector
variable setup by softpipe.
The new pipe_shader_state->input_map[] defines how vert shader outputs map
to frag shader inputs. It may go away though, since one can also examine
the semantic label on frag shader input[0] to figure things out.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
abd5e8e41d54f7f491f91af9354f19c8d24d3572 23-Nov-2007 Michal Krol <michal@tungstengraphics.com> gallium: reorg tgsi directories.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
cc0b55c242e9f53a8e45c5d4392f964af44f396e 29-Oct-2007 Brian <brian.paul@tungstengraphics.com> simplify code which access the current vertex/fragment shaders
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
ef6940f17220f1149dce6daf548bd0103d91a281 27-Oct-2007 Brian <brian.paul@tungstengraphics.com> Move mesa_to_tgsi.[ch] to state_tracker
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
a7e997cfc5d909eebbc16ba5b0362e9778f01561 01-Oct-2007 Zack Rusin <zack@tungstengraphics.com> Get rid of ST_NEW_SHADER flag and the dependency on _NEW_PROGRAM
which is being hit all the time. Done by Keith really.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
ca34912bf7e57a01b180a3bb3b6e36331f442558 03-Oct-2007 Brian <brian.paul@tungstengraphics.com> assert that program length > 1 (some code, plus END)
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
b13618c3167002a823e9bb1e744a0a316fd0e2bf 01-Oct-2007 Brian <brian.paul@tungstengraphics.com> fix a few vert/frag program items to get i915 driver going again
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
ae7f200788947cdde15b279ea3a4558f6abd9922 29-Sep-2007 Brian <brian.paul@tungstengraphics.com> fix bug causing unnecessary translations
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
636480cc9c7836daf879cb45644900922cf31f47 28-Sep-2007 Brian <brian.paul@tungstengraphics.com> Instead of linked program pairs, keep a list of vertex programs translated for each fragment program.
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
bad4e10af746ce16b730a3e7a4e2ff53ecb6d0f6 26-Sep-2007 Brian <brian.paul@tungstengraphics.com> check for _NEW_PROGRAM mesa state (fixes arbfplight)
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
07f31a29b41be572c48fc1b440eaeb6a6b010cc8 25-Sep-2007 Brian <brian.paul@tungstengraphics.com> some clean-up of ST_NEW_ shader flags
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c
07ef3e42451daa26fa5426026bcc4c89729644e0 25-Sep-2007 Brian <brian.paul@tungstengraphics.com> vertex/fragment shader state and linking
/external/mesa3d/src/mesa/state_tracker/st_atom_shader.c