Browse Source

For COFF targets, make sure F_RELFLG is set exactly when no relocs are present,

instead of making it depend solely on the target CPU.
gdb-4_18-branch
Ken Raeburn 32 years ago
parent
commit
460a34e851
  1. 5
      gas/config/obj-coff.c
  2. 20
      gas/config/tc-h8300.h
  3. 1
      gas/config/tc-h8500.h
  4. 1
      gas/config/tc-rce.h

5
gas/config/obj-coff.c

@ -22,6 +22,11 @@
#include "obstack.h" #include "obstack.h"
#include "subsegs.h" #include "subsegs.h"
/* I think this is probably always correct. */
#ifndef KEEP_RELOC_INFO
#define KEEP_RELOC_INFO
#endif
const char *s_get_name PARAMS ((symbolS * s)); const char *s_get_name PARAMS ((symbolS * s));
static symbolS *def_symbol_in_progress; static symbolS *def_symbol_in_progress;

20
gas/config/tc-h8300.h

@ -1,19 +1,19 @@
/* This file is tc-h8300.h /* This file is tc-h8300.h
Copyright (C) 1987-1992 Free Software Foundation, Inc. Copyright (C) 1987-1992 Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler. This file is part of GAS, the GNU Assembler.
GAS is free software; you can redistribute it and/or modify GAS is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option) the Free Software Foundation; either version 2, or (at your option)
any later version. any later version.
GAS is distributed in the hope that it will be useful, GAS is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with GAS; see the file COPYING. If not, write to along with GAS; see the file COPYING. If not, write to
the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
@ -23,16 +23,22 @@
/* This macro translates between an internal fix and an coff reloc type */ /* This macro translates between an internal fix and an coff reloc type */
#define TC_COFF_FIX2RTYPE(fixP) abort(); #define TC_COFF_FIX2RTYPE(fixP) abort();
#define BFD_ARCH bfd_arch_h8300 #define BFD_ARCH bfd_arch_h8300
#define COFF_MAGIC 0x8300 #define COFF_MAGIC Hmode ? 0x8301 : 0x8300
#define TC_COUNT_RELOC(x) (1) #define TC_COUNT_RELOC(x) (1)
#define IGNORE_NONSTANDARD_ESCAPES
#define tc_coff_symbol_emit_hook(a) ; /* not used */
#define TC_RELOC_MANGLE(a,b,c) tc_reloc_mangle(a,b,c) #define TC_RELOC_MANGLE(a,b,c) tc_reloc_mangle(a,b,c)
#define TC_CONS_RELOC (Hmode ? R_RELLONG: R_RELWORD)
#define DO_NOT_STRIP 0 #define DO_NOT_STRIP 0
#define DO_STRIP 0 #define DO_STRIP 0
#define LISTING_HEADER "Hitachi H8/300 GAS " #define LISTING_HEADER "Hitachi H8/300 GAS "
#define NEED_FX_R_TYPE 1
#define RELOC_32 1234
extern int Hmode;
/* end of tc-h8300.h */ /* end of tc-h8300.h */

1
gas/config/tc-h8500.h

@ -35,7 +35,6 @@
#define LISTING_HEADER "Hitachi H8/500 GAS " #define LISTING_HEADER "Hitachi H8/500 GAS "
#define NEED_FX_R_TYPE 1 #define NEED_FX_R_TYPE 1
#define RELOC_32 1234 #define RELOC_32 1234
#define COFF_FLAGS 1
#define TC_START_LABEL(ch, ptr) (ch == ':' && start_label(ptr)) #define TC_START_LABEL(ch, ptr) (ch == ':' && start_label(ptr))
#define TC_COFF_SIZEMACHDEP(frag) tc_coff_sizemachdep(frag) #define TC_COFF_SIZEMACHDEP(frag) tc_coff_sizemachdep(frag)

1
gas/config/tc-rce.h

@ -49,7 +49,6 @@
#define DO_STRIP 0 #define DO_STRIP 0
#define LISTING_HEADER "RCE Experimental GAS " #define LISTING_HEADER "RCE Experimental GAS "
#define NEED_FX_R_TYPE 1 #define NEED_FX_R_TYPE 1
#define COFF_FLAGS 1
#define TC_COFF_SIZEMACHDEP(frag) tc_coff_sizemachdep(frag) #define TC_COFF_SIZEMACHDEP(frag) tc_coff_sizemachdep(frag)
#endif #endif

Loading…
Cancel
Save