This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: g77 in egcs-1.1.1


Toon Moene wrote:
> 
> Josip Loncaric wrote:
> 
> > LAPACK, a standard package of linear algebra routines available from
> > http://www.netlib.org/, does not compile properly in egcs-1.1.1 under
> > Red Hat Linux 5.2 running on a Pentium II system.  The command used was:
> >
> > g77 -O3 -funroll-all-loops -fomit-frame-pointer -m486 -malign-double -c
> > ...
> >
> > Problems:
> >
> > (1) Test program xlintstc dumps core:
> >
> > Data file for testing COMPLEX LAPACK linear equation routines
> > xlintstc < ctest.in > ctest.out 2>&1
> > make[1]: *** [ctest.out] Error 139
> 
> It works using -g -O3 -funroll-loops, which will get you most
> optimisations.

Thanks! The source of this bug turns out to be the -fomit-frame-pointer
switch.  I did 32 compile/test runs on LAPACK, testing all combinations
of the following five options:

-O3
-funroll-all-loops
-fomit-frame-pointer
-mpentiumpro
-malign-double

and the complex LAPACK test failed if and only if the option
-fomit-frame-pointer was specified.

This bug caused by -fomit-frame-pointer can be bypassed if one forces
the compiler back end to handle complex arithmetic via the
-fno-emulate-complex switch.  Without this extra switch, it would seem
that the normal complex arithmetic code generation by g77 is
incompatible with the -fomit-frame-pointer option and leads to
segmentation errors in this LAPACK test.

I hope that this helps g77 developers.

Sincerely,
Josip


-- 
Dr. Josip Loncaric, Senior Staff Scientist        mailto:josip@icase.edu
ICASE, Mail Stop 403                        http://www.icase.edu/~josip/
NASA Langley Research Center             mailto:j.loncaric@larc.nasa.gov
Hampton, VA 23681-2199, USA    Tel. +1 757 864-2192  Fax +1 757 864-6134


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]