http://llvm.org/bugs/show_bug.cgi?id=11184
Summary: SSE: incorrect code generated for i8 vector shuffles
Product: new-bugs
Version: trunk
Platform: PC
OS/Version: All
Status: NEW
Severity: normal
Priority: P
Component: new bugs
AssignedTo: [email protected]
ReportedBy: [email protected]
CC: [email protected]
Created an attachment (id=7482)
--> (http://llvm.org/bugs/attachment.cgi?id=7482)
bitcode
The attached test case generates an <8xi8> vector with values <1 2 3 4 5 6 7 8>
using a shuffle of 2 <4xi8> vectors and stores it to memory. With top-of-tree,
it seems that incorrect values are being stored; the attached test program
should print out "1 2 3 4 5 6 7 8" but instead prints the last 4 values,
repeated twice:
% llc -filetype=obj bug.ll -o bug.o && clang bug.cpp bug.o && ./a.out
5 6 7 8 5 6 7 8
%
Some archaeology in the checkins indicates that the enabling of element
promotion type legalization broke this. If I check out the version immediately
before that one, I get the expected result:
% llc -filetype=obj bug.ll -o bug.o && clang bug.cpp bug.o && ./a.out
1 2 3 4 5 6 7 8
%
Author: Nadav Rotem <[email protected]>
Date: Sun Oct 16 20:31:33 2011 +0000
Enable element promotion type legalization by deafault.
Changed tests which assumed that vectors are legalized by widening them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142152
91177308-0d34-0410-b5e6-96231b3b80d8
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs