summaryrefslogtreecommitdiff
path: root/src/mesa/shader
AgeCommit message (Collapse)Author
2008-05-14fix-up inlined/non-inlined function inconsistenciesBrian Paul
cherry-picked from master
2008-05-14mesa: rm unneeded fileBrian Paul
2008-05-14mesa: prefix rm command with -Brian Paul
2008-05-14rewrite some of the mat*mat, mat*vec intrinsicsBrian Paul
Also, remove obsolete matrix codegen code. cherry-picked from master
2008-05-14mesa: regenerate slang built-in data (asin(vec4) fix)Brian Paul
2008-05-14mesa: fix missing w assignment in asin(vec4)Brian Paul
2008-05-14mesa: use CALLOC_STRUCT()Brian Paul
2008-05-14mesa: updated commentBrian Paul
2008-05-14mesa: minor bug fixes from masterBrian Paul
2008-05-14mesa: dead code removalBrian Paul
2008-05-14mesa: minor bug fixes, null ptr checks, dead code removalBrian Paul
2008-05-14mesa: fix errors in LightModelProduct state, other misc error casesBrian Paul
2008-05-14mesa: glUniform(location==-1) is not an errorBrian Paul
2008-05-14fix some additional program refcounting bugsBrian Paul
cherry-picked from master
2008-05-06gallium: implement full reference counting for vertex/fragment programsBrian
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...
2008-04-23gallium: fix potential divide by zero in fog computationBrian Paul
It's legal for Fog.Start == Fog.End and conformance testing does so.
2008-04-16mesa: added internal post color matrix scale/bias varsBrian Paul
2008-04-14fix GL_ARB_texture_rectangle breakageBrian Paul
2008-04-14mesa: define #extension GL_ARB_texture_rectangleDavid Flynn
2008-04-07mesa: call _mesa_remove_varying_reads() after compiling vertex shadersBrian
2008-04-07mesa: new _mesa_remove_varying_reads() functionBrian
We'll apply this function to GLSL vertex programs. In GLSL it's legal to read and write varying (output) vars in a vertex shader. But reading from an output register isn't supported by all hardware. This routine examines the vertex program for that condition and rewrites it to use temporary registers where needed.
2008-04-07mesa: added _mesa_insert_instructions()Brian
Also, use new _mesa_free_instructions() in a few places.
2008-04-07mesa: added _mesa_free_instructions()Brian
2008-04-04mesa: no longer combine vertex/fragment shader parameters/uniformsBrian
GLSL Vertex and fragment shaders now have independent parameter buffers. A new gl_uniform_list is used to keep track of program uniforms and where each uniform is located in each shader's parameter buffer. This makes better use of the space in each buffer and simplifies shader linking.
2008-04-04mesa: new functions for managing list/index of uniformsBrian
2008-04-04gallium: make sure to set the SamplersUsed field for bitmap/drawpixels shadersBrian Paul
Also, make sure that field is copied/updated in the program clone and combine functions. Without this we weren't getting SAMP declarations in the TGSI shaders.
2008-03-31fix parsing bug involving comments at the end of ARB v/f programsMarkus Amsler
2008-03-27consolidate some parsing functions that were pretty much identical for ↵Brian
vertex/fragment programs cherry-picked from master
2008-03-27mesa: misc sync-up with masterBrian
2008-03-27raise GL_INVALID_OPERATION if glProgramString compilation failsBrian
cherry-picked from master
2008-03-27Fix the compile of disabled DEBUG_PARSING code.Brian
cherry-picked from master
2008-03-27make sure state token values are fully initializedBrian
cherry-picked from master
2008-03-27added program_error2() function for better error reportingBrian
cherry-picked from master
2008-03-27Fix state.texgen parsing error (bug 12313).Brian
Replace *(*inst++) with *(*inst)++ in a few places. Cherry-picked from master.
2008-03-25mesa: fix some issues in _mesa_combine_programs()Brian Paul
Use a temporay register to connect outputs of first program to inputs of second program. Also, fix bug in replace_registers(): didn't search/replace DstReg.
2008-03-25mesa: append fog instructions after parsing if a fog option is setBrian Paul
Drivers don't have to worry about it then.
2008-03-25mesa: when negating scalar src args, use NEGATE_XYZW, not NEGATE_XBrian Paul
This makes things easier on the back-end when generating GPU code.
2008-03-22use ctx->Driver.DeleteProgram() in a few more placesBrian
2008-03-17only set InputsRead bit if input is really usedMarkus Amsler
2008-03-14mesa: init tmpNode to zerosBrian Paul
2008-03-14mesa: fix emit_clamp() so that we don't use an output register as temporaryBrian Paul
IR_CLAMP is decomposed into OPCODE_MIN+OPCODE_MAX. Allocate a temporary register for the intermediate value so we don't inadvertantly use an output register (which are write-only on some GPUs).
2008-03-13mesa: fix (harmless?) assignment in assertKeith Whitwell
2008-03-12mesa: set SamplersUsed bitmask when parsing ARB fragment programsBrian
2008-02-27mesa: set input read only on successJerome Glisse
2008-02-25Remove files of unsupported build systems.José Fonseca
2008-01-18s/varible/variable/Brian
2008-01-18set param type to PROGRAM_CONSTANT when parsing immediatesBrian
2008-01-16use NEGATE_X/Y/Z/W tokensBrian
2008-01-16clean-up swizzle fields in fog code, fix NegateBaseBrian
2008-01-16copy UsesKill state in _mesa_combine_programs()Brian