>Submitter-Id: net >Originator: Joel Yliluoma >Organization: >Confidential: no >Synopsis: ICE with vector code when -mno-sse2 on amd64 >Severity: serious >Priority: low >Category: target >Class: ice-on-legal-code >Release: gcc-4.1 (GCC) 4.1.2 20061115 (prerelease) (Debian 4.1.1-21) >Environment: System: Linux chii 2.6.20 #3 SMP Sun Feb 11 23:52:47 EET 2007 x86_64 GNU/Linux Architecture: x86_64
host: x86_64-pc-linux-gnu build: x86_64-pc-linux-gnu target: x86_64-pc-linux-gnu configured with: ../src/configure -v --enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu --enable-libstdcxx-debug --enable-mpfr --enable-checking=release x86_64-linux-gnu >Description: Compilation of the attached code yields an ICE in certain cases. >How-To-Repeat: Compile this code: typedef double ss2 __attribute__((vector_size(2*sizeof(double)))); ss2 b = {1,1}; extern ss2 a2(ss2 a,ss2 b); void test2() { b = a2(b,b); } With these commandline options: gcc-4.1 -mno-sse2 -S -o- test3.c The output comes as follows: .file "test3.c" .globl b .data .align 16 .type b, @object .size b, 16 b: .long 0 .long 1072693248 .long 0 .long 1072693248 test3.c: In function 'test2': test3.c:6: internal compiler error: in emit_move_insn, at expr.c:3162 Please submit a full bug report, with preprocessed source if appropriate. (rest of output omitted for brevity) It does not occur if "double" is changed to "float", "long double", "short", "int" or "char". It does occur if "double", "long int" or "long long int" is used. It does not occur if 2 is changed to 4. Architecture: CPU=AMD Athlon(tm) 64 X2 Dual Core Processor 4600+ CPU features=fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt lm 3dnowext 3dnow pni lahf_lm cmp_legacy GCC is: Target: x86_64-linux-gnu Configured with: ../src/configure -v --enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu --enable-libstdcxx-debug --enable-mpfr --enable-checking=release x86_64-linux-gnu Thread model: posix gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21) >Fix: -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]