Age | Commit message (Collapse) | Author |
|
Using IR_SGE and IR_SGT with transposed args doesn't work since the __asm
calls don't do argument matching by name, but by position.
This fixes the broken lessThan() and lessThanEqual() functions.
|
|
|
|
|
|
This eliminates the NOP instructions that had been used as placeholders for
branch targets.
Also, fix "return" statement bug.
|
|
Also, start moving high vs. low-level instruction selection into slang_emit.c
|
|
|
|
|
|
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.
|
|
New high-level flow-control instructions, both at IR level and GPU instructions
for looping and subroutines.
|
|
vec2 v; v.x = v.y = 1.0; // chained assignment
vec4 v; v.zx = vec2(a,b); // swizzled writemask
|
|
instruction saturate-write option. Not finished yet.
|
|
|
|
|
|
|
|
|
|
we can either jump on zero, or non-zero predicate.
|
|
|
|
p and q works correctly.
|
|
|
|
emit time, not codegen time.
|
|
and expression temporarires. Much better register utilization now.
Lots of other fixes.
The OpenGL GLSL "orange book" brick shader demo works now.
|
|
|
|
|
|
properly.
|
|
|
|
|
|
|
|
|
|
|
|
instructions.
|