Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Initial implementation of OPCODE_IF/ELSE/ENDIF instructions. | Brian | 2007-01-20 | 8 | -3/+182 |
| | |||||
* | Reimplement && and || to do short-circuit evaluation. | Brian | 2007-01-20 | 4 | -117/+159 |
| | | | | Improved shader error handling. | ||||
* | rewrite more __postIncr functions | Brian | 2007-01-20 | 2 | -105/+137 |
| | |||||
* | Implement do/while loops. Replace IR_CJUMP with IR_CJUMP0 and IR_CJUMP1 so | Brian | 2007-01-19 | 3 | -16/+79 |
| | | | | we can either jump on zero, or non-zero predicate. | ||||
* | Rewrite normalize(vec3/vec4) to use one less register. | Brian | 2007-01-19 | 2 | -335/+346 |
| | |||||
* | report error message when something fails | Brian | 2007-01-19 | 1 | -2/+23 |
| | |||||
* | print error msg when there's a problem | Brian | 2007-01-19 | 1 | -1/+4 |
| | |||||
* | remove stray tab | Brian | 2007-01-19 | 1 | -1/+1 |
| | |||||
* | Implement fragment discard/kill. | Brian | 2007-01-19 | 3 | -1/+24 |
| | |||||
* | change while-loop to create new scope for loop body, per spec | Brian | 2007-01-19 | 2 | -3/+3 |
| | |||||
* | Implement constant sharing so that 4 float constants can share a single | Brian | 2007-01-18 | 2 | -12/+19 |
| | | | | float[4] register slot. | ||||
* | _mesa_add_unnamed_constant() now tries to re-use constants already in | Brian | 2007-01-18 | 1 | -30/+57 |
| | | | | the parameter list. | ||||
* | Reimplement code for swizzling so that expressions like (p+q).x for vectors ↵ | Brian | 2007-01-18 | 4 | -91/+129 |
| | | | | p and q works correctly. | ||||
* | rewrite a bunch of assignment operators (like +=) | Brian | 2007-01-18 | 2 | -488/+495 |
| | |||||
* | remove swizzle param from new_var() | Brian | 2007-01-18 | 1 | -5/+5 |
| | |||||
* | rewrite additional matrix-related functions to reduce register needs | Brian | 2007-01-17 | 2 | -468/+463 |
| | |||||
* | rewrite mat4 * mat4 operator to use fewer temps | Brian | 2007-01-17 | 2 | -383/+430 |
| | |||||
* | do bounds check in _slang_push_var_table(), added comment | Brian | 2007-01-17 | 1 | -1/+3 |
| | |||||
* | rewrite matrix constructors | Brian | 2007-01-17 | 2 | -787/+928 |
| | |||||
* | handle var size > 4 in _slang_pop_var_table() | Brian | 2007-01-17 | 1 | -3/+7 |
| | |||||
* | Rewrite a bunch of constructors. It's now important that the first | Brian | 2007-01-17 | 2 | -713/+801 |
| | | | | | | | constructor for any given type be the one that takes the most parameters as this is the constructor that'll be used when there's no perfect match to the caller's arguments. See the _slang_adapt_call() function for details. | ||||
* | _slang_gen_function_call_name() now tries to adapt function calls (expand | Brian | 2007-01-17 | 2 | -12/+44 |
| | | | | vectors, insert casts) when a perfect match isn't found. | ||||
* | New _slang_adapt_call() function. | Brian | 2007-01-17 | 2 | -0/+154 |
| | | | | | | | | | | | | This is used to modify function calls (when possible) to make the arguments map to the function parameters. This includes "unrolling" vector types and doing casts. Example: vec2 v2 = vec2(1.2, 3.4) ivec3 iv = ivec3(false, v2); Is converted into: ivec3 iv = ivec3(int(false), int(v2[0]), int(v2[1])) | ||||
* | code clean-up, re-org. Added IR_F_TO_I support. | Brian | 2007-01-17 | 1 | -90/+112 |
| | |||||
* | added IR_F_TO_I, update comments | Brian | 2007-01-17 | 1 | -3/+4 |
| | |||||
* | Added OPCODE_INT to convert 4 floats to 4 ints. | Brian | 2007-01-17 | 4 | -0/+30 |
| | |||||
* | Fix/clean-up a number of things related to variable/temporary allocation. | Brian | 2007-01-17 | 3 | -29/+54 |
| | |||||
* | Implement codegen for the selection operator ( b ? x : y ) | Brian | 2007-01-16 | 2 | -19/+104 |
| | |||||
* | fix typo | Brian | 2007-01-16 | 1 | -1/+1 |
| | |||||
* | when automatically binding vertex attributes, start with attrib 1, not 0 | Brian | 2007-01-16 | 1 | -2/+5 |
| | |||||
* | remove dead code | Brian | 2007-01-16 | 1 | -11/+0 |
| | |||||
* | comments | Brian | 2007-01-16 | 2 | -60/+50 |
| | |||||
* | implement logical or, xor, not | Brian | 2007-01-16 | 3 | -55/+84 |
| | |||||
* | some additional vector constructors | Brian | 2007-01-16 | 2 | -724/+758 |
| | |||||
* | fix _slang_gen_subscript() for the case when a simple vector is accessed as ↵ | Brian | 2007-01-16 | 1 | -17/+52 |
| | | | | an array: convert index to a swizzle/writemask | ||||
* | Reimplement the post-increment/decrement functions. | Brian | 2007-01-15 | 3 | -151/+190 |
| | | | | | | Instead of defining functions with an extra dummy parameter to distinguish from the pre-incr/decr functions, just use new function names: __postIncr and __postDecr. | ||||
* | Implement the ++var and --var operators, improve some constructors. | Brian | 2007-01-15 | 3 | -811/+843 |
| | |||||
* | added vec3 constructor code | Brian | 2007-01-15 | 1 | -0/+14 |
| | |||||
* | added IR_ELEMENT | Brian | 2007-01-15 | 1 | -0/+1 |
| | |||||
* | checkpoint: ++, -- and && operators | Brian | 2007-01-15 | 1 | -5/+74 |
| | |||||
* | Redo the way array indexes are handled. Resolve storage location at code ↵ | Brian | 2007-01-15 | 3 | -48/+46 |
| | | | | emit time, not codegen time. | ||||
* | remove old globals | Brian | 2007-01-15 | 1 | -10/+0 |
| | |||||
* | comments | Brian | 2007-01-15 | 1 | -0/+7 |
| | |||||
* | Move some global vars into slang_assemble_ctx. | Brian | 2007-01-15 | 2 | -31/+37 |
| | |||||
* | fix the subassig, mulassign and divassign cases | Brian | 2007-01-15 | 1 | -12/+3 |
| | |||||
* | clean-up slang_allocate_storage() | Brian | 2007-01-15 | 1 | -44/+22 |
| | |||||
* | Rework code related to temp register allocation, both for user variables | Brian | 2007-01-13 | 12 | -477/+496 |
| | | | | | | and expression temporarires. Much better register utilization now. Lots of other fixes. The OpenGL GLSL "orange book" brick shader demo works now. | ||||
* | slang_variable_scope now stores array of pointers to slang_variables. | Brian | 2007-01-13 | 6 | -39/+63 |
| | |||||
* | added another vec4 constructor, updated += operator | Brian | 2007-01-13 | 2 | -483/+493 |
| | |||||
* | Fix a problem with inlined "return" statements. Make some attempt to free ↵ | Brian | 2007-01-11 | 6 | -17/+174 |
| | | | | temporaries. |