aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorIain D Sandoe <iain@codesourcery.com>2012-01-12 14:03:12 +0000
committerIain D Sandoe <iain@codesourcery.com>2012-01-12 14:03:12 +0000
commit2ed2809fd61ed78a2cb5a89857de7163df183808 (patch)
treeba54adbb08cee7aa6736dcced72f3199dfc89d5f /include
parent2af8babd9325ed20b1719b7fbb36bdf86ad9af3f (diff)
downloadnewlib-2ed2809fd61ed78a2cb5a89857de7163df183808.zip
newlib-2ed2809fd61ed78a2cb5a89857de7163df183808.tar.gz
newlib-2ed2809fd61ed78a2cb5a89857de7163df183808.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')
-rw-r--r--include/mach-o/ChangeLog5
-rw-r--r--include/mach-o/loader.h3
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. */