gallivm: don't try to use fast rcp for fdiv
The use of fast rcp instruction is disabled, and will always fall back to use a division instead (1 / x). Hence, if we get a division opcode, it doesn't make much sense trying to split that into rcp/mul. Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
This commit is contained in:
@@ -1372,7 +1372,9 @@ lp_build_div(struct lp_build_context *bld,
|
|||||||
return LLVMConstUDiv(a, b);
|
return LLVMConstUDiv(a, b);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(((util_cpu_caps.has_sse && type.width == 32 && type.length == 4) ||
|
/* fast rcp is disabled (just uses div), so makes no sense to try that */
|
||||||
|
if(FALSE &&
|
||||||
|
((util_cpu_caps.has_sse && type.width == 32 && type.length == 4) ||
|
||||||
(util_cpu_caps.has_avx && type.width == 32 && type.length == 8)) &&
|
(util_cpu_caps.has_avx && type.width == 32 && type.length == 8)) &&
|
||||||
type.floating)
|
type.floating)
|
||||||
return lp_build_mul(bld, a, lp_build_rcp(bld, b));
|
return lp_build_mul(bld, a, lp_build_rcp(bld, b));
|
||||||
|
Reference in New Issue
Block a user