Age | Commit message (Collapse) | Author | |
---|---|---|---|
2009-10-01 | Merge branch 'mesa_7_6_branch' | Brian Paul | |
2009-09-29 | glsl: regenerated file | Brian Paul | |
2009-09-29 | glsl: rewrite sqrt(x) intrinsic to handle x=0 | Brian Paul | |
Since sqrt() is basically implemented in terms of RSQ/RCP we'll do a divide by zero if x=0 and wind up with unpredictable results. Now use CMP instruction to test for x<=0 and return zero in that case. | |||
2009-09-29 | glsl: add support for CMP instruction | Brian Paul | |
2009-09-29 | mesa: added nopfrag/nopvert options for MESA_GLSL | Brian Paul | |
These options can be used to force vertex/fragment shaders to be no-op shaders (actually, simple pass-through shaders). For debug/test purposes. | |||
2009-09-24 | glsl: init var to silence warning | Brian Paul | |
2009-09-24 | glsl: fix missing initializers warning | Brian Paul | |
2009-09-15 | Merge branch 'mesa_7_5_branch' into mesa_7_6_branch | Brian Paul | |
2009-09-14 | glsl: remove extra #version directives from concatenated shader sources | Brian Paul | |
When we concatenate shaders to do our form of poor-man linking, if there's multiple #version directives, preprocessing fails. This change disables the extra #version directives by changing the first two chars to //. This should help with some Wine issues such as bug 23946. | |||
2009-08-25 | glsl: update a texture/sampler comment | Brian Paul | |
2009-08-24 | glsl: Silence gcc uninitialized variable warning. | Vinson Lee | |
2009-08-24 | glsl: Silence gcc uninitialized variable warning. | Vinson Lee | |
2009-08-13 | glsl: fix incorrect attribute size | Brian Paul | |
2009-08-12 | glsl: remove duplicate frag input entry | Brian Paul | |
2009-08-12 | Merge branch 'new-frag-attribs' | Brian Paul | |
This branch introduces new FRAG_ATTRIB_FACE and FRAG_ATTRIB_PNTC fragment program inputs for GLSL gl_FrontFacing and gl_PointCoord. Before, these attributes were packed with the FOG attribute. That made things complicated elsewhere. | |||
2009-08-12 | glsl: add gl_Vertex, gl_Normal, etc to list of active attributes | Brian Paul | |
If a vertex shader uses gl_Vertex, gl_Normal, etc, we need to include them when the user queries the list of active attributes. Before this we were just including the user-defined attributes. | |||
2009-08-12 | glsl: move predefined shader input/output info/code to slang_builtin.c | Brian Paul | |
This is a more logical place for this code. Also add some functions for querying vertex shader input names, types, etc. | |||
2009-07-29 | mesa: add new FRAG_ATTRIB_FACE and FRAG_ATTRIB_PNTC fragment program inputs | Brian Paul | |
Previously, the FOGC attribute contained the fragment fog coord, front/back- face flag and the gl_PointCoord.xy values. Now each of those things are separate fragment program attributes. This simplifies quite a few things in Mesa and gallium. Need to test i965 driver and fix up point coord handling in the gallium/draw module... | |||
2009-07-09 | Merge branch 'mesa_7_5_branch' | Brian Paul | |
2009-07-09 | glsl: do const parameter optimization for array element actual parameters | Brian Paul | |
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. | |||
2009-07-09 | glsl: fix incorrect indexing for gl_TextureMatrix[i][j] | Brian Paul | |
The two indexes were mixed up when accessing a row of a matrix in an array of matrices. | |||
2009-07-03 | Merge branch 'mesa_7_5_branch' | Jakob Bornecrantz | |
Conflicts: src/mesa/main/dlist.c src/mesa/vbo/vbo_save_api.c | |||
2009-07-03 | mesa/shaders: fix gl_NormalMatrix state parameters | Keith Whitwell | |
gl_NormalMatrix is the inverse transpose of the modelview matrix, but as every matrix here needs to be transposed, we end up with {MODELVIEW_MATRIX, INVERSE}. | |||
2009-06-26 | glsl: check number of varying variables against the limit | Brian Paul | |
Link fails if too many varying vars. (cherry picked from master, commit cc58fbcf2c5c88f406818db60910f537e03610d6) | |||
2009-06-26 | glsl: move/simplify error checking for 'return' statements | Brian Paul | |
2009-06-26 | glsl: overhaul 'return' statement handling | Brian Paul | |
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. | |||
2009-06-26 | glsl: predicate assignments according to __returnFlag | Brian Paul | |
Fixes glean "function with early return (3)" case (when EmitContReturn=FALSE). | |||
2009-06-26 | glsl: added slang_variable::is_global field | Brian Paul | |
2009-06-26 | glsl: silence a problem warning | Brian Paul | |
2009-06-26 | glsl: code refactoring for return statements | Brian Paul | |
2009-06-26 | glsl: fix assorted regressions related to early-return-removal | Brian Paul | |
2009-06-26 | glsl: comments, field reordering | Brian Paul | |
2009-06-26 | glsl: rework loop nesting code | Brian Paul | |
2009-06-26 | glsl: remove test for loop unrolling when we hit conditional cont/break | Brian Paul | |
This is no longer needed since we added the new _slang_loop_contains_continue_or_break() function/test. | |||
2009-06-26 | glsl: checkpoint: predicate __retVal = expr with __returnFlag | Brian Paul | |
The glean "function with early return (1)" test passes now. | |||
2009-06-26 | glsl: use new helper functions in _slang_gen_logical_and/or() | Brian Paul | |
2009-06-26 | glsl: add comments | Brian Paul | |
2009-06-26 | glsl: checkpoint: replace 'return' with __returnFlag=true; | Brian Paul | |
Needed for "remove early returns" transformation. | |||
2009-06-26 | glsl: fix up scoping for parent/children in slang_operation_copy() | Brian Paul | |
This will need more testing, but no regressions seen so far. | |||
2009-06-26 | glsl: fix uninitialized var in _slang_gen_for_without_continue() | Brian Paul | |
2009-06-26 | glsl: added slang_operation_free_children() | Brian Paul | |
2009-06-26 | glsl: added slang_oper_num_children() helper | Brian Paul | |
2009-06-26 | glsl: check-point: declare _returnFlag | Brian Paul | |
2009-06-26 | glsl: added slang_operation_insert_child() | Brian Paul | |
2009-06-26 | glsl: use slang_generate_declaration() to consolidate some code | Brian Paul | |
2009-06-26 | glsl: remove obsolete comment | Brian Paul | |
2009-06-26 | glsl: implement _slang_gen_while_without_continue() | Brian Paul | |
2009-06-26 | glsl: fix a bug involving 'continue' in 'for' loops | Brian Paul | |
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. | |||
2009-06-26 | glsl: added slang_oper_child_const() | Brian Paul | |
2009-06-26 | glsl: use _slang_loop_contains_continue_or_break() to check for unrolling | Brian Paul | |
The previous test failed for nested loops. |