summaryrefslogtreecommitdiff
path: root/gcc/target-def.h
diff options
context:
space:
mode:
authormmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>2004-08-31 20:29:28 +0000
committermmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>2004-08-31 20:29:28 +0000
commit219626ad06447381178d5b124b3763d631dc110e (patch)
treeee8a8ed7c7cd3d552d036001e3c45b585e180905 /gcc/target-def.h
parent02b088c62e20f329f3668796f5fca183eb1c122c (diff)
downloadgcc-219626ad06447381178d5b124b3763d631dc110e.tar.gz
* hooks.c (hook_bool_void_true): New function.
* hooks.h (hook_bool_void_true): Declare. * target-def.h (TARGET_CXX): Add TARGET_CXX_KEY_METHOD_MAY_BE_INLINE. * target.h (struct cxx): Add key_method_may_be_inline. * config/arm/arm.c (arm_cxx_key_method_may_be_inline): New function. (TARGET_CXX_KEY_METHOD_MAY_BE_INLINE): New macro. * config/arm/bpabi.h: Use __THUMB_INTERWORK__ instead of __THUMB_INTERWORK. * class.c (key_method): Rename to ... (determine_key_method): ... this. (finish_struct_1): Adjust accordingly. * cp-tree.h (key_method): Declare. * decl2.c (maybe_emit_vtables): Determine the key method here if it has not already been done. * g++.dg/abi/key1.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@86843 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/target-def.h')
-rw-r--r--gcc/target-def.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/target-def.h b/gcc/target-def.h
index 156ebef7c7b..e49d05584ed 100644
--- a/gcc/target-def.h
+++ b/gcc/target-def.h
@@ -437,6 +437,10 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#define TARGET_CXX_CDTOR_RETURNS_THIS hook_bool_void_false
#endif
+#ifndef TARGET_CXX_KEY_METHOD_MAY_BE_INLINE
+#define TARGET_CXX_KEY_METHOD_MAY_BE_INLINE hook_bool_void_true
+#endif
+
#define TARGET_CXX \
{ \
TARGET_CXX_GUARD_TYPE, \
@@ -444,7 +448,8 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
TARGET_CXX_GET_COOKIE_SIZE, \
TARGET_CXX_COOKIE_HAS_SIZE, \
TARGET_CXX_IMPORT_EXPORT_CLASS, \
- TARGET_CXX_CDTOR_RETURNS_THIS \
+ TARGET_CXX_CDTOR_RETURNS_THIS, \
+ TARGET_CXX_KEY_METHOD_MAY_BE_INLINE \
}
/* The whole shebang. */