summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorIan Romanick <[email protected]>2016-09-06 23:17:51 -0700
committerIan Romanick <[email protected]>2016-09-27 12:06:46 -0700
commit7f64041cee3101c673be6d7bffbb03dab69ccca4 (patch)
tree90e5b546426b2640a09a65679db89500b5ab1548 /src
parent5f7f7d582b1d6d3696506250743fd3f6be3277b8 (diff)
glsl: Add bit_xor builder
Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/compiler/glsl/ir_builder.cpp6
-rw-r--r--src/compiler/glsl/ir_builder.h1
2 files changed, 7 insertions, 0 deletions
diff --git a/src/compiler/glsl/ir_builder.cpp b/src/compiler/glsl/ir_builder.cpp
index d68647f4234..f430100a085 100644
--- a/src/compiler/glsl/ir_builder.cpp
+++ b/src/compiler/glsl/ir_builder.cpp
@@ -417,6 +417,12 @@ bit_or(operand a, operand b)
}
ir_expression*
+bit_xor(operand a, operand b)
+{
+ return expr(ir_binop_bit_xor, a, b);
+}
+
+ir_expression*
lshift(operand a, operand b)
{
return expr(ir_binop_lshift, a, b);
diff --git a/src/compiler/glsl/ir_builder.h b/src/compiler/glsl/ir_builder.h
index b483ebf6269..231fbfcdb3e 100644
--- a/src/compiler/glsl/ir_builder.h
+++ b/src/compiler/glsl/ir_builder.h
@@ -168,6 +168,7 @@ ir_expression *logic_or(operand a, operand b);
ir_expression *bit_not(operand a);
ir_expression *bit_or(operand a, operand b);
ir_expression *bit_and(operand a, operand b);
+ir_expression *bit_xor(operand a, operand b);
ir_expression *lshift(operand a, operand b);
ir_expression *rshift(operand a, operand b);