https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61949
Bug ID: 61949 Summary: [4.10 regression] SEGV compiling gcc.dg/pch/import-[12].c Product: gcc Version: 4.10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end Assignee: unassigned at gcc dot gnu.org Reporter: ro at gcc dot gnu.org CC: rguenth at gcc dot gnu.org Host: i386-pc-solaris2.10 Target: i386-pc-solaris2.10 Build: i386-pc-solaris2.10 Between 20140711 (r212451) and 20140718 (r15669), the gcc.dg/pch/import-[12].c tests started to FAIL on Solaris 10/x86 (only, Solaris 11 is unaffected): FAIL: gcc.dg/pch/import-1.c -O0 -g -I. -Dwith_PCH (internal compiler error) FAIL: gcc.dg/pch/import-1.c -O0 -g -I. -Dwith_PCH (test for excess errors) FAIL: gcc.dg/pch/import-1.c -O0 -g assembly comparison and all others, both 32 and 64-bit. cc1 SEGVs here: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 1 (LWP 1)] 0x08c34226 in md5_read_ctx (resbuf=0x8047278, ctx=0x8047140) at /vol/gcc/src/hg/trunk/local/libiberty/md5.c:91 91 memcpy (resbuf, buffer, 16); 1: x/i $pc => 0x8c34226 <md5_finish_ctx+150>: movaps -0x28(%ebp),%xmm0 -0x28(%ebp) isn't 16-byte aligned as required. This only happens with the stage3 cc1, stages 1 and 2 are unaffected. A reghunt revealed that this is caused by this patch: 2014-07-11 Richard Biener <rguent...@suse.de> PR middle-end/61473 * builtins.c (fold_builtin_memory_op): Inline memory moves that can be implemented with a single load followed by a single store. (c_strlen): Only warn when only_value is not 2. Rainer