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 - mips-sgi-irix6.2 - Internal compiler error in function copy _to_mode_reg


I've started looking into what seems like several bug reports against
g77 involving mips-sgi, all of them compiling with the `-mabi=64'
option.

I tried to figure out just what that option does.  There's some
info in the gcc/config/mips directory that suggests it changes
the sizes of `long int' and pointers, though I didn't see, offhand,
where that actually happened.  (The gcc Info docs say what the
option is *for*, but nothing I can see offhand about what it *does*.
E.g. I can't tell offhand whether code compiled with, and without,
`-mabi=64' can be safely linked together.)

If `-mabi=64' changes type sizes, though, I think that might explain why
g77 is especially prone to bugs in this area.  Its system for handling
types is especially brittle, partly due to its use of libf2c
and the related configuration bits, but mostly due to its
internals, which are long-due for a rewrite.

One way to test this hypothesis, if it's possible, is to build
the compiler *configured* so it defaults to `-mabi=64'.

That should mean that g77 itself gets built with this option
as the default, which should help it set up its (brittle) internal
type-tracking system properly.

If that's doable, but the bugs persist, please let me know, so
I can try tracking them down -- though, without a suitable
machine, I'll have to do it via cross-compilation, a rather
limiting environment.

        tq vm, (burley)


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