[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