summaryrefslogtreecommitdiff
path: root/src/mesa/shader/slang/slang_ir.h
diff options
context:
space:
mode:
authorBrian <brian@yutani.localnet.net>2007-02-05 15:00:07 -0700
committerBrian <brian@yutani.localnet.net>2007-02-05 15:00:07 -0700
commitcf92c727979e434d148b23d20f2e4e0f4bc4de61 (patch)
tree4f4142ad5919f7684216ae580abb627878d958b0 /src/mesa/shader/slang/slang_ir.h
parent5db088d70fbd14620c2fc7840096a05993f8e2b9 (diff)
Initial implementation of high-level flow-control instructions.
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.
Diffstat (limited to 'src/mesa/shader/slang/slang_ir.h')
-rw-r--r--src/mesa/shader/slang/slang_ir.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/mesa/shader/slang/slang_ir.h b/src/mesa/shader/slang/slang_ir.h
index ac1ea4dbb4..df5fc06779 100644
--- a/src/mesa/shader/slang/slang_ir.h
+++ b/src/mesa/shader/slang/slang_ir.h
@@ -150,6 +150,8 @@ typedef struct slang_ir_node_
GLfloat Value[4]; /**< If Opcode == IR_FLOAT */
slang_variable *Var; /**< If Opcode == IR_VAR or IR_VAR_DECL */
slang_ir_storage *Store; /**< location of result of this operation */
+ GLint InstLocation; /**< Location of instruction emitted for this node */
+ struct slang_ir_node_ *BranchNode; /**< Used for branch instructions */
} slang_ir_node;