Mesa (master): glsl: Add ir_unop_saturate

Abdiel Janulgue abj at kemper.freedesktop.org
Sun Aug 31 18:04:53 UTC 2014


Module: Mesa
Branch: master
Commit: a5f02b6696c3ce9ed87e017a537a37d09e288702
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a5f02b6696c3ce9ed87e017a537a37d09e288702

Author: Abdiel Janulgue <abdiel.janulgue at linux.intel.com>
Date:   Fri Jun 20 11:56:48 2014 -0700

glsl: Add ir_unop_saturate

Signed-off-by: Abdiel Janulgue <abdiel.janulgue at linux.intel.com>
Reviewed-by: Matt Turner <mattst88 at gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

---

 src/glsl/ir.cpp          |    2 ++
 src/glsl/ir.h            |    1 +
 src/glsl/ir_validate.cpp |    1 +
 3 files changed, 4 insertions(+)

diff --git a/src/glsl/ir.cpp b/src/glsl/ir.cpp
index b289c29..739a9f4 100644
--- a/src/glsl/ir.cpp
+++ b/src/glsl/ir.cpp
@@ -255,6 +255,7 @@ ir_expression::ir_expression(int op, ir_rvalue *op0)
    case ir_unop_dFdy_fine:
    case ir_unop_bitfield_reverse:
    case ir_unop_interpolate_at_centroid:
+   case ir_unop_saturate:
       this->type = op0->type;
       break;
 
@@ -534,6 +535,7 @@ static const char *const operator_strs[] = {
    "bit_count",
    "find_msb",
    "find_lsb",
+   "sat",
    "noise",
    "interpolate_at_centroid",
    "+",
diff --git a/src/glsl/ir.h b/src/glsl/ir.h
index e905173..8003f88 100644
--- a/src/glsl/ir.h
+++ b/src/glsl/ir.h
@@ -1250,6 +1250,7 @@ enum ir_expression_operation {
    ir_unop_find_lsb,
    /*@}*/
 
+   ir_unop_saturate,
    ir_unop_noise,
 
    /**
diff --git a/src/glsl/ir_validate.cpp b/src/glsl/ir_validate.cpp
index 5b20677..97a581d 100644
--- a/src/glsl/ir_validate.cpp
+++ b/src/glsl/ir_validate.cpp
@@ -241,6 +241,7 @@ ir_validate::visit_leave(ir_expression *ir)
    case ir_unop_log:
    case ir_unop_exp2:
    case ir_unop_log2:
+   case ir_unop_saturate:
       assert(ir->operands[0]->type->base_type == GLSL_TYPE_FLOAT);
       assert(ir->type == ir->operands[0]->type);
       break;




More information about the mesa-commit mailing list