diff options
author | Iain Sandoe <iain@codesourcery.com> | 2012-01-12 14:03:12 +0000 |
---|---|---|
committer | Iain Sandoe <iain@codesourcery.com> | 2012-01-12 14:03:12 +0000 |
commit | 50d10658eef31d1c68763d556f02954b9c7c4f00 (patch) | |
tree | dcb4c7afc7cee5e547676de8c5069101eb4ddcf1 /include/mach-o | |
parent | 0a4734dc09362b45ad88c4092fe2531d27b8d1d1 (diff) | |
download | gdb-50d10658eef31d1c68763d556f02954b9c7c4f00.zip gdb-50d10658eef31d1c68763d556f02954b9c7c4f00.tar.gz gdb-50d10658eef31d1c68763d556f02954b9c7c4f00.tar.bz2 |
add indirect_symbol to mach-o port.
bfd:
* mach-o.c (bfd_mach_o_count_indirect_symbols): New.
(bfd_mach_o_build_dysymtab_command): Populate indirect symbol table.
* mach-o.h (bfd_mach_o_asymbol): Move declaration to start of the
file. (bfd_mach_o_section): Add indirect_syms field.
gas:
* config/obj-macho.c (obj_mach_o_set_symbol_qualifier): Switch off
lazy when the symbol is private_extern.
(obj_mach_o_indirect_sym): New type.
(obj_mach_o_indirect_symbol): New.
(mach_o_pseudo_table): Use obj_mach_o_indirect_symbol.
(obj_macho_frob_label): Adjust to avoid adding bsyms for locals.
(obj_macho_frob_label): Likewise. Adjust external and comm
symbol tests.
(obj_mach_o_set_indirect_symbols): New.
(obj_mach_o_frob_file_after_relocs): New.
*config/obj-macho.h (obj_frob_file_after_relocs): Define.
(obj_mach_o_frob_file_after_relocs): Declare.
include/mach-o:
* loader.h (BFD_MACH_O_INDIRECT_SYM_LOCAL): New.
(BFD_MACH_O_INDIRECT_SYM_ABS): New
gas/testsuite:
* gas/mach-o/dysymtab-2.d: New.
* gas/mach-o/err-syms-4.s: New.
* gas/mach-o/err-syms-5.s: New.
* gas/mach-o/err-syms-6.s: New.
* gas/mach-o/symbols-6-64.d: New.
* gas/mach-o/symbols-6-64.s: New.
* gas/mach-o/symbols-6.d: New.
* gas/mach-o/symbols-6.s: New.
Diffstat (limited to 'include/mach-o')
-rw-r--r-- | include/mach-o/ChangeLog | 5 | ||||
-rw-r--r-- | include/mach-o/loader.h | 3 |
2 files changed, 8 insertions, 0 deletions
diff --git a/include/mach-o/ChangeLog b/include/mach-o/ChangeLog index 2cd71c9..ab3cc68 100644 --- a/include/mach-o/ChangeLog +++ b/include/mach-o/ChangeLog @@ -1,3 +1,8 @@ +2012-01-12 Iain Sandoe <idsandoe@googlemail.com> + + * loader.h (BFD_MACH_O_INDIRECT_SYM_LOCAL): New. + (BFD_MACH_O_INDIRECT_SYM_ABS): New + 2012-01-04 Tristan Gingold <gingold@adacore.com> * external.h (mach_o_fvmlib_command_external): New structure. diff --git a/include/mach-o/loader.h b/include/mach-o/loader.h index 824f793..1b9b15e 100644 --- a/include/mach-o/loader.h +++ b/include/mach-o/loader.h @@ -320,6 +320,9 @@ bfd_mach_o_section_attribute; #define BFD_MACH_O_N_NO_DEAD_STRIP 0x20 #define BFD_MACH_O_N_WEAK_REF 0x40 #define BFD_MACH_O_N_WEAK_DEF 0x80 + +#define BFD_MACH_O_INDIRECT_SYM_LOCAL 0x80000000 +#define BFD_MACH_O_INDIRECT_SYM_ABS 0x40000000 /* Thread constants. */ |