i965: Define consistent interface to enable instruction result saturation.
authorFrancisco Jerez <currojerez@riseup.net>
Wed, 3 Jun 2015 18:24:50 +0000 (21:24 +0300)
committerFrancisco Jerez <currojerez@riseup.net>
Tue, 9 Jun 2015 10:56:06 +0000 (13:56 +0300)
v2: Use set_ prefix.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/dri/i965/brw_ir_fs.h
src/mesa/drivers/dri/i965/brw_ir_vec4.h

index 07af008..eee4d7e 100644 (file)
@@ -304,4 +304,15 @@ set_condmod(enum brw_conditional_mod mod, fs_inst *inst)
    return inst;
 }
 
+/**
+ * Clamp the result of \p inst to the saturation range of its destination
+ * datatype.
+ */
+static inline fs_inst *
+set_saturate(bool saturate, fs_inst *inst)
+{
+   inst->saturate = saturate;
+   return inst;
+}
+
 #endif
index 96d1cfb..fceacae 100644 (file)
@@ -223,6 +223,17 @@ set_condmod(enum brw_conditional_mod mod, vec4_instruction *inst)
    return inst;
 }
 
+/**
+ * Clamp the result of \p inst to the saturation range of its destination
+ * datatype.
+ */
+inline vec4_instruction *
+set_saturate(bool saturate, vec4_instruction *inst)
+{
+   inst->saturate = saturate;
+   return inst;
+}
+
 } /* namespace brw */
 
 #endif