Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/external/gpl3/gcc/dist/gcc/config/arm netbsd-eabi.h was neve...
details: https://anonhg.NetBSD.org/src/rev/6f32acf2c5e1
branches: trunk
changeset: 962045:6f32acf2c5e1
user: mrg <mrg%NetBSD.org@localhost>
date: Thu Apr 29 01:51:39 2021 +0000
description:
netbsd-eabi.h was never merged from the now present upstream version.
reduce diffs to upstream here and in other files in this subdir.
remove unused ARM_EABI_UNWIND_TABLES and __UNWIND_TABLES__.
clang defines __UNWIND_TABLES__, but doing this in GCC triggers the
need for more libgcc / libc unwind functionality to be added, and this
code has never been enabled for netbsd/earm. (could potentially clean
up unused code in libc now, or, revive this once the full support has
been implemented..)
diffstat:
external/gpl3/gcc/dist/gcc/config/arm/arm.h | 4 +-
external/gpl3/gcc/dist/gcc/config/arm/bpabi.h | 3 -
external/gpl3/gcc/dist/gcc/config/arm/netbsd-eabi.h | 58 +++++++++++---------
external/gpl3/gcc/dist/gcc/config/arm/netbsd-elf.h | 12 ++-
4 files changed, 41 insertions(+), 36 deletions(-)
diffs (165 lines):
diff -r 88ebcf97d522 -r 6f32acf2c5e1 external/gpl3/gcc/dist/gcc/config/arm/arm.h
--- a/external/gpl3/gcc/dist/gcc/config/arm/arm.h Wed Apr 28 16:57:05 2021 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/arm/arm.h Thu Apr 29 01:51:39 2021 +0000
@@ -963,8 +963,8 @@
/* ttype entries (the only interesting data references used)
use TARGET2 relocations. */
#define ASM_PREFERRED_EH_DATA_FORMAT(code, data) \
- (((code) == 0 && (data) == 1 && ARM_UNWIND_INFO) ? ARM_TARGET2_DWARF_FORMAT \
- : DW_EH_PE_absptr)
+ (((code) == 0 && (data) == 1 && ARM_UNWIND_INFO) ? ARM_TARGET2_DWARF_FORMAT \
+ : DW_EH_PE_absptr)
#endif
/* The native (Norcroft) Pascal compiler for the ARM passes the static chain
diff -r 88ebcf97d522 -r 6f32acf2c5e1 external/gpl3/gcc/dist/gcc/config/arm/bpabi.h
--- a/external/gpl3/gcc/dist/gcc/config/arm/bpabi.h Wed Apr 28 16:57:05 2021 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/arm/bpabi.h Thu Apr 29 01:51:39 2021 +0000
@@ -28,12 +28,9 @@
#define ARM_DEFAULT_ABI ARM_ABI_AAPCS
/* Assume that AAPCS ABIs should adhere to the full BPABI. */
-//#undef TARGET_BPABI
#define TARGET_BPABI (TARGET_AAPCS_BASED)
/* BPABI targets use EABI frame unwinding tables. */
-#undef ARM_EABI_UNWIND_TABLES
-#define ARM_EABI_UNWIND_TABLES 1
#undef ARM_UNWIND_INFO
#define ARM_UNWIND_INFO 1
diff -r 88ebcf97d522 -r 6f32acf2c5e1 external/gpl3/gcc/dist/gcc/config/arm/netbsd-eabi.h
--- a/external/gpl3/gcc/dist/gcc/config/arm/netbsd-eabi.h Wed Apr 28 16:57:05 2021 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/arm/netbsd-eabi.h Thu Apr 29 01:51:39 2021 +0000
@@ -1,5 +1,5 @@
/* Definitions of target machine for GNU compiler, NetBSD/arm ELF version.
- Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
+ Copyright (C) 2002-2020 Free Software Foundation, Inc.
Contributed by Wasabi Systems, Inc.
This file is part of GCC.
@@ -22,10 +22,16 @@
#undef MULTILIB_DEFAULTS
#define MULTILIB_DEFAULTS { "mabi=aapcs-linux" }
-#define TARGET_LINKER_EABI_SUFFIX \
- (TARGET_DEFAULT_FLOAT_ABI == ARM_FLOAT_ABI_SOFT \
- ? "%{!mabi=apcs-gnu:%{!mabi=atpcs:%{mfloat-abi=hard:_eabihf;:_eabi}}}" \
- : "%{!mabi=apcs-gnu:%{!mabi=atpcs:%{mfloat-abi=soft:_eabi;:_eabihf}}}")
+#define TARGET_LINKER_EABI_SUFFIX_SOFT \
+ "%{!mabi=apcs-gnu:%{!mabi=atpcs:%{mfloat-abi=hard:_eabihf;:_eabi}}}"
+#define TARGET_LINKER_EABI_SUFFIX_HARD \
+ "%{!mabi=apcs-gnu:%{!mabi=atpcs:%{mfloat-abi=soft:_eabi;:_eabihf}}}"
+
+#define TARGET_LINKER_EABI_SUFFIX \
+ (TARGET_DEFAULT_FLOAT_ABI == ARM_FLOAT_ABI_SOFT \
+ ? TARGET_LINKER_EABI_SUFFIX_SOFT \
+ : TARGET_LINKER_EABI_SUFFIX_HARD)
+
#define TARGET_LINKER_BIG_EMULATION "armelfb_nbsd%(linker_eabi_suffix)"
#define TARGET_LINKER_LITTLE_EMULATION "armelf_nbsd%(linker_eabi_suffix)"
@@ -41,8 +47,6 @@
#undef ARM_DEFAULT_ABI
#define ARM_DEFAULT_ABI ARM_ABI_AAPCS_LINUX
-#undef ARM_EABI_UNWIND_TABLES
-#define ARM_EABI_UNWIND_TABLES 0
#undef ARM_UNWIND_INFO
#define ARM_UNWIND_INFO 0
#undef ARM_DWARF_UNWIND_TABLES
@@ -57,8 +61,6 @@
NETBSD_OS_CPP_BUILTINS_ELF(); \
if (ARM_DWARF_UNWIND_TABLES) \
builtin_define ("__ARM_DWARF_EH__"); \
- if (ARM_EABI_UNWIND_TABLES) \
- builtin_define ("__UNWIND_TABLES__"); \
} \
while (0)
@@ -73,13 +75,15 @@
#undef SIZE_TYPE
#define SIZE_TYPE "long unsigned int"
-
+
#undef PTRDIFF_TYPE
#define PTRDIFF_TYPE "long int"
#undef SUBTARGET_EXTRA_ASM_SPEC
-#define SUBTARGET_EXTRA_ASM_SPEC \
- "-matpcs %{mabi=apcs-gnu|mabi=atpcs:-meabi=gnu} %{fpic|fpie:-k} %{fPIC|fPIE:-k}"
+#define SUBTARGET_EXTRA_ASM_SPEC \
+ "-matpcs %{mabi=apcs-gnu|mabi=atpcs:-meabi=gnu} " \
+ "%{fpic|fpie:-k} " \
+ "%{fPIC|fPIE:-k}"
/* Default to full VFP if -mhard-float is specified. */
#undef SUBTARGET_ASM_FLOAT_SPEC
@@ -88,23 +92,23 @@
%{mfloat-abi=hard:%{!mfpu=*:-mfpu=vfp}}"
#undef SUBTARGET_EXTRA_SPECS
-#define SUBTARGET_EXTRA_SPECS \
- { "subtarget_extra_asm_spec", SUBTARGET_EXTRA_ASM_SPEC }, \
- { "subtarget_asm_float_spec", SUBTARGET_ASM_FLOAT_SPEC }, \
- { "linker_eabi_suffix", TARGET_LINKER_EABI_SUFFIX }, \
- { "linker_emulation", TARGET_LINKER_EMULATION }, \
- { "linker_big_emulation", TARGET_LINKER_BIG_EMULATION }, \
- { "linker_little_emulation", TARGET_LINKER_LITTLE_EMULATION }, \
- { "be8_link_spec", BE8_LINK_SPEC }, \
- { "target_fix_v4bx_spec", TARGET_FIX_V4BX_SPEC }, \
+#define SUBTARGET_EXTRA_SPECS \
+ { "subtarget_extra_asm_spec", SUBTARGET_EXTRA_ASM_SPEC }, \
+ { "subtarget_asm_float_spec", SUBTARGET_ASM_FLOAT_SPEC }, \
+ { "linker_eabi_suffix", TARGET_LINKER_EABI_SUFFIX }, \
+ { "linker_emulation", TARGET_LINKER_EMULATION }, \
+ { "linker_big_emulation", TARGET_LINKER_BIG_EMULATION }, \
+ { "linker_little_emulation", TARGET_LINKER_LITTLE_EMULATION }, \
+ { "be8_link_spec", BE8_LINK_SPEC }, \
+ { "target_fix_v4bx_spec", TARGET_FIX_V4BX_SPEC }, \
NETBSD_SUBTARGET_EXTRA_SPECS
#define NETBSD_ENTRY_POINT "__start"
#undef LINK_SPEC
-#define LINK_SPEC \
- "-X %{mbig-endian:-EB -m %(linker_big_emulation)} \
- %{mlittle-endian:-EL -m %(linker_liitle_emulation)} \
- %{!mbig-endian:%{!mlittle-endian:-m %(linker_emulation)}} \
- %(be8_link_spec) %(target_fix_v4bx_spec) \
- %(netbsd_link_spec)"
+#define LINK_SPEC \
+ "-X %{mbig-endian:-EB -m %(linker_big_emulation)} " \
+ "%{mlittle-endian:-EL -m %(linker_liitle_emulation)} " \
+ "%{!mbig-endian:%{!mlittle-endian:-m %(linker_emulation)}} " \
+ "%(be8_link_spec) " \
+ "%(target_fix_v4bx_spec) %(netbsd_link_spec)"
diff -r 88ebcf97d522 -r 6f32acf2c5e1 external/gpl3/gcc/dist/gcc/config/arm/netbsd-elf.h
--- a/external/gpl3/gcc/dist/gcc/config/arm/netbsd-elf.h Wed Apr 28 16:57:05 2021 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/arm/netbsd-elf.h Thu Apr 29 01:51:39 2021 +0000
@@ -70,10 +70,16 @@
"-matpcs %{mabi=aapcs*:-meabi=5} " \
"%{" FPIE_OR_FPIC_SPEC ":-k}"
+#undef SUBTARGET_EXTRA_SPECS
+#define SUBTARGET_EXTRA_SPECS \
+ { "subtarget_extra_asm_spec", SUBTARGET_EXTRA_ASM_SPEC }, \
+ { "subtarget_asm_float_spec", SUBTARGET_ASM_FLOAT_SPEC }, \
+ NETBSD_SUBTARGET_EXTRA_SPECS
+
/* Default to full VFP if -mfloat-abi=hard is specified. */
#undef SUBTARGET_ASM_FLOAT_SPEC
-#define SUBTARGET_ASM_FLOAT_SPEC \
- "%{mhard-float:%{!mfpu=*:-mfpu=vfp}} \
+#define SUBTARGET_ASM_FLOAT_SPEC \
+ "%{mhard-float:%{!mfpu=*:-mfpu=vfp}} \
%{mfloat-abi=hard:%{!mfpu=*:-mfpu=vfp}}"
#define NETBSD_ENTRY_POINT "__start"
@@ -170,5 +176,3 @@
(void) sysarch (SYSARCH_ARM_SYNC_ICACHE, &s); \
} \
while (0)
-//#undef FPUTYPE_DEFAULT
-//#define FPUTYPE_DEFAULT "vfp"
Home |
Main Index |
Thread Index |
Old Index