summaryrefslogtreecommitdiff
path: root/src/mesa/shader/slang
AgeCommit message (Collapse)Author
2008-07-17mesa: fix/improve the atan(y,x) functionBrian Paul
2008-07-16mesa: fix temp re-use bug in emit_arith()Brian Paul
2008-07-16mesa: regenerated filesBrian Paul
2008-07-16mesa: fix copy&paste errors in degrees() functionsBrian Paul
2008-07-16mesa: implement grammar/parsing for precision/invariant syntaxBrian Paul
Plus, fix some issues with pre-defined preprocessor symbols and version checking.
2008-07-16mesa: Silence compiler warnings on Windows.Michal Krol
2008-07-15mesa: add missing IR_LOG2 caseBrian Paul
2008-07-15mesa: regenerated fileBrian Paul
2008-07-15mesa: fix some broken /= operatorsBrian Paul
2008-07-15mesa: regenerated fileBrian Paul
2008-07-15mesa: fix some broken bool, bvec2, bvec3, bvec4 constructorsBrian Paul
2008-07-15mesa: fix storage size computation in emit_arith()Brian Paul
2008-07-15mesa: fix some function inlining bugsBrian Paul
Need to add local vars of original function to the new scope's variable list (though the DECLs were already present). In slang_operation_copy() call slang_replace_scope() for SLANG_OPER_BLOCK_NEW_SCOPE opers.
2008-07-15mesa: improved printingBrian Paul
2008-07-15mesa: Silence compiler warnings on Windows.Michal Krol
2008-07-14mesa: assemble main() after all other functionsBrian Paul
Before, main() had to come after any functions it called.
2008-07-09mesa: check for null shader->SourceBrian Paul
2008-07-08mesa: fix bug/failure in recursive function inliningBrian Paul
Fixes a failure for cases such as y = f(a, f(a, b)) All the usual tests still pass but regressions are possible...
2008-07-08mesa: more debug outputBrian Paul
2008-07-08mesa: compute global var size before doing codegenBrian Paul
2008-07-08mesa: add missing VARYING case to storage_string()Brian Paul
2008-07-03mesa: fix incorrect array size, added assertionBrian Paul
2008-07-03mesa: fix array storage allocation bugBrian Paul
2008-07-03mesa: regenerated fileBrian Paul
2008-07-03mesa: additional vec4 constructorBrian Paul
2008-07-02mesa: additional GLSL built-in constantsBrian Paul
2008-07-02mesa: when linking a shader program, make sure all the shaders compiled OKBrian Paul
cherry-picked from master
2008-07-02mesa: added some debug code (disabled)Brian Paul
cherry-picked from master
2008-07-02mesa: regenerated fileBrian Paul
2008-07-02mesa: added some missing equal() notEqual() intrinsicsBrian Paul
cherry-picked from master
2008-07-02mesa: disable some debug assertionsBrian Paul
We can sometimes fail these assertions because of how swizzled storage works. Will revisit someday.
2008-07-02mesa: regenerated filesBrian Paul
2008-07-02mesa: fix all(bvec2) function typo, add missing bvec2/3/4() constuctorsBrian Paul
cherry-picked from master
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. cherry-picked from master
2008-07-01mesa: move some functionsBrian Paul
cherry-picked from master
2008-07-01mesa: make _slang_swizzle_swizzle() non-privateBrian Paul
cherry-picked from master
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. cherry-picked from master
2008-07-01mesa: add/fix some IrInfo entries for debugging purposesBrian Paul
cherry-picked from master
2008-06-24mesa: Use appropriate unsigned/signed, float/integer types.José Fonseca
2008-06-12glsl: make sure we replace all output reads with temporariesZack Rusin
test in if.glsl
2008-06-12glsl: implement variable array indexesZack Rusin
2008-06-09glsl: fix array size initialiazers using const variablesZack Rusin
e.g. const int kernelSize = 9; uniform vec2 kernel[kernelSize];
2008-06-04Set the attribute as used.Alan Hourihane
2008-05-20fix incorrect sampler numbering/indexing.Brian Paul
All samplers indexes were zero. cherry-picked from master (b6fb0940c226373ac235a5d327d3fcfd742bc6b9)
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-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