[Bug target/21099] New: ICE on mmx intrinsics
ICE on gcc 4.0.0rc2, but works on both 3.3.5 and 3.4.3. $ /usr/local/gcc-4.0/bin/g++ -c -O -mmmx 1.cpp 1.cpp: In function 'void f()': 1.cpp:51: internal compiler error: in simplify_subreg, at simplify-rtx.c:3729 -- Summary: ICE on mmx intrinsics Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: jochang at gmail 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=21099
[Bug target/21099] ICE on mmx intrinsics
--- Additional Comments From jochang at gmail dot com 2005-04-19 08:05 --- Created an attachment (id=8680) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=8680&action=view) the test case -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21099
[Bug target/21100] New: ICE: unrecognizable insn for -march=pentium-mmx
ICE on gcc 4.0.0rc2, but both 3.3.5 and 3.4.3 work. No ICE if change pentium-mmx to pentium2. $ /usr/local/gcc-4.0/bin/g++ -c -march=pentium-mmx 2.cpp 2.cpp: In function 'void f()': 2.cpp:30: error: unrecognizable insn: (insn 13 12 14 0 (set (mem/i:V2SI (pre_dec:SI (reg/f:SI 7 sp)) [0 S8 A64]) (reg:V2SI 61 [ a ])) -1 (nil) (expr_list:REG_DEAD (reg:V2SI 61 [ a ]) (nil))) 2.cpp:30: internal compiler error: in extract_insn, at recog.c:2020 -- Summary: ICE: unrecognizable insn for -march=pentium-mmx Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: jochang at gmail 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=21100
[Bug target/21100] ICE: unrecognizable insn for -march=pentium-mmx
--- Additional Comments From jochang at gmail dot com 2005-04-19 09:05 --- Created an attachment (id=8681) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=8681&action=view) the test case -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21100
[Bug target/21101] New: ICE: could not find a spill register on MMX intrinsics
ICE on gcc 4.0.0rc2, but both 3.3.5 and 3.4.3 work. $ /usr/local/gcc-4.0/bin/g++ -c -O2 -funroll-loops -march=pentium4 3.cpp 3.cpp: In function 'void f()': 3.cpp:29: error: could not find a spill register (insn:HI 95 94 96 0 (set (reg:V4HI 29 mm0 [orig:115 D.2920 ] [115]) (vec_duplicate:V4HI (truncate:HI (subreg:SI (reg:HI 111 [ B ]) 0 817 {*vec_dupv4hi} (insn_list:REG_DEP_TRUE 88 (nil)) (expr_list:REG_DEAD (reg:HI 111 [ B ]) (nil))) 3.cpp:29: internal compiler error: in failed_reload, at reload1.c:4982 -- Summary: ICE: could not find a spill register on MMX intrinsics Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: jochang at gmail 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=21101
[Bug target/21101] ICE: could not find a spill register on MMX intrinsics
--- Additional Comments From jochang at gmail dot com 2005-04-19 10:15 --- Created an attachment (id=8683) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=8683&action=view) the test case -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21101
[Bug target/21102] New: ICE: in immed_double_const, on SSE2 intrinsics
ICE on gcc 4.0.0rc2, but both 3.3.5 and 3.4.3 work. $ /usr/local/gcc-4.0/bin/g++ -c -O -msse2 4.cpp 4.cpp: In function 'void f()': 4.cpp:10: internal compiler error: in immed_double_const, at emit-rtl.c:467 Here is the source: #include __m128i S; void f() { __m128i A; A = _mm_add_epi8(A,A); A = _mm_andnot_si128(A,A); A = _mm_or_si128(A,A); _mm_store_si128(&S,A); } -- Summary: ICE: in immed_double_const, on SSE2 intrinsics Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: jochang at gmail 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=21102
[Bug inline-asm/18074] New: SSE2 intrinsics generates wrong code
The command line: gcc -O2 -msse2 -S 2.c The code: #include int f(__m128i x, __m128i y) { __m128i m[1]; m[0] = _mm_add_epi16(x, y); return *(int*)(&m[0]); } int g(__m128i x, __m128i y) { __m128i m[2]; m[0] = _mm_add_epi16(x, y); return *(int*)(&m[0]); } The compiler generates correct code for f(), but for g() the add operation (paddw) disappears. Happens on GCC 3.3.4 and 3.4.2 -- Summary: SSE2 intrinsics generates wrong code Product: gcc Version: 3.4.2 Status: UNCONFIRMED Severity: normal Priority: P2 Component: inline-asm AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: jochang at gmail 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=18074
[Bug target/18779] New: SSE2 intrinsics cause segmentation fault and internal compiler error
Command line: gcc -msse2 -O main.c (1) The generated executable causes segmentation fault while running. It looks like some alignment problem. (2) If test1 and test2 are called directly from main(), not through test3, the problem disappears. (3) If the line "t2 = coeffs" in test1 is commented out, ICE happens: main.c: In function `test1': main.c:33: internal compiler error: in immed_double_const, at emit-rtl.c:481 -- Summary: SSE2 intrinsics cause segmentation fault and internal compiler error Product: gcc Version: 3.4.3 Status: UNCONFIRMED Severity: normal Priority: P2 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: jochang at gmail 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=18779
[Bug target/18779] SSE2 intrinsics cause segmentation fault and internal compiler error
--- Additional Comments From jochang at gmail dot com 2004-12-02 10:02 --- Created an attachment (id=7655) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=7655&action=view) The test case The problem happens on 3.4.2 and 3.4.3, but not on 3.3.4. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18779