diff options
author | pbrook <pbrook@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-06-25 17:15:46 +0000 |
---|---|---|
committer | pbrook <pbrook@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-06-25 17:15:46 +0000 |
commit | c1dc02de6c120c546fedbe5348c4f5e78ef95aa6 (patch) | |
tree | b8c2d8bd3079657353a50fef059902fbbf159bfe /gcc/target.h | |
parent | 80d4fec446bcdba9588f2a861b2ddd449fb48292 (diff) | |
download | gcc-c1dc02de6c120c546fedbe5348c4f5e78ef95aa6.tar.gz |
gcc/
* 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.
* targhooks.h (default_cxx_guard_type): Add prototype.
* targhooks.c (default_cxx_guard_type): New function.
* config/arm/arm.c (TARGET_CXX_GUARD_TYPE, TARGET_CXX_GUARD_MASK_BIT):
Define.
(arm_cxx_guard_type, arm_cxx_guard_mask_bit): New functions.
* doc/tm.texi: Document TARGET_CXX_GUARD_TYPE and
TARGET_CXX_GUARD_MASK_BIT.
gcc/cp/
* decl2.c (get_guard): Call targetm.cxx.guard_type.
(get_guard_bits, get_guard_cond): Call targetm.cxx.guard_mask_bit.
libstdc++/
* libsupc++/cxxabi.h: Define __ARM_EABI__
(__guard): Use it.
* libsupc++/guard.h (__cxa_guard_acquire, __cxa_guard_release): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83660 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/target.h')
-rw-r--r-- | gcc/target.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/target.h b/gcc/target.h index 902db41fd9a..ad7936bbc2f 100644 --- a/gcc/target.h +++ b/gcc/target.h @@ -476,6 +476,14 @@ struct gcc_target tree *post_p); } calls; + /* Functions specific to the C++ frontend. */ + struct cxx { + /* Return the integer type used for guard variables. */ + tree (*guard_type) (void); + /* Return true if only the low bit of the guard should be tested. */ + bool (*guard_mask_bit) (void); + } cxx; + /* Leave the boolean fields at the end. */ /* True if arbitrary sections are supported. */ |