This is the mail archive of the gcc@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: My proposal for the libgcc runtime ABI (ia64 gcc/glibc is broken.)




On Wed, 12 Jul 2000, Martin v. Loewis wrote:
>
> > Wouldn't it be better to _not_ consider this to be part of libgcc, and
> > instead have a well-defined EH record format and just tell people to use
> > it in their system libraries.
> 
> There is a well-defined format. The problem is that you need a
> process-wide list of such structures, to find the entry points into
> the structures when an exception is thrown in one library and caught
> in another.

But what has this got to do with gcc?

Nothing. It's a systems issue. Gcc just needs to honor the format, the
same way gcc needs to generate a lot of other "helper" information (which
is, of course, mainly for debugging, but things like global namescape
information is a similar thing where gcc emits certain records to tell the
assembler which symbols are global etc).

If the format is well-defined, then you should consider this to be a
loader and systems thing, not a gcc thing. Why are the routines in libgcc
at all? Why aren't they in the loaders, or the libraries?

I think it was Kenner who said that libgcc should only contain code that
is actually called by gcc-generated code. That's a good definition of what
libgcc used to be. Why not go back to that, and leave the whole EH thing
into the hands of the glibc and other people working on libraries and
systems issues.

(And yes, I know there are non-glibc systems out there. Obviously. But
those systems still need to be aware of EH stuff if exceptions are to be
used at all. So the same arguments apply there - glibc is _not_ special,
and should not be considered special).

			Linus


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