diff options
Diffstat (limited to 'gas/config')
-rw-r--r-- | gas/config/obj-elf.h | 7 | ||||
-rw-r--r-- | gas/config/tc-hppa.c | 41 | ||||
-rw-r--r-- | gas/config/tc-mn10300.c | 3 |
3 files changed, 24 insertions, 27 deletions
diff --git a/gas/config/obj-elf.h b/gas/config/obj-elf.h index 7070ac2..7792f79 100644 --- a/gas/config/obj-elf.h +++ b/gas/config/obj-elf.h @@ -134,13 +134,6 @@ int elf_s_get_other (symbolS *); extern asection *gdb_section; -#ifndef obj_sec_set_private_data -#define obj_sec_set_private_data(B, S) \ - if (! BFD_SEND ((B), _new_section_hook, ((B), (S)))) \ - as_fatal (_("can't allocate ELF private section data: %s"), \ - bfd_errmsg (bfd_get_error ())) -#endif - #ifndef obj_frob_file #define obj_frob_file elf_frob_file #endif diff --git a/gas/config/tc-hppa.c b/gas/config/tc-hppa.c index 8ae5a57..177e36a 100644 --- a/gas/config/tc-hppa.c +++ b/gas/config/tc-hppa.c @@ -1,6 +1,6 @@ /* tc-hppa.c -- Assemble for the PA Copyright 1989, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, - 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler. @@ -4196,36 +4196,39 @@ tc_gen_reloc (section, fixp) of two symbols. With that in mind we fill in all four relocs now and break out of the loop. */ assert (i == 1); - relocs[0]->sym_ptr_ptr = (asymbol **) &(bfd_abs_symbol); - relocs[0]->howto = - bfd_reloc_type_lookup (stdoutput, - (bfd_reloc_code_real_type) *codes[0]); + relocs[0]->sym_ptr_ptr + = (asymbol **) bfd_abs_section_ptr->symbol_ptr_ptr; + relocs[0]->howto + = bfd_reloc_type_lookup (stdoutput, + (bfd_reloc_code_real_type) *codes[0]); relocs[0]->address = fixp->fx_frag->fr_address + fixp->fx_where; relocs[0]->addend = 0; relocs[1]->sym_ptr_ptr = (asymbol **) xmalloc (sizeof (asymbol *)); *relocs[1]->sym_ptr_ptr = symbol_get_bfdsym (fixp->fx_addsy); - relocs[1]->howto = - bfd_reloc_type_lookup (stdoutput, - (bfd_reloc_code_real_type) *codes[1]); + relocs[1]->howto + = bfd_reloc_type_lookup (stdoutput, + (bfd_reloc_code_real_type) *codes[1]); relocs[1]->address = fixp->fx_frag->fr_address + fixp->fx_where; relocs[1]->addend = 0; relocs[2]->sym_ptr_ptr = (asymbol **) xmalloc (sizeof (asymbol *)); *relocs[2]->sym_ptr_ptr = symbol_get_bfdsym (fixp->fx_subsy); - relocs[2]->howto = - bfd_reloc_type_lookup (stdoutput, - (bfd_reloc_code_real_type) *codes[2]); + relocs[2]->howto + = bfd_reloc_type_lookup (stdoutput, + (bfd_reloc_code_real_type) *codes[2]); relocs[2]->address = fixp->fx_frag->fr_address + fixp->fx_where; relocs[2]->addend = 0; - relocs[3]->sym_ptr_ptr = (asymbol **) &(bfd_abs_symbol); - relocs[3]->howto = - bfd_reloc_type_lookup (stdoutput, - (bfd_reloc_code_real_type) *codes[3]); + relocs[3]->sym_ptr_ptr + = (asymbol **) bfd_abs_section_ptr->symbol_ptr_ptr; + relocs[3]->howto + = bfd_reloc_type_lookup (stdoutput, + (bfd_reloc_code_real_type) *codes[3]); relocs[3]->address = fixp->fx_frag->fr_address + fixp->fx_where; relocs[3]->addend = 0; - relocs[4]->sym_ptr_ptr = (asymbol **) &(bfd_abs_symbol); - relocs[4]->howto = - bfd_reloc_type_lookup (stdoutput, - (bfd_reloc_code_real_type) *codes[4]); + relocs[4]->sym_ptr_ptr + = (asymbol **) bfd_abs_section_ptr->symbol_ptr_ptr; + relocs[4]->howto + = bfd_reloc_type_lookup (stdoutput, + (bfd_reloc_code_real_type) *codes[4]); relocs[4]->address = fixp->fx_frag->fr_address + fixp->fx_where; relocs[4]->addend = 0; goto done; diff --git a/gas/config/tc-mn10300.c b/gas/config/tc-mn10300.c index 102c2ea..56ee06e 100644 --- a/gas/config/tc-mn10300.c +++ b/gas/config/tc-mn10300.c @@ -2407,7 +2407,8 @@ tc_gen_reloc (seg, fixp) break; default: - reloc->sym_ptr_ptr = (asymbol **) &bfd_abs_symbol; + reloc->sym_ptr_ptr + = (asymbol **) bfd_abs_section_ptr->symbol_ptr_ptr; return reloc; } } |