aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Koning <ni1d@arrl.net>2018-10-05 14:08:34 -0400
committerPaul Koning <pkoning@gcc.gnu.org>2018-10-05 14:08:34 -0400
commit7717110a429283f3b0c48972cf222b86fa445d65 (patch)
tree7217c59e03816c1f559028ea7ab3c193680a22fe
parent7fc9c2e52f66a2b8aa101ef918829046f8f517e8 (diff)
downloadgcc-7717110a429283f3b0c48972cf222b86fa445d65.zip
gcc-7717110a429283f3b0c48972cf222b86fa445d65.tar.gz
gcc-7717110a429283f3b0c48972cf222b86fa445d65.tar.bz2
Add some pdp11 target hook definitions for C++
* config/pdp11/pdp11.c (TARGET_CXX_GUARD_TYPE): Define. (TARGET_CXX_CLASS_DATA_ALWAYS_COMDAT): Define. (TARGET_CXX_LIBRARY_RTTI_COMDAT): Define. (pdp11_guard_type): New function. From-SVN: r264883
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/pdp11/pdp11.c16
2 files changed, 23 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3ca3c1c..49fce32 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,12 @@
2018-10-05 Paul Koning <ni1d@arrl.net>
+ * config/pdp11/pdp11.c (TARGET_CXX_GUARD_TYPE): Define.
+ (TARGET_CXX_CLASS_DATA_ALWAYS_COMDAT): Define.
+ (TARGET_CXX_LIBRARY_RTTI_COMDAT): Define.
+ (pdp11_guard_type): New function.
+
+2018-10-05 Paul Koning <ni1d@arrl.net>
+
* config/pdp11/pdp11.h (FLOAT_TYPE_SIZE): Always 32.
* config/pdp11/pdp11.opt (mfloat32): Remove.
(mfloat64): Remove.
diff --git a/gcc/config/pdp11/pdp11.c b/gcc/config/pdp11/pdp11.c
index f80a878..b3b7ced 100644
--- a/gcc/config/pdp11/pdp11.c
+++ b/gcc/config/pdp11/pdp11.c
@@ -292,6 +292,15 @@ static bool pdp11_scalar_mode_supported_p (scalar_mode);
#undef TARGET_INVALID_WITHIN_DOLOOP
#define TARGET_INVALID_WITHIN_DOLOOP hook_constcharptr_const_rtx_insn_null
+#undef TARGET_CXX_GUARD_TYPE
+#define TARGET_CXX_GUARD_TYPE pdp11_guard_type
+
+#undef TARGET_CXX_CLASS_DATA_ALWAYS_COMDAT
+#define TARGET_CXX_CLASS_DATA_ALWAYS_COMDAT hook_bool_void_false
+
+#undef TARGET_CXX_LIBRARY_RTTI_COMDAT
+#define TARGET_CXX_LIBRARY_RTTI_COMDAT hook_bool_void_false
+
#undef TARGET_HAVE_SPECULATION_SAFE_VALUE
#define TARGET_HAVE_SPECULATION_SAFE_VALUE speculation_safe_value_not_needed
@@ -1702,6 +1711,13 @@ pdp11_can_change_mode_class (machine_mode from,
return !reg_classes_intersect_p (FPU_REGS, rclass);
}
+/* Implement TARGET_CXX_GUARD_TYPE */
+static tree
+pdp11_guard_type (void)
+{
+ return short_integer_type_node;
+}
+
/* TARGET_PREFERRED_RELOAD_CLASS
Given an rtx X being reloaded into a reg required to be