http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47947

--- Comment #4 from Tejas Karkhanis <tkarkha at us dot ibm.com> 2011-03-02 
22:35:01 UTC ---
David,

I tried building with -maix64 flag.  Here is the output after compiling with
-maix64 flag:

gcc-4.6.0 -Wall -O3 -I ./ -std=gnu99 -maltivec -mabi=altivec
-flax-vector-conversions -mvsx -mcpu=power7 -mtune=power7 -maix64 gccBugTest.c
-o gccBugTest_GCC
$ ./gccBugTest_GCC
DEBUG:: u_in0 = <1.000000,2.000000,3.000000,4.000000>
DEBUG:: u_in1 = <5.000000,6.000000,7.000000,8.000000>
DEBUG::foo:: l_temp0 = <1.000000,2.000000,3.000000,4.000000>
DEBUG::foo:: l_temp1 = <5.000000,6.000000,7.000000,8.000000>
DEBUG::foo:: in0 HI = <1.000000,0.000000>
DEBUG::foo:: in0 LO = <3.000000,0.000000>
DEBUG::foo:: in1 HI = <5.000000,0.000000>
DEBUG::foo:: in1 LO = <7.000000,0.000000>
DEBUG::foo:: l_result HI = <6.000000,8.000000>
DEBUG::foo:: l_result LO = <10.000000,0.000000>
DEBUG::foo:: result:: l_temp2 = <6.000000,8.000000,10.000000,0.000000>
DEBUG:: u_out = <6.000000,8.000000,10.000000,0.000000>
$ 

Notice that this time the error is in the right-most element of the variable
u_out -- the right-most element should have been 12.000000.

Reply via email to