From: Jose Maria Casanova Crespo Date: Thu, 3 May 2018 00:18:37 +0000 (+0200) Subject: intel/compiler: support negate and abs of half float immediates X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f575277f7e4cd3568ae2b0d8d2b0c6e0cf611d62;p=mesa.git intel/compiler: support negate and abs of half float immediates Reviewed-by: Jason Ekstrand --- diff --git a/src/intel/compiler/brw_shader.cpp b/src/intel/compiler/brw_shader.cpp index 284c2e8233c..537defd05d9 100644 --- a/src/intel/compiler/brw_shader.cpp +++ b/src/intel/compiler/brw_shader.cpp @@ -605,7 +605,8 @@ brw_negate_immediate(enum brw_reg_type type, struct brw_reg *reg) case BRW_REGISTER_TYPE_V: assert(!"unimplemented: negate UV/V immediate"); case BRW_REGISTER_TYPE_HF: - assert(!"unimplemented: negate HF immediate"); + reg->ud ^= 0x80008000; + return true; case BRW_REGISTER_TYPE_NF: unreachable("no NF immediates"); } @@ -651,7 +652,8 @@ brw_abs_immediate(enum brw_reg_type type, struct brw_reg *reg) case BRW_REGISTER_TYPE_V: assert(!"unimplemented: abs V immediate"); case BRW_REGISTER_TYPE_HF: - assert(!"unimplemented: abs HF immediate"); + reg->ud &= ~0x80008000; + return true; case BRW_REGISTER_TYPE_NF: unreachable("no NF immediates"); }