[llvm-bugs] [Bug 28135] New: Possible vectorization or CodeGen bug

via llvm-bugs llvm-bugs at lists.llvm.org
Tue Jun 14 23:35:37 PDT 2016


https://llvm.org/bugs/show_bug.cgi?id=28135

            Bug ID: 28135
           Summary: Possible vectorization or CodeGen bug
           Product: libraries
           Version: trunk
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: Loop Optimizer
          Assignee: unassignedbugs at nondot.org
          Reporter: pirama at google.com
                CC: llvm-bugs at lists.llvm.org
    Classification: Unclassified

Created attachment 16545
  --> https://llvm.org/bugs/attachment.cgi?id=16545&action=edit
Simplified function for possible vectorization bug

[Tentatively marking "loop optimization" component this repros in both AArch64
and ARM targets]

This relates to the Android issue mentioned in
https://android-review.googlesource.com/#/c/235875/.

The function 'loop' in the attached 'codec-loop.c' function produces incorrect
output when the 'for' loop in it is vectorized and called from that source file
(https://android-review.googlesource.com/#/c/235875/2/media/libstagefright/codecs/amrwbenc/src/voAMRWBEnc.c).
 The incorrect output causes corruption in the codec's output.

The failure reproduces on both AArch64 and ARM32.  Various workarounds fix the
failure (adding prints in the loop body, turning on integer sanitization etc)
but they all succeed only because vectorization and vector instructions don't
get used.

I am trying to find the right set of inputs that trigger the issue in the
reduced "loop" functiono.  I'll post it here if I am successful.

PS: I tested this on Android's Clang, which is a bit behind trunk.  However,
LLVM IR from both ToT and Android's clang was the same, except for very minor
differences).

-- 
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/20160615/93c5b138/attachment.html>


More information about the llvm-bugs mailing list