[Bug target/52736] New: [4.7 regression] miscompilation: store to aliased __m128d is 8 Bytes off
kretz at kde dot org
gcc-bugzilla@gcc.gnu.org
Tue Mar 27 06:43:00 GMT 2012
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52736
Bug #: 52736
Summary: [4.7 regression] miscompilation: store to aliased
__m128d is 8 Bytes off
Classification: Unclassified
Product: gcc
Version: 4.7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: kretz@kde.org
Created attachment 27007
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27007
testcase
The attached testcase fails when compiled with:
g++ -msse2 -O1 main.cpp
The first aliased store on line 35 stores to the second element in the vector
instead of the fist. The store on line 37 stores to the exact same location in
memory (which is the correct location for line 37).
Slight modification of the example can lead to the compiler optimizing the code
to use half vector loads, in which case it uses the correct one.
More information about the Gcc-bugs
mailing list