[LLVMbugs] [Bug 16275] New: Loop Vectorizer: Only vectorize on ARM if precision requirements allow the use of NEON

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Fri Jun 7 14:29:24 PDT 2013


http://llvm.org/bugs/show_bug.cgi?id=16275

            Bug ID: 16275
           Summary: Loop Vectorizer: Only vectorize on ARM if precision
                    requirements allow the use of NEON
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: Loop Optimizer
          Assignee: unassignedbugs at nondot.org
          Reporter: grosser at fim.uni-passau.de
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified

Created attachment 10654
  --> http://llvm.org/bugs/attachment.cgi?id=10654&action=edit
Test case where we vectorize without considering the precision requirements

The attached simple loop is vectorized under the triple
'thumbv7-linux-gnueabi'.

Due to NEON not providing IEEE 745 compatibility we should not introduce it's
use under linux, if the user did not specifically allowed imprecise floating
point computations. http://llvm.org/PR16274 is about fixing the ARM target to
only issue NEON instructions if the user (or the default compiler flags) set
the precision requirements such that it is legal to do so.

This bug is about the vectorizer and its cost model to only introduce LLVM-IR
vector instructions in case we know the ARM target can actually translate them
into NEON instructions.

GCC had a similar issue and fixed it in this bug report:

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43703

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20130607/9662378c/attachment.html>


More information about the llvm-bugs mailing list