http://llvm.org/bugs/show_bug.cgi?id=13813
Bug #: 13813
Summary: Sign change issue using vector extensions and
__builtin_shufflevector
Product: clang
Version: 3.1
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: C++
AssignedTo: [email protected]
ReportedBy: [email protected]
CC: [email protected], [email protected]
Classification: Unclassified
Created attachment 9186
--> http://llvm.org/bugs/attachment.cgi?id=9186
The code to demonstrate the problem
I was working on a matrix math library and decided to use vector extensions and
__builtin_shufflevector. I noticed that commenting and uncommenting a line that
makes no changes to the matrix will result in a sign change but only when I
generate the matrix using __builtin_shufflevector.
I cut down my code as much as I could while still making sense. Line 97 in
matrix.cpp is the line that I comment and uncomment. it is a const member
function so it can't change any values. With it uncommented my result is:
MATRIX:
1 0 0 0
0 1 0 0
-0 -0 -1 -0
0 0 0 1
with it commented I get:
MATRIX:
1 0 0 0
0 1 0 0
0 0 1 -0
0 0 0 1
I tested it on two machines to make sure it wasn't a processor issue.
--
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