summaryrefslogtreecommitdiff
path: root/src/mesa/shader
AgeCommit message (Collapse)Author
2008-07-04mesa: generate GL_INVALID_OPERATION in _mesa_get_uniform_location() if ↵Brian Paul
program isn't linked
2008-07-03mesa: fix various error codesBrian Paul
2008-07-03mesa: additional error checking, fix error codesBrian Paul
2008-07-03mesa: regenerated fileBrian Paul
2008-07-03mesa: additional vec4 constructorBrian Paul
2008-07-03mesa: fix array storage allocation bugBrian Paul
2008-07-03mesa: fix incorrect array size, added assertionBrian Paul
2008-07-02mesa: when linking a shader program, make sure all the shaders compiled OKBrian Paul
2008-07-02mesa: added some debug code (disabled)Brian Paul
2008-07-02mesa: fix error codes in _mesa_shader_source(), _mesa_get_shader_source()Brian Paul
If the 'shader' parameter is wrong, need to either generate GL_INVALID_VALUE or GL_INVALID_OPERATION. It depends on whether 'shader' actually names a 'program' or is a totally unknown ID. There might be other cases to fix...
2008-07-02mesa: regeneratedBrian Paul
2008-07-02mesa: added some missing equal() notEqual() intrinsicsBrian Paul
2008-07-02mesa: regenerated filesBrian Paul
2008-07-02mesa: fix all(bvec2) function typo, add missing bvec2/3/4() constuctorsBrian Paul
2008-07-02generate a link error if the vertex shader references too many texturesBrian Paul
2008-07-01mesa: fix a GLSL vector subscript/writemask bugBrian Paul
This fixes a failure for cases like: vec4 v; v[1] *= 2.0; The v[1] actually acts like a writemask, equivalent to v.y The fix is a bit convoluted, but will do for now.
2008-07-01mesa: move some functionsBrian Paul
2008-07-01mesa: make _slang_swizzle_swizzle() non-privateBrian Paul
2008-07-01mesa: better function inlining in the presence of 'return' statementsBrian Paul
Before, the presence of a 'return' statement always prevented inlining a function. This was because we didn't want to accidentally return from the _calling_ function. We still need the semantic of 'return' when inlining but we can't always use unconditional branches/jumps (GPUs don't always support arbitrary branching). Now, we allow inlining functions w/ return if the return is the last statement in the function. This fixes the common case of a function that returns a value, such as: vec4 square(const in vec4 x) { return x * x; } which effectively compiles into: vec4 square(const in vec4 x) { __retVal = x * x; return; } The 'return' can be no-op'd now and we can inline the function.
2008-07-01mesa: add/fix some IrInfo entries for debugging purposesBrian Paul
2008-06-28s/GL_INVALID_VALUE/GL_INVALID_OPERATION/ in _mesa_get_uniformfv()Brian Paul
2008-06-28mesa: added null ptr checksBrian Paul
2008-06-12silly bug: it's PROGRAM_VARYINGZack Rusin
2008-06-12glsl: make sure we replace all output reads with temporariesZack Rusin
test in if.glsl
2008-06-12glsl: allow uniformsZack Rusin
2008-06-12glsl: fix array size initialiazers using const variablesZack Rusin
e.g. const int kernelSize = 9; uniform vec2 kernel[kernelSize];
2008-06-12almost forgot - RelAddr is a boolean so use it hereZack Rusin
2008-06-12shaders: fix allocation of arrays of parametersZack Rusin
2008-06-12glsl: implement variable array indexesZack Rusin
2008-06-04Set the attribute as used.Brian Paul
cherry-picked from gallium-0.1
2008-05-27updated for latest sourcesJouk Jansen
2008-05-20copy StateFlags in _mesa_clone_parameter_list()Brian Paul
2008-05-20fix incorrect sampler numbering/indexing.Brian Paul
All samplers indexes were zero.
2008-05-19fix tempReg test in _mesa_combine_programs()Brian Paul
2008-05-18Move _mesa_init_glsl_driver_functions() into shader_api.cBrian Paul
This allows making a bunch of functions static, and removes a state tracker dependency on driverfuncs.c cherry-picked from gallium-0.1
2008-05-18additional fog/color matrix changes from gallium-0.1Brian Paul
2008-05-18add state vars for color matrix, pixel transfer scale&biasBrian Paul
cherry-picked from gallium-0.1 (068c7bd912283e051a55b2fd5c4568685d10f3ed)
2008-05-18mesa: added internal post color matrix scale/bias varsBrian Paul
cherry-picked from gallium-0.1 (302daeb2ec62c59bd28d0c53cdc0fb07dc9d0f58)
2008-05-18fixes to _mesa_combine_programs(), from gallium-0.1Brian Paul
2008-05-18added div by zero check for Fog.End/Start (from gallium-0.1)Brian Paul
2008-05-18clean-ups / additions from gallium-0.1 branchBrian Paul
2008-05-16bring in fixes/changes from gallium-0.1Brian Paul
2008-05-16silence warning, new assertionBrian Paul
2008-05-16Fix a program refcounting error, don't share program parameter lists.Brian Paul
The refcounting bug was causing a memleak (unfreed programs). The old parameter list sharing is not needed since the change in how uniforms are handled.
2008-05-16minor changes to aid debuggingBrian Paul
2008-05-16remove stray, left-over RefCount++Brian Paul
2008-05-16whitespace/formattingBrian Paul
2008-05-16init SamplersUsed bits in _mesa_parse_arb_fragment_programBrian Paul
2008-05-16fix assertion typo: s/=/==/Brian Paul
2008-05-16Fix DRI buildBrian Paul