Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | mesa: move shader/slang/* sources to main/slang/* | Brian Paul | 2010-06-10 | 1 | -5357/+0 |
| | | | | Reduce the source tree depth a bit. | ||||
* | glsl: silence unused var warnings | Brian Paul | 2010-05-24 | 1 | -0/+1 |
| | |||||
* | mesa: Handle FEATURE_es2_glsl differences at runtime too | Kristian Høgsberg | 2010-05-24 | 1 | -1/+3 |
| | | | | | | | Now that we can support different APIs at runtime, we need to check the context for the API we're currently providing as well. https://bugs.freedesktop.org/show_bug.cgi?id=28194 | ||||
* | glsl: change variable declared assertion into conditional | Brian Paul | 2010-05-03 | 1 | -2/+1 |
| | | | | | | | | | The slang_variable::declared field originated as a debug field but can be promoted for use during sematic error checking. Fixes fd.o bug 27921. NOTE: this is a candidate for back-porting to the 7.8 stable branch. | ||||
* | glsl: s/sprintf/_mesa_snprintf/ | Vinson Lee | 2010-05-01 | 1 | -1/+1 |
| | |||||
* | glsl: pass datatype to _mesa_add_varying() | Brian Paul | 2010-04-01 | 1 | -1/+1 |
| | | | | Will be needed later for transform feedback support. | ||||
* | glsl: Remove unsigned greater than or equal zero comparison. | Vinson Lee | 2010-03-04 | 1 | -1/+1 |
| | |||||
* | glsl: Remove unsigned greater than or equal zero comparison. | Vinson Lee | 2010-03-04 | 1 | -1/+1 |
| | |||||
* | glsl: Return NULL on _slan_gen_asm error path on non-debug builds. | Vinson Lee | 2010-03-04 | 1 | -0/+1 |
| | | | | | Exit the function early on the error path, instead of continuing, to prevent a null pointer dereference later on. | ||||
* | glsl: Move assert from outside to inside of _slang_gen_swizzle function. | Vinson Lee | 2010-02-27 | 1 | -1/+1 |
| | |||||
* | glsl: Assert pointer is not null before dereferencing. | Vinson Lee | 2010-02-27 | 1 | -0/+1 |
| | |||||
* | glsl: implement support for GL_EXT_texture_array | Brian Paul | 2010-02-25 | 1 | -26/+50 |
| | | | | | | | | GL_EXT_texture_array is different from the existing GL_MESA_texture_array support in that the former is only supported for GLSL, not fixed-function. The shadow compare versions of the sampler functions haven't been tested yet. The non-shadow versions have been tested with a new piglit test. | ||||
* | mesa: restore _mesa_snprintf() - it's needed for Windows | Brian Paul | 2010-02-19 | 1 | -2/+2 |
| | | | | This reverts part of commit 298be2b028263b2c343a707662c6fbfa18293cb2 | ||||
* | Replace the _mesa_*printf() wrappers with the plain libc versions | Kristian Høgsberg | 2010-02-19 | 1 | -2/+2 |
| | |||||
* | Replace _mesa_malloc, _mesa_calloc and _mesa_free with plain libc versions | Kristian Høgsberg | 2010-02-19 | 1 | -3/+3 |
| | |||||
* | Remove _mesa_strcmp in favor of plain strcmp. | Kenneth Graunke | 2010-02-19 | 1 | -4/+4 |
| | |||||
* | mesa: Fix compiler warnings | Karl Schultz | 2010-02-13 | 1 | -1/+1 |
| | | | | | Add explicit casts, fix constant types, fix variable types. Fixes about 340 warnings in MSFT Visual Studio. | ||||
* | mesa: fix double->float assignment warnings, int/uint comparison warnings | Brian Paul | 2010-01-27 | 1 | -1/+1 |
| | | | | Reported by Karl Schultz. | ||||
* | glsl: use varName variable in _slang_gen_assignment() | Brian Paul | 2010-01-04 | 1 | -3/+4 |
| | |||||
* | glsl: added uniform initializer check | Brian Paul | 2009-12-29 | 1 | -0/+8 |
| | | | | | | | | | GLSL 1.10 disallows initializers for uniforms but GLSL 1.20 and later allows them. This patch uses the #version directive to allow/disallow uniform initializers. This addresses bug 25807, but piglit also needs to be fixed to specify the GLSL version in the shader. | ||||
* | mesa: fix assorted compiler warnings | Brian Paul | 2009-11-17 | 1 | -1/+1 |
| | |||||
* | glsl: add support for CMP instruction | Brian Paul | 2009-09-29 | 1 | -0/+1 |
| | |||||
* | glsl: init var to silence warning | Brian Paul | 2009-09-24 | 1 | -1/+1 |
| | |||||
* | glsl: move predefined shader input/output info/code to slang_builtin.c | Brian Paul | 2009-08-12 | 1 | -103/+1 |
| | | | | | This is a more logical place for this code. Also add some functions for querying vertex shader input names, types, etc. | ||||
* | glsl: do const parameter optimization for array element actual parameters | Brian Paul | 2009-07-09 | 1 | -2/+3 |
| | | | | | | | | | | When a function parameter is const-qualified we can avoid making a copy of the actual parameter (we basically do a search/replace when inlining). This is now done for array element params too, resulting in better code (fewer MOV instructions). We should allow some other types of function arguments here but let's be conservative for the moment. | ||||
* | glsl: move/simplify error checking for 'return' statements | Brian Paul | 2009-06-26 | 1 | -22/+14 |
| | |||||
* | glsl: overhaul 'return' statement handling | Brian Paul | 2009-06-26 | 1 | -214/+202 |
| | | | | | | | A new node type (SLANG_OPER_RETURN_INLINED) is used to denote 'return' statements inside inlined functions which need special handling. All glean glsl1 tests pass for EmitContReturn=FALSE and TRUE. | ||||
* | glsl: predicate assignments according to __returnFlag | Brian Paul | 2009-06-26 | 1 | -4/+29 |
| | | | | Fixes glean "function with early return (3)" case (when EmitContReturn=FALSE). | ||||
* | glsl: silence a problem warning | Brian Paul | 2009-06-26 | 1 | -1/+2 |
| | |||||
* | glsl: code refactoring for return statements | Brian Paul | 2009-06-26 | 1 | -70/+88 |
| | |||||
* | glsl: fix assorted regressions related to early-return-removal | Brian Paul | 2009-06-26 | 1 | -14/+34 |
| | |||||
* | glsl: rework loop nesting code | Brian Paul | 2009-06-26 | 1 | -39/+79 |
| | |||||
* | glsl: remove test for loop unrolling when we hit conditional cont/break | Brian Paul | 2009-06-26 | 1 | -4/+0 |
| | | | | | This is no longer needed since we added the new _slang_loop_contains_continue_or_break() function/test. | ||||
* | glsl: checkpoint: predicate __retVal = expr with __returnFlag | Brian Paul | 2009-06-26 | 1 | -26/+60 |
| | | | | The glean "function with early return (1)" test passes now. | ||||
* | glsl: use new helper functions in _slang_gen_logical_and/or() | Brian Paul | 2009-06-26 | 1 | -15/+9 |
| | |||||
* | glsl: checkpoint: replace 'return' with __returnFlag=true; | Brian Paul | 2009-06-26 | 1 | -7/+68 |
| | | | | Needed for "remove early returns" transformation. | ||||
* | glsl: fix uninitialized var in _slang_gen_for_without_continue() | Brian Paul | 2009-06-26 | 1 | -1/+1 |
| | |||||
* | glsl: check-point: declare _returnFlag | Brian Paul | 2009-06-26 | 1 | -0/+33 |
| | |||||
* | glsl: use slang_generate_declaration() to consolidate some code | Brian Paul | 2009-06-26 | 1 | -31/+37 |
| | |||||
* | glsl: remove obsolete comment | Brian Paul | 2009-06-26 | 1 | -3/+0 |
| | |||||
* | glsl: implement _slang_gen_while_without_continue() | Brian Paul | 2009-06-26 | 1 | -82/+115 |
| | |||||
* | glsl: fix a bug involving 'continue' in 'for' loops | Brian Paul | 2009-06-26 | 1 | -23/+43 |
| | | | | | | | | Need to execute the for loop's increment code before we continue. Add a slang_assemble_ctx::CurLoopOper field to keep track of the containing loop and avoid the "cont if true" path in this situation. Plus, assorted clean-ups. | ||||
* | glsl: use _slang_loop_contains_continue_or_break() to check for unrolling | Brian Paul | 2009-06-26 | 1 | -5/+36 |
| | | | | The previous test failed for nested loops. | ||||
* | glsl: use new _slang_loop_contains_continue() helper function | Brian Paul | 2009-06-26 | 1 | -5/+126 |
| | |||||
* | glsl: implement continue->break translation for do-while loops | Brian Paul | 2009-06-26 | 1 | -15/+219 |
| | |||||
* | glsl: remove debug code, misc clean-up | Brian Paul | 2009-06-26 | 1 | -5/+0 |
| | |||||
* | glsl: implement continue->break transformation for for-loops | Brian Paul | 2009-06-26 | 1 | -3/+167 |
| | |||||
* | glsl: don't unroll loops containing continue/break | Brian Paul | 2009-06-26 | 1 | -0/+6 |
| | | | | Just search the AST in _slang_can_unroll_for_loop(). | ||||
* | Revert "slang: if/else/break & if/else/continue work for unrolled loops" | Brian Paul | 2009-06-26 | 1 | -37/+7 |
| | | | | | | | | | | | We should just check if the loop contains a continue/break in the _slang_can_unroll_for_loop() test function... This reverts commit 989856bde47d699d7e18798df4013fbf962e1d4b. Conflicts: src/mesa/shader/slang/slang_codegen.h | ||||
* | glsl: implement compiling/linking of separate compilation units | Brian Paul | 2009-04-01 | 1 | -5/+14 |
| | | | | | | | | | A shader program may consist of multiple shaders (source code units). If we find there are unresolved functions after compiling the unit that defines main(), we'll concatenate all the respective vertex or fragment shaders then recompile. This isn't foolproof but should work in most cases. |