2
0
mirror of https://frontier.innolan.net/github/amigaos-binutils.git synced 2026-01-12 12:36:51 +00:00
Commit Graph

141 Commits

Author SHA1 Message Date
7e9eeafb9b * libamiga.h (amiga_reloc_type): Remove target_hunk.
* amigaos.c (amiga_add_reloc): Do not cache target_hunk.
(amiga_get_reloc_upper_bound): Remove format check since this is already
done in bfd_get_reloc_upper_bound before going into the bfd.
2008-12-07 18:54:51 +00:00
1a66b4b1bf * libamiga.h (amiga_reloc_type): Switch from amiga_symbol to generic asymbol.
* amigaos.c (amiga_add_reloc): Use bfd_alloc. Reorder reloc initialization
slightly. Remove symbol casts.
2008-12-07 18:53:39 +00:00
c726353e0d * libamiga.h (amiga_symbol_type): Remove hunk_number.
* amigaos.c (amiga_get_section_by_hunk_number): Remove test for negative
hunk_numbers.
(amiga_slurp_symbol_table): Do not cache hunk_number.
2008-12-07 18:51:57 +00:00
5efbce0a00 * libamiga.h (amiga_symbol_type): Add new member.
* amigaos.c (amiga_slurp_symbol_table): Remember reference count for
HUNK_EXT entries when applicable.
(amiga_print_symbol): Replace a.out style information with more relevant
amiga specific data.
2008-12-07 18:50:15 +00:00
f9d73f7bf9 (amiga_slurp_symbol_table): Use bfd_zalloc to allocate symbol space.
(amiga_get_symtab): Terminate symbol list with NULL.
2008-12-07 18:49:02 +00:00
2f857ac23a (amiga_write_object_contents): Use bfd_get_symcount.
(amiga_write_symbols): Likewise.
(amiga_slurp_symbol_table): Likewise.
(amiga_get_symtab_upper_bound): Likewise.
(amiga_get_symtab): Likewise.
2008-12-07 18:47:58 +00:00
598ece60e9 (aout_amiga_final_link): Declare.
(get_relocated_section_contents): Use bfd_get_flavour.
(amiga_perform_reloc): Likewise.
(amiga_final_link): Likewise.
2008-12-07 18:46:58 +00:00
6e32e92ebf (get_relocated_section_contents): Merge changes of generic function between
2.9.1 and 2.14.
(amiga_final_link): Likewise.
(amiga_reloc_link_order): Likewise.
2008-12-07 18:45:56 +00:00
18829e7a7a * (md_apply_fix3): Remove broken OBJ_AMIGAHUNK specific code.
* (md_pcrel_from): Only use adjust when generating a hunk object.

This reverts r184. Afterall the old code was correct...
2008-12-07 18:44:12 +00:00
96fb56c052 (amiga_ardata_type): Add new member.
(amiga_read_ar_hdr): Strip path part from read hunk name. If object file does
not have a valid hunk name, fake an unique object name to match expectations
of eg. the GCC build machinery about extracted object names from a link lib.
2008-11-25 20:53:47 +00:00
13c70d6ec5 (amiga_ardata): Cast through void to appease GCC4.
(amiga_add_reloc): Likewise.
2008-11-25 20:50:40 +00:00
048908e339 (amiga_archive_p): Enhance link library detection by checking the filename. 2008-11-25 20:49:37 +00:00
acade3748e (MAX_NAME_SIZE): Change its value to zero which enables unlimited length of
symbol names in write_name.
(write_name): Fix 64bit bug. The old code used a structure with an embedded
long and assumed its size as 4 bytes. The new code writes all data with
single writes. Now the AmigaOS backend should really be 64bit clean.
The length of a symbol name is no longer restricted to MAX_NAME_SIZE
characters. The old behaviour can be re-enabled by setting it to a non-zero
value which will then be used as length limit.
2008-11-25 20:48:34 +00:00
47416d6915 (write_name): Make a parameter unsigned to get rid of a GCC warning.
(amiga_write_section_contents): Likewise.
2008-11-25 20:46:57 +00:00
24c5353b1a (aout_perform_reloc): Resolve undefined weak symbols against the absolute
section.
2008-11-25 20:45:59 +00:00
36ab9c5495 (amiga_write_symbols): Implement a long requested FIXME: only write a single
HUNK_EXT entry for all references to a specific symbol to reduce the size of
the created object.
2008-11-25 20:44:32 +00:00
94f06162bc (amiga_write_object_contents): Remove unnecessary cast. Use better size
calculation when writing padding.
(amiga_write_symbols): Simplify type expression. Tweak formatting.
2008-11-25 20:41:46 +00:00
ed264daf4f (determine_datadata_relocs): Fix comment.
(amiga_write_section_contents): Likewise.
(amiga_write_symbols): Likewise.
2008-11-25 20:40:30 +00:00
22ac4a8137 * amigaos.c (bfd_is_bfd_section): New macro.
(determine_datadata_relocs): Use section_ptr macros.
(amiga_write_object_contents): Likewise.
(amiga_write_symbols): Likewise.
(amiga_get_symbol_info): Likewise.
* amigaoslink.c (amiga_perform_reloc): Use section_ptr macros.
(aout_perform_reloc): Likewise.
2008-11-25 20:39:10 +00:00
cb64fb89dd (amiga_perform_reloc): Always use cached value of sym->section.
(aout_perform_reloc): Likewise.
2008-11-25 20:37:30 +00:00
bc70a333d4 (amiga_handle_rest): Tolerate a missing HUNK_END. Apparently the AmigaDOS
loader accepts such files which are created by broken crunchers.
2008-11-25 20:36:29 +00:00
39fd9226dd (amiga_write_archive_contents): Fix extracting of link library members.
(amiga_archive_p): Do not preset a BFD error condition because it might be
clobbered by later code. Order initialization of amiga_ardata.
(amiga_generic_stat_arch_elt): Use more sane 0644 as st_mode. Use the more
correct 1.1.1978 as st_mtime. Set st_size using arelt_size.
2008-11-25 20:35:22 +00:00
9a683d1b51 (amiga_write_object_contents): Use symbolic constants for hunk memory type. 2008-11-25 20:34:08 +00:00
5199e4dead (amiga_object_p,amiga_read_unit,amiga_write_object_contents): Tweak comment.
(amiga_write_object_contents): Tweak debug message and fix formatting.
(amiga_openr_next_archived_file): Fix formatting.
2008-11-25 20:33:17 +00:00
9483f19ebf * (md_estimate_size_before_relax): Disable small-code checks. 2008-11-20 17:10:34 +00:00
2d9409254e * (md_pcrel_from): Remove broken OBJ_AMIGAHUNK specific code.
* (md_apply_fix3): Do not emit fix value for a pcrel fix when generating
a hunk object.
2008-11-20 17:07:25 +00:00
d05ef800d5 * (md_relax_table): Fix formatting of AmigaOS additions.
* (m68k_ip): Likewise.
* (md_convert_frag_1): Likewise.
2008-11-20 16:54:18 +00:00
4909643937 (md_estimate_size_before_relax): Use relaxable_symbol on fragP->fr_symbol for
TAB (ABSREL, SZ_UNDEF). Remove obsolete fr_var adjustments.
2008-11-20 16:47:02 +00:00
37ef303c75 * binutils/gcc: changed the versioning of our binutils/GCC modifications to
show a "adtools build YYYYMMDD" like string instead of the old one.
2008-06-28 11:52:47 +00:00
9e48f9ca32 * binutils: minor changes to make binutiles compile for a ppc-amigaos
hosted environment.
* gcc/gcc/config/rs6000/amigaos.c: fixed some compiler warnings
2008-02-24 13:48:21 +00:00
a36c7f2ce5 * binutils/bfd/configure.in: updated the version string according to
latest changes done by Hans-Joerg.
2007-05-20 13:20:06 +00:00
decc95fcc7 Added support for generating dynamic shared object to the AmigaOS target. Most notable
changes:

- In ppc_elf_additional_program_headers, modified ret=0 to ret=1 to add an additional
  section header for dynamic linking, since we need an additional PT_LOAD for the
  separate .text section.
- In ppc_elf_create_got, removed the SEC_CODE flag from the .got section to prevent it
  from being moved into the executable section. We do not use -fpic and hence have no
  need for the blrl in the .got section.
- In ppc_elf_finish_dynamic_symbol, removed the code that makes _DYNAMIC,
  _GLOBAL_OFFSET_TABLE_ and _PROCEDURE_LINKAGE_TABLE_ absolute, since we need them
  to be relocatable.
2007-04-10 13:19:20 +00:00
740dcbc0cd - Added GENERATE_SHLIB_SCRIPT=yes to enable building of shared libraries.
- Added SHLIB_TEXT_START_ADDR=1024, although it is probably not required or even used
2007-04-10 13:14:35 +00:00
5954d73061 - resync with HEAD of CVS repo 2006-03-16 10:00:58 +00:00
d6af3b0691 applied patch to bring it in sync with latest CVS head 2006-03-16 00:07:44 +00:00
ee7d707911 applied binutils-20050713 patch 2006-03-15 23:47:57 +00:00
ec42187c38 applied binutils-20041204 patch 2006-03-15 23:38:39 +00:00
8c09c6eb7c applied BUTILS_2_14->BUTILS_AMIGA_20031201 patch 2006-03-15 23:35:05 +00:00
8a6c86a7c6 bringing binutils-2.14 into main branch 2006-03-15 23:21:32 +00:00
3e89207beb tagging binutils-2.14 2006-03-15 23:18:20 +00:00
7d10307602 - importing initial 2.14 binutiles vendor version. 2006-03-15 23:16:57 +00:00