[LLVMdev] Floating-point range checks

Robison, Arch arch.robison at intel.com
Wed Jan 7 14:13:51 PST 2015


The Julia language implements sqrt(x) with conditional branch taken if x<0.  Alas this prevents vectorization of loops with sqrt.  Often the argument can be proven to be non-negative.  E.g., sqrt(x*x+y*y).  Is there an existing LLVM pass or analysis  that does floating-point range propagation to eliminate such unnecessary checks?

Arch D. Robison
Intel Corporation



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150107/89b401ea/attachment.html>


More information about the llvm-dev mailing list