summaryrefslogtreecommitdiff
path: root/src/mesa/shader/slang/library
AgeCommit message (Collapse)Author
2009-01-08glsl: fix typo in the vec2 += operator functionBrian Paul
2009-01-08glsl: fix broken +=, -=, *=, /= operatorsBrian Paul
These functions need to return the final computed value. Now expressions such as a = (b += c) work properly. Also, no need to use __asm intrinsics in these functions. The resulting code is the same when using ordinary arithmetic operators and is more legible.
2009-01-01mesa: updated comments about GLSL constantsBrian Paul
2008-12-30mesa: allow variable indexing into the predefined uniform variable arraysBrian Paul
This allows code such as "vec4 a = gl_LightSource[i].ambient;" to work. When a built-in uniform array is indexed with a variable index we need to "unroll" the whole array into the parameter list (aka constant buffer) because we don't know which elements may be accessed at compile-time. In the case of the gl_LightSource array of size [8], we emit 64 state references into the parameter array (8 elements times 8 vec4s per gl_LightSourceParameters struct). Previously, we only allowed constant-indexed references to uniform arrays (such as gl_LightSource[2].position) which resulted in a single state reference being added to the parameter array, not 64. We still optimize this case. Users should be aware that using "gl_LightSource[i].ambient" in their shaders is a bit expensive since state validation will involve updating all 64 light source entries in the parameter list.
2008-12-15mesa: bump glsl grammar revisionBrian Paul
And update some copyrights.
2008-12-11mesa: checkpoint commit of GLSL 1.20 array syntax.Brian Paul
This allows things like float[3] x = float[3](1., 2., 3.); Parsing and AST construction now. Codegen not working yet.
2008-11-24mesa: added support for GLSL 1.20 array.length() methodBrian Paul
This is the only method supported in GLSL 1.20 so we take a few short-cuts.
2008-11-24mesa: support for GLSL 1.20 array typesBrian Paul
This allows syntax like "float[8] foo, bar;"
2008-11-19mesa: minor comment reformatttingBrian Paul
2008-11-13mesa: use the tighter definition of GLSL ftransform() from the gallium branchesBrian Paul
2008-11-13mesa: remove unused/obsolete __NormalMatrixTranspose matrixBrian Paul
2008-11-10mesa: allows 'f' suffix on GLSL float literalsBrian Paul
2008-11-07mesa: add support for 'centroid' qualifier in GLSL 1.20Brian Paul
2008-11-07mesa: add support for 'invariant' keyword for GLSL 1.20Brian Paul
2008-11-07mesa: reformat comments, rewrap lines, etc for a little better readabilityBrian Paul
2008-10-31mesa: fix some bugs with precision qualifier parsingBrian Paul
2008-08-25mesa: glsl: regenerated fileBrian Paul
2008-08-25mesa: glsl: grab latest fixes from gallium-0.1 branchBrian Paul
Includes: 1. Fixes failed asserting about bad swizzles in src reg emit. 2. Tracks uniform var usage. 3. Emit exp() in terms of EXP2 instruction.
2008-08-16mesa: turn off 'x' bit misset on a few .h and .syn filesBrian Paul
2008-08-16mesa: import latest GLSL code from gallium-0.1 branchBrian Paul
2008-07-29mesa: regenerated filesBrian Paul
2008-07-29mesa: glsl: re-order some constructorsBrian Paul
2008-07-29mesa: glsl: remove unneeded operatorsBrian Paul
2008-07-29mesa: fix some GLSL /= int operatorsBrian Paul
plus add a few more special constructors to improve code quality.
2008-07-29mesa: implement grammar/parsing for precision/invariant syntaxBrian Paul
Plus, fix some issues with pre-defined preprocessor symbols and version checking.
2008-07-17mesa: regenerated fileBrian Paul
2008-07-17mesa: fix/improve the atan(y,x) functionBrian Paul
2008-07-16mesa: regenerated fileBrian Paul
2008-07-16mesa: fix copy&paste errors in degrees() functionsBrian Paul
2008-07-15mesa: regenerated fileBrian Paul
2008-07-15mesa: fix some broken /= operatorsBrian Paul
2008-07-15mesa: fix some broken bool, bvec2, bvec3, bvec4 constructorsBrian Paul
2008-07-03mesa: regenerated fileBrian Paul
2008-07-03mesa: additional vec4 constructorBrian Paul
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-05-07Never fail `make clean'Dan Nicholson
Mostly some pedantic changes such that `make clean' always ignores errors. Also changed the top clean target to do the `touch configs/current' dance instead of realclean.
2008-04-03rewrite some of the mat*mat, mat*vec intrinsicsBrian
Also, remove obsolete matrix codegen code.
2008-01-31regenerate glsl library functionsRoland Scheidegger
2008-01-31fix w component of glsl vec4 asinRoland Scheidegger
2007-10-24add to gitBrian
2007-07-03added vec2(vec4) constructor, bug 11404Brian
2007-05-10regeneratedBrian
2007-05-10Implement exp() in terms of __asm float_power. Fix typo in mod(vec4) function.Brian
exp() was using __asm float_exp (OPCODE_EXP) but that computes base two, not e. See bug 10907.
2007-05-01regeneratedBrian
2007-05-01implement acos(), asin(), atan()Brian
2007-04-27asin(), acos(), atan() just return 0.5 for now to avoid crashing. Fix someday.Brian
2007-04-17regeneratedBrian