Age | Commit message (Collapse) | Author | |
---|---|---|---|
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. | |||
2009-06-26 | glsl: use new _slang_loop_contains_continue() helper function | Brian Paul | |
2009-06-26 | glsl: implement continue->break translation for do-while loops | Brian Paul | |
2009-06-26 | glsl: added slang_operation_literal_int/bool() helper functions | Brian Paul | |
2009-06-26 | glsl: don't allocate 0-length children array in slang_operation_copy() | Brian Paul | |
2009-06-26 | glsl: remove debug code, misc clean-up | Brian Paul | |
2009-06-26 | glsl: implement continue->break transformation for for-loops | Brian Paul | |
2009-06-26 | glsl: added slang_operation_add_children() and slang_oper_child() helpers | Brian Paul | |
2009-06-26 | glsl: added slang_assemble_ctx::EmitContReturn field, init | Brian Paul | |
2009-06-26 | glsl: don't unroll loops containing continue/break | Brian Paul | |
Just search the AST in _slang_can_unroll_for_loop(). | |||
2009-06-26 | Revert "slang: if/else/break & if/else/continue work for unrolled loops" | Brian Paul | |
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 | |||
2009-06-26 | glsl: Added gl_shader_state::EmitContReturn field | Brian Paul | |
This is the start of a glsl-continue-return feature branch to support a GLSL code generator option for 'continue' and 'return' statements. Some targets don't support CONT or RET statements so we'll need to try to generate code that does not use them... | |||
2009-06-22 | mesa: rename MAX_VERTEX_ATTRIBS to MAX_VERTEX_GENERIC_ATTRIBS | Brian Paul | |
Be clearer that this is the number of generic vertex program/shader attributes, not counting the legacy attributes (pos, normal, color, etc). (cherry picked from commit 4a95185c9f30c2de7a03bb1a0653f51b53b1111d) | |||
2009-06-10 | glsl: fix warnings, update comments, s/TRUE/GL_TRUE/ | Brian Paul | |
(cherry picked from master, commit 7fdd64ab29576e607434fb8c82ddfa61e8ea6aa8) | |||
2009-06-10 | glsl: Handle continuation characters in preprocessor. | Brian Paul | |
(cherry picked from master, commit cc22620e4b11425997f3bc1fc70f4c88cec22d2e) | |||
2009-06-10 | glsl: Fix symbol replacement handling in preprocessor. | Brian Paul | |
(cherry picked from master, commit d9617deb008b75f4a605a30408aeb1948139c33e) | |||
2009-06-09 | glsl: Expand nested preprocessor macros. | Brian Paul | |
(cherry picked from master, commit ef8caec29ae73bb2bbeb48f0578d839ef29348cd) | |||
2009-06-08 | glsl: Fix preprocessor define argument parsing for dead sections. | Brian Paul | |
(cherry picked from master, commit 19a54d9f1055c366fd77026dd67007a8d5921f58) | |||
2009-06-08 | mesa: better error message for invalid texture unit index | Brian Paul | |
2009-05-08 | mesa: more complete fix for transform_invarient glitches | Keith Whitwell | |
Add a new flag mvp_with_dp4 in the context, and use that to switch both ffvertex.c and programopt.c vertex transformation code to either DP4 or MUL/MAD implementations. | |||
2009-04-29 | mesa: added _mesa_check_soa_dependencies() function | Brian Paul | |
This function will check an instruction to see if there's data dependencies between the dst and src registers if executed in an SOA manner. | |||
2009-04-27 | Avoid a segfault in shader compilation | Robert Ellison | |
If a shader reaches an out-of-memory condition while adding a new function (reallocating the function list), a segfault will occur during cleanup (because the num_functions field is non-zero, but the functions pointer is NULL). This fixes that segfault by zeroing out the num_functions field if reallocation fails. | |||
2009-04-22 | mesa: Fix buffer overflow when parsing generic vertex attributes. | Brian Paul | |
2009-04-21 | mesa: new _NEW_PROGRAM_CONSTANTS flag | Brian Paul | |
This state flag will be used to indicate that vertex/fragment program constants have changed. _NEW_PROGRAM will be used to indicate changes to the vertex/fragment shader itself, or misc related state. _NEW_PROGRAM_CONSTANTS is also set whenever a program parameter that's tracking GL state has changed. For example, if the projection matrix is in the parameter list, calling glFrustum() will cause _NEW_PROGRAM_CONSTANTS to be set. This will let to remove the need for dynamic state atoms in some drivers. For now, we still set _NEW_PROGRAM in all the places we used to. We'll no longer set _NEW_PROGRAM in glUniform() after drivers/etc have been updated. | |||
2009-04-21 | mesa: print internal.current[i] attrib | Brian Paul | |
2009-04-21 | mesa: print parameter list dirty state flag mask | Brian Paul | |
2009-04-18 | mesa: add switch case for GL_VERTEX_STATE_PROGRAM_NV in _mesa_new_program() | Brian Paul | |
Fixes bug seen in progs/tests/vptest1.c | |||
2009-04-17 | mesa: build a float[4] value in _mesa_add_sampler() to avoid random values | Brian Paul | |
2009-04-14 | mesa: merge the prog_src_register::NegateBase and NegateAbs fields | Brian Paul | |
There's really no need for two negation fields. This came from the GL_NV_fragment_program extension. The new, unified Negate bitfield applies after the absolute value step. | |||
2009-04-14 | mesa: remove unused matrixType param from ctx->Driver.UniformMatrix() functions | Brian Paul | |
2009-04-14 | mesa: move #define for GL_PROGRAM_BINARY_LENGTH_OES | Brian Paul | |
2009-04-14 | mesa: remove NV vertex/fragment program print/debug code | Brian Paul | |
The code in prog_print.c can be used instead. | |||
2009-04-08 | mesa: minor datatype changes in optimization code | Brian Paul | |
2009-04-07 | glsl: enable the new linear scan register allocator code | Brian Paul | |
Seems to b working well enough to enable all the time. Optimizations can be disabled with "export MESA_GLSL=nopt" if needed. | |||
2009-04-07 | glsl: don't optimize program if MESA_GLSL=nopt | Brian Paul | |
2009-04-03 | mesa: in mesa_add_named_constant(), avoid adding duplicate constants | Brian Paul | |
2009-04-03 | mesa: fix parameter counting in ARB vertex/fragment program parsing | Brian Paul | |
Duplicated unnamed constants were getting counted more than once. | |||
2009-04-03 | mesa: replace >= with > when testing if we've exceeded max local params | Brian Paul | |
Now a program that uses 256 locals works as it should. | |||
2009-04-03 | mesa: for OPCODE_LIT, use _mesa_pow() instead of exp() and log() | Brian Paul | |
Also, s/pow/_mesa_pow/ | |||
2009-04-03 | mesa: rename some gl_light fields to be clearer | Brian Paul | |
EyeDirection -> SpotDirection _NormDirection -> _NormSpotDirection | |||
2009-04-03 | mesa: replace assertion with conditional in _mesa_opcode_string() | Brian Paul | |
2009-04-03 | mesa: clean up formatting and use 'return' instead of 'break' consistantly | Brian Paul | |
2009-04-02 | glsl: fix segfault in linker when vertex or fragment shader was missing | Brian Paul | |
2009-04-01 | glsl: implement compiling/linking of separate compilation units | Brian Paul | |
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. |