This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [arm] Tweak C++ guard variables
- From: Paul Brook <paul at codesourcery dot com>
- To: gcc-patches at gcc dot gnu dot org
- Cc: "Joseph S. Myers" <jsm at polyomino dot org dot uk>,"gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>,libstdc++ at gcc dot gnu dot org, Richard Earnshaw <rearnsha at arm dot com>
- Date: Thu, 24 Jun 2004 21:55:01 +0100
- Subject: Re: [arm] Tweak C++ guard variables
- Organization: CodeSourcery
- References: <200406241905.54896.paul@codesourcery.com> <Pine.LNX.4.58.0406241908350.22560@digraph.polyomino.org.uk>
On Thursday 24 June 2004 20:09, Joseph S. Myers wrote:
> On Thu, 24 Jun 2004, Paul Brook wrote:
> > * target-def.h (TARGET_CXX_GUARD_TYPE, TARGET_CXX_GUARD_MASK_BIT,
> > TARGET_CXX): Define.
> > (TARGET_INITIALIZER): Use TARGET_CXX.
> > * target.h (struct gcc_target): Add struct cxx.
>
> All target hooks need documentation in tm.texi.
Of course. Sorry.
Paul
2004-06-24 Paul Brook <paul@codesourcery.com>
* doc/tm.texi: Document TARGET_CXX_GUARD_TYPE and
TARGET_CXX_GUARD_MASK_BIT.
Index: tm.texi
===================================================================
RCS file: /var/cvsroot/gcc-cvs/gcc/gcc/doc/tm.texi,v
retrieving revision 1.329
diff -u -p -r1.329 tm.texi
--- tm.texi 11 Jun 2004 18:41:47 -0000 1.329
+++ tm.texi 24 Jun 2004 20:35:21 -0000
@@ -51,6 +51,7 @@ through the macros defined in the @file{
* Target Attributes:: Defining target-specific uses of
@code{__attribute__}.
* MIPS Coprocessors:: MIPS coprocessor support and how to customize it.
* PCH Target:: Validity checking for precompiled headers.
+* C++ ABI:: Controlling C++ ABI changes.
* Misc:: Everything else.
@end menu
@@ -8460,6 +8461,22 @@ if not. The error message will be prese
be localized.
@end deftypefn
+@node C++ ABI
+@section C++ ABI parameters
+@cindex parameters, c++ abi
+
+@deftypefn {Target Hook} tree TARGET_CXX_GUARD_TYPE (void)
+Define this hook to override the integer type used for guard variables.
+These are used to implement one-time construction of static objects. The
+default is long_long_integer_type_node.
+@end deftypefn
+
+@deftypefn {Target Hook} bool TARGET_CXX_GUARD_MASK_BIT (void)
+This hook determines how guard variables are used. It should return
+@code{false} (the default) if first byte should be used. A return value of
+@code{true} indicates the least significant bit should be used.
+@end deftypefn
+
@node Misc
@section Miscellaneous Parameters
@cindex parameters, miscellaneous