g++ ICEs when compiling valid SSE code using intrinsics.  The code compiles
correctly if either, the optimisation level is -O0 or the line
'_mm_store_ps(pDataIn, accum);' is removed (line 30 in main.cpp).

/opt/gcc-3.4.3/bin/g++-3.4 -O2 -march=pentium4 -save-temps -Wall -c main.cpp
main.cpp: In function `void SSEFunc(float*, float*)':
main.cpp:16: warning: 'accum' might be used uninitialized in this function
main.cpp:33: internal compiler error: in immed_double_const, at emit-rtl.c:481
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.

GCC build:

Reading specs from /opt/gcc-3.4.3/lib/gcc/i686-pc-linux-gnu/3.4.3/specs
Configured with: ../configure --prefix=/opt/gcc-3.4.3 --program-suffix=-3.4
--enable-threads --with-tune=pentium4 --enable-languages=c,c++
Thread model: posix
gcc version 3.4.3

-- 
           Summary: ICE when compiling SSE intrinics
           Product: gcc
           Version: 3.4.3
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: m dot broadbent at signal dot qinetiq dot com
                CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu


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

Reply via email to