diff options
author | Jerome Lambourg <lambourg@adacore.com> | 2019-11-14 15:53:23 +0000 |
---|---|---|
committer | Olivier Hainque <hainque@gcc.gnu.org> | 2019-11-14 15:53:23 +0000 |
commit | 78e49fb1bc69592389a09ce5544b40fef634e893 (patch) | |
tree | 6a4a42db11d921d3246820bf1f2cdc529af89bc2 /libgcc/config.host | |
parent | ebcdba9c9f71e548e7506ecc8cb13139614b392e (diff) | |
download | gcc-78e49fb1bc69592389a09ce5544b40fef634e893.tar.gz |
Introduce vxworks specific crtstuff support
2019-11-06 Jerome Lambourg <lambourg@adacore.com>
Olivier Hainque <hainque@adacore.com>
libgcc/
* config/vxcrtstuff.c: New file.
* config/t-vxcrtstuff: New Makefile fragment.
* config.host: Append t-vxcrtstuff to the tmake_file list
on all VxWorks ports using dwarf for table based EH.
gcc/
* config/vx-common.h (USE_TM_CLONE_REGISTRY): Remove
definition, pointless with a VxWorks specific version
of crtstuff.
(DWARF2_UNWIND_INFO): Conditionalize on !ARM_UNWIND_INFO.
* config/vxworks.h (VX_CRTBEGIN_SPEC, VX_CRTEND_SPEC):
New local macros, controlling the addition of vxworks specific
crtstuff objects depending on the EH mechanism and kind of
module being linked.
(VXWORKS_STARTFILE_SPEC, VXWORKS_ENDFILE_SPEC): Use them.
Co-Authored-By: Olivier Hainque <hainque@adacore.com>
From-SVN: r278248
Diffstat (limited to 'libgcc/config.host')
-rw-r--r-- | libgcc/config.host | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libgcc/config.host b/libgcc/config.host index 0b8eb4e5d73..b2004afb02f 100644 --- a/libgcc/config.host +++ b/libgcc/config.host @@ -329,6 +329,16 @@ case ${host} in ;; esac +# Except on ARM where we do not use DWARF, table based EH on VxWorks +# relies on specially crafted crtstuff files +case ${host} in +arm-*-vxworks*) + ;; +*-*-vxworks*) + tmake_file="${tmake_file} t-vxcrtstuff" + ;; +esac + case ${host} in *-*-darwin* | *-*-dragonfly* | *-*-freebsd* | *-*-netbsd* | *-*-openbsd* | \ *-*-solaris2*) |