From: Ilia Mirkin Date: Tue, 6 May 2014 23:54:59 +0000 (-0400) Subject: nv50/ir/gk110: fix set with f32 dest X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e7047f2917c6bcc714fc6a350ea74e45b0760a77;p=mesa.git nv50/ir/gk110: fix set with f32 dest Should fix comparison opcodes like SGE/SLT/etc which expected a float to be returned. These were previously getting integer 0/-1 values. Signed-off-by: Ilia Mirkin Reviewed-by: Ben Skeggs Cc: 10.2 --- diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp index 5992c543d69..b8d0d3ed1ae 100644 --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp @@ -915,6 +915,9 @@ CodeEmitterGK110::emitSET(const CmpInstruction *i) modNegAbsF32_3b(i, 1); } FTZ_(3a); + + if (i->dType == TYPE_F32) + code[1] |= 1 << 23; } if (i->sType == TYPE_S32) code[1] |= 1 << 19;