This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: [v3] update abi docs
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Benjamin Kosnik <bkoz at redhat dot com>
- Cc: Janis Johnson <janis187 at us dot ibm dot com>, gcc-patches at gcc dot gnu dot org, libstdc++ at gcc dot gnu dot org
- Date: Sat, 7 Sep 2002 12:56:31 -0400
- Subject: Re: [v3] update abi docs
- References: <200209061951.g86JpoE17639@waller.constant.com> <20020906162149.A5333@us.ibm.com> <20020907111758.17f0e0e9.bkoz@redhat.com>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Sat, Sep 07, 2002 at 11:17:58AM -0500, Benjamin Kosnik wrote:
> I'm actually inclined to keep the baseline files, regardless of size, in
> the main gcc CVS tree.
The question is whether we need one ~200k file per target tripplet, or
whether we can have just one file with all the symbols and specification
which symbols are common to all arches, whcih are specific to this and
that... It can be done through preprocessor, like:
#if defined __sparc__ || defined __foo__ || defined __bar__
some symbols
#else
etc.
#endif
or by having a bunch of different partial baseline files, like common,
wchar, size_t_is_int, size_t_is_long, 32bit, 64bit, etc. and using some
kind of #include directives, or some special language for the baseline
file, whatever. This could as well mean being able to write:
FUNC:_Znw${size_t}@@GLIBCPP_3.2
FUNC:_Znw${size_t}RKSt9nothrow_t@@GLIBCPP_3.2
where size_t would be either j or m depending.
E.g. the *linux* baseline files have 3031 symbols total ATM and out of this
2204 lines is identical in all 3 files.
A bunch of symbols is identical between 64-bit platforms, etc.
Jakub