Jakub Jelinek
7adcbafe45
Update copyright years.
2022-01-03 10:42:10 +01:00
Jakub Jelinek
99dee82307
Update copyright years.
2021-01-04 10:26:59 +01:00
Max Filippov
18e86fae2a
gcc: xtensa: implement bswapsi2, bswapdi2 and helpers
...
2020-12-20 Max Filippov <jcmvbkbc@gmail.com>
gcc/
* config/xtensa/xtensa.md (bswapsi2, bswapdi2): New patterns.
gcc/testsuite/
* gcc.target/xtensa/bswap.c: New test.
libgcc/
* config/xtensa/lib1funcs.S (__bswapsi2, __bswapdi2): New
functions.
* config/xtensa/t-xtensa (LIB1ASMFUNCS): Add _bswapsi2 and
_bswapdi2.
2020-12-20 14:02:26 -08:00
Max Filippov
1d9921cbdc
xtensa: libgcc: fix PR target/95571
...
Rewrite uw_install_context without function calls to avoid register
spilling in _Unwind_RaiseException during return context installation.
2020-06-08 Max Filippov <jcmvbkbc@gmail.com>
gcc/testsuite/
* g++.target/xtensa/pr95571.C: New test.
* g++.target/xtensa/xtensa.exp: New testsuite.
libgcc/
* config/xtensa/unwind-dw2-xtensa.c (uw_install_context): Merge
with uw_install_context_1.
2020-06-08 18:30:07 -07:00
Jakub Jelinek
8d9254fc8a
Update copyright years.
...
From-SVN: r279813
2020-01-01 12:51:42 +01:00
Jakub Jelinek
a554497024
Update copyright years.
...
From-SVN: r267494
2019-01-01 13:31:55 +01:00
Max Filippov
faef260ee8
libgcc: xtensa: fix build with -mtext-section-literals
...
libgcc/
2018-02-20 Max Filippov <jcmvbkbc@gmail.com>
* config/xtensa/ieee754-df.S (__adddf3_aux): Add
.literal_position directive.
* config/xtensa/ieee754-sf.S (__addsf3_aux): Likewise.
From-SVN: r257862
2018-02-20 20:55:56 +00:00
Max Filippov
0889f16859
libgcc: xtensa: fix NaN return from add/sub/mul/div helpers
...
libgcc/
2018-01-23 Max Filippov <jcmvbkbc@gmail.com>
* config/xtensa/ieee754-df.S (__addsf3, __subsf3, __mulsf3)
(__divsf3): Make NaN return value quiet.
* config/xtensa/ieee754-sf.S (__adddf3, __subdf3, __muldf3)
(__divdf3): Make NaN return value quiet.
From-SVN: r257002
2018-01-23 21:42:52 +00:00
Jakub Jelinek
85ec4feb11
Update copyright years.
...
From-SVN: r256169
2018-01-03 11:03:58 +01:00
Igor Tsimbalist
1ebafce0bc
re PR bootstrap/83015 (bootstrap comparison failure on ia64)
...
PR bootstrap/83015
* config/cr16/unwind-cr16.c (uw_install_context): Add FRAMES
parameter.
* config/xtensa/unwind-dw2-xtensa.c: Likewise
* config/ia64/unwind-ia64.c: Add frames parameter.
* unwind-sjlj.c: Likewise.
From-SVN: r254951
2017-11-20 13:30:25 +01:00
Joseph Myers
883312dc79
Use ucontext_t not struct ucontext in linux-unwind.h files.
...
Current glibc no longer gives the ucontext_t type the tag struct
ucontext, to conform with POSIX namespace rules. This requires
various linux-unwind.h files in libgcc, that were previously using
struct ucontext, to be fixed to use ucontext_t instead. This is
similar to the removal of the struct siginfo tag from siginfo_t some
years ago.
This patch changes those files to use ucontext_t instead. As the
standard name that should be unconditionally safe, so this is not
restricted to architectures supported by glibc, or conditioned on the
glibc version.
Tested compilation together with current glibc with glibc's
build-many-glibcs.py.
* config/aarch64/linux-unwind.h (aarch64_fallback_frame_state),
config/alpha/linux-unwind.h (alpha_fallback_frame_state),
config/bfin/linux-unwind.h (bfin_fallback_frame_state),
config/i386/linux-unwind.h (x86_64_fallback_frame_state,
x86_fallback_frame_state), config/m68k/linux-unwind.h (struct
uw_ucontext), config/nios2/linux-unwind.h (struct nios2_ucontext),
config/pa/linux-unwind.h (pa32_fallback_frame_state),
config/riscv/linux-unwind.h (riscv_fallback_frame_state),
config/sh/linux-unwind.h (sh_fallback_frame_state),
config/tilepro/linux-unwind.h (tile_fallback_frame_state),
config/xtensa/linux-unwind.h (xtensa_fallback_frame_state): Use
ucontext_t instead of struct ucontext.
From-SVN: r249731
2017-06-28 10:21:16 +01:00
Jakub Jelinek
cbe34bb5ed
Update copyright years.
...
From-SVN: r243994
2017-01-01 13:07:43 +01:00
Max Filippov
2a26adf1d8
xtensa: don't use unwind-dw2-fde-dip with elf targets
...
Define LIB2ADDEH_XTENSA_UNWIND_DW2_FDE to unwind-dw2-fde.c in
xtensa/t-elf and to unwind-dw2-fde-dip.c in xtensa/t-linux and use
LIB2ADDEH_XTENSA_UNWIND_DW2_FDE in LIB2ADDEH definition.
This fixes build for elf target with windowed xtensa core that currently
breaks with the following error message:
unwind-dw2-fde-dip.c:36:40: fatal error: elf.h: No such file or directory
2016-10-18 Max Filippov <jcmvbkbc@gmail.com>
libgcc/
* config/xtensa/t-elf (LIB2ADDEH_XTENSA_UNWIND_DW2_FDE): New
definition.
* config/xtensa/t-linux (LIB2ADDEH_XTENSA_UNWIND_DW2_FDE): New
definition.
* config/xtensa/t-windowed (LIB2ADDEH): Use
LIB2ADDEH_XTENSA_UNWIND_DW2_FDE defined by either xtensa/t-elf
or xtensa/t-linux.
From-SVN: r241313
2016-10-18 19:12:19 +00:00
Ding-Kai Chen
66192aa129
xtensa: add HW FPU sequences for DIV/SQRT/RECIP/RSQRT
...
Use new FPU instruction sequences documented in the ISA book to
implement __divsf3, __divdf3, __recipsf2, __recipdf2, __rsqrtsf2,
__rsqrtdf2 and __ieee754_sqrtf and __ieee754_sqrt.
2016-10-18 Ding-Kai Chen <dkchen@cadence.com>
libgcc/
* config/xtensa/ieee754-df.S (__recipdf2, __rsqrtdf2,
__ieee754_sqrt): New functions.
(__divdf3): Add implementation with new FPU instructions under
#if XCHAL_HAVE_DFP_DIV.
* config/xtensa/ieee754-sf.S (__recipsf2, __rsqrtsf2,
__ieee754_sqrtf): New functions.
(__divsf3): Add implementation with new FPU instructions under
#if XCHAL_HAVE_FP_DIV.
* config/xtensa/t-xtensa (LIB1ASMFUNCS): Add _sqrtf, _recipsf2
_rsqrtsf2, _sqrt, _recipdf2 and _rsqrtdf2.
From-SVN: r241312
2016-10-18 19:06:33 +00:00
Max Filippov
9bfcbdeecf
xtensa: fix libgcc build with --text-section-literals
...
Functions __muldf3_aux, __divdf3_aux, __mulsf3_aux and __divsf3_aux
don't start with leaf_entry, so they need explicit .literal_position,
otherwise libgcc build fails in the presence of --text-section-literals.
2016-02-17 Max Filippov <jcmvbkbc@gmail.com>
libgcc/
* config/xtensa/ieee754-df.S (__muldf3_aux, __divdf3_aux): Add
.literal_position before the function.
* config/xtensa/ieee754-sf.S (__mulsf3_aux, __divsf3_aux):
Likewise.
From-SVN: r233505
2016-02-17 20:21:48 +00:00
Jakub Jelinek
818ab71a41
Update copyright years.
...
From-SVN: r232055
2016-01-04 15:30:50 +01:00
Max Filippov
c8338173d7
xtensa: fix xtensa_fallback_frame_state for call0 ABI
...
2015-09-15 Max Filippov <jcmvbkbc@gmail.com>
gcc/
* config/xtensa/xtensa.h (DWARF_ALT_FRAME_RETURN_COLUMN): New
definition.
(DWARF_FRAME_REGISTERS): Reserve space for one extra register in
call0 ABI.
libgcc/
* config/xtensa/linux-unwind.h (xtensa_fallback_frame_state):
Add support for call0 ABI.
From-SVN: r227809
2015-09-15 19:30:32 +00:00
Max Filippov
991995c4e7
xtensa: fix _Unwind_GetCFA
...
Returning context->cfa in _Unwind_GetCFA makes CFA point one stack frame
higher than what was actually used by code at context->ra. This results
in invalid CFA value in signal frames and premature unwinding completion
in forced unwinding used by uClibc NPTL thread cancellation.
Returning context->sp from _Unwind_GetCFA makes all CFA values valid and
matching code that used them.
2015-08-18 Max Filippov <jcmvbkbc@gmail.com>
libgcc/
* config/xtensa/unwind-dw2-xtensa.c (_Unwind_GetCFA): Return
context->sp instead of context->cfa.
From-SVN: r226964
2015-08-18 01:08:22 +00:00
Max Filippov
0e19db59e2
xtensa: use unwind-dw2-fde-dip instead of unwind-dw2-fde
...
This allows having exception cleanup code in binaries that don't
register their unwind tables.
2015-08-18 Max Filippov <jcmvbkbc@gmail.com>
libgcc/
* config/xtensa/t-windowed (LIB2ADDEH): Replace unwind-dw2-fde
with unwind-dw2-fde-dip.
From-SVN: r226963
2015-08-18 01:07:10 +00:00
Max Filippov
b6ac5f6231
xtensa: reimplement register spilling
...
Spilling windowed registers in userspace is much easier, more portable,
less error-prone and equally effective as in kernel. Now that register
spilling syscall is considered obsolete in the xtensa linux kernel
replace it with CALL12 followed by series of ENTRY in libgcc.
2015-08-18 Max Filippov <jcmvbkbc@gmail.com>
libgcc/
* config/xtensa/lib2funcs.S (__xtensa_libgcc_window_spill): Use
CALL12 followed by series of ENTRY to spill windowed registers.
(__xtensa_nonlocal_goto): Call __xtensa_libgcc_window_spill
instead of making linux spill syscall.
From-SVN: r226962
2015-08-18 01:05:44 +00:00
Max Filippov
590e26360c
Implement call0 ABI for xtensa
...
call0 is an ABI that doesn't use register windows.
2015-03-03 Max Filippov <jcmvbkbc@gmail.com>
gcc/
* config/xtensa/constraints.md ("a" constraint): Include stack
pointer in case of call0 ABI.
("q" constraint): Make empty in case of call0 ABI.
("D" constraint): Include stack pointer in case of call0 ABI.
* config/xtensa/xtensa-protos.h (xtensa_set_return_address,
xtensa_expand_epilogue, xtensa_regno_to_class): Add new function
prototypes.
* config/xtensa/xtensa.c (xtensa_callee_save_size): New
variable.
(xtensa_regno_to_class): Make it a local variable in the
function xtensa_regno_to_class.
(xtensa_function_epilogue, TARGET_ASM_FUNCTION_EPILOGUE): Remove
macro, function prototype and implementation.
(reg_nonleaf_alloc_order): Make it a local variable in the
function order_regs_for_local_alloc.
(xtensa_conditional_register_usage): New function.
(TARGET_CONDITIONAL_REGISTER_USAGE): Define macro.
(xtensa_valid_move): Allow direct moves to stack pointer
register in call0 ABI.
(xtensa_setup_frame_addresses): Only spill register windows in
windowed ABI.
(xtensa_emit_call): Emit call(x)8 or call(x)0 in windowed and
call0 ABI respectively.
(xtensa_function_arg_1): Only mark a7 register for copying in
windowed ABI.
(xtensa_call_save_reg): New function.
(compute_frame_size): Add space for callee saved register
storage to the frame size in call0 ABI.
(xtensa_expand_prologue): Generate code to set up stack frame
and save callee-saved registers in call0 ABI.
(xtensa_expand_epilogue): New function.
(xtensa_set_return_address): New function.
(xtensa_return_addr): Calculate return address in call0 ABI.
(xtensa_builtin_saveregs): Only mark a7 register for copying and
emit copying code in windowed ABI.
(order_regs_for_local_alloc): Add preferred register allocation
order for non-leaf function in call0 ABI.
(xtensa_static_chain): Add atatic chain passing for call0 ABI.
(xtensa_asm_trampoline_template): Add trampoline generation for
call0 ABI.
(xtensa_trampoline_init): Add trampoline initialization for
call0 ABI.
(xtensa_conditional_register_usage, xtensa_regno_to_class): New
functions.
* config/xtensa/xtensa.h (TARGET_WINDOWED_ABI): New macro.
(TARGET_CPU_CPP_BUILTINS): Add built-in define for call0 ABI.
(CALL_USED_REGISTERS): Modify to encode both windowed and call0
ABI call-used registers.
(HARD_FRAME_POINTER_REGNUM): Add frame pointer for call0 ABI.
(INCOMING_REGNO, OUTGOING_REGNO): Use argument unchanged in
call0 ABI.
(REG_CLASS_CONTENTS): Include all registers into the preferred
reload registers set, adjust the set in the
xtensa_conditional_register_usage.
(xtensa_regno_to_class): Drop variable declaration.
(REGNO_REG_CLASS): Redefine to use xtensa_regno_to_class
function.
(WINDOW_SIZE): Define as 8 or 0 for windowed and call0 ABI
respectively.
(FUNCTION_PROFILER): Add _mcount call for call0 ABI.
(TRAMPOLINE_SIZE): Define trampoline size for call0 ABI.
(RETURN_ADDR_IN_PREVIOUS_FRAME): Define to 0 in call0 ABI.
(ASM_OUTPUT_POOL_PROLOGUE): Always generate literal pool
location in call0 ABI.
(EH_RETURN_STACKADJ_RTX): New definition, use a10 for passing
stack adjustment size when handling exception.
(CRT_CALL_STATIC_FUNCTION): Add definition for call0 ABI.
* config/xtensa/xtensa.md (A9_REG, UNSPECV_BLOCKAGE): New
definitions.
("return" pattern): Generate ret.n/ret in call0 ABI.
("epilogue" pattern): Expand epilogue.
("nonlocal_goto" pattern): Use default in call0 ABI.
("eh_return" pattern): Move implementation to eh_set_a0_windowed,
emit eh_set_a0_* depending on ABI.
("eh_set_a0_windowed" pattern): Former eh_return pattern.
("eh_set_a0_call0", "blockage"): New patterns.
libgcc/
* config/xtensa/lib2funcs.S (__xtensa_libgcc_window_spill,
__xtensa_nonlocal_goto): Don't compile for call0 ABI.
(__xtensa_sync_caches): Only use entry and retw in windowed ABI,
use ret in call0 ABI.
* config/xtensa/t-windowed: New file.
* libgcc/config/xtensa/t-xtensa (LIB2ADDEH): Move to t-windowed.
* libgcc/configure: Regenerated.
* libgcc/configure.ac: Check if xtensa target is configured for
windowed ABI and thus needs to use custom unwind code.
From-SVN: r221158
2015-03-03 17:44:01 +00:00
Jakub Jelinek
5624e564d2
Update copyright years.
...
From-SVN: r219188
2015-01-05 13:33:28 +01:00
Joseph Myers
53d68b9f05
Use -fbuilding-libgcc for more target macros used in libgcc.
...
gcc/c-family:
* c-cppbuiltin.c (c_cpp_builtins): Also define
__LIBGCC_EH_TABLES_CAN_BE_READ_ONLY__,
__LIBGCC_EH_FRAME_SECTION_NAME__, __LIBGCC_JCR_SECTION_NAME__,
__LIBGCC_CTORS_SECTION_ASM_OP__, __LIBGCC_DTORS_SECTION_ASM_OP__,
__LIBGCC_TEXT_SECTION_ASM_OP__, __LIBGCC_INIT_SECTION_ASM_OP__,
__LIBGCC_INIT_ARRAY_SECTION_ASM_OP__,
__LIBGCC_STACK_GROWS_DOWNWARD__,
__LIBGCC_DONT_USE_BUILTIN_SETJMP__,
__LIBGCC_DWARF_ALT_FRAME_RETURN_COLUMN__,
__LIBGCC_DWARF_FRAME_REGISTERS__,
__LIBGCC_EH_RETURN_STACKADJ_RTX__, __LIBGCC_JMP_BUF_SIZE__,
__LIBGCC_STACK_POINTER_REGNUM__ and
__LIBGCC_VTABLE_USES_DESCRIPTORS__ for -fbuilding-libgcc.
(builtin_define_with_value): Handle backslash-escaping in string
macro values.
libgcc:
* Makefile.in (CRTSTUFF_CFLAGS): Add -fbuilding-libgcc.
* config/aarch64/linux-unwind.h (STACK_POINTER_REGNUM): Change all
uses to __LIBGCC_STACK_POINTER_REGNUM__.
(DWARF_ALT_FRAME_RETURN_COLUMN): Change all uses to
__LIBGCC_DWARF_ALT_FRAME_RETURN_COLUMN__.
* config/alpha/vms-unwind.h (DWARF_ALT_FRAME_RETURN_COLUMN):
Change use to __LIBGCC_DWARF_ALT_FRAME_RETURN_COLUMN__.
* config/cr16/unwind-cr16.c (STACK_GROWS_DOWNWARD): Change all
uses to __LIBGCC_STACK_GROWS_DOWNWARD__.
(DWARF_FRAME_REGISTERS): Change all uses to
__LIBGCC_DWARF_FRAME_REGISTERS__.
(EH_RETURN_STACKADJ_RTX): Change all uses to
__LIBGCC_EH_RETURN_STACKADJ_RTX__.
* config/cr16/unwind-dw2.h (DWARF_FRAME_REGISTERS): Change use to
__LIBGCC_DWARF_FRAME_REGISTERS__. Remove conditional definition.
* config/i386/cygming-crtbegin.c (EH_FRAME_SECTION_NAME): Change
use to __LIBGCC_EH_FRAME_SECTION_NAME__.
(JCR_SECTION_NAME): Change use to __LIBGCC_JCR_SECTION_NAME__.
* config/i386/cygming-crtend.c (EH_FRAME_SECTION_NAME): Change use
to __LIBGCC_EH_FRAME_SECTION_NAME__.
(JCR_SECTION_NAME): Change use to __LIBGCC_JCR_SECTION_NAME__
* config/mips/linux-unwind.h (STACK_POINTER_REGNUM): Change use to
__LIBGCC_STACK_POINTER_REGNUM__.
(DWARF_ALT_FRAME_RETURN_COLUMN): Change all uses to
__LIBGCC_DWARF_ALT_FRAME_RETURN_COLUMN__.
* config/nios2/linux-unwind.h (STACK_POINTER_REGNUM): Change use
to __LIBGCC_STACK_POINTER_REGNUM__.
* config/pa/hpux-unwind.h (DWARF_ALT_FRAME_RETURN_COLUMN): Change
all uses to __LIBGCC_DWARF_ALT_FRAME_RETURN_COLUMN__.
* config/pa/linux-unwind.h (DWARF_ALT_FRAME_RETURN_COLUMN): Change
all uses to __LIBGCC_DWARF_ALT_FRAME_RETURN_COLUMN__.
* config/rs6000/aix-unwind.h (DWARF_ALT_FRAME_RETURN_COLUMN):
Change all uses to __LIBGCC_DWARF_ALT_FRAME_RETURN_COLUMN__.
(STACK_POINTER_REGNUM): Change all uses to
__LIBGCC_STACK_POINTER_REGNUM__.
* config/rs6000/darwin-fallback.c (STACK_POINTER_REGNUM): Change
use to __LIBGCC_STACK_POINTER_REGNUM__.
* config/rs6000/linux-unwind.h (STACK_POINTER_REGNUM): Change all
uses to __LIBGCC_STACK_POINTER_REGNUM__.
* config/sparc/linux-unwind.h (DWARF_FRAME_REGISTERS): Change use
to __LIBGCC_DWARF_FRAME_REGISTERS__.
* config/sparc/sol2-unwind.h (DWARF_FRAME_REGISTERS): Change use
to __LIBGCC_DWARF_FRAME_REGISTERS__.
* config/tilepro/linux-unwind.h (STACK_POINTER_REGNUM): Change use
to __LIBGCC_STACK_POINTER_REGNUM__.
* config/xtensa/unwind-dw2-xtensa.h (DWARF_FRAME_REGISTERS):
Remove conditional definition.
* crtstuff.c (TEXT_SECTION_ASM_OP): Change all uses to
__LIBGCC_TEXT_SECTION_ASM_OP__.
(EH_FRAME_SECTION_NAME): Change all uses to
__LIBGCC_EH_FRAME_SECTION_NAME__.
(EH_TABLES_CAN_BE_READ_ONLY): Change all uses to
__LIBGCC_EH_TABLES_CAN_BE_READ_ONLY__.
(CTORS_SECTION_ASM_OP): Change all uses to
__LIBGCC_CTORS_SECTION_ASM_OP__.
(DTORS_SECTION_ASM_OP): Change all uses to
__LIBGCC_DTORS_SECTION_ASM_OP__.
(JCR_SECTION_NAME): Change all uses to
__LIBGCC_JCR_SECTION_NAME__.
(INIT_SECTION_ASM_OP): Change all uses to
__LIBGCC_INIT_SECTION_ASM_OP__.
(INIT_ARRAY_SECTION_ASM_OP): Change all uses to
__LIBGCC_INIT_ARRAY_SECTION_ASM_OP__.
* generic-morestack.c (STACK_GROWS_DOWNWARD): Change all uses to
__LIBGCC_STACK_GROWS_DOWNWARD__.
* libgcc2.c (INIT_SECTION_ASM_OP): Change all uses to
__LIBGCC_INIT_SECTION_ASM_OP__.
(INIT_ARRAY_SECTION_ASM_OP): Change all uses to
__LIBGCC_INIT_ARRAY_SECTION_ASM_OP__.
(EH_FRAME_SECTION_NAME): Change all uses to
__LIBGCC_EH_FRAME_SECTION_NAME__.
* libgcov-profiler.c (VTABLE_USES_DESCRIPTORS): Remove conditional
definitions. Change all uses to
__LIBGCC_VTABLE_USES_DESCRIPTORS__.
* unwind-dw2.c (STACK_GROWS_DOWNWARD): Change all uses to
__LIBGCC_STACK_GROWS_DOWNWARD__.
(DWARF_FRAME_REGISTERS): Change all uses to
__LIBGCC_DWARF_FRAME_REGISTERS__.
(EH_RETURN_STACKADJ_RTX): Change all uses to
__LIBGCC_EH_RETURN_STACKADJ_RTX__.
* unwind-dw2.h (DWARF_FRAME_REGISTERS): Remove conditional
definition. Change use to __LIBGCC_DWARF_FRAME_REGISTERS__.
* unwind-sjlj.c (DONT_USE_BUILTIN_SETJMP): Change all uses to
__LIBGCC_DONT_USE_BUILTIN_SETJMP__.
(JMP_BUF_SIZE): Change use to __LIBGCC_JMP_BUF_SIZE__.
From-SVN: r214954
2014-09-05 13:03:46 +01:00
Richard Sandiford
ac1dca3cab
Update copyright years in libgcc/
...
From-SVN: r206295
2014-01-02 22:25:22 +00:00
Richard Sandiford
5d5bf77569
Update copyright in libgcc.
...
From-SVN: r195731
2013-02-04 19:06:20 +00:00
Thomas Schwinge
1bde7dabc9
struct siginfo vs. siginfo_t
...
libgcc/
* config/alpha/linux-unwind.h (alpha_fallback_frame_state): Use
siginfo_t instead of struct siginfo.
* config/bfin/linux-unwind.h (bfin_fallback_frame_state): Likewise.
* config/i386/linux-unwind.h (x86_fallback_frame_state): Likewise.
* config/ia64/linux-unwind.h (ia64_fallback_frame_state)
(ia64_handle_unwabi): Likewise.
* config/mips/linux-unwind.h (mips_fallback_frame_state): Likewise.
* config/pa/linux-unwind.h (pa32_fallback_frame_state): Likewise.
* config/sh/linux-unwind.h (shmedia_fallback_frame_state)
(sh_fallback_frame_state): Likewise.
* config/tilepro/linux-unwind.h (tile_fallback_frame_state): Likewise.
* config/xtensa/linux-unwind.h (xtensa_fallback_frame_state): Likewise.
From-SVN: r186610
2012-04-20 09:44:50 +02:00
Rainer Orth
852b75ed97
Move libgcc_tm_file to toplevel libgcc
...
gcc:
* configure.ac (libgcc_tm_file_list, libgcc_tm_include_list):
Remove.
* configure: Regenerate.
* Makefile.in (libgcc_tm_file_list, libgcc_tm_include_list): Remove.
(TM_H): Remove libgcc_tm.h, $(libgcc_tm_file_list).
(libgcc_tm.h, cs-libgcc_tm.h): Remove.
(clean): Remove libgcc_tm.h
* mkconfig.sh: Don't include libgcc_tm.h in tm.h.
* config.gcc (libgcc_tm_file): Remove.
(arm*-*-linux*): Remove libgcc_tm_file for arm*-*-linux-*eabi.
(arm*-*-uclinux*): Remove libgcc_tm_file for arm*-*-uclinux*eabi.
(arm*-*-eabi*, arm*-*-symbianelf*): Remove libgcc_tm_file.
(avr-*-rtems*): Likewise.
(avr-*-*): Likewise.
(frv-*-elf): Likewise.
(frv-*-*linux*): Likewise.
(h8300-*-rtems*): Likewise.
(h8300-*-elf*): Likewise.
(i[34567]86-*-darwin*): Likewise.
(x86_64-*-darwin*): Likewise.
(rx-*-elf*): Likewise.
(tic6x-*-elf): Likewise.
(tic6x-*-uclinux): Likewise.
(i[34567]86-*-linux*, x86_64-*-linux*): Likewise.
libgcc:
* configure.ac (tm_file_): New variable.
Determine from tm_file.
(tm_file, tm_defines): Substitute.
* configure: Regenerate.
* mkheader.sh: New file.
* Makefile.in (clean): Remove libgcc_tm.h.
($(objects)): Depend on libgcc_tm.h.
(libgcc_tm_defines, libgcc_tm_file): New variables.
(libgcc_tm.h, libgcc_tm.stamp): New targets.
($(libgcc-objects), $(libgcc-s-objects), $(libgcc-eh-objects))
($(libgcov-objects), $(libunwind-objects), $(libunwind-s-objects))
($(extra-parts)): Depend on libgcc_tm.h.
* config.host (tm_defines, tm_file): New variable.
(arm*-*-linux*): Set tm_file for arm*-*-linux-*eabi.
(arm*-*-uclinux*): Set tm_file for arm*-*-uclinux*eabi.
(arm*-*-eabi*, arm*-*-symbianelf*): Set tm_file.
(avr-*-rtems*): Likewise.
(avr-*-*): Likewise.
(frv-*-elf): Likewise.
(frv-*-*linux*): Likewise.
(h8300-*-rtems*): Likewise.
(h8300-*-elf*): Likewise.
(i[34567]86-*-darwin*): Likewise.
(x86_64-*-darwin*): Likewise.
(rx-*-elf): Likewise.
(tic6x-*-uclinux): Likewise.
(tic6x-*-elf): Likewise.
(i[34567]86-*-linux*, x86_64-*-linux*): Likewise.
* config/alpha/gthr-posix.c: Include libgcc_tm.h.
* config/i386/cygming-crtbegin.c: Likewise.
* config/i386/cygming-crtend.c: Likewise.
* config/ia64/fde-vms.c: Likewise.
* config/ia64/unwind-ia64.c: Likewise.
* config/libbid/bid_gcc_intrinsics.h: Likewise.
* config/rs6000/darwin-fallback.c: Likewise.
* config/stormy16/lib2funcs.c: Likewise.
* config/xtensa/unwind-dw2-xtensa.c: Likewise.
* crtstuff.c: Likewise.
* dfp-bit.h: Likewise.
* emutls.c: Likewise.
* fixed-bit.c: Likewise.
* fp-bit.c: Likewise.
* generic-morestack-thread.c: Likewise.
* generic-morestack.c: Likewise.
* libgcc2.c: Likewise.
* libgcov.c: Likewise.
* unwind-dw2-fde-dip.c: Likewise.
* unwind-dw2-fde.c: Likewise.
* unwind-dw2.c: Likewise.
* unwind-sjlj.c: Likewise.
Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>
From-SVN: r180775
2011-11-02 15:26:35 +00:00
Rainer Orth
f9989b51a9
Move libgcc2 to toplevel libgcc
...
toplevel:
* Makefile.tpl (EXTRA_GCC_FLAGS): Remove LIBGCC2_CFLAGS,
LIBGCC2_DEBUG_CFLAGS, LIBGCC2_INCLUDES.
* Makefile.in: Regenerate.
config:
* mh-interix (LIBGCC2_DEBUG_CFLAGS): Remove.
gcc:
* Makefile.in (LIBGCC2_DEBUG_CFLAGS LIBGCC2_CFLAGS)
(LIBGCC2_INCLUDES, TARGET_LIBGCC2_CFLAGS, LIB2FUNCS_EXTRA)
(LIB2FUNCS_STATIC_EXTRA, LIB2FUNCS_EXCLUDE, T, T_TARGET)
(INCLUDES_FOR_TARGET): Remove.
(LIBGCC2_CFLAGS): Don't export.
(LIB2FUNCS_ST, LIB2_DIVMOD_FUNCS, LIB2ADD, LIB2ADD_ST, srcdirify):
Remove.
(libgcc-support): Remove $(LIB2ADD), $(LIB2ADD_ST) dependencies.
(libgcc.mvars): Likewise.
Don't emit LIB2FUNCS_ST, LIB2FUNCS_EXCLUDE, LIB2ADD, LIB2ADD_ST,
LIB2_SIDITI_CONV_FUNCS, LIB2_DIVMOD_FUNCS, LIBGCC2_CFLAGS,
TARGET_LIBGCC2_CFLAGS.
Emit GTHREAD_FLAGS.
* libgcc2.c, libgcc2.h, gbl-ctors.h, longlong.h: Move to ../libgcc.
* config/darwin-64.c: Move to ../libgcc/config.
* config/divmod.c, config/floatunsidf.c, config/floatunsisf.c,
config/floatunsitf.c, config/floatunsixf.c, config/udivmod.c,
config/udivmodsi4.c: Move to ../libgcc/config.
* config/gthr-posix.c: Move to ../libgcc/config/alpha.
* config/memcmp.c, config/memcpy.c, config/memmove.c,
config/memset.c: Move to ../libgcc/config.
* config/t-darwin (TARGET_LIBGCC2_CFLAGS): Remove.
* config/t-freebsd: Remove.
* config/t-freebsd-thread: Move to ../libgcc/config.
* config/t-libgcc-pic: Move to ../libgcc/config.
* config/t-libunwind (TARGET_LIBGCC2_CFLAGS): Remove.
* config/t-linux: Remove.
* config/t-lynx (TARGET_LIBGCC2_CFLAGS, LIBGCC, INSTALL_LIBGCC):
Remove
* config/t-openbsd-thread: Move to ../libgcc/config.
* config/t-rtems (LIBGCC2_INCLUDES): Remove.
* config/t-sol2 (TARGET_LIBGCC2_CFLAGS): Remove.
* config/t-svr4: Remove.
* config/t-vxworks (LIBGCC, INSTALL_LIBGCC, TARGET_LIBGCC2_CFLAGS)
(LIBGCC2_DEBUG_CFLAGS, LIB2FUNCS_EXTRA, LIBGCC2_INCLUDES): Remove.
* config/vxlib.c, config/vxlib-tls.c: Move to ../libgcc/config.
* config/alpha/qrnnd.asm: Move to ../libgcc/config/alpha/qrnnd.S.
* config/alpha/t-alpha, config/alpha/t-ieee: Remove.
* config/alpha/t-vms (LIB2FUNCS_EXTRA, LIBGCC, INSTALL_LIBGCC):
Remove.
* config/alpha/vms-gcc_shell_handler.c: Move to ../libgcc/config/alpha.
* config/arm/bpabi.c, config/arm/unaligned-funcs.c,
config/arm/fp16.c, config/arm/linux-atomic.c,
config/arm/linux-atomic-64bit.c: Move to ../libgcc/config/arm.
* config/arm/t-arm-elf (LIBGCC, INSTALL_LIBGCC)
(TARGET_LIBGCC2_CFLAGS): Remove.
* config/arm/t-bpabi, config/arm/t-linux: Remove.
* config/arm/t-linux-eabi (TARGET_LIBGCC2_CFLAGS)
(LIB2FUNCS_STATIC_EXTRA): Remove.
* config/arm/t-netbsd: Remove.
* config/arm/t-strongarm-elf (LIBGCC, INSTALL_LIBGCC)
(TARGET_LIBGCC2_CFLAGS): Remove.
* config/arm/t-symbian (LIB2FUNCS_STATIC_EXTRA): Remove.
* config/arm/t-wince-pe (LIBGCC, INSTALL_LIBGCC)
(TARGET_LIBGCC2_CFLAGS): Remove.
* config/avr/t-avr (LIB2FUNCS_EXCLUDE, TARGET_LIBGCC2_CFLAGS)
(LIBGCC, INSTALL_LIBGCC): Remove.
* config/bfin/t-bfin-elf (TARGET_LIBGCC2_CFLAGS): Remove.
* config/bfin/t-bfin-linux: Likewise.
* config/bfin/t-bfin-uclinux: Likewise.
* config/c6x/eqd.c, config/c6x/eqf.c, config/c6x/ged.c,
config/c6x/gef.c, config/c6x/gtd.c, config/c6x/gtf.c,
config/c6x/led.c, config/c6x/lef.c, config/c6x/ltd.c,
config/c6x/ltf.c: Move to ../libgcc/config/c6x.
* config/c6x/t-c6x-elf (LIB2FUNCS_EXCLUDE, LIB2FUNCS_EXTRA):
Remove.
* config/c6x/t-c6x-uclinux (TARGET_LIBGCC2_CFLAGS): Remove.
* config/cris/arit.c: Move to ../libgcc/config/cris.
* config/cris/cris_abi_symbol.c: Remove.
* config/cris/cris.h: Remove obsolete comment.
* config/cris/mulsi3.asm: Move to ../libgcc/config/cris/mulsi3.S.
* config/cris/t-cris (LIB2FUNCS_EXTRA, CRIS_LIB1CSRC)
($(LIB2FUNCS_EXTRA)): Remove.
* config/cris/t-elfmulti (LIB2FUNCS_STATIC_EXTRA, INSTALL_LIBGCC)
(LIBGCC): Remove.
* config/cris/t-linux (TARGET_LIBGCC2_CFLAGS): Remove.
* config/fr30/t-fr30: Remove.
* config/frv/cmovd.c, config/frv/cmovh.c, config/frv/cmovw.c,
config/frv/modi.c, config/frv/uitod.c, config/frv/uitof.c,
config/frv/ulltod.c, config/frv/ulltof.c, config/frv/umodi.c: Move
to ../libgcc/config/frv.
* config/frv/t-frv (LIB2FUNCS_EXTRA, TARGET_LIBGCC2_CFLAGS)
(cmovh.c, cmovw.c, cmovd.c, modi.c, umodi.c, uitof.c, uitod.c)
(ulltof.c, LIBGCC, INSTALL_LIBGCC): Remove.
* config/frv/t-linux (TARGET_LIBGCC2_CFLAGS): Remove.
* config/h8300/clzhi2.c, config/h8300/ctzhi2.c,
config/h8300/fixunssfsi.c, config/h8300/parityhi2.c,
config/h8300/popcounthi2.c: Move to ../libgcc/config/h8300.
* config/h8300/t-h8300 (LIB2FUNCS_EXTRA, TARGET_LIBGCC2_CFLAGS)
(LIBGCC, INSTALL_LIBGCC): Remove.
* config/i386/gthr-win32.c: Move to ../libgcc/config/i386.
* config/i386/t-cygming (LIBGCC2_INCLUDES): Remove.
* config/i386/t-cygwin: Remove.
* config/i386/t-darwin (LIB2_SIDITI_CONV_FUNCS, LIB2FUNCS_EXTRA)
(LIB2FUNCS_EXCLUDE): Remove.
* config/i386/t-darwin64 (LIB2_SIDITI_CONV_FUNCS, LIB2FUNCS_EXTRA)
(LIBGCC, INSTALL_LIBGCC): Remove.
* config/i386/t-gthr-win32: Move to ../libgcc/config/i386.
* config/i386/t-linux64 (LIBGCC, INSTALL_LIBGCC): Remove.
* config/i386/t-mingw-w32: Likewise.
* config/i386/t-mingw-w64: Likewise.
* config/i386/t-openbsd: Likewise.
* config/i386/t-nto: Remove.
* config/ia64/quadlib.c: Move to ../libgcc/config/ia64.
* config/ia64/t-hpux (LIBGCC, INSTALL_LIBGCC, LIB2FUNCS_EXTRA)
(quadlib.c): Remove.
* config/ia64/t-ia64: Remove comment.
* config/iq2000/lib2extra-funcs.c: Move to
../libgcc/config/iq2000/lib2funcs.c.
* config/iq2000/t-iq2000: Remove.
* config/m32c/m32c-lib2.c: Move to ../libgcc/config/m32c/lib2funcs.c.
* config/m32c/m32c-lib2-trapv.c: Move to ../libgcc/config/m32c/trapv.c.
* config/m32r/t-linux (TARGET_LIBGCC2_CFLAGS): Remove.
* config/m32c/t-m32c (LIB2FUNCS_EXTRA): Remove.
* config/m32r/t-m32r (TARGET_LIBGCC2_CFLAGS, LIBGCC)
(INSTALL_LIBGCC): Remove.
* config/m68k/fpgnulib.c: Move to ../libgcc/config/m68k.
* config/m68k/t-floatlib: Remove.
* config/m68k/t-mlibs (LIBGCC, INSTALL_LIBGCC): Remove.
* config/mcore/t-mcore (TARGET_LIBGCC2_CFLAGS): Remove.
Fix typo.
(LIBGCC, INSTALL_LIBGCC): Remove.
* config/mep/mep-lib2.c: Move to ../libgcc/config/mep/lib2funcs.c.
* config/mep/mep-tramp.c: Move to ../libgcc/config/mep/tramp.c.
* config/mep/t-mep (LIB2FUNCS_EXTRA): Remove.
* config/mips/t-elf (TARGET_LIBGCC2_CFLAGS, LIBGCC)
(INSTALL_LIBGCC): Remove.
* config/mips/t-isa3264: Likewise.
* config/mips/t-mips (LIB2_SIDITI_CONV_FUNCS): Remove.
* config/mips/t-r3900 (TARGET_LIBGCC2_CFLAGS, LIBGCC)
(INSTALL_LIBGCC): Remove.
* config/mips/t-sde (LIBGCC, INSTALL_LIBGCC): Remove.
* config/mips/t-sr71k (TARGET_LIBGCC2_CFLAGS, LIBGCC)
(INSTALL_LIBGCC): Remove.
* config/mips/t-vr (TARGET_LIBGCC2_CFLAGS)
(LIB2FUNCS_STATIC_EXTRA): Remove.
* config/mips/vr4120-div.S: Move to ../libgcc/config/mips.
* config/mmix/t-mmix (TARGET_LIBGCC2_CFLAGS): Remove.
* config/mn10300/t-mn10300 (LIBGCC, INSTALL_LIBGCC): Remove.
* config/pa/fptr.c, config/pa/linux-atomic.c: Move to
../libgcc/config/pa.
* config/pa/lib2funcs.asm: Move to ../libgcc/config/pa/lib2funcs.S.
* config/pa/quadlib.c: Move to ../libgcc/config/pa.
* config/pa/t-dce-thr (LIBGCC, INSTALL_LIBGCC): Remove.
* config/pa/t-linux, config/pa/t-linux64: Remove.
* config/pa/t-pa-hpux, config/pa/t-pa-hpux10,
config/pa/t-pa-hpux11, config/pa/t-pa64: Remove.
* config/pdp11/t-pdp11 (TARGET_LIBGCC2_CFLAGS, LIB2FUNCS_EXTRA):
Remove.
* config/picochip/libgccExtras: Move to ../libgcc/config/picochip.
* config/picochip/t-picochip (LIB2FUNCS_EXTRA, RANLIB_FOR_TARGET)
(TARGET_LIBGCC2_CFLAGS, LIBGCC2_DEBUG_CFLAGS): Remove.
* config/rs6000/crtresfpr.asm: Move to
../libgcc/config/rs6000/crtresfpr.S.
* config/rs6000/crtresgpr.asm: Move to
../libgcc/config/rs6000/crtresgpr.S.
* config/rs6000/crtresxfpr.asm: Move to
../libgcc/config/rs6000/crtresxfpr.S.
* config/rs6000/crtresxgpr.asm: Move to
../libgcc/config/rs6000/crtresxgpr.S.
* config/rs6000/crtsavfpr.asm: Move to
../libgcc/config/rs6000/crtsavfpr.S.
* config/rs6000/crtsavgpr.asm: Move to
../libgcc/config/rs6000/crtsavgpr.S.
* config/rs6000/darwin-asm.h: Move to ../libgcc/config/rs6000.
* config/rs6000/darwin-fpsave.asm: Move to
../libgcc/config/rs6000/darwin-fpsave.S.
* config/rs6000/darwin-gpsave.asm: Move to
../libgcc/config/rs6000/darwin-gpsave.S.
* config/rs6000/darwin-tramp.asm: Move to
../libgcc/config/rs6000/darwin-tramp.S.
* config/rs6000/darwin-vecsave.asm: Move to
../libgcc/config/rs6000/darwin-vecsave.S.
* config/rs6000/darwin-world.asm: Move to
../libgcc/config/rs6000/darwin-world.S.
* config/rs6000/e500crtres32gpr.asm: Move to
../libgcc/config/rs6000/e500crtres32gpr.S.
* config/rs6000/e500crtres64gpr.asm: Move to
../libgcc/config/rs6000/e500crtres64gpr.S.
* config/rs6000/e500crtres64gprctr.asm: Move to
../libgcc/config/rs6000/e500crtres64gprctr.S.
* config/rs6000/e500crtrest32gpr.asm: Move to
../libgcc/config/rs6000/e500crtrest32gpr.S.
* config/rs6000/e500crtrest64gpr.asm: Move to
../libgcc/config/rs6000/e500crtrest64gpr.S.
* config/rs6000/e500crtresx32gpr.asm: Move to
../libgcc/config/rs6000/e500crtresx32gpr.S.
* config/rs6000/e500crtresx64gpr.asm: Move to
../libgcc/config/rs6000/e500crtresx64gpr.S.
* config/rs6000/e500crtsav32gpr.asm: Move to
../libgcc/config/rs6000/e500crtsav32gpr.S.
* config/rs6000/e500crtsav64gpr.asm: Move to
../libgcc/config/rs6000/e500crtsav64gpr.S.
* config/rs6000/e500crtsav64gprctr.asm: Move to
../libgcc/config/rs6000/e500crtsav64gprctr.S.
* config/rs6000/e500crtsavg32gpr.asm: Move to
../libgcc/config/rs6000/e500crtsavg32gpr.S.
* config/rs6000/e500crtsavg64gpr.asm: Move to
../libgcc/config/rs6000/e500crtsavg64gpr.S.
* config/rs6000/e500crtsavg64gprctr.asm: Move to
../libgcc/config/rs6000/e500crtsavg64gprctr.S.
* config/rs6000/eabi.asm: Move to ../libgcc/config/rs6000/eabi.S.
* config/rs6000/t-aix43 (LIBGCC, INSTALL_LIBGCC, LIB2FUNCS_EXTRA)
(TARGET_LIBGCC2_CFLAGS): Remove.
* config/rs6000/t-aix52: Likewise.
* config/rs6000/t-darwin: Remove.
* config/rs6000/t-darwin64 (LIB2_SIDITI_CONV_FUNCS)
(LIB2FUNCS_EXTRA): Remove.
* config/rs6000/t-fprules (LIBGCC, INSTALL_LIBGCC): Remove.
* config/rs6000/t-linux64 (TARGET_LIBGCC2_CFLAGS): Remove.
* config/rs6000/t-lynx (LIB2FUNCS_EXTRA, tramp.S, LIBGCC)
(INSTALL_LIBGCC): Remove.
* config/rs6000/t-netbsd (LIB2FUNCS_EXTRA)
(LIB2FUNCS_STATIC_EXTRA, tramp.S, crtsavfpr.S, crtresfpr.S)
(crtsavgpr.S, crtresgpr.S, crtresxfpr.S, crtresxgpr.S, LIBGCC)
(INSTALL_LIBGCC, $(T)crtsavfpr$(objext), $(T)crtresfpr$(objext))
(($(T)crtsavgpr$(objext), $(T)crtresgpr$(objext),
$(T)crtresxfpr$(objext), $(T)crtresxgpr$(objext)): Remove.
* config/rs6000/t-ppccomm (LIB2FUNCS_EXTRA)
(LIB2FUNCS_STATIC_EXTRA, eabi.S, tramp.S): Remove.
* config/rs6000/t-spe (LIBGCC, INSTALL_LIBGCC): Remove.
* config/rs6000/t-vxworks: Remove comment.
* config/rs6000/tramp.asm: Move to ../libgcc/config/rs6000/tramp.S.
* config/rx/t-rx (LIBGCC, INSTALL_LIBGCC): Remove.
* config/sh/linux-atomic.asm: Move to
../libgcc/config/sh/linux-atomic.S.
* config/sh/t-linux (LIB2FUNCS_EXTRA): Remove.
* config/sh/t-netbsd: Remove.
* config/sh/t-sh (TARGET_LIBGCC2_CFLAGS, LIBGCC, INSTALL_LIBGCC):
Remove.
* config/sparc/t-elf (LIBGCC, INSTALL_LIBGCC): Remove.
* config/sparc/t-leon: Likewise.
* config/sparc/t-leon3: Likewise.
* config/sparc/t-linux64: Likewise.
* config/sparc/t-netbsd64: Fix typo.
Remove comment.
* config/spu/divmodti4.c, config/spu/divv2df3.c,
config/spu/float_disf.c, config/spu/float_unsdidf.c,
config/spu/float_unsdisf.c, config/spu/float_unssidf.c,
config/spu/mfc_multi_tag_release.c,
config/spu/mfc_multi_tag_reserve.c, config/spu/mfc_tag_release.c,
config/spu/mfc_tag_reserve.c, config/spu/mfc_tag_table.c,
config/spu/multi3.c: Move to ../libgcc/config/spu.
* config/spu/t-spu-elf (TARGET_LIBGCC2_CFLAGS, LIB2FUNCS_EXCLUDE)
(LIB2FUNCS_STATIC_EXTRA, LIB2_SIDITI_CONV_FUNCS, LIBGCC)
(INSTALL_LIBGCC): Remove.
* config/stormy16/stormy16-lib2.c: Move to
../libgcc/config/stormy16/lib2.c.
* config/stormy16/stormy16-lib2-ashlsi3.c: Move to
../libgcc/config/stormy16/ashlsi3.c.
* config/stormy16/stormy16-lib2-ashrsi3.c: Move to
../libgcc/config/stormy16/ashrsi3.c.
* config/stormy16/stormy16-lib2-clzhi2.c: Move to
../libgcc/config/stormy16/clzhi2.c.
* config/stormy16/stormy16-lib2-cmpsi2.c: Move to
../libgcc/config/stormy16/cmpsi2.c.
* config/stormy16/stormy16-lib2-ctzhi2.c: Move to
../libgcc/config/stormy16/ctzhi2.c.
* config/stormy16/stormy16-lib2-divsi3.c: Move to
../libgcc/config/stormy16/divsi3.c.
* config/stormy16/stormy16-lib2-ffshi2.c: Move to
../libgcc/config/stormy16/ffshi2.c.
* config/stormy16/stormy16-lib2-lshrsi3.c: Move to
../libgcc/config/stormy16/lshrsi3.c.
* config/stormy16/stormy16-lib2-modsi3.c: Move to
../libgcc/config/stormy16/modsi3.c.
* config/stormy16/stormy16-lib2-parityhi2.c: Move to
../libgcc/config/stormy16/parityhi2.c.
* config/stormy16/stormy16-lib2-popcounthi2.c: Move to
../libgcc/config/stormy16/popcounthi2.c.
* config/stormy16/stormy16-lib2-ucmpsi2.c: Move to
../libgcc/config/stormy16/ucmpsi2.c.
* config/stormy16/stormy16-lib2-udivmodsi4.c: Move to
../libgcc/config/stormy16/udivmodsi4.c.
* config/stormy16/stormy16-lib2-udivsi3.c: Move to
../libgcc/config/stormy16/udivsi3.c.
* config/stormy16/stormy16-lib2-umodsi3.c: Move to
../libgcc/config/stormy16/umodsi3.c.
* config/stormy16/t-stormy16: Move to ../libgcc/config/t-stormy16.
* config/v850/t-v850 (INSTALL_LIBGCC): Remove.
* config/xtensa/lib2funcs.S: Move to ../libgcc/config/xtensa.
* config/xtensa/t-elf: Remove.
* config/xtensa/t-xtensa (LIB2FUNCS_EXTRA): Remove.
* config.gcc (*-*-freebsd*): Remove t-freebsd, t-freebsd-thread
from tmake_file.
(*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu,
*-*-gnu*, *-*-kopensolaris*-gnu): Remove t-linux from tmake_file.
(*-*-netbsd*): Remove t-libgcc-pic from tmake_file.
(*-*-openbsd*): Likewise.
Remove t-openbsd-thread for posix threads.
(alpha*-*-linux*): Remove alpha/t-alpha, alpha/t-ieee
from tmake_file.
(alpha*-*-freebsd*): Likewise.
(alpha*-*-netbsd*): Likewise.
(alpha*-*-openbsd*): Likewise.
(alpha64-dec-*vms*): Likewise.
(alpha*-dec-*vms*): Likewise.
(arm*-*-netbsdelf*): Remove arm/t-netbsd from tmake_file.
(arm*-*-linux*): Remove t-linux from tmake_file.
Remove arm/t-bpabi from tmake_file for arm*-*-linux-*eabi.
(arm*-*-uclinux*): Remove arm/t-bpabi from tmake_file for
arm*-*-uclinux*eabi.
(arm*-*-eabi*, arm*-*-symbianelf* ): Remove arm/t-bpabi from
tmake_file for arm*-*-eabi*.
(fr30-*-elf): Remove tmake_file.
(hppa*64*-*-linux*): Remove tmake_file.
(hppa*-*-linux*): Likewise.
(hppa[12]*-*-hpux10*): Remove pa/t-pa-hpux10, pa/t-pa-hpux from
tmake_file.
(hppa*64*-*-hpux11*): Remove pa/t-pa64, pa/t-pa-hpux from tmake_file.
(hppa[12]*-*-hpux11*): Remove pa/t-pa-hpux11, pa/t-pa-hpux from
tmake_file.
(i[34567]86-*-elf*): Remove tmake_file.
(x86_64-*-elf*): Likewise.
(i[34567]86-*-nto-qnx*): Likewise.
(i[34567]86-*-cygwin*): Remove i386/t-cygwin from tmake_file.
(i[34567]86-*-mingw*, x86_64-*-mingw*): Remove i386/t-gthr-win32
from tmake_file if using win32 threads.
(iq2000*-*-elf*): Remove tmake-file.
(microblaze*-linux*): Likewise.
(sh-*-elf*, sh[12346l]*-*-elf*, sh-*-linux*)
(sh[2346lbe]*-*-linux*, sh-*-netbsdelf*, shl*-*-netbsdelf*)
(sh5-*-netbsd*, sh5l*-*-netbsd*, sh64-*-netbsd*)
(sh64l*-*-netbsd*): Remove sh/t-netbsd from tmake_file for
sh5*-*-netbsd*, sh64*-netbsd*, *-*-netbsd.
(xtensa*-*-elf*): Remove tmake_file.
gcc/po:
* EXCLUDES (config/vxlib.c, gbl-ctors.h, libgcc2.c, libgcc2.h)
(longlong.h): Remove.
libgcc:
* configure.ac: Include ../config/picflag.m4.
(GCC_PICFLAG): Call it.
Substitute.
* configure: Regenerate.
* Makefile.in (gcc_srcdir): Remove.
(LIBGCC2_DEBUG_CFLAGS, LIBGCC2_CFLAGS, LIBGCC2_INCLUDES)
(HOST_LIBGCC2_CFLAGS, PICFLAG, LIB2FUNCS_ST, LIB2FUNCS_EXCLUDE)
(LIB2_DIVMOD_FUNCS, LIB2ADD, LIB2ADD_ST): Set.
($(lib2funcs-o), $(lib2funcs-s-o), $(lib2-divmod-o))
($(lib2-divmod-s-o)): Use $(srcdir) to refer to libgcc2.c.
Use $<.
Remove comment.
* libgcc2.c, libgcc2.h, gbl-ctors.h, longlong.h: New files.
* siditi-object.mk ($o$(objext), $(o)_s$(objext)): Use $(srcdir)
to refer to libgcc2.c.
Use $<.
* config/darwin-64.c: New file.
* config/darwin-crt3.c: Remove comment.
* config/divmod.c, config/floatunsidf.c, config/floatunsisf.c,
config/floatunsitf.c, config/floatunsixf.c, config/udivmod.c,
config/udivmodsi4.c: New files.
* config/memcmp.c, config/memcpy.c, config/memmove.c,
config/memset.c: New files.
* config/t-crtstuff-pic (CRTSTUFF_T_CFLAGS_S): Use $(PICFLAG).
* config/t-darwin (HOST_LIBGCC2_CFLAGS): Set.
* config/t-freebsd-thread, config/t-libgcc-pic: New files.
* config/t-libunwind (HOST_LIBGCC2_CFLAGS): Set.
* config/t-openbsd-thread: New file.
* config/t-sol2 (HOST_LIBGCC2_CFLAGS): Remove.
* config/t-vxworks, config/vxlib-tls.c, config/vxlib.c: New files.
* config/alpha/gthr-posix.c, config/alpha/qrnnd.S: New files.
* config/alpha/t-alpha (LIB2ADD): Use $(srcdir) to refer to
qrnnd.S.
Adapt filename.
* config/alpha/t-osf-pthread (LIB2ADD): Use $(srcdir)/config/alpha
to refer to gthr-posix.c.
* config/alpha/t-vms (LIB2ADD): Set.
* config/alpha/vms-gcc_shell_handler.c: New file.
* config/arm/bpabi.c, config/arm/fp16.c,
config/arm/linux-atomic.c, config/arm/linux-atomic-64bit.c,
config/arm/unaligned-funcs.c: New files.
* config/arm/t-bpabi (LIB2ADD, LIB2ADD_ST): Set.
* config/arm/t-elf (HOST_LIBGCC2_CFLAGS): Set.
* config/arm/t-linux: Likewise.
* config/arm/t-linux-eabi (LIB2ADD_ST): Add.
* config/arm/t-netbsd: New file.
* config/arm/t-strongarm-elf (HOST_LIBGCC2_CFLAGS): Set.
* config/arm/t-symbian (LIB2ADD_ST): Set.
* config/avr/t-avr (LIB2FUNCS_EXCLUDE, HOST_LIBGCC2_CFLAGS): Set.
* config/bfin/t-crtstuff (CRTSTUFF_T_CFLAGS): Use $(PICFLAG).
* config/bfin/t-elf: New file.
* config/c6x/eqd.c, config/c6x/eqf.c, config/c6x/ged.c,
config/c6x/gef.c, config/c6x/gtd.c, config/c6x/gtf.c,
config/c6x/led.c, config/c6x/lef.c, config/c6x/ltd.c,
config/c6x/ltf.c: New files.
* config/c6x/t-elf (LIB2FUNCS_EXCLUDE, LIB2ADD)
(HOST_LIBGCC2_CFLAGS): Set.
* config/c6x/t-uclinux (HOST_LIBGCC2_CFLAGS): Set.
(CRTSTUFF_T_CFLAGS): Use $(PICFLAG).
* config/cris/arit.c, config/cris/mulsi3.S, config/cris/t-cris:
New files.
* config/cris/t-elfmulti (LIB2ADD_ST): Set.
* config/cris/t-linux (HOST_LIBGCC2_CFLAGS): Remove.
* config/frv/cmovd.c, config/frv/cmovh.c, config/frv/cmovw.c,
config/frv/modi.c, config/frv/uitod.c, config/frv/uitof.c,
config/frv/ulltod.c, config/frv/ulltof.c, config/frv/umodi.c: New
files.
* config/frv/t-frv (LIB2ADD): Set.
* config/frv/t-linux (CRTSTUFF_T_CFLAGS): Use $(PICFLAG).
* config/h8300/clzhi2.c, config/h8300/ctzhi2.c,
config/h8300/fixunssfsi.c, config/h8300/parityhi2.c,
config/h8300/popcounthi2.c: New files.
* config/h8300/t-h8300 (LIB2ADD, HOST_LIBGCC2_CFLAGS): Set.
* config/i386/gthr-win32.c: New file.
* config/i386/t-cygming (LIBGCC2_INCLUDES): Set.
* config/i386/t-cygwin: Likewise.
* config/i386/t-darwin, config/i386/t-darwin64,
config/i386/t-gthr-win32, config/i386/t-interix: New files.
* config/i386/t-nto (HOST_LIBGCC2_CFLAGS): Set.
(CRTSTUFF_T_CFLAGS): Use $(PICFLAG).
* config/i386/t-sol2 (CRTSTUFF_T_CFLAGS): Use $(PICFLAG).
* config/ia64/quadlib.c: New file.
* config/ia64/t-hpux (LIB2ADD): Set.
* config/ia64/t-ia64: Add comment.
* config/iq2000/lib2funcs.c, config/iq2000/t-iq2000: New files.
* config/lm32/t-uclinux (CRTSTUFF_T_CFLAGS): Use $(PICFLAG).
(HOST_LIBGCC2_CFLAGS): Append, remove -fPIC.
* config/m32c/lib2funcs.c, config/m32c/trapv.c: New files.
* config/m32c/t-m32c (LIB2ADD): Set.
* config/m32r/t-linux (HOST_LIBGCC2_CFLAGS): Set.
* config/m32r/t-m32r: Likewise.
* config/m68k/fpgnulib.c: New file.
* config/m68k/t-floatlib (LIB2ADD): Set.
(xfgnulib.c): New target.
* config/mcore/t-mcore (HOST_LIBGCC2_CFLAGS): Set.
* config/mep/lib2funcs.c, config/mep/tramp.c: New files.
* config/mep/t-mep (LIB2ADD): Set.
* config/microblaze/divsi3.asm: Rename to divsi3.S.
* config/microblaze/moddi3.asm: Rename to moddi3.S.
* config/microblaze/modsi3.asm: Rename to modsi3.S.
* config/microblaze/muldi3_hard.asm: Rename to hard.S.
* config/microblaze/mulsi3.asm: Rename to mulsi3.S.
* config/microblaze/stack_overflow_exit.asm: Rename to exit.S.
* config/microblaze/udivsi3.asm: Rename to udivsi3.S.
* config/microblaze/umodsi3.asm: Rename to umodsi3.S.
* config/microblaze/t-microblaze (LIB2ADD): Reflect this.
* config/mips/t-elf, config/mips/t-vr, config/mips/vr4120-div.S:
New files.
* config/mips/t-mips (LIB2_SIDITI_CONV_FUNCS): Set.
* config/mmix/t-mmix (HOST_LIBGCC2_CFLAGS): Set.
* config/pa/fptr.c, config/pa/lib2funcs.S,
config/pa/linux-atomic.c, config/pa/quadlib.c: New files.
* config/pa/t-linux (HOST_LIBGCC2_CFLAGS): Set.
(LIB2ADD, LIB2ADD_ST): Set.
* config/pa/t-hpux, config/pa/t-hpux10, config/pa/t-pa64: New files.
* config/pa/t-linux (HOST_LIBGCC2_CFLAGS, LIB2ADD, LIB2ADD_ST):
Set.
* config/pa/t-linux64 (LIB2ADD_ST, HOST_LIBGCC2_CFLAGS): Set.
* config/pdp11/t-pdp11: New file.
* config/picochip/libgccExtras/adddi3.S,
config/picochip/libgccExtras/ashlsi3.S,
config/picochip/libgccExtras/ashrsi3.S,
config/picochip/libgccExtras/clzsi2.S,
config/picochip/libgccExtras/cmpsi2.S,
config/picochip/libgccExtras/divmod15.S,
config/picochip/libgccExtras/divmodhi4.S,
config/picochip/libgccExtras/divmodsi4.S,
config/picochip/libgccExtras/lshrsi3.S,
config/picochip/libgccExtras/parityhi2.S,
config/picochip/libgccExtras/popcounthi2.S,
config/picochip/libgccExtras/subdi3.S,
config/picochip/libgccExtras/ucmpsi2.S,
config/picochip/libgccExtras/udivmodhi4.S,
config/picochip/libgccExtras/udivmodsi4.S: New files.
* config/picochip/t-picochip (LIB2ADD, HOST_LIBGCC2_CFLAGS)
(LIBGCC2_DEBUG_CFLAGS, RANLIB_FOR_TARGET): Set.
* config/rs6000/crtresfpr.S, config/rs6000/crtresgpr.S,
config/rs6000/crtresxfpr.S, config/rs6000/crtresxgpr.S,
config/rs6000/crtsavfpr.S, config/rs6000/crtsavgpr.S)
config/rs6000/darwin-asm.h, config/rs6000/darwin-fpsave.S,
config/rs6000/darwin-gpsave.S, config/rs6000/darwin-tramp.S,
config/rs6000/darwin-vecsave.S, config/rs6000/darwin-world.S: New
files.
* config/rs6000/t-darwin (LIB2ADD, LIB2ADD_ST)
(HOST_LIBGCC2_CFLAGS): Set.
* config/rs6000/t-darwin64: New file.
* config/rs6000/t-linux64 (HOST_LIBGCC2_CFLAGS): Set.
* config/rs6000/t-lynx, config/rs6000/t-netbsd: New files.
* config/rs6000/t-ppccomm (LIB2ADD): Add
$(srcdir)/config/rs6000/tramp.S.
(LIB2ADD_ST): Use $(srcdir)/config/rs6000 to refer to sources.
Add $(srcdir)/config/rs6000/eabi.S.
(crtsavfpr.S, crtresfpr.S, crtsavgpr.S, crtresgpr.S, crtresxfpr.S)
(crtresxgpr.S, e500crtres32gpr.S, e500crtres64gpr.S)
(e500crtres64gprctr.S, e500crtrest32gpr.S, e500crtrest64gpr.S)
(e500crtresx32gpr.S, e500crtresx64gpr.S, e500crtsav32gpr.S)
(e500crtsav64gpr.S, e500crtsav64gprctr.S, e500crtsavg32gpr.S)
(e500crtsavg64gpr.S, e500crtsavg64gprctr.S): Remove.
* config/rs6000/tramp.S: New file.
* config/s390/t-tpf: Remove.
* config/sh/linux-atomic.S: New file.
* config/sh/t-linux (LIB2ADD): Set.
(HOST_LIBGCC2_CFLAGS): Append, remove -fpic.
* config/sh/t-netbsd (LIB2ADD, HOST_LIBGCC2_CFLAGS): Set.
* config/sh/t-sh (unwind-dw2-Os-4-200.o): Use $(srcdir) to refer
to unwind-dw2.c.
(HOST_LIBGCC2_CFLAGS): Set.
* config/sparc/t-sol2 (CRTSTUFF_T_CFLAGS): Use $(PICFLAG).
* config/spu/divmodti4.c, config/spu/divv2df3.c,
config/spu/float_disf.c, config/spu/float_unsdidf.c,
config/spu/float_unsdisf.c, config/spu/float_unssidf.c,
config/spu/mfc_multi_tag_release.c,
config/spu/mfc_multi_tag_reserve.c, config/spu/mfc_tag_release.c,
config/spu/mfc_tag_reserve.c, config/spu/mfc_tag_table.c,
config/spu/multi3.c: New files.
* config/spu/t-elf (LIB2ADD, LIB2ADD_ST, LIB2_SIDITI_CONV_FUNCS)
(HOST_LIBGCC2_CFLAGS): Set.
* config/stormy16/ashlsi3.c, config/stormy16/ashrsi3.c,
config/stormy16/clzhi2.c, config/stormy16/cmpsi2.c,
config/stormy16/ctzhi2.c, config/stormy16/divsi3.c,
config/stormy16/ffshi2.c, config/stormy16/lib2.c,
config/stormy16/lshrsi3.c, config/stormy16/modsi3.c,
config/stormy16/parityhi2.c, config/stormy16/popcounthi2.c,
config/stormy16/t-stormy16, config/stormy16/ucmpsi2.c,
config/stormy16/udivmodsi4.c, config/stormy16/udivsi3.c,
config/stormy16/umodsi3.c: New files.
* config/xtensa/lib2funcs.S: New file.
* config/xtensa/t-elf (HOST_LIBGCC2_CFLAGS): Set.
* config/xtensa/t-xtensa (LIB2ADD): Set.
* config.host (*-*-darwin*): Add t-libgcc-pic to tmake_file.
(*-*-freebsd*): Add t-freebsd, t-libgcc-pic to tmake_file.
Add t-freebsd-thread to tmake_file for posix threads.
(*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu)
(*-*-gnu*, *-*-kopensolaris*-gnu): Add t-libgcc-pic to tmake_file.
(*-*-lynxos*): Likewise.
(*-*-netbsd*): Likewise.
(*-*-openbsd*): Likewise.
Add t-openbsd-thread to tmake_file for posix threads.
(*-*-solaris2*): Add t-libgcc-pic to tmake_file.
(*-*-vxworks*): Set tmake_file.
(alpha*-*-linux*): Add alpha/t-alpha, alpha/t-ieee to tmake_file.
(alpha*-*-freebsd*): Likewise.
(alpha*-*-netbsd*): Likewise.
(alpha*-*-openbsd*): Likewise.
(alpha*-dec-osf5.1*): Remove qrnnd.o, gthr-posix.o from extra_parts.
(alpha64-dec-*vms*): Add alpha/t-alpha, alpha/t-ieee to tmake_file.
(alpha*-dec-*vms*): Likewise.
(arm*-*-netbsdelf*): Add arm/t-netbsd to tmake_file.
(bfin*-elf*): Add bfin/t-elf to tmake_file.
(bfin*-uclinux*): Likewise.
(bfin*-linux-uclibc*): Likewise.
(crisv32-*-elf): Add cris/t-cris to tmake_file.
(crisv32-*-none): Likewise.
(cris-*-elf): Likewise.
(cris-*-none): Likewise.
(cris-*-linux*, crisv32-*-linux*): Likewise.
(hppa[12]*-*-hpux10*): Add pa/t-hpux pa/t-hpux10, t-libgcc-pic to
tmake_file.
(hppa*64*-*-hpux11*): Add pa/t-hpux, pa/t-pa64, t-libgcc-pic to
tmake_file.
(hppa[12]*-*-hpux11*): Add pa/t-hpux, t-libgcc-pic to tmake_file.
(i[34567]86-*-elf*): Add t-libgcc-pic to tmake_file.
(x86_64-*-elf*): Likewise.
(i[34567]86-*-nto-qnx*): Likewise.
(i[34567]86-*-mingw*): Add i386/t-gthr-win32 to tmake_file for
win32 threads.
(x86_64-*-mingw*): Likewise.
(i[34567]86-*-interix3*): Add i386/t-interix to tmake_file.
(lm32-*-uclinux*): Add t-libgcc-pic to tmake_file.
(mipsisa32-*-elf*, mipsisa32el-*-elf*, mipsisa32r2-*-elf*)
(mipsisa32r2el-*-elf*, mipsisa64-*-elf*, mipsisa64el-*-elf*)
(mipsisa64r2-*-elf*, mipsisa64r2el-*-elf*): Add mips/t-elf to
tmake_file.
(mipsisa64sr71k-*-elf*): Likewise.
(mipsisa64sb1-*-elf*, mipsisa64sb1el-*-elf*): Likewise.
(mips-*-elf*, mipsel-*-elf*): Likewise.
(mips64-*-elf*, mips64el-*-elf*): Likewise.
(mips64orion-*-elf*, mips64orionel-*-elf*): Likewise.
(mips*-*-rtems*): Likewise.
(mips64vr-*-elf*, mips64vrel-*-elf*): Add mips/t-elf, mips/t-vr
to tmake_file.
(pdp11-*-*): Add pdp11/t-pdp11 to tmake_file.
(powerpc64-*-darwin*): Add rs6000/t-darwin64 to tmake_file.
(s390x-ibm-tpf*): Add t-libgcc-pic to tmake_file.
(spu-*-elf*): Likewise.
(tic6x-*-uclinux): Add t-libgcc-pic to tmake_file.
libquadmath:
* printf/gmp-impl.h: Adapt path to longlong.h.
From-SVN: r180774
2011-11-02 15:23:48 +00:00
Rainer Orth
45b86625d7
Move libgcc1 to toplevel libgcc
...
gcc:
* Makefile.in (LIB1ASMSRC): Don't export.
(libgcc.mvars): Don't emit LIB1ASMFUNCS, LIB1ASMSRC.
* config/arm/arm.c: Update lib1funcs.asm filename.
* config/arm/linux-eabi.h: Likewise.
* config/arm/bpabi-v6m.S, config/arm/bpabi.S,
config/arm/ieee754-df.S, config/arm/ieee754-sf.S: Move to
../libgcc/config/arm.
* config/arm/lib1funcs.asm: Move to ../libgcc/config/arm/lib1funcs.S.
* config/arm/t-arm (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
* config/arm/t-arm-elf (LIB1ASMFUNCS): Remove.
* config/arm/t-bpabi: Likewise.
* config/arm/t-linux (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
* config/arm/t-linux-eabi (LIB1ASMFUNCS): Remove.
* config/arm/t-strongarm-elf: Likewise.
* config/arm/t-symbian: Likewise.
* config/arm/t-vxworks: Likewise.
* config/arm/t-wince-pe: Likewise.
* config/avr/libgcc.S: Move to ../libgcc/config/avr.
* config/avr/t-avr (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
* config/bfin/lib1funcs.asm: Move to
../libgcc/config/bfin/lib1funcs.S.
* config/bfin/t-bfin: Remove.
* config/bfin/t-bfin-elf (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
* config/bfin/t-bfin-linux: Likewise.
* config/bfin/t-bfin-uclinux: Likewise.
* config/c6x/lib1funcs.asm: Move to
../libgcc/config/c6x/lib1funcs.S.
* config/c6x/t-c6x-elf (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
* config/fr30/lib1funcs.asm: Move to
../libgcc/config/fr30/lib1funcs.S.
* config/fr30/t-fr30 (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
* config/frv/lib1funcs.asm: Move to
../libgcc/config/frv/lib1funcs.S.
* config/frv/t-frv (CROSS_LIBGCC1, LIB1ASMSRC, LIB1ASMFUNCS): Remove.
* config/h8300/fixunssfsi.c: Update lib1funcs.asm filename.
* config/h8300/lib1funcs.asm: Move to
../libgcc/config/h8300/lib1funcs.S.
* config/h8300/t-h8300 (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
* config/i386/cygwin.asm: Move to ../libgcc/config/i386/cygwin.S.
* config/i386/t-cygming (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
* config/i386/t-interix: Likewise.
* config/ia64/lib1funcs.asm: Move to
../libgcc/config/ia64/lib1funcs.S.
* config/ia64/t-hpux (LIB1ASMFUNCS, LIBGCC1_TEST): Remove.
* config/ia64/t-ia64 (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
* config/iq2000/t-iq2000 (LIBGCC1, CROSS_LIBGCC1): Remove.
* config/m32c/m32c.c: Update m32c-lib1.S filename.
* config/m32c/m32c-lib1.S: Move to ../libgcc/config/m32c/lib1funcs.S.
* config/m32c/t-m32c (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
* config/m32r/t-linux (CROSS_LIBGCC1, LIBGCC1, LIBGCC1_TEST): Remove.
* config/m68k/lb1sf68.asm: Move to ../libgcc/config/m68k/lb1sf68.S.
* config/m68k/t-floatlib (LIB1ASMSRC, LIB1ASMFUNCS): New file.
* config/mcore/lib1.asm: Move to ../libgcc/config/mcore/lib1funcs.S.
* config/mcore/t-mcore (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
* config/mep/mep-lib1.asm: Move to ../libgcc/config/mep/lib1funcs.S.
* config/mep/t-mep (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
* config/mips/mips16.S: Move to ../libgcc/config/mips.
* config/mips/t-libgcc-mips16: Remove.
* config/mips/t-sr71k (LIBGCC1, CROSS_LIBGCC1): Remove.
* config/pa/milli64.S: Move to ../libgcc/config/pa.
* config/pa/t-linux (LIB1ASMFUNCS, LIB1ASMSRC): Remove.
* config/pa/t-linux64: Likewise.
* config/picochip/libgccExtras/fake_libgcc.asm: Move to
../libgcc/config/picochip/lib1funcs.S.
* config/picochip/t-picochip (LIB1ASMFUNCS, LIB1ASMSRC): Remove.
* config/sh/lib1funcs.asm: Move to ../libgcc/config/sh/lib1funcs.S.
* config/sh/lib1funcs.h: Move to ../libgcc/config/sh.
* config/sh/sh.h: Update lib1funcs.asm filename.
* config/sh/t-linux (LIB1ASMFUNCS_CACHE): Remove.
* config/sh/t-netbsd: Likewise.
* config/sh/t-sh (LIB1ASMSRC, LIB1ASMFUNCS, LIB1ASMFUNCS_CACHE):
Remove.
* config/sh/t-sh64 (LIB1ASMFUNCS): Remove.
* config/sparc/lb1spc.asm: Move to ../libgcc/config/sparc/lb1spc.S.
* config/sparc/lb1spl.asm: Remove.
* config/sparc/t-elf (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
* config/sparc/t-leon: Likewise.
* config/spu/t-spu-elf (LIBGCC1, CROSS_LIBGCC1): Remove.
* config/v850/lib1funcs.asm: Move to ../libgcc/config/v850/lib1funcs.S.
* config/v850/t-v850 (LIB1ASMSRC, LIB1ASMFUNCS): Remove
* config/vax/lib1funcs.asm: Move to ../libgcc/config/vax/lib1funcs.S.
* config/vax/t-linux: Remove.
* config/xtensa/ieee754-df.S, config/xtensa/ieee754-sf.S: Move to
../libgcc/config/xtensa.
* config/xtensa/lib1funcs.asm: Move to
../libgcc/config/xtensa/lib1funcs.S.
* config/xtensa/t-xtensa (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
* config.gcc (bfin*-rtems*): Remove bfin/t-bfin from tmake_file.
(bfin*-*): Likewise.
(mips64*-*-linux*, mipsisa64*-*-linux*): Remove
mips/t-libgcc-mips16 from tmake_file.
(mips*-*-linux*): Likewise.
(mips*-sde-elf*): Likewise.
(mipsisa32-*-elf*, mipsisa32el-*-elf*, mipsisa32r2-*-elf*)
(mipsisa32r2el-*-elf*, mipsisa64-*-elf*, mipsisa64el-*-elf*)
(mipsisa64r2-*-elf*, mipsisa64r2el-*-elf*): Likewise.
(mipsisa64sb1-*-elf*, mipsisa64sb1el-*-elf*): Likewise.
(mips-*-elf*, mipsel-*-elf*): Likewise.
(mips64-*-elf*, mips64el-*-elf*): Likewise.
(mips64orion-*-elf*, mips64orionel-*-elf*): Likewise.
(mips*-*-rtems*): Likewise.
(mipstx39-*-elf*, mipstx39el-*-elf*): Likewise.
(vax-*-linux*): Remove vax/t-linux from tmake_file.
libgcc:
* Makefile.in ($(lib1asmfuncs-o), $(lib1asmfuncs-s-o)): Use
$(srcdir) to refer to $(LIB1ASMSRC).
Use $<.
* config/arm/bpabi-v6m.S, config/arm/bpabi.S,
config/arm/ieee754-df.S, config/arm/ieee754-sf.S,
config/arm/lib1funcs.S: New files.
* config/arm/libunwind.S [!__symbian__]: Use lib1funcs.S.
* config/arm/t-arm: New file.
* config/arm/t-bpabi (LIB1ASMFUNCS): Set.
* config/arm/t-elf, config/arm/t-linux, config/arm/t-linux-eabi,
config/arm/t-strongarm-elf: New files.
* config/arm/t-symbian (LIB1ASMFUNCS): Set.
* config/arm/t-vxworks, config/arm/t-wince-pe: New files.
* config/avr/lib1funcs.S: New file.
* config/avr/t-avr (LIB1ASMSRC, LIB1ASMFUNCS): Set.
* config/bfin/lib1funcs.S, config/bfin/t-bfin: New files.
* config/c6x/lib1funcs.S: New file.
* config/c6x/t-elf (LIB1ASMSRC, LIB1ASMFUNCS): Set.
* config/fr30/lib1funcs.S, config/fr30/t-fr30: New files.
* config/frv/lib1funcs.S: New file.
* config/frv/t-frv (LIB1ASMSRC, LIB1ASMFUNCS): Set.
* config/h8300/lib1funcs.S, config/h8300/t-h8300: New files.
* config/i386/cygwin.S, config/i386/t-chkstk: New files.
* config/ia64/__divxf3.asm: Rename to ...
* config/ia64/__divxf3.S: ... this.
Adapt lib1funcs.asm filename.
* config/ia64/_fixtfdi.asm: Rename to ...
* config/ia64/_fixtfdi.S: ... this.
Adapt lib1funcs.asm filename.
* config/ia64/_fixunstfdi.asm: Rename to ...
* config/ia64/_fixunstfdi.S: ... this.
Adapt lib1funcs.asm filename.
* config/ia64/_floatditf.asm: Rename to ...
* config/ia64/_floatditf.S: ... this.
Adapt lib1funcs.asm filename.
* config/ia64/lib1funcs.S: New file.
* config/ia64/t-hpux (LIB1ASMFUNCS): Set.
* config/ia64/t-ia64 (LIB1ASMSRC, LIB1ASMFUNCS): Set.
* config/ia64/t-softfp-compat (libgcc1-tf-compats): Adapt suffix.
* config/m32c/lib1funcs.S, config/m32c/t-m32c: New files.
* config/m68k/lb1sf68.S, config/m68k/t-floatlib: New files.
* config/mcore/lib1funcs.S, config/mcore/t-mcore: New files.
* config/mep/lib1funcs.S: New file.
* config/mep/t-mep (LIB1ASMSRC, LIB1ASMFUNCS): Set.
* config/mips/mips16.S: New file.
* config/mips/t-mips16 (LIB1ASMSRC, LIB1ASMFUNCS): Set.
* config/pa/milli64.S: New file.
* config/pa/t-linux, config/pa/t-linux64: New files.
* config/picochip/lib1funcs.S: New file.
* config/picochip/t-picochip (LIB1ASMSRC, LIB1ASMFUNCS): Set.
* config/sh/lib1funcs.S, config/sh/lib1funcs.h: New files.
* config/sh/t-linux (LIB1ASMFUNCS_CACHE): Set.
* config/sh/t-netbsd: New file.
* config/sh/t-sh (LIB1ASMSRC, LIB1ASMFUNCS, LIB1ASMFUNCS_CACHE): Set.
Use $(srcdir) to refer to lib1funcs.S, adapt filename.
* config/sh/t-sh64: New file.
* config/sparc/lb1spc.S: New file.
* config/sparc/t-softmul (LIB1ASMSRC): Adapt sparc/lb1spc.asm
filename.
* config/v850/lib1funcs.S, config/v850/t-v850: New files.
* config/vax/lib1funcs.S, config/vax/t-linux: New files.
* config/xtensa/ieee754-df.S, config/xtensa/ieee754-sf.S,
config/xtensa/lib1funcs.S: New files.
* config/xtensa/t-xtensa (LIB1ASMSRC, LIB1ASMFUNCS): Set.
* config.host (arm-wrs-vxworks): Add arm/t-arm, arm/t-vxworks to
tmake_file.
(arm*-*-freebsd*): Add arm/t-arm, arm/t-strongarm-elf to tmake_file.
(arm*-*-netbsdelf*): Add arm/t-arm to tmake_file.
(arm*-*-linux*): Likewise.
Add arm/t-elf, arm/t-bpabi, arm/t-linux-eabi to tmake_file for
arm*-*-linux-*eabi, add arm/t-linux otherwise.
(arm*-*-uclinux*): Add arm/t-arm, arm/t-elf to tmake_file.
(arm*-*-ecos-elf): Likewise.
(arm*-*-eabi*, arm*-*-symbianelf*): Likewise.
(arm*-*-rtems*): Likewise.
(arm*-*-elf): Likewise.
(arm*-wince-pe*): Add arm/t-arm, arm/t-wince-pe to tmake_file.
(avr-*-rtems*): Add to tmake_file, add avr/t-avr.
(bfin*-elf*): Add bfin/t-bfin to tmake_file.
(bfin*-uclinux*): Likewise.
(bfin*-linux-uclibc*): Likewise.
(bfin*-rtems*): Likewise.
(bfin*-*): Likewise.
(fido-*-elf): Merge into m68k-*-elf*.
(fr30-*-elf)): Add fr30/t-fr30 to tmake_file.
(frv-*-*linux*): Add frv/t-frv to tmake_file.
(h8300-*-rtems*): Add h8300/t-h8300 to tmake_file.
(h8300-*-elf*): Likewise.
(hppa*64*-*-linux*): Add pa/t-linux, pa/t-linux64 to tmake_file.
(hppa*-*-linux*): Add pa/t-linux to tmake_file.
(i[34567]86-*-cygwin*): Add i386/t-chkstk to tmake_file.
(i[34567]86-*-mingw*): Likewise.
(x86_64-*-mingw*): Likewise.
(i[34567]86-*-interix3*): Likewise.
(ia64*-*-hpux*): Add ia64/t-ia64, ia64/t-hpux to tmake_file.
(ia64-hp-*vms*): Add ia64/t-ia64 to tmake_file.
(m68k-*-elf*): Also handle fido-*-elf.
Add m68k/t-floatlib to tmake_file.
(m68k-*-uclinux*): Add m68k/t-floatlib to tmake_file.
(m68k-*-linux*): Likewise.
(m68k-*-rtems*): Likewise.
(mcore-*-elf): Add mcore/t-mcore to tmake_file.
(sh-*-elf*, sh[12346l]*-*-elf*): Add sh/t-sh64 to tmake_file for
sh64*-*-*.
(sh-*-linux*, sh[2346lbe]*-*-linux*): Add sh/t-sh to tmake_file.
Add sh/t-sh64 to tmake_file for sh64*-*-linux*.
(sh-*-netbsdelf*, shl*-*-netbsdelf*, sh5-*-netbsd*)
(sh5l*-*-netbsd*, sh64-*-netbsd*, sh64l*-*-netbsd*): Add sh/t-sh,
sh/t-netbsd to tmake_file.
Add sh/t-sh64 to tmake_file for sh5*-*-netbsd*, sh64*-netbsd*.
(sh-*-rtems*): Add sh/t-sh to tmake_file.
(sh-wrs-vxworks): Likewise.
(sparc-*-linux*): Add sparc/t-softmul to tmake_file except for
*-leon[3-9]*.
(v850*-*-*): Add v850/t-v850 to tmake_file.
(vax-*-linux*): Add vax/t-linux to tmake_file.
(m32c-*-elf*, m32c-*-rtems*): Add m32c/t-m32c to tmake_file.
From-SVN: r180773
2011-11-02 15:03:19 +00:00
Rainer Orth
5f73c6ccf0
Move crtstuff support to toplevel libgcc
...
gcc:
* config.gcc (extra_parts): Remove.
(*-*-freebsd*): Remove extra_parts.
(*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu,
*-*-gnu*, *-*-kopensolaris*-gnu): Likewise.
(*-*-netbsd*): Remove t-libc-ok, t-netbsd from tmake_file.
Remove extra_parts for *-*-netbsd*1.[7-9]*, *-*-netbsd[2-9]*,
*-*-netbsdelf[2-9]*.
(*-*-openbsd*): Remove t-libc-ok from tmake_file.
(alpha*-*-linux*): Remove extra_parts.
(alpha*-*-freebsd*): Likewise.
(bfin*-linux-uclibc*): Likewise.
(fr30-*-elf): Likewise.
(moxie-*-elf): Likewise.
(moxie-*-uclinux*): Likewise.
(h8300-*-rtems*): Remove h8300/t-elf from tmake_file.
(h8300-*-elf*): Likewise.
(hppa*64*-*-hpux11*): Remove extra_parts.
(i[34567]86-*-elf*): Remove i386/t-i386elf, i386/t-crtstuff from
tmake_file.
(x86_64-*-elf*): Likewise.
(i[34567]86-*-freebsd*): Remove tmake_file.
(x86_64-*-freebsd*): Likewise.
(x86_64-*-netbsd*): Likewise.
(i[34567]86-*-openbsd2.*, i[34567]86-*openbsd3.[0123]): Remove
t-libc-ok from tmake_file.
(i[34567]86-*-linux*, i[34567]86-*-kfreebsd*-gnu,
i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*,
i[34567]86-*-kopensolaris*-gnu): Remove i386/t-crtstuff from tmake_file.
Remove extra_parts.
(x86_64-*-linux*, x86_64-*-kfreebsd*-gnu, x86_64-*-knetbsd*-gnu):
Remove i386/t-crtstuff from tmake_file.
(i[34567]86-*-lynxos*): Likewise.
Remove extra_parts.
(ia64*-*-elf*): Remove extra_parts.
(ia64*-*-freebsd*): Likewise.
(ia64*-*-linux*): Likewise.
(ia64-hp-*vms*): Remove ia64/t-vms from tmake_file.
(m32r-*-elf*): Remove extra_parts.
(m32rle-*-elf*): Likewise.
(m32r-*-rtems*): Likewise.
(m68k-*-elf*, fido-*-elf*): Likewise.
(m68k*-*-openbsd*): Remove t-libc-ok from tmake_file.
(m68k-*-rtems*): Remove extra_parts.
(mep-*-*): Likewise.
(microblaze*-linux*): Likewise.
(mips64*-*-linux*, mipsisa64*-*-linux*): Likewise.
(mips*-*-linux*): Likewise.
(powerpc-*-lynxos*): Likewise.
(s390x-ibm-tpf*): Likewise.
(score-*-elf): Likewise.
Remove tmake_file.
(sh-*-elf*, sh[12346l]*-*-elf*, sh-*-linux*, sh[2346lbe]*-*-linux*,
sh-*-netbsdelf*, shl*-*-netbsdelf*, sh5-*-netbsd*, sh5l*-*-netbsd*,
sh64-*-netbsd*, sh64l*-*-netbsd*): Remove sh/t-elf from tmake_file.
Remove sh/t-superh from tmake_file for sh*-superh-elf.
Remove sh/t-linux64 from tmake_file for sh64*-*-linux*.
(sh-*-rtems*): Remove sh/t-elf from tmake_file.
(sh-wrs-vxworks): Likewise.
(sparc-*-linux*): Remove extra_parts.
(sparc64-*-linux*): Likewise.
(sparc64-*-freebsd*, ultrasparc-*-freebsd*): Likewise.
(xstormy16-*-elf): Likewise.
(xtensa*-*-linux*): Remove xtensa/t-linux from tmake_file.
(am33_2.0-*-linux*): Remove extra_parts.
* configure.ac (extra_parts): Don't substitute.
* configure: Regenerate.
* crtstuff.c: Move to ../libgcc.
* Makefile.in (CRTSTUFF_CFLAGS): Remove.
(EXTRA_PARTS): Remove.
(CRTSTUFF_T_CFLAGS): Remove.
(MOSTLYCLEANFILES): Remove $(EXTRA_PARTS).
(GCC_EXTRA_PARTS): Remove.
(libgcc.mvars): Remove GCC_EXTRA_PARTS, CRTSTUFF_CFLAGS,
CRTSTUFF_T_CFLAGS, CRTSTUFF_T_CFLAGS_S.
Emit GCC_CFLAGS, INHIBIT_LIBC_CFLAGS.
($(T)crtbegin.o, $(T)crtend.o, $(T)crtbeginS.o, $(T)crtendS.o)
($(T)crtbeginT.o): Remove.
* config/alpha/t-vms (EXTRA_PARTS): Remove.
($(T)vms-dwarf2.o, $(T)vms-dwarf2eh.o): Remove.
* config/alpha/vms-dwarf2.asm: Move to
../libgcc/config/alpha/vms-dwarf2.S.
* config/alpha/vms-dwarf2eh.asm: Move to
../libgcc/config/alpha/vms-dwarf2eh.S.
* config/arm/crti.asm: Move to ../libgcc/config/arm/crti.S.
* config/arm/crtn.asm: Move to ../libgcc/config/arm/crtn.S.
* config/arm/t-arm-elf (EXTRA_MULTILIB_PARTS): Remove.
($(T)crti.o, $(T)crtn.o): Remove.
* config/arm/t-linux: Remove comment.
* config/arm/t-linux-eabi (EXTRA_MULTILIB_PARTS): Remove.
* config/arm/t-strongarm-elf (EXTRA_MULTILIB_PARTS): Remove.
($(T)crti.o, $(T)crtn.o): Remove.
* config/arm/t-symbian (EXTRA_MULTILIB_PARTS): Remove.
* config/bfin/crti.s: Move to ../libgcc/config/bfin/crti.S.
* config/bfin/crtn.s: Move to ../libgcc/config/bfin/crtn.S.
* config/bfin/crtlibid.s: Move to ../libgcc/config/bfin/crtlibid.S.
* config/bfin/t-bfin (EXTRA_PARTS): Remove.
($(T)crti.o, $(T)crtn.o): Remove.
* config/bfin/t-bfin-elf (CRTSTUFF_T_CFLAGS): Remove.
($(T)crti.o, $(T)crtn.o, $(T)crtlibid.o): Remove
(EXTRA_MULTILIB_PARTS): Remove.
* config/bfin/t-bfin-linux (CRTSTUFF_T_CFLAGS,
EXTRA_MULTILIB_PARTS): Remove.
* config/bfin/t-bfin-uclinux (CRTSTUFF_T_CFLAGS): Remove.
($(T)crtlibid.o): Remove.
(EXTRA_MULTILIB_PARTS): Remove.
* config/c6x/crti.s: Move to ../libgcc/config/c6x/crti.S.
* config/c6x/crtn.s: Move to ../libgcc/config/c6x/crtn.S.
* config/c6x/t-c6x-elf ($(T)crti.o, $(T)crtn.o): Remove.
(EXTRA_MULTILIB_PARTS): Remove.
(CRTSTUFF_T_CFLAGS, CRTSTUFF_T_CFLAGS_S): Remove.
* config/c6x/t-c6x-uclinux (CRTSTUFF_T_CFLAGS,
CRTSTUFF_T_CFLAGS_S): Remove.
* config/cris/t-elfmulti (CRTSTUFF_T_CFLAGS): Remove.
* config/cris/t-linux (CRTSTUFF_T_CFLAGS_S): Remove.
* config/fr30/crti.asm: Move to ../libgcc/config/fr30/crti.S.
* config/fr30/crtn.asm: Move to ../libgcc/config/fr30/crtn.S.
* config/fr30/t-fr30 ($(T)crti.o, $(T)crtn.o): Remove.
* config/frv/frvbegin.c, config/frv/frvend.c: Move to
../libgcc/config/frv.
* config/frv/t-frv (EXTRA_MULTILIB_PARTS): Remove.
(FRVSTUFF_CFLAGS, $(T)frvbegin$(objext), $(T)frvend$(objext)): Remove.
* config/frv/t-linux (EXTRA_MULTILIB_PARTS): Remove.
(CRTSTUFF_T_CFLAGS): Remove.
* config/h8300/crti.asm: Move to ../libgcc/config/h8300/crti.S.
* config/h8300/crtn.asm: Move to ../libgcc/config/h8300/crtn.S.
* config/h8300/t-elf: Remove.
* config/i386/cygming-crtbegin.c, config/i386/cygming-crtend.c:
Move to ../libgcc/config/i386.
* config/i386/t-crtstuff: Remove.
* config/i386/t-i386elf: Remove.
* config/i386/t-linux64 (EXTRA_MULTILIB_PARTS): Remove.
* config/i386/t-nto (CRTSTUFF_T_CFLAGS, EXTRA_PARTS): Remove.
* config/ia64/crtbegin.asm: Move to
../libgcc/config/ia64/crtbegin.S.
* config/ia64/crtend.asm: Move to
../libgcc/config/ia64/crtend.S.
* config/ia64/crti.asm: Move to ../libgcc/config/ia64/crti.S.
* config/ia64/crtn.asm: Move to ../libgcc/config/ia64/crtn.S.
* config/ia64/t-vms: Remove.
* config/ia64/vms-crtinit.asm: Move to
../libgcc/config/ia64/vms-crtinit.S.
* config/m32c/t-m32c (EXTRA_MULTILIB_PARTS): Remove.
* config/m32r/initfini.c: Move to ../libgcc/config/m32r.
* config/m32r/t-linux (CRTSTUFF_T_CFLAGS_S): Remove.
* config/m32r/t-m32r (CRTSTUFF_T_CFLAGS): Remove.
($(T)crtinit.o, $(T)crtfini.o): Remove.
(m32rx, m32r2): Remove.
(EXTRA_MULTILIB_PARTS): Remove.
* config/m68k/crti.s: Move to ../libgcc/config/m68k/crti.S.
* config/m68k/crtn.s: Move to ../libgcc/config/m68k/crtn.S.
* config/m68k/t-crtstuff: Remove.
* config/m68k/t-linux (EXTRA_MULTILIB_PARTS): Remove.
* config/m68k/t-m68kelf: Remove.
* config/m68k/t-uclinux (EXTRA_MULTILIB_PARTS): Remove.
* config/mcore/crti.asm: Move to ../libgcc/config/mcore/crti.S.
* config/mcore/crtn.asm: Move to ../libgcc/config/mcore/crtn.S.
* config/mcore/t-mcore ($(T)crti.o, $(T)crtn.o): Remove.
(EXTRA_PARTS, EXTRA_MULTILIB_PARTS): Remove.
* config/mep/t-mep (CRTSTUFF_CFLAGS): Remove.
(EXTRA_MULTILIB_PARTS): Remove.
* config/microblaze/crti.s: Move to ../libgcc/config/microblaze/crti.S.
* config/microblaze/crtn.s: Move to ../libgcc/config/microblaze/crtn.S.
* config/microblaze/t-microblaze (EXTRA_MULTILIB_PARTS,
EXTRA_PARTS): Remove.
($(T)crti$(objext), $(T)crtn$(objext)): Remove.
* config/mips/crti.asm: Move to ../libgcc/config/mips/crti.S.
* config/mips/crtn.asm: Move to ../libgcc/config/mips/crtn.S.
* config/mips/t-elf (CRTSTUFF_T_CFLAGS): Remove.
($(T)crti.o, $(T)crtn.o): Remove.
(EXTRA_MULTILIB_PARTS): Remove.
* config/mips/t-isa3264: Likewise.
* config/mips/t-linux64 (EXTRA_MULTILIB_PARTS): Remove.
* config/mips/t-r3900 (EXTRA_MULTILIB_PARTS): Remove.
(CRTSTUFF_T_CFLAGS): Remove.
* config/mips/t-sde (CRTSTUFF_T_CFLAGS): Remove.
($(T)crti.o, $(T)crtn.o): Remove.
(EXTRA_MULTILIB_PARTS): Remove.
* config/mips/t-sr71k (EXTRA_MULTILIB_PARTS, CRTSTUFF_T_CFLAGS):
Remove.
($(T)crti.o, $(T)crtn.o): Remove.
* config/mips/t-st (EXTRA_MULTILIB_PARTS): Remove.
* config/mips/t-vr (CRTSTUFF_T_CFLAGS): Remove.
(EXTRA_MULTILIB_PARTS): Remove.
($(T)crti.o, $(T)crtn.o): Remove.
* config/mmix/crti.asm: Move to ../libgcc/config/crti.S.
* config/mmix/crtn.asm: Move to ../libgcc/config/crtn.S.
* config/mmix/t-mmix (CRTSTUFF_T_CFLAGS): Remove.
* config/moxie/crti.asm, config/moxie/crtn.asm: Remove.
* config/pa/stublib.c: Move to libgcc/config/pa.
* config/pa/t-linux (CRTSTUFF_T_CFLAGS_S): Remove.
* config/pa/t-linux64 (CRTSTUFF_T_CFLAGS_S): Remove.
* config/pa/t-pa-hpux11 (LIBGCCSTUB_OBJS, stublib.c): Remove.
(pthread_default_stacksize_np-stub.o, pthread_mutex_lock-stub.o)
(pthread_mutex_unlock-stub.o, pthread_once-stub.o)
($(T)libgcc_stub.a): Remove.
* config/pa/t-pa64 (LIBGCCSTUB_OBJS, stublib.c): Remove.
(rfi-stub.o, dfi-stub.o, cxaf-stub.o, jvrc-stub.o)
(pthread_default_stacksize_np-stub.o, pthread_mutex_lock-stub.o)
(pthread_mutex_unlock-stub.o, pthread_once-stub.o)
($(T)libgcc_stub.a): Remove.
* config/rs6000/eabi-cn.asm: Move to
../../../libgcc/config/rs6000/eabi-cn.S.
* config/rs6000/eabi-ci.asm: Move to
../../../libgcc/config/rs6000/eabi-ci.S.
* config/rs6000/sol-ci.asm: Move to
../../../libgcc/config/rs6000/sol-ci.S.
* config/rs6000/sol-cn.asm: Move to
../../../libgcc/config/rs6000/sol-cn.S.
* config/rs6000/t-lynx (EXTRA_MULTILIB_PARTS): Remove.
(CRTSTUFF_T_CFLAGS, CRTSTUFF_T_CFLAGS_S): Remove.
* config/rs6000/t-netbsd (CRTSTUFF_T_CFLAGS, CRTSTUFF_T_CFLAGS_S):
Remove.
(EXTRA_MULTILIB_PARTS): Remove.
* config/rs6000/t-ppccomm (EXTRA_MULTILIB_PARTS): Remove.
(ecrti.S, ecrtn.S, ncrti.S, ncrtn.S): Remove.
($(T)ecrti$(objext), $(T)ecrtn$(objext), $(T)ncrti$(objext),
$(T)ncrtn$(objext)): Remove.
(CRTSTUFF_T_CFLAGS, CRTSTUFF_T_CFLAGS_S): Remove.
* config/rs6000/t-vxworks (EXTRA_MULTILIB_PARTS): Remove.
* config/rx/t-rx (EXTRA_MULTILIB_PARTS): Remove.
* config/score/crti.asm: Move to ../libgcc/config/score/crti.S.
* config/score/crtn.asm: Move to ../libgcc/config/score/crtn.S.
* config/score/t-score-elf: Remove.
* config/sh/crt1.asm: Move to ../libgcc/config/sh/crt1.S.
* config/sh/crti.asm: Move to ../libgcc/config/sh/crti.S.
* config/sh/crtn.asm: Move to ../libgcc/config/sh/crtn.S.
* config/sh/lib1funcs-4-300.asm: Move to
../../../libgcc/config/sh/lib1funcs-4-300.S.
* config/sh/lib1funcs-Os-4-200.asm: Move to
../libgcc/config/sh/lib1funcs-Os-4-200.S.
* config/sh/t-elf: Remove.
* config/sh/t-linux (EXTRA_MULTILIB_PARTS): Remove.
* config/sh/t-linux64: Remove.
* config/sh/t-netbsd (EXTRA_MULTILIB_PARTS): Remove.
* config/sh/t-sh ($(T)crt1.o, $(T)crti.o, $(T)crtn.o): Remove.
(IC_EXTRA_PARTS, OPT_EXTRA_PARTS, EXTRA_MULTILIB_PARTS): Remove.
($(T)ic_invalidate_array_4-100.o)
($(T)libic_invalidate_array_4-100.a)
($(T)ic_invalidate_array_4-200.o)
($(T)libic_invalidate_array_4-200.a, $(T)ic_invalidate_array_4a.o)
($(T)libic_invalidate_array_4a.a, $(T)sdivsi3_i4i-Os-4-200.o)
($(T)udivsi3_i4i-Os-4-200.o, $(T)unwind-dw2-Os-4-200.o)
($(T)libgcc-Os-4-200.a, $(T)div_table-4-300.o)
($(T)libgcc-4-300.a): Remove.
* config/sh/t-superh: Remove.
* config/sh/t-vxworks (EXTRA_MULTILIB_PARTS): Remove.
* config/sparc/t-linux64 (CRTSTUFF_T_CFLAGS): Remove.
* config/spu/cache.S: Move to ../libgcc/config/spu.
* config/spu/cachemgr.c: Move to ../libgcc/config/spu.
* config/spu/t-spu-elf (CRTSTUFF_T_CFLAGS): Remove.
(EXTRA_MULTILIB_PARTS): Remove.
($(T)cachemgr.o, $(T)cachemgr_nonatomic.o, $(T)libgcc_%.a): Remove.
($(T)cache8k.o, $(T)cache16k.o, $(T)cache32k.o, $(T)cache32k.o)
($(T)cache64k.o, $(T)cache128k.o): Remove.
* config/t-freebsd (CRTSTUFF_T_CFLAGS_S): Remove.
* config/t-libc-ok: Remove.
* config/t-linux (CRTSTUFF_T_CFLAGS_S): Remove.
* config/t-lynx (CRTSTUFF_T_CFLAGS_S): Remove.
* config/t-netbsd: Remove.
* config/t-svr4 (CRTSTUFF_T_CFLAGS_S): Remove.
* config/t-vxworks (EXTRA_MULTILIB_PARTS): Remove.
* config/vms/t-vms (VMS_EXTRA_PARTS): Remove.
($(T)vcrt0.o, $(T)pcrt0.o): Remove.
* config/vms/vms-ucrt0.c: Move to ../libgcc/config/vms.
* config/xtensa/crti.asm: Move to ../libgcc/config/xtensa/crti.S.
* config/xtensa/crtn.asm: Move to ../libgcc/config/xtensa/crtn.S.
* config/xtensa/t-elf (CRTSTUFF_T_CFLAGS, CRTSTUFF_T_CFLAGS_S):
Remove.
(EXTRA_MULTILIB_PARTS): Remove.
* config/xtensa/t-linux: Remove.
* config/xtensa/t-xtensa ($(T)crti.o, $(T)crtn.o): Remove.
gcc/po:
* EXCLUDES (crtstuff.c): Remove.
libgcc:
* crtstuff.c: New file.
* Makefile.in (CRTSTUFF_CFLAGS): Define.
(CRTSTUFF_T_CFLAGS): Define.
(extra-parts, INSTALL_PARTS): Remove conditional assignments.
(crtbegin$(objext), crtend$(objext), crtbeginS$(objext))
(crtendS$(objext), crtbeginT.o): Use $(srcdir) to refer to
crtstuff.c.
Use $<.
(crtbeginT.o): Use $(objext).
[!CUSTOM_CRTIN] (crti$(objext), crtn$(objext)): New rules.
(libgcc-extra-parts): Don't compare EXTRA_PARTS, GCC_EXTRA_PARTS.
(gcc-extra-parts): Remove.
* config.host (*-*-freebsd*): Add t-crtstuff-pic to tmake_file.
Set extra_parts.
(*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu,
*-*-gnu*): Also handle *-*-kopensolaris*-gnu.
Add t-crtstuff-pic to tmake_file.
(*-*-lynxos*): New case.
Set tmake_file, extra_parts.
(*-*-netbsd*): Add t-crtstuff-pic to tmake_file.
Set extra_parts for *-*-netbsd*1.[7-9]*, *-*-netbsd[2-9]*,
*-*-netbsdelf[2-9]*.
(*-*-openbsd*): Add t-crtstuff-pic to tmake_file.
(*-*-rtems*): Set extra_parts.
(*-*-solaris2*): Remove t-crtin from tmake_file for Solaris < 10.
(*-*-uclinux*): New case.
Set extra_parts.
(*-*-vms*): New case.
Set tmake_file, extra_parts.
(*-*-elf): Set extra_parts.
(alpha*-*-freebsd*): Add crtbeginT.o to extra_parts.
(alpha64-dec-*vms*): Append to tmake_file, remove vms/t-vms,
vms/t-vms64.
Set extra_parts.
(alpha*-dec-*vms*): Append to tmake_file, remove vms/t-vms.
Set extra_parts.
(arm*-*-freebsd*): Add t-crtin to tmake_file.
Add crtbegin.o, crtend.o, crti.o, crtn.o to extra_parts.
(arm-wrs-vxworks): Append to tmake_file.
Set extra_parts.
(arm*-*-uclinux*): Set extra_parts.
(arm*-*-ecos-elf): Likewise.
(arm*-*-eabi*, arm*-*-symbianelf*): Set extra_parts for
arm*-*-eabi*.
(arm*-*-rtems*): Set extra_parts.
(arm*-*-elf): Likewise.
(avr-*-rtems*): Clear extra_parts.
(bfin*-elf*): Add bfin/t-crtlibid, bfin/t-crtstuff to extra_parts.
Set extra_parts.
(bfin*-uclinux*): Likewise.
(bfin*-linux-uclibc*): Add bfin/t-crtstuff to tmake_file.
(bfin*-rtems*): Append to tmake_file.
Set extra_parts.
(bfin*-*): Likewise.
(crisv32-*-elf, crisv32-*-none, cris-*-elf, cris-*-none): Split into ...
(crisv32-*-elf): ... this.
(crisv32-*-none): ... this.
(cris-*-elf, cris-*-none): New cases.
Add cris/t-elfmulti to tmake_file.
(fr30-*-elf): Append to tmake_file.
Set extra_parts.
(frv-*-elf): Append to tmake_file, add frv/t-frv.
Set extra_parts.
(h8300-*-rtems*): Append to tmake_file.
Set extra_parts.
(h8300-*-elf*): Likewise.
(hppa*64*-*-hpux11*): Add pa/t-stublib, pa/t-stublib64 to tmake_file.
Set extra_parts.
(hppa[12]*-*-hpux11*): Add pa/t-stublib to tmake_file.
Set extra_parts.
(i[34567]86-*-elf*): Add i386/t-crtstuff, t-crtstuff-pic to tmake_file.
(x86_64-*-elf*): Likewise.
(i[34567]86-*-freebsd*): Add i386/t-crtstuff to tmake_file.
(x86_64-*-freebsd*): Likewise.
(x86_64-*-netbsd*): Likewise.
(i[34567]86-*-linux*): Likewise.
(i[34567]86-*-kfreebsd*-gnu, i[34567]86-*-knetbsd*-gnu)
(i[34567]86-*-gnu*, i[34567]86-*-kopensolaris*-gnu): Likewise.
(x86_64-*-linux*): Likewise.
(x86_64-*-kfreebsd*-gnu, x86_64-*-knetbsd*-gnu): Likewise.
(i[34567]86-*-lynxos*): Add t-crtstuff-pic, i386/t-crtstuff to
tmake_file.
Set extra_parts.
(i[34567]86-*-nto-qnx*): Set tmake_file, extra_parts.
(i[34567]86-*-rtems*): Append to tmake_file, remove t-crtin.
Append to extra_parts, remove crtbegin.o, crtend.o.
(ia64*-*-elf*): Append to extra_parts, remove crtbegin.o, crtend.o.
(ia64*-*-freebsd*): Append to extra_parts, remove crtbegin.o,
crtend.o, crtbeginS.o, crtendS.o.
(ia64*-*-linux*): Comment extra_parts.
(ia64-hp-*vms*): Append to tmake_file, remove vms/t-vms, vms/t-vms64.
Set extra_parts.
(iq2000*-*-elf*): Clear extra_parts.
(lm32-*-elf*, lm32-*-rtems*): Add t-crtin to tmake_file.
(lm32-*-uclinux*): Add to extra_parts, remove crtbegin.o, crtend.o
(m32r-*-elf*, m32r-*-rtems*): Split off ...
(m32r-*-rtems*): ... this.
Add m32r/t-m32r to tmake_file.
(m68k-*-elf*): Add t-crtin to tmake_file.
(m68k-*-rtems*): Add crti.o, crtn.o to extra_parts.
(mcore-*-elf): Likewise.
(microblaze*-*-*): Set extra_parts.
(mips*-sde-elf*): New case.
Set tmake_file, extra_parts.
(mipsisa32-*-elf*, mipsisa32el-*-elf*, mipsisa32r2-*-elf*)
(mipsisa32r2el-*-elf*, mipsisa64-*-elf*, mipsisa64el-*-elf*)
(mipsisa64r2-*-elf*, mipsisa64r2el-*-elf*): Add mips/t-crtstuff to
tmake_file.
Set extra_parts.
(mipsisa64sr71k-*-elf*): Likewise.
(mipsisa64sb1-*-elf*, mipsisa64sb1el-*-elf*): Likewise.
(mips-*-elf*, mipsel-*-elf*): Likewise.
(mips64-*-elf*, mips64el-*-elf*): Likewise.
(mips64vr-*-elf*, mips64vrel-*-elf*): Likewise.
(mips64orion-*-elf*, mips64orionel-*-elf*): Likewise.
(mips*-*-rtems*): Likewise.
(mipstx39-*-elf*, mipstx39el-*-elf*): Likewise.
(moxie-*-*): Split into ...
(moxie-*-elf, moxie-*-uclinux*): ... this.
Add to extra_parts, remove crtbegin.o, crtend.o.
(moxie-*-rtems*): New case.
Set tmake_file.
Clear extra_parts.
(powerpc-*-freebsd*): Add rs6000/t-crtstuff to tmake_file.
Set extra_parts.
(powerpc-*-netbsd*): Add rs6000/t-netbsd to tmake_file.
(powerpc-*-eabispe*): Add rs6000/t-crtstuff, t-crtstuff-pic to
tmake_file.
Set extra_parts.
(powerpc-*-eabisimaltivec*): Add to tmake_file, add rs6000/t-ppccomm,
rs6000/t-crtstuff, t-crtstuff-pic to tmake_file.
Set extra_parts.
(powerpc-*-eabisim*): Likewise.
(powerpc-*-elf*): Likewise.
(powerpc-*-eabialtivec*): Likewise.
(powerpc-xilinx-eabi*): Likewise.
(powerpc-*-eabi*): Likewise.
(powerpc-*-rtems*): Likewise.
(powerpc-*-linux*, powerpc64-*-linux*): Add rs6000/t-crtstuff to
tmake_file.
Set extra_parts.
(powerpc-*-lynxos*): Add to tmake_file.
(powerpcle-*-elf*): Add to tmake_file, add rs6000/t-ppccomm,
rs6000/t-crtstuff, t-crtstuff-pic.
Set extra_parts.
(powerpcle-*-eabisim*): Likewise.
(powerpcle-*-eabi*): Likewise.
(rx-*-elf): Remove extra_parts.
(s390x-ibm-tpf*): Set extra_parts.
(score-*-elf): Set extra_parts.
(sh-*-elf*, sh[12346l]*-*-elf*, sh-*-linux*)
(sh[2346lbe]*-*-linux*, sh-*-netbsdelf*, shl*-*-netbsdelf*)
(sh5-*-netbsd*, sh5l*-*-netbsd*, sh64-*-netbsd*)
(sh64l*-*-netbsd*): Split into ...
(sh-*-elf*, sh[12346l]*-*-elf*): ... this.
Add t-crtstuff-pic to tmake_file.
Set extra_parts.
(sh-*-rtems*): Add to tmake_file, add t-crtstuff-pic.
Set extra_parts.
(sh-wrs-vxworks): Add to tmake_file, add t-crtstuff-pic.
(sparc-*-elf*): Remove t-crtin from tmake_file.
Add to extra_parts, remove crtbegin.o, crtend.o.
(sparc-*-linux*): Add sparc/t-linux64 to tmake_file.
(sparc64-*-linux*): Likewise.
(sparc-*-rtems*): Remove sparc/t-elf from tmake_file.
Add to extra_parts, remove crtbegin.o, crtend.o.
(sparc64-*-elf*): Remove t-crtin from tmake_file.
Add to extra_parts, remove crtbegin.o, crtend.o.
(sparc64-*-rtems*): Remove t-crtin from tmake_file.
Add to extra_parts, remove crtbegin.o, crtend.o.
(sparc64-*-freebsd*, ultrasparc-*-freebsd*): Add to extra_parts.
(sparc64-*-linux*): Add sparc/t-linux64 to tmake_file.
(spu-*-elf*): Add to tmake_file, add spu/t-elf.
Set extra_parts.
(tic6x-*-uclinux): Add c6x/t-uxlinux, t-crtstuff-pic to tmake_file.
Set extra_parts.
(tic6x-*-*): Change to ...
(tic6x-*-elf): ... this.
Set extra_parts.
(xtensa*-*-elf*): Add to tmake_file, add xtensa/t-elf.
Set extra_parts.
(am33_2.0-*-linux*): Add comment.
(mep*-*-*): Add mep/t-mep to tmake_file.
Set extra_parts.
* config/alpha/t-vms: New file.
* config/alpha/vms-dwarf2.S, config/alpha/vms-dwarf2eh.S: New files.
* config/arm/crti.S, config/arm/crtn.S: New files.
* config/bfin/crti.S, config/bfin/crtn.S: New files.
* config/bfin/crtlibid.S: New file.
* config/bfin/t-crtlibid, config/bfin/t-crtstuff: New files.
* config/c6x/crti.S, config/c6x/crtn.S: New files.
* config/c6x/t-elf (CUSTOM_CRTIN): Set.
(crti.o, crtin.o): New rules.
(CRTSTUFF_T_CFLAGS, CRTSTUFF_T_CFLAGS_S): Set.
* config/c6x/t-uclinux: New file.
* config/cris/t-elfmulti: New file.
* config/cris/t-linux (CRTSTUFF_T_CFLAGS_S): Set.
* config/fr30/crti.S, config/fr30/crtn.S: New files.
* config/frv/frvbegin.c, config/frv/frvend.c: New files.
* config/frv/t-frv: New file.
* config/frv/t-linux (CRTSTUFF_T_CFLAGS): Set.
* config/h8300/crti.S, config/h8300/crtn.S: New files.
* config/i386/cygming-crtbegin.c, config/i386/cygming-crtend.c:
New files.
* config/i386/t-cygming (crtbegin.o, crtend.o): Use $(srcdir) to
refer to cygming-crtbegin.c, cygming-crtend.c.
Use $<.
* config/i386/t-nto: New file.
* config/ia64/crtbegin.S, config/ia64/crtend.S: New files.
* config/ia64/crti.S, config/ia64/crtn.S: New files.
* config/ia64/t-ia64 (crtbegin.o, crtend.o, crtbeginS.o,
crtendS.o): Use $(srcdir) to refer to crtbegin.S, crtend.S.
Use .S extension.
Use $<.
* config/ia64/t-vms (CRTSTUFF_T_CFLAGS, CRTSTUFF_T_CFLAGS_S): Set.
(crtinitS.o): New rule.
* config/ia64/vms-crtinit.S: New file.
* config/lm32/t-elf ($(T)crti.o, $(T)crtn.o): Remove.
* config/m32r/initfini.c: New file.
* config/m32r/t-linux, config/m32r/t-m32r: New files.
* config/m68k/crti.S, config/m68k/crtn.S: New files.
* config/mcore/crti.S, config/mcore/crtn.S: New files.
* config/mep/t-mep: New file.
* config/microblaze/crti.S, config/microblaze/crtn.S: New files.
* config/microblaze/t-microblaze (MULTILIB_OPTIONS): Remove.
* config/mips/crti.S, config/mips/crtn.S: New files.
* config/mips/t-crtstuff: New file.
* config/mmix/crti.S, config/mmix/crtn.S: New files.
* config/mmix/t-mmix (CRTSTUFF_T_CFLAGS): Set.
(CUSTOM_CRTIN): Set.
($(T)crti.o, $(T)crtn.o): Remove $(T),
dependencies.
Use $(srcdir) to refer to crti.S, crtn.S.
Use .S extension, $<.
* config/moxie/crti.asm: Rename to ...
* config/moxie/crti.S: ... this.
* config/moxie/crtn.asm: Rename to ...
* config/moxie/crtn.S: ... this.
* config/moxie/t-moxie: Remove.
* config/pa/stublib.c: New file.
* config/pa/t-stublib, config/pa/t-stublib64: New files.
* config/rs6000/eabi-ci.S, config/rs6000/eabi-cn.S: New files.
* config/rs6000/sol-ci.S, config/rs6000/sol-cn.S: New files.
* config/rs6000/t-crtstuff: New file.
* config/rs6000/t-ppccomm (EXTRA_PARTS): Remove.
(ecrti.S, ecrtn.S, ncrti.S, ncrtn.S): Remove.
(ecrti$(objext)): Depend on $(srcdir)/config/rs6000/eabi-ci.S.
Make output file explicit.
(ecrtn$(objext)): Depend on $(srcdir)/config/rs6000/eabi-cn.S.
Make output file explicit.
(ncrti$(objext): Depend on $(srcdir)/config/rs6000/sol-ci.S.
Make output file explicit.
(ncrtn$(objext)): Depend on $(srcdir)/config/rs6000/sol-cn.S.
Make output file explicit.
* config/score/crti.S, config/score/crtn.S: New files.
* config/sh/crt1.S, config/sh/crti.S, config/sh/crtn.S: New files.
* config/sh/lib1funcs-4-300.S, config/sh/lib1funcs-Os-4-200.S: New
files.
* config/sh/t-sh, config/sh/t-superh: New files.
* config/sparc/t-linux64: New file.
* config/spu/cache.S, config/spu/cachemgr.c: New files.
* config/spu/t-elf (CRTSTUFF_T_CFLAGS): Set.
(cachemgr.o, cachemgr_nonatomic.o, libgcc_%.a, cache8k.o)
(cache16k.o, cache32k.o, cache64k.o, cache128k.o): New rules.
* config/t-crtin: Remove.
* config/t-crtstuff-pic: New file.
* config/t-sol2 (CUSTOM_CRTIN): Set.
(crti.o, crtn.o): New rules.
* config/vms/t-vms: New file.
* config/vms/vms-ucrt0.c: New file.
* config/xtensa/t-elf: New file.
From-SVN: r180771
2011-11-02 14:33:56 +00:00
Rainer Orth
b040f2be65
Move shlib support to toplevel libgcc
...
gcc:
PR translation/45116
* Makefile.in (slibdir): Remove, don't export.
(SHLIB_NM_FLAGS): Remove.
(libgcc.mvars): Don't emit SHLIB_LINK, SHLIB_INSTALL,
SHLIB_DLLDIR, SHLIB_EXT, SHLIB_MKMAP, SHLIB_MKMAP_OPTS,
SHLIB_MAPFILES, SHLIB_NM_FLAGS.
(DRIVER_DEFINES): Test SHLIB instead of SHLIB_LINK.
(gcc.o): Pass SHLIB instead of SHLIB_LINK.
(gccspec.o): Likewise.
(installdirs): Don't create $(DESTDIR)$(slibdir).
* configure.ac (slibdir): Remove.
* configure: Regenerate.
* libgcc-libsystem.ver: Move to ../libgcc/config.
* mkmap-flat.awk, mkmap-symver.awk: Move to ../libgcc.
* config/libgcc-glibc.ver: Move to ../libgcc/config.
* config/t-libunwind (SHLIB_LC): Remove.
* config/t-linux (SHLIB_MAPFILES): Remove.
* config/t-slibgcc-dummy: Rename to config/t-slibgcc.
* config/t-slibgcc-elf-ver: Remove.
* config/t-slibgcc-libgcc, config/t-slibgcc-nolc-override: Move to
../libgcc/config.
* config/alpha/libgcc-alpha-ldbl.ver, config/alpha/t-linux: Move
to ../libgcc/config/alpha.
* config/alpha/t-vms (shlib_version, SHLIB_EXT, SHLIB_OBJS,
SHLIB_NAME, SHLIB_MULTILIB, SHLIB_INSTALL, SHLIB_SYMVEC,
SHLIB_SYMVECX2, SHLIB_LINK): Remove.
* config/arm/libgcc-bpabi.ver: Move to ../libgcc/config/arm.
* config/arm/t-bpabi (SHLIB_MAPFILES): Remove.
* config/arm/t-netbsd (SHLIB_EXT, SHLIB_NAME, SHLIB_SONAME,
SHLIB_OBJS, SHLIB_LINK, SHLIB_INSTALL): Remove.
* config/arm/t-symbian (SHLIB_LC): Remove.
* config/bfin/libgcc-bfin.ver: Move to
../libgcc/config/bfin/libgcc-glibc.ver.
* config/bfin/t-bfin-linux (SHLIB_MAPFILES): Remove.
* config/c6x/libgcc-c6xeabi.ver: Move to
../libgcc/config/c6x/libgcc-eabi.ver.
* config/c6x/t-c6x-elf (SHLIB_MAPFILES): Remove.
* config/cris/libgcc.ver: Move to
../libgcc/config/cris/libgcc-glibc.ver.
* config/cris/t-linux (SHLIB_MAPFILES): Remove.
* config/frv/libgcc-frv.ver: Move to ../libgcc/config/frv.
* config/frv/t-linux (SHLIB_MAPFILES): Remove.
* config/i386/darwin-libgcc.10.4.ver: Move to
../libgcc/config/i386/libgcc-darwin.10.4.ver.
* config/i386/darwin-libgcc.10.5.ver: Move to
../libgcc/config/i386/libgcc-darwin.10.5.ver.
* config/i386/libgcc-glibc.ver: Move to ../libgcc/config/i386.
* config/i386/t-cygming (SHLIB_EXT, SHLIB_IMPLIB, SHLIB_SOVERSION,
SHLIB_SONAME, SHLIB_MAP, SHLIB_OBJS, SHLIB_DIR, SHLIB_SLIBDIR_QUAL)
SHLIB_PTHREAD_CFLAG, SHLIB_PTHREAD_LDFLAG, SHLIB_LINK,
SHLIB_INSTALL, SHLIB_MKMAP, SHLIB_MKMAP_OPTS, SHLIB_MAPFILES):
Remove.
* config/i386/t-cygwin (SHLIB_LC, SHLIB_EH_EXTENSION,
SHLIB_IMPLIB, SHLIB_SONAME, SHLIB_MKMAP_OPTS): Remove.
* config/i386/t-dlldir, config/i386/t-dlldir-x: Move to
../libgcc/config/i386.
* config/i386/t-dw2-eh, config/i386/t-sjlj-eh: Move to
../libgcc/config/i386.
* config/i386/t-linux: Move to ../libgcc/config/i386.
* config/i386/t-mingw-pthread: Move to ../libgcc/config/i386.
* config/i386/t-mingw-w32 (SHLIB_LC): Remove.
* config/i386/t-mingw-w64: Likewise.
* config/i386/t-mingw32: Remove.
* config/ia64/libgcc-glibc.ver, config/ia64/libgcc-ia64.ver: Move
to ../libgcc/config/ia64.
* config/ia64/t-glibc: Remove.
* config/ia64/t-hpux (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL): Remove.
* config/ia64/t-ia64 (SHLIB_MAPFILES): Remove.
* config/ia64/t-vms (shlib_version, SHLIB_EXT, SHLIB_OBJS,
SHLIB_NAME, SHLIB_MULTILIB, SHLIB_INSTALL, SHLIB_LINK): Remove.
* config/ia64/vms_symvec_libgcc_s.opt: Remove.
* config/m32r/libgcc-glibc.ver: Move to ../libgcc/config/m32r.
* config/m32r/t-linux (SHLIB_MAPFILES): Remove.
* config/m68k/t-slibgcc-elf-ver: Move to ../libgcc/config/m68k.
* config/mips/t-libgcc-mips16 (SHLIB_MAPFILES): Remove.
* config/pa/t-hpux-shlib: Move to ../libgcc/config/pa/t-slibgcc-hpux.
* config/pa/t-slibgcc-dwarf-ver, config/pa/t-slibgcc-sjsj-ver:
Move to ../libgcc/config/pa.
* config/rs6000/darwin-libgcc.10.4.ver: Move to
../libgcc/config/rs6000/libgcc-darwin.10.4.ver.
* config/rs6000/darwin-libgcc.10.5.ver: Move to
../libgcc/config/rs6000/libgcc-darwin.10.5.ver.
* config/rs6000/t-aix43 (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL,
SHLIB_LIBS, SHLIB_MKMAP, SHLIB_NM_FLAGS, AR_FLAGS_FOR_TARGET): Remove.
* config/rs6000/t-aix52: Likewise.
* config/sh/libgcc-excl.ver, config/sh/libgcc-glibc.ver: Move to
../libgcc/config/sh.
* config/sparc/libgcc-sparc-glibc.ver: Move to
../libgcc/config/sparc/libgcc-glibc.ver.
* config/sparc/t-linux: Move to ../libgcc/config/sparc.
* config/xtensa/t-linux (SHLIB_MAPFILES): Remove.
* config/xtensa/libgcc-xtensa.ver: Move to
../libgcc/config/xtensa/libgcc-glibc.ver.
* config.gcc (*-*-freebsd*): Replace t-slibgcc-elf-ver with
t-slibgcc in tmake_file.
Remove t-slibgcc-nolc-override for *-*-freebsd[34],
*-*-freebsd[34].* with pthreads.
(*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu,
*-*-knetbsd*-gnu, *-*-gnu*, *-*-kopensolaris*-gnu): Replace
t-slibgcc-elf-ver with t-slibgcc in tmake_file.
(*-*-netbsd*): Likewise.
(*-*-solaris2*): Replace t-slibgcc-dummy with t-slibgcc in tmake_file.
(*-*-*vms*): Add t-slibgcc to tmake_file.
(alpha*-*-linux*): Remove alpha/t-linux from tmake_file.
(alpha*-dec-osf5.1*): Replace t-slibgcc-dummy with t-slibgcc in
tmake_file.
(arm*-*-linux*): Remove t-slibgcc-libgcc from tmake_file for
arm*-*-linux-*eabi.
(bfin*-linux-uclibc*): Replace t-slibgcc-dummy with t-slibgcc in
tmake_file.
(crisv32-*-linux*, cris-*-linux*): Likewise.
(hppa*-*-linux*): Remove t-slibgcc-libgcc, pa/t-slibgcc-sjlj-ver,
pa/t-slibgcc-dwarf-ver from tmake_file.
(hppa[12]*-*-hpux10*): Replace pa/t-hpux-shlib with t-slibgcc in
tmake_file.
Remove pa/t-slibgcc-sjlj-ver, pa/t-slibgcc-dwarf-ver from tmake_file.
(hppa*64*-*-hpux11*): Likewise.
(hppa[12]*-*-hpux11*): Likewise.
(i[34567]86-*-darwin*): Replace t-slibgcc-dummy in t-slibgcc in
tmake_file.
(x86_64-*-darwin*): Likewise.
(i[34567]86-*-cygwin*): Remove tmake_eh_file, tmake_dlldir_file.
Add t-slibgcc to tmake_file.
(i[34567]86-*-mingw*, x86_64-*-mingw*): Likewise.
Remove i386/t-mingw32 from tmake_file unless x86_64-w64-*,
i[34567]86-w64-*.
Remove i386/t-mingw-pthread from tmake_file.
(ia64*-*-linux*): Remove ia64/t-glibc from tmake_file.
(ia64*-*-hpux*): Add t-slibgcc to tmake_file.
(ia64-hp-*vms*): Likewise.
(m32r-*-linux*): Replace t-slibgcc-elf-ver with t-slibgcc in
tmake_file.
(m32rle-*-linux*): Likewise.
(m68k-*-linux*): Remove m68k/t-slibgcc-elf-ver from tmake_file.
(microblaze*-linux*): Remove t-slibgcc-elf-ver,
t-slibgcc-nolc-override from tmake_file.
(mips-sgi-irix6.5*): Replace t-slibgcc-dummy with t-slibgcc in
tmake_file.
(powerpc-*-darwin*): Likewise.
(powerpc64-*-darwin*): Likewise.
(powerpc-*-freebsd*): Remove t-slibgcc-libgcc from tmake_file.
(powerpc-*-linux*, powerpc64-*-linux*): Likewise.
(rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Add
t-slibgcc to tmake_file.
(rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise.
(rs6000-ibm-aix5.2.*, powerpc-ibm-aix5.2.*): Likewise.
(rs6000-ibm-aix5.3.*, powerpc-ibm-aix5.3.*): Likewise.
(rs6000-ibm-aix[6789].*, powerpc-ibm-aix[6789].*): Likewise.
(sparc-*-linux*): Remove sparc/t-linux from tmake_file.
(sparc64-*-linux*): Likewise.
(tic6x-*-uclinux): Replace t-slibgcc-elf-ver with t-slibgcc in
tmake_file.
(i[34567]86-*-linux*, x86_64-*-linux*, i[34567]86-*-kfreebsd*-gnu,
x86_64-*-kfreebsd*-gnu, i[34567]86-*-gnu*): Remove i386/t-linux
from tmake_file.
gcc/cp:
* Make-lang.in (g++spec.o): Pass SHLIB instead of SHLIB_LINK.
gcc/fortran:
* Makef-lang.in (gfortranspec.o): Pass SHLIB instead of SHLIB_LINK.
gcc/go:
* Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
gcc/java:
* Make-lang.in (jvspec.o): Pass SHLIB instead of SHLIB_LINK.
libgcc:
* Makefile.in (SHLIB_NM_FLAGS): Set.
* mkmap-flat.awk, mkmap-symver.awk: New files.
* configure.ac (libgcc_cv_lib_sjlj_exceptions): Check for SjLj
exceptions.
* configure: Regenerate.
* config/libgcc-glibc.ver: New file.
* config/libgcc-libsystem.ver: New file.
* config/t-libunwind (SHLIB_LC): Set.
* config/t-linux: New file.
* config/t-slibgcc (INSTALL_SHLIB): New.
(SHLIB_INSTALL): Use it.
* config/t-slibgcc-darwin (SHLIB_MKMAP): Use $(srcdir) to refer
to mkmap-symver.awk.
(SHLIB_MAPFILES): Don't append, adapt pathname.
(SHLIB_VERPFX): Set.
* config/t-slibgcc-elf-ver (SHLIB_MKMAP): Use $(srcdir) to refer
to mkmap-symver.awk.
* config/t-slibgcc-gld-nover, config/t-slibgcc-hpux,
config/t-slibgcc-libgcc, config/t-slibgcc-vms: New files.
* config/alpha/libgcc-alpha-ldbl.ver, config/alpha/t-linux: New files.
* config/alpha/t-slibgcc-osf (SHLIB_MKMAP): Use $(srcdir) to refer
to mkmap-flat.awk.
* config/arm/t-bpabi (SHLIB_MAPFILES): Set.
* config/bfin/libgcc-glibc.ver, config/bfin/t-linux: New files.
* config/c6x/libgcc-eabi.ver, config/c6x/t-elf: New files.
* config/cris/libgcc-glibc.ver, config/cris/t-linux: New files.
* config/frv/libgcc-frv.ver, config/frv/t-linux: New files.
* config/i386/libgcc-darwin.10.4.ver,
config/i386/libgcc-darwin.10.5.ver, config/i386/libgcc-glibc.ver:
New files.
* config/i386/t-darwin: Remove.
* config/i386/t-darwin64: Likewise.
* config/i386/t-dw2-eh, config/i386/t-sjlj-eh: New files.
* config/i386/t-slibgcc-cygming, config/i386/t-cygwin,
config/i386/t-dlldir, config/i386/t-dlldir-x: New files.
* config/i386/t-linux: New file.
* config/i386/t-mingw32: New file.
* config/ia64/libgcc-glibc.ver, config/ia64/libgcc-ia64.ver: New files.
* config/ia64/t-glibc: Rename to ...
* config/ia64/t-linux: ... this.
(SHLIB_MAPFILES): Set.
* config/ia64/t-glibc-libunwind: Rename to ...
* config/ia64/t-linux-libunwind: ... this.
* config/ia64/t-ia64 (SHLIB_MAPFILES): Set.
* config/ia64/t-slibgcc-hpux: New file.
* config/m32r/libgcc-glibc.ver, config/m32r/t-linux: New files.
* config/m68k/t-slibgcc-elf-ver: New file.
* config/mips/t-mips16 (SHLIB_MAPFILES): Set.
* config/mips/t-slibgcc-irix (SHLIB_MKMAP): Use $(srcdir) to refer
to mkmap-flat.awk.
* config/pa/t-slibgcc-hpux: New file.
* config/pa/t-slibgcc-dwarf-ver, config/pa/t-slibgcc-sjsj-ver: New
files.
* config/rs6000/libgcc-darwin.10.4.ver,
config/rs6000/libgcc-darwin.10.5.ver: New files.
* config/rs6000/libgcc-ppc-glibc.ver: Rename to
config/rs6000/libgcc-glibc.ver.
* config/rs6000/libgcc-ppc64.ver: Rename to
config/rs6000/libgcc-ibm-ldouble.ver.
* config/rs6000/t-darwin (SHLIB_VERPFX): Remove.
* config/rs6000/t-ibm-ldouble (SHLIB_MAPFILES): Adapt filename.
* config/rs6000/t-ldbl128: Rename to ...
* config/rs6000/t-linux: ... this.
(SHLIB_MAPFILES): Adapt filename.
* config/rs6000/t-slibgcc-aix: New file.
* config/sh/libgcc-excl.ver, config/sh/libgcc-glibc.ver: New files.
* config/sh/t-linux (SHLIB_MAPFILES): Use $(srcdir) to refer to
libgcc-excl.ver, libgcc-glibc.ver.
(SHLIB_LINK, SHLIB_INSTALL): Remove.
* config/sparc/libgcc-glibc.ver: New file.
* config/sparc/t-linux: New file.
* config/xtensa/libgcc-glibc.ver, config/xtensa/t-linux: New files.
* config.host (*-*-freebsd*): Add t-slibgcc, t-slibgcc-gld,
t-slibgcc-elf-ver to tmake_file.
Add t-slibgcc-nolc-override to tmake_file for posix threads on
*-*-freebsd[34].
(*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu,
*-*-gnu*, *-*-kopensolaris*-gnu): Add t-slibgcc, t-slibgcc-gld,
t-slibgcc-elf-ver, t-linux to tmake_file.
(*-*-netbsd*): Add t-slibgcc, t-slibgcc-gld, t-slibgcc-elf-ver to
tmake_file.
(alpha*-*-linux*): Add alpha/t-linux to tmake_file.
(alpha64-dec-*vms*): Add t-slibgcc-vms to tmake_file.
(alpha*-dec-*vms*): Likewise.
(arm*-*-freebsd*): Append to tmake_file.
(arm*-*-netbsdelf*): Add t-slibgcc-gld-nover to tmake_file.
(arm*-*-linux*): Add t-slibgcc-libgcc to tmake_file for
arm*-*-linux-*eabi.
(arm*-*-eabi*, arm*-*-symbianelf*): Add t-slibgcc-nolc-override to
tmake_file for arm*-*-symbianelf*.
(bfin*-linux-uclibc*): Append to tmake_file, add bfin/t-linux.
(cris-*-linux*, crisv32-*-linux*): Append to tmake_file, add
cris/t-linux.
(frv-*-*linux*): Append to tmake_file, add frv/t-linux.
(hppa*-*-linux*): Add t-slibgcc-libgcc, pa/t-slibgcc-sjlj-ver,
pa/t-slibgcc-dwarf-ver to tmake_file.
(hppa[12]*-*-hpux10*): Add t-slibgcc, pa/t-slibgcc-sjlj-ver,
pa/t-slibgcc-dwarf-ver, t-slibgcc-hpux, pa/t-slibgcc-hpux to tmake_file.
(hppa*64*-*-hpux11*): Likewise.
(hppa[12]*-*-hpux11*): Likewise.
(x86_64-*-darwin*): Don't override tmake_file, but only keep
i386/t-crtpc, i386/t-crtfm.
(i[34567]86-*-cygwin*): Set tmake_eh_file, tmake_dlldir_file.
Prepend $tmake_eh_file, $tmake_dlldir_file, i386/t-slibgcc-cygming
to tmake_file.
Add i386/t-cygwin to tmake_file.
Prepent i386/t-mingw-pthread to tmake_file for posix threads.
(i[34567]86-*-mingw*): Set tmake_eh_file, tmake_dlldir_file.
Prepend $tmake_eh_file, $tmake_dlldir_file, i386/t-slibgcc-cygming
to tmake_file.
Add i386/t-mingw32 to tmake_file.
(x86_64-*-mingw*): Likewise.
(ia64*-*-freebsd*): Append to tmake_file.
(ia64*-*-linux*): Append to tmake_file.
Replace ia64/t-glibc by ia64/t-linux.
Replace ia64/t-glibc-libunwind by ia64/t-linux-libunwind if using
system libunwind.
(ia64*-*-hpux*): Add t-slibgcc, ia64/t-slibgcc-hpux,
t-slibgcc-hpux to tmake_file.
(ia64-hp-*vms*): Add t-slibgcc-vms to tmake_file.
(m32r-*-linux*): Append to tmake_file, add m32r/t-linux.
(m32rle-*-linux*): Likewise.
(m68k-*-linux*)): Add m68k/t-slibgcc-elf-ver to tmake_file unless
sjlj exceptions.
(microblaze*-linux*): New case.
Append to tmake_file, add t-slibgcc-nolc-override.
(powerpc-*-freebsd*): Add t-slibgcc-libgcc to tmake_file.
(powerpc-*-linux*, powerpc64-*-linux*): Likewise.
Replace rs6000/t-ldbl128 by rs6000/t-linux in tmake_file.
(rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Add
rs6000/t-slibgcc-aix to tmake_file.
(rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise.
(rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*): Likewise.
(sh-*-elf*, sh[12346l]*-*-elf*, sh-*-linux*)
(sh[2346lbe]*-*-linux*, sh-*-netbsdelf*, shl*-*-netbsdelf*)
(sh5-*-netbsd*, sh5l*-*-netbsd*, sh64-*-netbsd*)
(sh64l*-*-netbsd*): Add t-slibgcc-libgcc to tmake_file for
sh*-*-linux*.
(sparc-*-linux*): Append to tmake_file for *-leon*.
Add sparc/t-linux to tmake_file for non-Leon targets.
(sparc64-*-linux*): Add sparc/t-linux to tmake_file.
(tic6x-*-uclinux): New case.
Add t-slibgcc, t-slibgcc-gld, t-slibgcc-elf-ver to tmake_file.
(tic6x-*-*): Add c6x/t-elf to tmake_file.
(xtensa*-*-linux*): Append to tmake_file, add xtensa/t-linux.
(am33_2.0-*-linux*): Append to tmake_file.
(i[34567]86-*-linux*, x86_64-*-linux*, i[34567]86-*-kfreebsd*-gnu)
(i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*): Also handle
x86_64-*-kfreebsd*-gnu.
Add i386/t-linux to tmake_file.
From-SVN: r180767
2011-11-02 10:49:46 +00:00
Rainer Orth
201cdb7438
Makefile.in (UNWIND_H): Remove.
...
gcc:
* Makefile.in (UNWIND_H): Remove.
(LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED): Move to
../libgcc/Makefile.in.
(LIBUNWIND, SHLIBUNWIND_LINK, SHLIBUNWIND_INSTALL): Likewise.
(LIBUNWINDDEP): Remove.
(libgcc-support): Remove LIB2ADDEH, $(srcdir)/emutls.c dependencies.
(libgcc.mvars): Remove LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED,
LIBUNWIND, SHLIBUNWIND_LINK, SHLIBUNWIND_INSTALL.
(stmp-int-hdrs): Remove $(UNWIND_H) dependency.
Don't copy $(UNWIND_H).
* config.gcc (ia64*-*-linux*): Remove with_system_libunwind
handling.
* configure.ac (GCC_CHECK_UNWIND_GETIPINFO): Remove.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* emutls.c, unwind-c.c, unwind-compat.c, unwind-compat.h,
unwind-dw2-fde-compat.c, unwind-dw2-fde-glibc.c, unwind-dw2-fde.c,
unwind-dw2-fde.h, unwind-dw2.c, unwind-dw2.h, unwind-generic.h,
unwind-pe.h, unwind-sjlj.c, unwind.inc: Move to ../libgcc.
* unwind-dw2-fde-darwin.c: Move to ../libgcc/config.
* config/arm/libunwind.S, config/arm/pr-support.c,
config/arm/unwind-arm.c, config/arm/unwind-arm.h: Move to
../libgcc/config/arm.
* config/arm/t-bpabi (UNWIND_H, LIB2ADDEH): Remove.
* config/arm/t-symbian (UNWIND_H, LIB2ADDEH): Remove.
* config/frv/t-frv ($(T)frvbegin$(objext)): Use
$(srcdir)/../libgcc to refer to unwind-dw2-fde.h.
($(T)frvend$(objext)): Likewise.
* config/ia64/t-glibc (LIB2ADDEH): Remove.
* config/ia64/t-glibc-libunwind: Move to ../libgcc/config/ia64.
* config/ia64/fde-glibc.c, config/ia64/fde-vms.c,
config/ia64/unwind-ia64.c, config/ia64/unwind-ia64.h: Move to
../libgcc/config/ia64.
* config/ia64/t-hpux (LIB2ADDEH): Remove.
* config/ia64/t-ia64 (LIB2ADDEH): Remove.
* config/ia64/t-vms (LIB2ADDEH): Remove.
* config/ia64/vms.h (UNW_IVMS_MODE,
MD_UNW_COMPATIBLE_PERSONALITY_P): Remove.
* config/picochip/t-picochip (LIB2ADDEH): Remove.
* config/rs6000/aix.h (R_LR, MD_FROB_UPDATE_CONTEXT): Remove.
* config/rs6000/t-darwin (LIB2ADDEH): Remove.
* config/rs6000/darwin-fallback.c: Move to ../libgcc/config/rs6000.
* config/sh/t-sh ($(T)unwind-dw2-Os-4-200.o): Use
$(srcdir)/../libgcc to refer to unwinder sources.
* config/spu/t-spu-elf (LIB2ADDEH): Remove.
* config/t-darwin (LIB2ADDEH): Remove.
* config/t-freebsd (LIB2ADDEH): Remove.
* config/t-libunwind (LIB2ADDEH, LIB2ADDEHSTATIC): Remove.
* config/t-libunwind-elf: Move to ../libgcc/config.
* config/t-linux (LIB2ADDEH): Remove.
* config/t-sol2 (LIB2ADDEH): Remove.
* config/xtensa/t-xtensa (LIB2ADDEH): Remove.
* system.h (MD_FROB_UPDATE_CONTEXT): Poison.
gcc/po:
* EXCLUDES (unwind-c.c, unwind-dw2-fde-darwin.c)
(unwind-dw2-fde-glibc.c, unwind-dw2-fde.c, unwind-dw2-fde.h)
(unwind-dw2.c, unwind-pe.h, unwind-sjlj.c, unwind.h): Remove.
libgcc:
* Makefile.in (LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED): New
variables.
(LIBUNWIND, SHLIBUNWIND_LINK, SHLIBUNWIND_INSTALL): New variables.
(LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED): Add $(srcdir)/emutls.c.
(install-unwind_h): New target.
(all): Depend on it.
* config.host (unwind_header): New variable.
(*-*-freebsd*): Set tmake_file to t-eh-dw2-dip.
(*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu,
*-*-gnu*): Likewise, also for *-*-kopensolaris*-gnu.
(*-*-solaris2*): Add t-eh-dw2-dip to tmake_file.
(arm*-*-linux*): Add arm/t-bpabi for arm*-*-linux-*eabi.
Set unwind_header.
(arm*-*-uclinux*): Add arm/t-bpabi for arm*-*-uclinux*eabi.
Set unwind_header.
(arm*-*-eabi*, arm*-*-symbianelf*): Add arm/t-bpabi for
arm*-*-eabi*.
Add arm/t-symbian to tmake_file for arm*-*-symbianelf*.
Set unwind_header.
(ia64*-*-elf*): Add ia64/t-eh-ia64 to tmake_file.
(ia64*-*-freebsd*): Likewise.
(ia64*-*-linux*): Add ia64/t-glibc, ia64/t-eh-ia64, t-libunwind to
tmake_file.
Add t-libunwind-elf, ia64/t-glibc-libunwind unless
$with_system_libunwind.
(ia64*-*-hpux*): Set tmake_file.
(ia64-hp-*vms*): Add ia64/t-eh-ia64 to tmake_file.
(picochip-*-*): Set tmake_file.
(rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Set
md_unwind_header.
(rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise.
(rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*): Likewise.
(s390x-ibm-tpf*): Add t-eh-dw2-dip to tmake_file.
(xtensa*-*-elf*): Set tmake_file.
(xtensa*-*-linux*): Likewise.
* configure.ac: Include ../config/unwind_ipinfo.m4.
Call GCC_CHECK_UNWIND_GETIPINFO.
Link unwind.h to $unwind_header.
* configure: Regenerate.
* emutls.c, unwind-c.c, unwind-compat.c, unwind-compat.h,
unwind-dw2-fde-compat.c, unwind-dw2-fde-dip.c, unwind-dw2-fde.c,
unwind-dw2-fde.h, unwind-dw2.c, unwind-dw2.h, unwind-generic.h,
unwind-pe.h, unwind-sjlj.c, unwind.inc: New files.
* config/unwind-dw2-fde-darwin.c: New file.
* config/arm/libunwind.S, config/arm/pr-support.c,
config/arm/t-bpabi, config/arm/t-symbian, config/arm/unwind-arm.c,
config/arm/unwind-arm.h,: New files.
* config/ia64/fde-glibc.c, config/ia64/fde-vms.c,
config/ia64/t-eh-ia64, config/ia64/t-glibc,
config/ia64/t-glibc-libunwind, config/ia64/t-hpux,
config/ia64/t-vms, config/ia64/unwind-ia64.c,
config/ia64/unwind-ia64.h: New files.
* config/picochip/t-picochip: New file.
* config/rs6000/aix-unwind.h, config/rs6000/darwin-fallback.c: New
files.
* config/rs6000/t-darwin (LIB2ADDEH): Set.
* config/s390/t-tpf (LIB2ADDEH): Remove.
* config/t-darwin (LIB2ADDEH): Set.
* config/t-eh-dw2-dip: New file.
* config/t-libunwind, config/t-libunwind-elf: New files.
* config/t-sol2 (LIB2ADDEH): Remove.
* config/xtensa/t-xtensa: New file.
gcc/ada:
* gcc-interface/Makefile.in (raise-gcc.o): Search
$(srcdir)/../libgcc.
libgo:
* Makefile.am (AM_CFLAGS): Search $(srcdir)/../libgcc.
* Makefile.in: Regenerate.
libjava:
* configure.ac (GCC_UNWIND_INCLUDE): Rename to
LIBGCC_UNWIND_INCLUDE.
Point to $(multi_basedir)/./libjava/../libgcc.
* configure: Regenerate.
* Makefile.am (GCC_UNWIND_INCLUDE): Reflect this.
* Makefile.in: Regenerate.
libobjc:
* Makefile.in (INCLUDES): Search
$(srcdir)/$(MULTISRCTOP)../libgcc.
libstdc++-v3:
* acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Point TOPLEVEL_INCLUDES
to $(toplevel_srcdir)/libgcc.
* configure: Regenerate.
From-SVN: r177447
2011-08-05 14:37:48 +00:00
Rainer Orth
58cd1d70dd
linux.h (MD_UNWIND_SUPPORT): Remove.
...
gcc:
* config/alpha/linux.h (MD_UNWIND_SUPPORT): Remove.
* config/alpha/osf5.h (MD_UNWIND_SUPPORT): Remove.
* config/alpha/vms.h (MD_UNWIND_SUPPORT): Remove.
* config/bfin/linux.h (MD_UNWIND_SUPPORT): Remove.
* config/bfin/uclinux.h (MD_UNWIND_SUPPORT): Remove.
* config/i386/linux.h (MD_UNWIND_SUPPORT): Remove.
* config/i386/linux64.h (MD_UNWIND_SUPPORT): Remove.
* config/i386/sol2.h (MD_UNWIND_SUPPORT): Remove.
* config/i386/mingw32.h (MD_UNWIND_SUPPORT): Remove.
* config/ia64/linux.h (MD_UNWIND_SUPPORT): Remove.
* config/ia64/vms.h (MD_UNWIND_SUPPORT): Remove.
* config/m68k/linux.h (MD_UNWIND_SUPPORT): Remove.
* config/mips/linux.h (MD_UNWIND_SUPPORT): Remove.
* config/pa/pa-hpux.h (MD_UNWIND_SUPPORT): Remove.
* config/pa/pa32-linux.h (MD_UNWIND_SUPPORT): Remove.
* config/rs6000/darwin.h (MD_UNWIND_SUPPORT): Remove.
* config/rs6000/linux.h (MD_UNWIND_SUPPORT): Remove.
* config/rs6000/linux64.h (MD_UNWIND_SUPPORT): Remove.
* config/s390/linux.h (MD_UNWIND_SUPPORT): Remove.
* config/s390/tpf.h (MD_UNWIND_SUPPORT): Remove.
* config/sh/linux.h (MD_UNWIND_SUPPORT): Remove.
* config/sparc/linux.h (MD_UNWIND_SUPPORT): Remove.
* config/sparc/linux64.h (MD_UNWIND_SUPPORT): Remove.
* config/sparc/sol2.h (MD_UNWIND_SUPPORT): Remove.
* config/xtensa/linux.h (MD_UNWIND_SUPPORT): Remove.
* config/alpha/linux-unwind.h: Move to ../libgcc/config/alpha.
* config/alpha/osf5-unwind.h: Move to ../libgcc/config/alpha.
* config/alpha/vms-unwind.h: Move to ../libgcc/config/alpha.
* config/bfin/linux-unwind.h: Move to ../libgcc/config/bfin.
* config/i386/linux-unwind.h: Move to ../libgcc/config/i386.
* config/i386/sol2-unwind.h: Move to ../libgcc/config/i386.
* config/i386/w32-unwind.h: Move to ../libgcc/config/i386.
* config/ia64/linux-unwind.h: Move to ../libgcc/config/ia64.
* config/ia64/vms-unwind.h: Move to ../libgcc/config/ia64.
* config/m68k/linux-unwind.h: Move to ../libgcc/config/m68k.
* config/mips/linux-unwind.h: Move to ../libgcc/config/mips.
* config/pa/hpux-unwind.h: Move to ../libgcc/config/pa.
* config/pa/linux-unwind.h: Move to ../libgcc/config/pa.
* config/rs6000/darwin-unwind.h: Move to ../libgcc/config/rs6000.
* config/rs6000/linux-unwind.h: Move to ../libgcc/config/rs6000.
* config/s390/linux-unwind.h: Move to ../libgcc/config/s390.
* config/s390/tpf-unwind.h: Move to ../libgcc/config/s390.
* config/sh/linux-unwind.h: Move to ../libgcc/config/sh.
* config/sparc/linux-unwind.h: Move to ../libgcc/config/sparc.
* config/sparc/sol2-unwind.h: Move to ../libgcc/config/sparc.
* config/xtensa/linux-unwind.h: Move to ../libgcc/config/xtensa.
* config/darwin9.h (DARWIN_LIBSYSTEM_HAS_UNWIND): Remove.
* system.h (MD_UNWIND_SUPPORT): Poison.
* doc/tm.texi.in (Exception Handling, MD_UNWIND_SUPPORT): Remove.
* doc/tm.texi: Regenerate.
* unwind-dw2.c: Include md-unwind-support.h instead of
MD_UNWIND_SUPPORT.
* config/ia64/unwind-ia64.c: Likewise.
* config/xtensa/unwind-dw2-xtensa.c: Likewise.
libgcc:
* config/alpha/linux-unwind.h: Move from ../gcc/config/alpha.
* config/alpha/osf5-unwind.h: Move from ../gcc/config/alpha.
* config/alpha/vms-unwind.h: Move from ../gcc/config/alpha.
* config/bfin/linux-unwind.h: Move from ../gcc/config/bfin.
* config/i386/linux-unwind.h: Move from ../gcc/config/i386.
* config/i386/sol2-unwind.h: Move from ../gcc/config/i386.
* config/i386/w32-unwind.h: Move from ../gcc/config/i386.
Wrap in !__MINGW64__.
* config/ia64/linux-unwind.h: Move from ../gcc/config/ia64.
* config/ia64/vms-unwind.h: Move from ../gcc/config/ia64.
* config/m68k/linux-unwind.h: Move from ../gcc/config/m68k.
* config/mips/linux-unwind.h: Move from ../gcc/config/mips.
* config/pa/hpux-unwind.h: Move from ../gcc/config/pa.
* config/pa/linux-unwind.h: Move from ../gcc/config/pa.
* config/rs6000/darwin-unwind.h: Move from ../gcc/config/rs6000.
Wrap in !__LP64__.
* config/rs6000/linux-unwind.h: Move from ../gcc/config/rs6000.
* config/s390/linux-unwind.h: Move from ../gcc/config/s390.
* config/s390/tpf-unwind.h: Move from ../gcc/config/s390.
* config/sh/linux-unwind.h: Move from ../gcc/config/sh.
* config/sparc/linux-unwind.h: Move from ../gcc/config/sparc.
* config/sparc/sol2-unwind.h: Move from ../gcc/config/sparc.
* config/xtensa/linux-unwind.h: Move from ../gcc/config/xtensa.
* config/no-unwind.h: New file.
* config.host (md_unwind_header): Document.
Define.
(alpha*-*-linux*, alpha*-dec-osf5.1*, alpha64-dec-*vms*,
alpha*-dec-*vms*, bfin*-uclinux*, bfin*-linux-uclibc*,
hppa*-*-linux*, hppa[12]*-*-hpux10*, hppa*64*-*-hpux11*,
hppa[12]*-*-hpux11*): Set md_unwind_header.
(i[34567]86-*-linux*): Handle i[34567]86-*-kopensolaris*-gnu.
Set md_unwind_header.
(x86_64-*-linux*, i[34567]86-*-solaris2*): Set md_unwind_header.
(i[34567]86-*-cygwin*): Split from i[34567]86-*-mingw*.
(i[34567]86-*-mingw*, ia64*-*-linux*, ia64-hp-*vms*,
m68k-*-uclinux*, m68k-*-linux*, mips64*-*-linux*, mips*-*-linux*,
powerpc-*-darwin*, powerpc-*-linux*, s390-*-linux*,
s390x-*-linux*, s390x-ibm-tpf*, sh*-*-linux*, sparc-*-linux*,
sparc*-*-solaris2*, sparc64-*-linux*, xtensa*-*-linux*): Set
md_unwind_header.
* configure.ac: Link md-unwind-support.h to $md_unwind_header.
* configure: Regenerate.
From-SVN: r174613
2011-06-03 18:30:39 +00:00