Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Lots of changes to prog_print.c code. | Brian | 2007-02-17 | 4 | -45/+336 |
| | | | | Mainly, allow printing programs in either ARB, NV or "debug" formats. | ||||
* | remove dead code | Brian | 2007-02-16 | 1 | -21/+0 |
| | |||||
* | s/_slang_link2/_slang_link/ | Brian | 2007-02-16 | 3 | -9/+9 |
| | |||||
* | change all enum tokens to uppercase | Brian | 2007-02-16 | 16 | -817/+819 |
| | |||||
* | abort upon errors (temporary) | Brian | 2007-02-16 | 1 | -1/+4 |
| | |||||
* | added a comment | Brian | 2007-02-16 | 1 | -0/+3 |
| | |||||
* | Allow int->float argument conversion in _slang_locate_function(). | Brian | 2007-02-16 | 1 | -7/+37 |
| | |||||
* | implement IR_I_TO_F | Brian | 2007-02-16 | 1 | -1/+6 |
| | |||||
* | remove dead code | Brian | 2007-02-13 | 1 | -3/+3 |
| | |||||
* | add prog_debug.c | Brian | 2007-02-09 | 1 | -0/+1 |
| | |||||
* | move GL_MESA_program_debug funcs to prog_debug.c | Brian | 2007-02-09 | 2 | -261/+6 |
| | |||||
* | Move experimental GL_MESA_program_debug functions into new file. | Brian | 2007-02-09 | 2 | -0/+309 |
| | |||||
* | comments, etc | Brian | 2007-02-09 | 1 | -3/+19 |
| | |||||
* | re-enable free'ing of IR trees | Brian | 2007-02-09 | 1 | -1/+1 |
| | |||||
* | always init param vars to silence valgrind warnings | Brian | 2007-02-09 | 1 | -0/+4 |
| | |||||
* | do full swizzled matching in _mesa_lookup_parameter_constant() | Brian | 2007-02-08 | 1 | -5/+16 |
| | |||||
* | Check for constant-valued while/do loop conditions. | Brian | 2007-02-08 | 1 | -8/+58 |
| | | | | | | | Allows us to: 1. avoid generating constant-valued BRK test for while(1).. 2. discard entire loop for while(0). 3. detection infinite loops at compile-time. | ||||
* | optimize conditional breaks/continues | Brian | 2007-02-08 | 2 | -23/+87 |
| | |||||
* | cont at top of loop, little clean-ups | Brian | 2007-02-08 | 1 | -5/+12 |
| | |||||
* | remove some cruft | Brian | 2007-02-08 | 1 | -4/+1 |
| | |||||
* | fix broken BRA for return stmts | Brian | 2007-02-08 | 2 | -3/+4 |
| | |||||
* | consolidate BRA with BRK, CONT | Brian | 2007-02-08 | 1 | -7/+3 |
| | |||||
* | change BranchTarget to GLint | Brian | 2007-02-08 | 1 | -1/+1 |
| | |||||
* | Use conditional break in for/do/while loops. | Brian | 2007-02-08 | 2 | -62/+88 |
| | |||||
* | Simplify code with eval_condition(). Implement conditional BRK. | Brian | 2007-02-08 | 1 | -69/+56 |
| | |||||
* | remove old loop break/cont stuff | Brian | 2007-02-07 | 2 | -16/+4 |
| | |||||
* | high vs. low level if/then/else code emit | Brian | 2007-02-07 | 1 | -77/+112 |
| | |||||
* | s/%f/%g/ | Brian | 2007-02-07 | 1 | -1/+1 |
| | |||||
* | Remove old functions for generating BRA-based looping. | Brian | 2007-02-07 | 1 | -176/+8 |
| | |||||
* | Use IR_LOOP to represent do-while and for-loops. | Brian | 2007-02-07 | 5 | -85/+128 |
| | | | | Also, start moving high vs. low-level instruction selection into slang_emit.c | ||||
* | BRK and CONT work the same | Brian | 2007-02-06 | 1 | -20/+4 |
| | |||||
* | Implement CONT, improve BRK. | Brian | 2007-02-06 | 4 | -18/+74 |
| | | | | | | | IR_LOOP's BranchNode ptr is the head of a linked list of CONT and BRK nodes. After emitting loop, walk over the linked list, filling in the CONT/BRK instruction's BranchTarget field (location of the ENDLOOP instruction, or one past). | ||||
* | replace IR_BEGIN_LOOP/IR_END_LOOP with IR_LOOP | Brian | 2007-02-06 | 4 | -60/+58 |
| | |||||
* | new_node[0123]() functions | Brian | 2007-02-06 | 1 | -47/+61 |
| | |||||
* | redo IR_IF node, removing IR_ELSE, IR_ENDIF | Brian | 2007-02-06 | 3 | -110/+75 |
| | |||||
* | BRK instruction's BranchTarget field now used for efficiently breaking out ↵ | Brian | 2007-02-05 | 4 | -29/+123 |
| | | | | | | | | of loops. BRK's BranchTarget field actually points to the top of the loop, not the bottom, since we don't know the later's location yet. In the interpreter, basically do an indirect jump to update the PC. | ||||
* | Use IR node's BranchNode field for IF/ELSE/ENDIF instructions. | Brian | 2007-02-05 | 4 | -67/+73 |
| | | | | | | | This allows us to back-patch the IF/ELSE instruction's BranchTarget field to point to the location of the ELSE/ENDIF instructions. No longer have to search for ELSE/ENDIF in the interpreter. Also makes it trivial to translate IF/ELSE instructions into conditional/unconditional BRA instructions. | ||||
* | minor formatting changes | Brian | 2007-02-05 | 1 | -4/+4 |
| | |||||
* | set UseHighLevelInstructions = false for now | Brian | 2007-02-05 | 1 | -1/+1 |
| | |||||
* | Initial implementation of high-level flow-control instructions. | Brian | 2007-02-05 | 5 | -13/+189 |
| | | | | | | IF/ELSE/ENDIF and BEGIN_LOOP/END_LOOP/BREAK instructions seem to work. Disabled by default though until better tested. Implemented IR_NOT, but needs optimization. | ||||
* | indentation for program instructions (if/else, loops) | Brian | 2007-02-05 | 2 | -13/+49 |
| | |||||
* | Initial support of loop and subroutine instructions. | Brian | 2007-02-05 | 7 | -11/+83 |
| | | | | | New high-level flow-control instructions, both at IR level and GPU instructions for looping and subroutines. | ||||
* | Merge SWvertex texcoord and varying fields into attrib[] array field. | Brian | 2007-02-05 | 13 | -565/+372 |
| | | | | | Fragment texcoords and varying code is now unified in the point/line/triangle rasterization code. In the future, merge color, fog, etc. attribs. | ||||
* | Add literal_size field to slang_operation. | Brian | 2007-02-03 | 6 | -10/+85 |
| | | | | | | Used to track the number of components in a float/int/bool literal. Helps with some typechecking things. Fixes problems with calls such as "distance(v2, vec2(1.0, 2.0))" | ||||
* | minor tweaks to distance() funcs | Brian | 2007-02-03 | 2 | -262/+263 |
| | |||||
* | remove unused slang_operation fields | Brian | 2007-02-03 | 1 | -2/+0 |
| | |||||
* | shading language texture demo/test | Brian | 2007-02-03 | 5 | -0/+637 |
| | |||||
* | added FLUSH_VERTICES() in _mesa_use_program() | Brian | 2007-02-03 | 1 | -0/+8 |
| | |||||
* | added texdemo1 | Brian | 2007-02-03 | 1 | -1/+16 |
| | |||||
* | Add _NEW_PROGRAM flag to _MESA_NEW_NEED_EYE_COORDS. | Brian | 2007-02-03 | 1 | -0/+1 |
| | | | | | This fixes a segfault in the texgen code that can occur after we've disabled a vertex program. |