+2018-12-09 John David Anglin <danglin@gcc.gnu.org>
+
+ * config.gcc (hppa*-*-linux*): Add pa/t-pa to tmake_file. Define
+ d_target_objs.
+ * config/pa/pa-protos.h (pa_d_target_versions): New prototype.
+ * config/pa/pa.h (TARGET_D_CPU_VERSIONS): Define.
+ * config/pa/pa-d.c: New file.
+ * config/pa/t-pa: New file.
+
2018-12-08 Bin Cheng <bin.cheng@linux.alibaba.com>
* ipa-cp.c (update_profiling_info): Call adjust_for_ipa_scaling for
target_cpu_default="MASK_PA_11|MASK_NO_SPACE_REGS|MASK_CALLER_COPIES"
tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h pa/pa-linux.h \
pa/pa32-regs.h pa/pa32-linux.h"
- tmake_file="${tmake_file} pa/t-linux"
+ tmake_file="${tmake_file} pa/t-pa pa/t-linux"
+ d_target_objs="${d_target_objs} pa-d.o"
;;
hppa*-*-openbsd*)
target_cpu_default="MASK_PA_11"
--- /dev/null
+/* Subroutines for the D front end on the HPPA architecture.
+ Copyright (C) 2018 Free Software Foundation, Inc.
+
+GCC is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 3, or (at your option)
+any later version.
+
+GCC is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GCC; see the file COPYING3. If not see
+<http://www.gnu.org/licenses/>. */
+
+#include "config.h"
+#include "system.h"
+#include "coretypes.h"
+#include "target.h"
+#include "d/d-target.h"
+#include "d/d-target-def.h"
+
+/* Implement TARGET_D_CPU_VERSIONS for HPPA targets. */
+
+void
+pa_d_target_versions (void)
+{
+ if (TARGET_64BIT)
+ d_add_builtin_version ("HPPA64");
+ else
+ d_add_builtin_version ("HPPA");
+
+ if (TARGET_SOFT_FLOAT)
+ d_add_builtin_version ("D_SoftFloat");
+ else
+ d_add_builtin_version ("D_HardFloat");
+}
extern HOST_WIDE_INT pa_function_arg_size (machine_mode, const_tree);
extern const int pa_magic_milli[];
+
+/* Routines implemented in pa-d.c */
+extern void pa_d_target_versions (void);
(flag_pic ? (TARGET_HPUX ? 198164 : 221312) : 240000)
#define NEED_INDICATE_EXEC_STACK 0
+
+/* Target CPU versions for D. */
+#define TARGET_D_CPU_VERSIONS pa_d_target_versions
--- /dev/null
+pa-d.o: $(srcdir)/config/pa/pa-d.c
+ $(COMPILE) $<
+ $(POSTCOMPILE)
+