summaryrefslogtreecommitdiffstats
path: root/src/glsl/ir.h
diff options
context:
space:
mode:
authorMatt Turner <[email protected]>2013-04-09 17:45:12 -0700
committerMatt Turner <[email protected]>2013-05-06 10:17:13 -0700
commit499d8c65457620c4879f6da302f0a9859ceaa2ee (patch)
tree5b44847b2ef50942f84a4d40beaffd9d046ca2f8 /src/glsl/ir.h
parent44d3287ecd8b81a30a51613cd578dd31a115d820 (diff)
glsl: Add support for new bit built-ins in ARB_gpu_shader5.
v2: Move use of ir_binop_bfm and ir_triop_bfi to a later patch. Reviewed-by: Chris Forbes <[email protected]>
Diffstat (limited to 'src/glsl/ir.h')
-rw-r--r--src/glsl/ir.h21
1 files changed, 20 insertions, 1 deletions
diff --git a/src/glsl/ir.h b/src/glsl/ir.h
index 878a94611a7..470c08ca00d 100644
--- a/src/glsl/ir.h
+++ b/src/glsl/ir.h
@@ -1033,6 +1033,16 @@ enum ir_expression_operation {
ir_unop_unpack_half_2x16_split_y,
/*@}*/
+ /**
+ * \name Bit operations, part of ARB_gpu_shader5.
+ */
+ /*@{*/
+ ir_unop_bitfield_reverse,
+ ir_unop_bit_count,
+ ir_unop_find_msb,
+ ir_unop_find_lsb,
+ /*@}*/
+
ir_unop_noise,
/**
@@ -1123,14 +1133,23 @@ enum ir_expression_operation {
ir_triop_lrp,
+ ir_triop_bitfield_extract,
+
/**
* A sentinel marking the last of the ternary operations.
*/
- ir_last_triop = ir_triop_lrp,
+ ir_last_triop = ir_triop_bitfield_extract,
+
+ ir_quadop_bitfield_insert,
ir_quadop_vector,
/**
+ * A sentinel marking the last of the ternary operations.
+ */
+ ir_last_quadop = ir_quadop_vector,
+
+ /**
* A sentinel marking the last of all operations.
*/
ir_last_opcode = ir_quadop_vector