[Bug middle-end/38299] internal error: segmentation fault

2012-04-14 Thread david.oshea at emulex dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38299

David O'Shea  changed:

   What|Removed |Added

 CC||david.oshea at emulex dot
   |    |com

--- Comment #7 from David O'Shea  2012-04-14 
16:51:46 UTC ---
In playing with the -O2 and -O flags, it would appear to be that the -fgcse
subflag of the -O2 flags causes the failure.  So you can substitute the
following and get the compiler to build the library  -O2 -no-gcse.
This builds a less great (no Global Common Subexpression Elimination) library,
but it builds on 3.2.1...
The result is a larger library, but at least it builds.


[Bug middle-end/38299] internal error: segmentation fault

2012-04-14 Thread david.oshea at emulex dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38299

--- Comment #8 from David O'Shea  2012-04-14 
17:58:31 UTC ---
(In reply to comment #7)
Spoke too soon.  Things just compiled slower and it took longer to get to the
same failure, I was fooled.As it is, you have to fall all the way back to
the -O option, and then add in -fXXX options from the -O2 list.

The problematic item is in one of:
-fschedule-insns -fschedule-insns2 -fsched-interblock -fsched-spec 
And appears to be either or both of:
-fschedule-insns or -fschedule-insns2

The -O2 items below were removed because ARM-ELF 3.2.1 does not understand
them:
(They are newer -O2 items as documented in newer GCC man page).
-fcrossjumping -finline-small-functions -fipa-sra -freorder-functions
-fstrict-overflow -ftree-switch-conversion -ftree-pre -ftree-vrp
-findirect-inlining

I'm getting success with the below.   This turns of instruction reordering
optimizations=speed (but still uses common subexpression elimination = size).

CXXFLAGS= -g -O -fgcse -fgcse-lm -fthread-jumps -falign-functions -falign-jumps
-falign-loops  -falign-labels -fcaller-saves  -fcse-follow-jumps 
-fcse-skip-blocks -fdelete-null-pointer-checks -fexpensive-optimizations
-foptimize-sibling-calls -fpeephole2 -fregmove -freorder-blocks
-frerun-cse-after-loop -fstrict-aliasing