[llvm-bugs] [Bug 28475] New: When clang fails to vectorize a loop, it should be more descriptive/helpful about why not
via llvm-bugs
llvm-bugs at lists.llvm.org
Fri Jul 8 15:26:27 PDT 2016
https://llvm.org/bugs/show_bug.cgi?id=28475
Bug ID: 28475
Summary: When clang fails to vectorize a loop, it should be
more descriptive/helpful about why not
Product: new-bugs
Version: trunk
Hardware: Macintosh
OS: MacOS X
Status: NEW
Severity: normal
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: sean at rogue-research.com
CC: llvm-bugs at lists.llvm.org
Classification: Unclassified
With the -Rpass=loop-vectorize -Rpass-missed=loop-vectorize
-Rpass-analysis=loop-vectorize flags, clang will output if it vectorized a
loop, or why not.
But its 'why not' diagnostics could be improved, especially for mere mortal
developers (non compiler developers).
Consider Microsoft's Visual Studio, which can also output why it failed to
vectorize:
https://blogs.msdn.microsoft.com/nativeconcurrency/2012/05/22/auto-vectorizer-in-visual-studio-2012-did-it-work/
example output:
c:\source.cpp(5) : loop not vectorized due to reason ‘1200’
A numeric reason code is also not ideal, but they at least provide a nice
document explaining each code with examples:
https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/04/99/3007.Auto-Vectorizer-08-Cookbook.pdf
and with a video:
http://media.ch9.ms/ch9/6b08/3e1ca59d-4ec7-461b-92d2-694bb2626b08/AutoVectorizerDidItWorkMovie_high.mp4
Basically, Clang is behind the competition here. :)
--
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/20160708/f10df38a/attachment.html>
More information about the llvm-bugs
mailing list