gallivm: Fix and enable the extra Newton/Raphson step in lp_build_rcp().

Thanks to Michal for spotting this.
This commit is contained in:
José Fonseca 2010-08-11 18:44:17 +01:00
parent 457378e031
commit b481a1237e

View file

@ -1274,7 +1274,7 @@ lp_build_rcp(struct lp_build_context *bld,
* when we have a better system in place to track minimum precision.
*/
#if 0
#if 1
/*
* Do one Newton-Raphson step to improve precision:
*
@ -1291,7 +1291,7 @@ lp_build_rcp(struct lp_build_context *bld,
res = LLVMBuildFSub(bld->builder, two, res, "");
res = LLVMBuildFMul(bld->builder, res, rcp_a, "");
return rcp_a;
return res;
#else
return lp_build_intrinsic_unary(bld->builder, "llvm.x86.sse.rcp.ps", lp_build_vec_type(type), a);
#endif