Age | Commit message (Collapse) | Author | Files | Lines |
|
* vms-alpha.c (alpha_vms_build_fixups): Write the EICP.
(alpha_vms_bfd_final_link): Explicitly forbid relocatable links.
Clear the SEC_RELOC flag.
|
|
* vms-alpha.c (alpha_vms_create_eisd_for_section): Make writable
sections with relocs.
(alpha_vms_add_fixup_lp): Set SEC_RELOC flag.
(alpha_vms_add_fixup_ca): Ditto.
(alpha_vms_add_fixup_qr): Ditto.
Add comments.
|
|
* vms-alpha.c (alpha_vms_create_eisd_for_section): Do not make
CODE sections writable.
|
|
* vms-alpha.c (alpha_vms_add_lw_fixup): Renamed to ...
(alpha_vms_add_fixup_lr): ... this for consistency.
(alpha_vms_add_qw_fixup): Removed.
Fix some comments.
(vms_get_symbol_info): Adjust type for unknown sections.
|
|
* vms-alpha.c (_bfd_vms_slurp_egsd): Use the canonical absolute
section for any absolute section. Remove some debugging code.
|
|
* vms-alpha.c (_bfd_vms_slurp_egsd): Do not set SEC_HAS_CONTENTS
nor SEC_RELOC for empty sections.
|
|
* vms-alpha.c (evax_section_flags): Fix flags for absolute
section. Remove useless parenthesis.
|
|
|
|
* vms-alpha.c (_bfd_vms_write_egsd): Check absolute section with
its flags. Create an absolute section if needed.
|
|
* vms-alpha.c (_bfd_vms_write_egsd): Set target_index field of
sections. Mark .vmsdebug section as SEC_DEBUGGING. Do not create
dummy psect anymore. Adjust.
(_bfd_vms_write_eeom): Adjust (use target_index instead of index)
(_bfd_vms_write_etir): Ditto.
(start_etir_or_etbt_record): Test for SEC_DEBUGGING instead of
section name. Adjust.
|
|
* vms-alpha.c (alpha_vms_write_exec): Set linktime field.
|
|
* vms-alpha.c (_bfd_vms_write_egsd): Make sname const.
|
|
* vms-alpha.c (_bfd_vms_slurp_egsd): Always set vma of absolute
sections to 0.
|
|
* vms-alpha.c (evax_bfd_print_etir): Handle ETIR__C_STO_GBL_LW.
|
|
* vms-misc.c (_bfd_vms_output_counted): Make VALUE argument const.
Adjust cast.
(_bfd_vms_output_dump): Make DATA argument const, adjust cast.
* vms.h (_bfd_vms_output_counted, _bfd_vms_output_dump): Adjust.
* vms-alpha.c (evax_section_flags): Make it const.
(vms_secflag_by_name): Remove unused ABFD argument.
Make SECTION_FLAGS and NAME arguments const. Clarify comment.
(vms_esecflag_by_name): Make SECTION_FLAGS and NAME arguments const.
(_bfd_vms_slurp_egsd): Adjust call to vms_secflag_by_name.
(_bfd_vms_write_egsd): Remove useless cast.
|
|
* vms-alpha.c (alpha_vms_bfd_final_link): Fix 64bit constant.
|
|
2010-06-01 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (struct vms_private_data_struct): Add
transfer_address field. Remove unused dst_info field.
(alpha_vms_write_exec): Use transfer_address.
(_bfd_vms_write_egsd): Add a comment about LIB$INITIALIZE.
(alpha_vms_bfd_final_link): Set transfer_address.
ld/
2010-06-01 Tristan Gingold <gingold@adacore.com>
* scripttempl/alphavms.sc: Add comments. Move $LINK$ to the
readonly output-section. Handle LIB$INITIALIZE and sections
created by gcc.
* emultempl/vms.em (vms_place_orphan): Add comments.
|
|
* vms-lib.c (credat_lo, credat_hi): New fields.
(vms_read_block): Adjust comments.
(vms_write_block): New function.
(_bfd_vms_lib_archive_p): Decode majorid once. Replace some
hard-coded values with constants. Set credat_lo and credat_hi.
(_bfd_vms_lib_mkarchive): Add argument kind.
Set ver, mhd_size and type according to kind.
(_bfd_vms_lib_alpha_mkarchive): New function.
(struct lib_index): Renamed from struct vms_index
(lib_index_cmp): Renamed from vms_index_cmp. Adjusted.
(get_idxlen): Type of idx argument adjusted. Add is_elfidx
argument and handle it.
(vms_write_index): Adjust argument idx. Handle elf indexes.
(_bfd_vms_lib_build_map): Adjust type of arguments modules and res.
(_bfd_vms_lib_write_archive_contents): Add is_elfidx variable and
use it. Handle elf indexes. Set credat.
* libbfd-in.h (_bfd_vms_lib_mkarchive): Renamed to ...
(_bfd_vms_lib_alpha_mkarchive): ... this.
* libbfd.h: Regenerated.
* vms-alpha.c (vms_alpha_vec): Adjust after previous renaming.
|
|
* vms-alpha.c: Update comments.
(alpha_vms_write_exec): Set lnkflags. Write the GST.
(alpha_vms_link_output_symbol): New function.
(alpha_vms_bfd_final_link): Generate the VMS symbol table.
Set dst_section private field.
(alpha_vms_bfd_final_link): Remove code that set dst_section.
|
|
* vms-alpha.c (struct vms_symbol_entry): Field section is
now an asection pointer. Ditto for code_section.
(_bfd_vms_slurp_egsd): Adjust for above change.
(vms_get_symbol_info): Ditto.
(alpha_vms_convert_symbol): Ditto. Remove special dwarf2 case.
Remove commented out code.
(alpha_vms_get_synthetic_symtab): Simplify thanks to the above
change.
(alpha_vms_get_sym_value): Remove struct alpha_vms_link_hash_entry
parameter. Simplify the code.
(_bfd_vms_slurp_etir): Adjust for above change.
|
|
* archive.c (_bfd_calloc_wrapper): New function.
(_bfd_add_bfd_to_archive_cache): Use it.
* configure.in: Add alpha*-*-*vms* to list of natives.
* configure: Regenerate.
* vms-misc.c: Define globalref if necessary.
(vms_convert_to_var_unix_filename): Rename to
_bfd_vms_convert_to_var_unix_filename and export.
* vms.h: Add prototype for _bfd_vms_convert_to_var_unix_filename.
* vms-alpha.c (vms_close_and_cleanup): Update invocation of
vms_convert_to_var_unix_filename.
|
|
* vms-alpha.c (add_symbol_entry): New function extrated from ...
(add_symbol): ... adjusted.
|
|
* vms-alpha.c (struct vms_private_data_struct): Add section_max
field.
(_bfd_vms_slurp_egsd): Put PSC into the sections array.
(vms_new_section_hook): Do not put section in the sections
array.
|
|
* vms-alpha.c (_bfd_vms_slurp_egsd): Fix indentation.
(alpha_vms_write_exec): Add a comment.
(_bfd_vms_write_egsd): Ditto.
(alpha_vms_convert_symbol): Remove a blank line.
|
|
* vms-alpha.c (_bfd_vms_slurp_eihs): Do not create a bfd section
for the GST.
|
|
* vms-alpha.c (_bfd_vms_slurp_eisd): Set SEC_HAS_CONTENTS and
SEC_LOAD if isect has data.
(vms_get_symbol_info): Refine the condition for 'T' type.
|
|
* vms-alpha.c (_bfd_vms_write_emh): New function.
(_bfd_vms_write_lmn): New function.
(_bfd_vms_write_eeom): Moved.
(hash_string): Likewise.
(_bfd_vms_length_hash_symbol): Likewise.
(_bfd_vms_write_ehdr): Code moved to _bfd_vms_write_emh
and _bfd_vms_write_lmn, and call these functions.
|
|
* vms-alpha.c (evax_bfd_print_dst): Handle INCR_LINUM_L.
Add details in the messages.
(evax_bfd_print_image): Change message.
|
|
2010-05-17 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c: Include esgps.h and eidc.h.
(_bfd_vms_slurp_egsd): Ignore SPSC and IDC sub-records.
(evax_bfd_print_egsd_flags): New function, extracted from ...
(evax_bfd_print_egsd): ..., calls evax_bfd_print_egsd_flags. Handles
EGSD__C_SPSC and EGSD__C_IDC.
include/vms:
2010-05-17 Tristan Gingold <gingold@adacore.com>
* eidc.h: New file.
* esgps.h: New file.
|
|
* vms-alpha.c (alpha_vms_object_p): Accept header size of 0.
(_bfd_vms_get_object_record): Handle align byte only in the
foreign case.
|
|
2010-05-03 Tristan Gingold <gingold@adacore.com>
* vms-lib.c (vms_lib_bopen): Fix the size threshold to read
selective_search flag.
Add comments.
* vms-alpha.c (alpha_vms_bfd_final_link): Create the DMT section
before output_has_begun is set.
|
|
2010-05-03 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c: Add comments.
(struct vms_private_data_struct): Remove image_autoextend field.
(dst_check_allocation): Removed.
(image_write): Remove call to dst_check_allocation.
(vms_slurp_debug): Do not set image_autoextend. Adjust section
size.
(_bfd_vms_slurp_object_records): Remove useless new_type variable.
(alpha_vms_write_exec): Use dst_section to get the dst section.
Write the dmt section.
(evax_bfd_print_image): Also print the dst size in hexa. Fix typo.
(alpha_vms_read_sections_content): Do not set image_autoextend.
include/vms/
2010-05-03 Tristan Gingold <gingold@adacore.com>
* dmt.h: Improve comments.
|
|
2010-04-30 Tristan Gingold <gingold@adacore.com>
* vms-lib.c (struct lib_tdata): Field artdata added, fields nbr_syms
and syms removed.
(struct carsym_mem): New structure.
(vms_add_index): New function.
(vms_add_indexes_from_list): New function.
(vms_traverse_index): Parameter carsym changed to carsym_mem.
Code adjusted to handle elfidx.
(vms_lib_read_index): Adjusted for vms_traverse_index changes.
Parameter NBREL is now a pointer.
(_bfd_vms_lib_archive_p): Adjust for above change. Handle ia64
archives.
(_bfd_vms_lib_mkarchive): Adjusted for changes in struct lib_tdata.
(_bfd_vms_lib_find_symbol): Ditto.
(vms_lib_bopen): Fix two typos: return FALSE in case of error,
check MHD id.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Adjust for
changes of _bfd_vms_lib_find_symbol.
include/vms
2010-04-30 Tristan Gingold <gingold@adacore.com>
* lbr.h (LBR__C_TYP_ISHSTB): Added.
(LHD_SANEID4): Renamed to ...
(LHD_SANEID6): ... this.
(LBR_MAJORID, LBR_ELFMAJORID): New macros.
(struct vms_rfa): New structure.
(struct vms_idxdef): Renamed to ...
(struct vms_idx): ... this.
(struct vms_idxdef2): Renamed to ...
(struct vms_elfidx): ... this.
(ELFIDX__WEAK, ELFIDX__GROUP, ELFIDX__LISTRFA, ELFIDX__SYMESC): New
macros.
(struct vms_lhs, struct vms_lns): New structures.
(struct vms_mhd): Add missing fields.
(MHD__C_MHDLEN): New macro.
|
|
* vms-alpha.c (alpha_vms_link_add_object_symbols): Avoid breaking
strict-aliasing rules.
|
|
* vms-alpha.c (_bfd_vms_slurp_eihd): Fix typo.
(_bfd_vms_get_object_record): Always assume there is a pad byte
for alignment.
* vms-lib.c: Add a few comments.
|
|
* Makefile.am (BFD32_BACKENDS): Remove vms-gsd.lo, vms-hdr.lo,
vms-tir.lo, vms.lo and add vms-alpha.lo
(BFD32_BACKENDS_CFILES): Remove vms-gsd.c, vms-hdr.c,
vms-tir.c, vms.c and add vms-alpha.c
* Makefile.in: Regenerate.
* configure.in (TDEFINES): Adjust file list for vms_alpha_vec.
Remove vms_vax_vec.
* configure: Regenerate.
* targets.c (vms_vax_vec): Remove the declaration.
(_bfd_target_vector): Remove vms_vax_vec.
* vms-alpha.c: New file.
* vms-gsd.c: Removed, rewritten in vms-alpha.c
* vms-hdr.c: Ditto.
* vms-tir.c: Ditto.
* vms.c: Ditto.
* vms-misc.c: Fix indentation and comments. Replace most of
#if VMS_DEBUG/vms_debug with vms_debug2.
(_bfd_vms_hash_newfunc): Moved to vms-alpha.c
(hash_string): Ditto.
(_bfd_vms_length_hash_symbol): Ditto.
(maybe_adjust_record_pointer_for_object): Ditto.
(_bfd_vms_get_object_record): Ditto.
(vms_get_remaining_object_record): Ditto.
(_bfd_vms_push): Ditto.
(_bfd_vms_pop): Ditto.
(_bfd_vms_get_header_values): Removed.
(_bfd_vms_get_first_record): Removed.
(vms_get_remaining_image_record): Removed.
(new_symbol): Removed.
(_bfd_vms_enter_symbol): Removed.
(_bfd_vms_save_sized_string): Use memcpy instead of strncpy.
(_bfd_vms_output_begin): Remove rechead parameter. Replace bfd
parameter with struct vms_rec_wr.
(_bfd_vms_output_push): Removed and replaced by ...
(_bfd_vms_output_begin_subrec): ... new function.
(_bfd_vms_output_alignment): Replace bfd parameter with
struct vms_rec_wr, and adjust.
(_bfd_vms_output_check): Ditto
(_bfd_vms_output_byte): Ditto.
(_bfd_vms_output_short): Ditto.
(_bfd_vms_output_long): Ditto.
(_bfd_vms_output_quad): Ditto.
(_bfd_vms_output_counted): Ditto.
(_bfd_vms_output_dump): Ditto.
(_bfd_vms_output_fill): Ditto.
(_bfd_vms_output_pop): Removed and replaced by ...
(_bfd_vms_output_end_subrec): ... new function.
(_bfd_vms_output_flush): Removed.
(_bfd_vms_output_align): New function.
(_bfd_vms_output_end): Add recwr parameter. Adjust for this new
parameter.
(vms_convert_to_var): New function imported from vms.c
(vms_convert_to_var_1): Ditto.
(vms_convert_to_var_unix_filename): Ditto.
(vms_get_module_name): Ditto.
(get_vms_time_string): Ditto.
(vms_time_to_time_t): Ditto.
(vms_rawtime_to_time_t): Ditto.
* vms.h: All macros for the VMS file format are now in include/vms.
Prototypes for vms.c, vms-gsd.c, vms-misc.c, vms-hdr.c, vms-tir.c
have been removed.
(struct vms_symbol_struct, struct stack_struct): Moved to vms-alpha.c
(struct fileinfo, struct srecinfo, struct lineinfo): Ditto.
(struct funcinfo, struct vms_private_data_struct): Ditto.
(struct vms_section_data_struct): Ditto.
(struct vms_rec_rd, stryct vms_rec_wr): New declarations.
(vms_get_module_name, get_vms_time_string): New declarations.
(vms_time_to_time_t, vms_rawtime_to_time_t): Ditto.
(_bfd_vms_output_begin_subrec, _bfd_vms_output_end_subrec): Ditto.
(_bfd_vms_save_sized_string, _bfd_vms_save_counted_string): Adjusted.
(_bfd_vms_output_begin, _bfd_vms_output_alignment): Ditto.
(_bfd_vms_output_end,_bfd_vms_output_check): Ditto.
(_bfd_vms_output_byte, _bfd_vms_output_short): Ditto.
(_bfd_vms_output_long, _bfd_vms_output_quad): Ditto.
(_bfd_vms_output_counted, _bfd_vms_output_dump): Ditto.
(_bfd_vms_output_fill): Ditto.
(bfd_vms_set_section_flags): Ditto.
|