I just tried to compile the Suse Linux package libbtctl-0.10.0 with the new gcc version 4.4, snapshot dated 20080926. gcc said obexsdp.c: In function 'register_sdp': obexsdp.c:128: internal compiler error: in vectorizable_store, at tree-vect-transform.c:5391 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. Preprocessed source code attached. Flag -O3 required.
Created attachment 16450 [details] C source code
Confirmed. Mine.
Fixed.
Subject: Bug 37713 Author: rguenth Date: Thu Oct 2 13:11:12 2008 New Revision: 140832 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=140832 Log: 2008-10-02 Richard Guenther <rguenther@suse.de> PR middle-end/37713 * tree-ssa.c (useless_type_conversion_p_1): For COMPLEX_TYPE and VECTOR_TYPE recurse with useless_type_conversion_p which properly handles void pointer conversion. * gcc.c-torture/compile/pr37713.c: New testcase. Added: trunk/gcc/testsuite/gcc.c-torture/compile/pr37713.c Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-ssa.c
This testcase fails on the trunk for x86-darwin with an ICE: /Users/apinski/src/local/gcc/gcc/testsuite/gcc.c-torture/compile/pr37713.c:8: internal compiler error: in set_mem_alias_set, at emit-rtl.c:1784^M Please submit a full bug report,^M with preprocessed source if appropriate.^M See <http://gcc.gnu.org/bugs.html> for instructions.^M
Looks like expansion creates some weirdo MEM_ALIAS_SET for the target. Some RTL problem, not mine to investigate right now.
This seems to be similar to the failure in PR 37385 (in set_mem_alias_set, at emit-rtl.c:1789). There the ICE was because the lhs and the element type of rhs did not alias.