diff options
author | José Fonseca <jfonseca@vmware.com> | 2010-08-11 15:13:17 +0100 |
---|---|---|
committer | José Fonseca <jfonseca@vmware.com> | 2010-08-11 15:14:10 +0100 |
commit | 10ce6779e8a64c33add70e440f885c210f3fa6ee (patch) | |
tree | 2536d6330e1f5774652fcd26bc86bdc426fdcc49 | |
parent | f8533482f4a9b5ee7107f4e653d4ebf99ac63e2e (diff) |
gallivm: Use lp_build_div instead of lp_build_mul + lp_build_rcp.
Single divide, so let lp_build_div decide how to implement this.
This will save a multiplication in architectures which don't have
a RCP intrinsic.
-rw-r--r-- | src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c b/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c index 665b010ece..307506507d 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c @@ -1219,8 +1219,7 @@ lp_build_cube_ima(struct lp_build_context *coord_bld, LLVMValueRef coord) /* ima = -0.5 / abs(coord); */ LLVMValueRef negHalf = lp_build_const_vec(coord_bld->type, -0.5); LLVMValueRef absCoord = lp_build_abs(coord_bld, coord); - LLVMValueRef ima = lp_build_mul(coord_bld, negHalf, - lp_build_rcp(coord_bld, absCoord)); + LLVMValueRef ima = lp_build_div(coord_bld, negHalf, absCoord); return ima; } |