http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45962
--- Comment #10 from Richard Henderson <rth at gcc dot gnu.org> 2010-10-12 21:31:00 UTC --- (In reply to comment #8) > I have to reopen this: the SEGV ICE is gone, but no regressions were fixed... These aren't technically regressions; these tests were never run previously. I'm certain you'll find that ... (In reply to comment #9) > I think I'm going to use gcc.c-torture/execute/simd-5.c at -O0. > I'll compare r165239 to (r165240 plus your commit at r165382), ok? ... these tests fail with r165239 too, if you run them by hand. If you just compare gcc.sum files of course they'll appear as new failures. > #define STACK_BOUNDARY \ > (TARGET_STACK_ALIGN ? (TARGET_ALIGN_BY_32 ? 32 : 16) : 8) > (i.e. 8 for cris-elf default.) This is definitely wrong, according to the documentation in the opt file. You'd either have to multilib on this option, or implement the full stack re-alignment scheme supported by i386. Unless you multilib: STACK_BOUNDARY should be BITS_PER_UNIT always. PREFERRED_STACK_BOUNDARY may vary depending on those options. INCOMING_STACK_BOUNDARY ... I dunno, may need to be set to S_B; the default is P_S_B, which seems wrong when P_S_B actually varies. Of course, i386 redefines this anyway, and no one else currently varies. MAX_STACK_ALIGNMENT should be MAX_OFILE_ALIGNMENT if you support the full stack re-alignment scheme.