Summary: | [3.4 Regression] ICE with SSE2 intrinsics | ||
---|---|---|---|
Product: | gcc | Reporter: | Bob van Manen <bobm75> |
Component: | target | Assignee: | Paolo Bonzini <bonzini> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | bonzini, gcc-bugs, jochang, mark, reichelt |
Priority: | P2 | Keywords: | ice-on-valid-code, monitored |
Version: | 3.4.1 | ||
Target Milestone: | 3.4.2 | ||
Host: | i686-pc-linux-gnu | Target: | i686-pc-linux-gnu |
Build: | i686-pc-linux-gnu | Known to work: | 3.3.3 4.0.0 |
Known to fail: | 3.4.0 | Last reconfirmed: | 2004-08-20 06:18:58 |
Attachments: | test case |
Description
Bob van Manen
2004-08-19 23:59:38 UTC
Created attachment 6961 [details]
test case
I took the proprocessed file and removed any unneeded declarations that came in
from emmintrin.h.
Confirmed a regression from 3.3.3 but fixed already on the mainline. The failure has nothing to do with GCSE, here's a short example to demonstrate this. Just compile with "gcc -msse2 -O" to see the crash :-( ======================================================= typedef int __v4si __attribute__ ((mode (V4SI))); typedef int __v16qi __attribute__ ((mode (V16QI))); void foo(int* p) { int i; for ( i=0; i<2; ++i ) { __v16qi v0, v1=(__v16qi)__builtin_ia32_setzero128(); v0 = __builtin_ia32_punpckhbw128(v0, v1); __builtin_ia32_stored (p, (__v4si)v0); } } ======================================================= The bug was fixed on mainline by Paolo Bonzini's patch http://gcc.gnu.org/ml/gcc-cvs/2004-07/msg00949.html It should probably be applied to the 3.4 branch as well, although I did not try that yet. I just applied the patch from Paolo Bonzini to a fresh 3.4.1-release tree and it fixes this bug. This patch is OK for 3.4.2. Paolo, could you please apply your patch to the 3.4 branch? Thanks! Subject: Re: [3.4 Regression] ICE with SSE2 intrinsics
> Paolo, could you please apply your patch to the 3.4 branch?
> Thanks!
Yes, will do soon. Thanks for reminding me.
Paolo
Subject: Bug 17113 CVSROOT: /cvs/gcc Module name: gcc Branch: gcc-3_4-branch Changes by: bonzini@gcc.gnu.org 2004-08-24 10:51:04 Modified files: gcc : ChangeLog gcc/config/i386: i386.md Log message: 2004-08-24 Paolo Bonzini <bonzini@gnu.org> PR target/17113 * config/i386/i386.md (movv16qi_internal): Fix typo. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=2.2326.2.592&r2=2.2326.2.593 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.md.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.502.2.5&r2=1.502.2.6 Fixed. *** Bug 17197 has been marked as a duplicate of this bug. *** |