(EXTERN_FORCE_RELOC): Handle m68k-uclinux specially, like m68k-elf.

(RELAXABLE_SYMBOL): Use EXTERN_FORCE_RELOC instead of hard-coded test for
 TARGET_OS=elf.
This commit is contained in:
Nick Clifton 2004-01-26 18:09:30 +00:00
parent cbf0ee7967
commit 6358301e99
3 changed files with 15 additions and 5 deletions

View File

@ -1,3 +1,10 @@
2004-01-26 Bernardo Innocenti <bernie@develer.com>
* config/tc-m68k.h (EXTERN_FORCE_RELOC): Handle m68k-uclinux specially,
like m68k-elf.
* config/tc-m68k.c (RELAXABLE_SYMBOL): Use EXTERN_FORCE_RELOC instead
of hard-coded test for TARGET_OS=elf.
2004-01-24 Chris Demetriou <cgd@broadcom.com>
* config/tc-mips.c (hilo_interlocks): Change definition

View File

@ -1,6 +1,6 @@
/* tc-m68k.c -- Assemble for the m68k family
Copyright 1987, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
2000, 2001, 2002, 2003 Free Software Foundation, Inc.
2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@ -732,7 +732,7 @@ tc_coff_fix2rtype (fixP)
libraries, and we can relax any external sym. */
#define relaxable_symbol(symbol) \
(!((S_IS_EXTERNAL (symbol) && strcmp (TARGET_OS, "elf") != 0) \
(!((S_IS_EXTERNAL (symbol) && EXTERN_FORCE_RELOC) \
|| S_IS_WEAK (symbol)))
/* Compute the relocation code for a fixup of SIZE bytes, using pc

View File

@ -1,6 +1,6 @@
/* This file is tc-m68k.h
Copyright 1987, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
1998, 1999, 2000, 2001, 2002, 2003
1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@ -169,8 +169,11 @@ while (0)
#define tc_fix_adjustable(X) tc_m68k_fix_adjustable(X)
extern int tc_m68k_fix_adjustable PARAMS ((struct fix *));
/* Target *-*-elf implies an embedded target. No shared libs. */
#define EXTERN_FORCE_RELOC (strcmp (TARGET_OS, "elf") != 0)
/* Target *-*-elf implies an embedded target. No shared libs.
*-*-uclinux also requires special casing to prevent GAS from
generating unsupported R_68K_PC16 relocs. */
#define EXTERN_FORCE_RELOC \
((strcmp (TARGET_OS, "elf") != 0) && (strcmp (TARGET_OS, "uclinux") != 0))
/* Values passed to md_apply_fix3 don't include symbol values. */
#define MD_APPLY_SYM_VALUE(FIX) 0