0a22ae8eb5
R_MN10300_TLS_LD, R_MN10300_TLS_LDO, R_MN10300_TLS_GOTIE, R_MN10300_TLS_IE, R_MN10300_TLS_LE, R_MN10300_TLS_DPTMOD, R_MN10300_TLS_DTPOFF and R_MN10300_TLS_TPOFF. * elf-m10300.c (elf32_mn10300_link_hash_entry): Add tls_type field. (elf32_mn10300_link_hash_table): Add tls_ldm_got entry; (elf_mn10300_tdata): Define. (elf_mn10300_local_got_tls_type): Define. (elf_mn10300_howto_table): Add entries for R_MN10300_TLS_GD, R_MN10300_TLS_LD, R_MN10300_TLS_LDO, R_MN10300_TLS_GOTIE, R_MN10300_TLS_IE, R_MN10300_TLS_LE, R_MN10300_TLS_DPTMOD, R_MN10300_TLS_DTPOFF, R_MN10300_TLS_TPOFF relocs. (mn10300_reloc_map): Likewise. (elf_mn10300_tls_transition): New function. (dtpoff, tpoff, mn10300_do_tls_transition): New functions. (mn10300_elf_check_relocs): Add TLS support. (mn10300_elf_final_link_relocate): Likewise. (mn10300_elf_relocate_section): Likewise. (mn10300_elf_relax_section): Likewise. (elf32_mn10300_link_hash_newfunc): Initialise new field. (_bfd_mn10300_copy_indirect_symbol): New function. (elf32_mn10300_link_hash_table_create): Initialise new fields. (_bfd_mn10300_elf_size_dynamic_sections): Add TLS support. (_bfd_mn10300_elf_finish_dynamic_symbol): Likewise. (_bfd_mn10300_elf_reloc_type_class): Allocate an elf_mn10300_obj_tdata structure. (elf_backend_copy_indirect_symbol): Define. * reloc.c (BFD_MN10300_TLS_GD, BFD_MN10300_TLS_LD, BFD_MN10300_TLS_LDO, BFD_MN10300_TLS_GOTIE, BFD_MN10300_TLS_IE, BFD_MN10300_TLS_LE, BFD_MN10300_TLS_DPTMOD, BFD_MN10300_TLS_DTPOFF, BFD_MN10300_TLS_TPOFF): New relocations. (BFD_RELOC_MN10300_32_PCREL, BFD_RELOC_MN10300_16_PCREL): Move to alongside other MN10300 relocations. * bfd-in2.h: Regenerate. * libbfd.h: Regenerate. * config/tc-mn10300.c (other_registers): Add SSP and USP. (md_assemble): Add support for TLS relocs. (mn10300_parse_name): Likewise. * readelf.c (is_16bit_abs_reloc): Add detection of R_MN10300_16.
377 lines
12 KiB
Text
377 lines
12 KiB
Text
2012-03-07 Nick Clifton <nickc@redhat.com>
|
||
|
||
* config/tc-mn10300.c (other_registers): Add SSP and USP.
|
||
(md_assemble): Add support for TLS relocs.
|
||
(mn10300_parse_name): Likewise.
|
||
|
||
2012-02-27 Alan Modra <amodra@gmail.com>
|
||
|
||
* config/tc-crx.c (check_range): Correct uint32_t misconceptions.
|
||
|
||
2012-02-27 Alan Modra <amodra@gmail.com>
|
||
|
||
* config/tc-tic4x.c (tic4x_do_align): Remove ATTRIBUTE_UNUSED on
|
||
params. Properly generate NOP pattern. Comment reason for
|
||
subseg_text_p failure.
|
||
|
||
2012-02-27 Alan Modra <amodra@gmail.com>
|
||
|
||
* config/tc-h8300.c (constant_fits_width_p): Trim constant to 32 bits
|
||
and sign extend before range tests.
|
||
(constant_fits_size_p): Similarly.
|
||
(get_specific): Trim X_add_number to 32 bits.
|
||
(fix_operand_size): Likewise, and use unsigned test for signed
|
||
ranges.
|
||
|
||
2012-02-27 Alan Modra <amodra@gmail.com>
|
||
|
||
* config/tc-crx.c: Include bfd_stdint.h.
|
||
(getconstant): Remove irrelevant comment. Don't fail due to
|
||
sign-extension of int mask.
|
||
(check_range): Rewrite using unsigned arithmetic throughout.
|
||
|
||
2012-02-25 Walter Lee <walt@tilera.com>
|
||
|
||
* tc-tilepro.c (emit_tilepro_instruction): Check if symbol is
|
||
non-local before checking sy_value.
|
||
* tc-tilegx.c (emit_tilegx_instruction): Ditto.
|
||
|
||
2012-02-25 Walter Lee <walt@tilera.com>
|
||
|
||
* tc-tilepro.c (O_tls_le): Define operator.
|
||
(O_tls_le_lo16): Ditto.
|
||
(O_tls_le_hi16): Ditto.
|
||
(O_tls_le_ha16): Ditto.
|
||
(O_tls_gd_call): Ditto.
|
||
(O_tls_gd_add): Ditto.
|
||
(O_tls_ie_load): Ditto.
|
||
(md_begin): Delete old operators; handle new operators.
|
||
(emit_tilepro_instruction): Ditto.
|
||
(md_apply_fix): Ditto.
|
||
* tc-tilegx.c (O_hw1_got): Delete operator.
|
||
(O_hw2_got): Ditto.
|
||
(O_hw3_got): Ditto.
|
||
(O_hw2_last_got): Ditto.
|
||
(O_hw1_tls_gd): Ditto.
|
||
(O_hw2_tls_gd): Ditto.
|
||
(O_hw3_tls_gd): Ditto.
|
||
(O_hw2_last_tls_gd): Ditto.
|
||
(O_hw1_tls_ie): Ditto.
|
||
(O_hw2_tls_ie): Ditto.
|
||
(O_hw3_tls_ie): Ditto.
|
||
(O_hw2_last_tls_ie): Ditto.
|
||
(O_hw0_tls_le): Define operator.
|
||
(O_hw0_last_tls_le): Ditto.
|
||
(O_hw1_last_tls_le): Ditto.
|
||
(O_tls_gd_call): Ditto.
|
||
(O_tls_gd_add): Ditto.
|
||
(O_tls_ie_load): Ditto.
|
||
(O_tls_add): Ditto.
|
||
(md_begin): Delete old operators; handle new operators.
|
||
(emit_tilegx_instruction): Ditto.
|
||
(md_apply_fix): Ditto.
|
||
* doc/c-tilegx.texi: Delete old operators; document new operators.
|
||
* doc/c-tilepro.texi: Ditto.
|
||
|
||
2012-02-25 Walter Lee <walt@tilera.com>
|
||
|
||
* tc-tilepro.c (apply_special_operator): delete cases for
|
||
got and tls operators.
|
||
(md_apply_fix): Ditto.
|
||
* tc-tilegx.c (md_begin): Set architecture and machine.
|
||
(tilegx_target_format): Handle big endian.
|
||
(OPTION_EB): Define.
|
||
(OPTION_EL): Define.
|
||
(md_longopts): Add entries for "EB" and "EL".
|
||
(md_parse_option): Handle OPTION_EB and OPTION_EL.
|
||
(md_show_usage): Add -EB and -EL.
|
||
(md_number_to_chars): New.
|
||
(apply_special_operator): delete cases for got and tls
|
||
operators.
|
||
(md_apply_fix): Ditto.
|
||
* tc-tilegx.h (TARGET_BYTES_BIG_ENDIAN): Guard definition with
|
||
ifndef.
|
||
(md_number_to_chars): Delete.
|
||
* configure.tgt (tilegx*be): Handle.
|
||
* doc/as.texinfo [TILE-Gx]: Document -EB and -EL.
|
||
* doc/c-tilegx.texi: Ditto.
|
||
|
||
2012-02-21 H.J. Lu <hongjiu.lu@intel.com>
|
||
|
||
* config/tc-i386.c (check_hle): Use HLEPrefixNone, HLEPrefixLock,
|
||
HLEPrefixAny and HLEPrefixRelease.
|
||
|
||
2012-02-21 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
|
||
|
||
* gas/config/tc-arm.h (DOUBLESLASH_LINE_COMMENTS): Define.
|
||
|
||
2012-02-21 Iain Sandoe <idsandoe@googlemail.com>
|
||
|
||
* write.c (write_object_file): Add md_pre_output_hook.
|
||
* config/obj-macho.c (obj_mach_o_check_before_writing): New.
|
||
(obj_mach_o_pre_output_hook): New.
|
||
* config/obj-macho.h (md_pre_output_hook): Define.
|
||
(obj_mach_o_pre_output_hook): Declare.
|
||
|
||
2012-02-21 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* config/tc-i386.h (OBJ_MACH_O): New section.
|
||
(TC_FORCE_RELOCATION): Use obj_mach_o_force_reloc.
|
||
(TC_FORCE_RELOCATION_SUB_SAME): New
|
||
(TC_FORCE_RELOCATION_SUB_LOCAL): New.
|
||
(TC_VALIDATE_FIX_SUB): New.
|
||
* frags.h (struct frag): OBJ_FRAG_TYPE, new field.
|
||
* symbols.c (colon): obj_frob_colon: New hook.
|
||
* write.c (write_object_file): md_pre_relax_hook, new
|
||
hook.
|
||
* config/obj-macho.c (obj_mach_o_frob_colon): New.
|
||
(obj_mach_o_frob_label): Record sub-section labels.
|
||
(obj_mach_o_frob_symbol): Rename from obj_macho_frob_symbol.
|
||
(obj_mach_o_set_subsections): New.
|
||
(obj_mach_o_pre_relax_hook): New.
|
||
(obj_mach_o_in_different_subsection): New.
|
||
(obj_mach_o_force_reloc_sub_same): New.
|
||
(obj_mach_o_force_reloc_sub_local): New.
|
||
(obj_mach_o_force_reloc): New.
|
||
* config/obj-macho.h (OBJ_SYMFIELD_TYPE): New.
|
||
(obj_frob_colon): New Define.
|
||
(obj_mach_o_frob_label): Renamed.
|
||
(obj_mach_o_frob_symbol): Renamed.
|
||
(OBJ_FRAG_TYPE): New.
|
||
(obj_mach_o_in_different_subsection, obj_mach_o_force_reloc,
|
||
obj_mach_o_force_reloc_sub_same,
|
||
obj_mach_o_force_reloc_sub_local): New declarations.
|
||
|
||
2012-02-20 Iain Sandoe <idsandoe@googlemail.com>
|
||
|
||
* config/obj-macho.c (obj_mach_o_is_frame_section): New.
|
||
(obj_mach_o_allow_local_subtract): New.
|
||
* config/obj-macho.h (md_allow_local_subtract): Define.
|
||
(obj_mach_o_allow_local_subtract): Declare.
|
||
|
||
2012-02-20 Iain Sandoe <idsandoe@googlemail.com>
|
||
|
||
* config/obj-macho.c (obj_mach_o_make_or_get_sect): In the absence of
|
||
canonical information, try to determine CODE and DEBUG section flags
|
||
from the mach-o section data.
|
||
|
||
2012-02-20 Nick Clifton <nickc@redhat.com>
|
||
|
||
* cgen.c (gas_cgen_parse_operand): Do not set BSF_RELC flag on
|
||
local symbols.
|
||
|
||
2012-02-12 Iain Sandoe <idsandoe@googlemail.com>
|
||
|
||
* config/obj-macho.c (obj_mach_o_indirect_symbol): Force promotion of
|
||
any local symbol used as an indirect.
|
||
|
||
2012-02-10 Iain Sandoe <idsandoe@googlemail.com>
|
||
|
||
* config/obj-macho.c (obj_mach_o_make_or_get_sect): Always fill in
|
||
stub size when provided. (obj_mach_o_section): Flag that stub-size
|
||
has been provided.
|
||
|
||
2012-02-08 H.J. Lu <hongjiu.lu@intel.com>
|
||
|
||
* config/tc-i386.c (HLE_PREFIX): New.
|
||
(check_hle): Likewise.
|
||
(_i386_insn): Add have_hle.
|
||
(cpu_arch): Add .hle and .rtm.
|
||
(md_assemble): Call check_hle if i.have_hle isn't zero.
|
||
(parse_insn): Set i.have_hle to 1 for HLE prefix.
|
||
(output_jump): Support up to 2 byte opcode.
|
||
|
||
* doc/c-i386.texi: Document hle/.hle and rtm/.rtm.
|
||
|
||
2012-02-02 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* config/obj-macho.c (obj_mach_o_zerofill): Silent
|
||
uninitialized variable warning.
|
||
|
||
2012-02-02 Nick Clifton <nickc@redhat.com>
|
||
|
||
PR gas/13224
|
||
* config/obj-elf.c (obj_elf_parse_section_letters): Rename 'clone'
|
||
to 'is_clone' to avoid shadowing a gloabl.
|
||
(obj_elf_section): Likewise.
|
||
|
||
2012-01-31 Paul Brook <paul@codesourcery.com>
|
||
|
||
* doc/c-tic6x.c: Fix typo.
|
||
|
||
2012-01-26 Alexey Makhalov <makhaloff@gmail.com>
|
||
|
||
PR gas/13624
|
||
* app.c (app_push): Set 'add_newlines' to zero after saving.
|
||
|
||
2012-01-24 DJ Delorie <dj@redhat.com>
|
||
|
||
* config/rl78-parse.y (NOT1): Add.
|
||
|
||
2012-01-23 Roland McGrath <mcgrathr@google.com>
|
||
|
||
* configure.tgt (i386-*-nacl*): Match it.
|
||
* config/te-nacl.h: New file.
|
||
* config/tc-i386.h [TE_NACL] (ELF_TARGET_FORMAT): Define for this case.
|
||
* config/tc-i386.c [TE_NACL] (i386_comment_chars, PREFIX_SEPARATOR):
|
||
Use TE_GNU et al case for TE_NACL too.
|
||
|
||
2012-01-20 H.J. Lu <hongjiu.lu@intel.com>
|
||
|
||
* config/tc-i386.c (_i386_insn): Replace disp32_encoding with
|
||
disp_encoding.
|
||
(md_assemble): Updated.
|
||
(output_branch): Likewise.
|
||
(parse_insn): Support .d8 suffix.
|
||
(build_modrm_byte): Fake zero displacement for .d8 and .d32
|
||
suffixes.
|
||
|
||
* doc/c-i386.texi: Document .d8 suffix.
|
||
|
||
2012-01-17 Andrew Burgess <aburgess@broadcom.com>
|
||
|
||
* write.c (fix_new_internal): Don't mark used parameter as unused.
|
||
|
||
2012-01-17 Alan Modra <amodra@gmail.com>
|
||
|
||
* as.c (parse_args): Update copyright message year.
|
||
|
||
2012-01-13 H.J. Lu <hongjiu.lu@intel.com>
|
||
|
||
* config/tc-i386.c (cpu_arch): Add ".vmfunc".
|
||
|
||
* doc/c-i386.texi: Document vmfunc.
|
||
|
||
2012-01-13 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* config/obj-macho.c (obj_mach_o_reorder_section_relocs): New.
|
||
* config/obj-macho.h (SET_SECTION_RELOCS): Define.
|
||
(obj_mach_o_reorder_section_relocs): Declare.
|
||
|
||
2012-01-13 Iain Sandoe <idsandoe@googlemail.com>
|
||
|
||
* config/obj-macho.c (obj_mach_o_set_indirect_symbols): Handle
|
||
absolute indirect symbols.
|
||
|
||
2012-01-13 Iain Sandoe <idsandoe@googlemail.com>
|
||
|
||
* config/obj-macho.c (obj_mach_o_set_vma_data): New type.
|
||
(obj_mach_o_set_section_vma): New.
|
||
(obj_mach_o_post_relax_hook): New.
|
||
* config/obj-macho.h (md_post_relax_hook): Define.
|
||
(obj_mach_o_post_relax_hook): Declare.
|
||
|
||
2012-01-12 Iain Sandoe <idsandoe@googlemail.com>
|
||
|
||
* 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.
|
||
|
||
2012-01-12 Tristan Gingold <gingold@adacore.com>
|
||
|
||
PR gas/13591
|
||
* config/obj-coff.h (sy_obj): Rename macro to avoid a name conflict.
|
||
|
||
2012-01-10 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* struc-symbol.h (struct symbol_flags): New struct, created from...
|
||
(struct symbol): ... this one. Add sy_flags field, remove flag fields.
|
||
(struct local_symbol): Replace lsy_marker field by lsy_flags.
|
||
Adjust comment.
|
||
(local_symbol_resolved_p): Adjust.
|
||
(local_symbol_mark_resolved): Likewise.
|
||
* symbols.c (LOCAL_SYMBOL_CHECK): Adjust.
|
||
(local_symbol_make, local_symbol_convert, colon)
|
||
(symbol_clone_if_forward_ref, verify_symbol_chain)
|
||
(resolve_symbol_value, snapshot_symbol, S_GET_VALUE)
|
||
(S_IS_WEAKREFR, S_IS_WEAKREFD, S_IS_VOLATILE, S_IS_FORWARD_REF)
|
||
(S_SET_WEAKREFR, S_CLEAR_WEAKREFR, S_SET_WEAKREFD)
|
||
(S_CLEAR_WEAKREFD, S_SET_VOLATILE, S_CLEAR_VOLATILE)
|
||
(S_SET_FORWARD_REF, symbol_same_p, symbol_mark_used)
|
||
(symbol_clear_used, symbol_used_p, symbol_mark_used_in_reloc)
|
||
(symbol_clear_used_in_reloc, symbol_used_in_reloc_p)
|
||
(symbol_mark_mri_common, symbol_clear_mri_common)
|
||
(symbol_mri_common_p, symbol_mark_written, symbol_clear_written)
|
||
(symbol_written_p, symbol_mark_resolved, symbol_resolved_p)
|
||
(symbol_equated_reloc_p, dot_symbol_init)
|
||
(print_symbol_value_1): Adjust.
|
||
|
||
2012-01-09 Iain Sandoe <idsandoe@googlemail.com>
|
||
|
||
* config/obj-macho.c (obj_mach_o_weak): Remove.
|
||
(obj_mach_o_common_parse): Set symbol qualifiers.
|
||
(LAZY, REFE): New macros.
|
||
(obj_mach_o_symbol_type): New enum.
|
||
(obj_mach_o_set_symbol_qualifier): New.
|
||
(obj_mach_o_sym_qual): New.
|
||
(mach_o_pseudo_table): Add symbol qualifiers, set indirect_symbol to
|
||
a dummy function.
|
||
(obj_mach_o_type_for_symbol): New.
|
||
(obj_macho_frob_label): New.
|
||
(obj_macho_frob_symbol): New.
|
||
* config/obj-macho.h (S_SET_ALIGN): Amend temorary var name.
|
||
(obj_frob_label, obj_macho_frob_label): Declare.
|
||
(obj_frob_symbol, obj_macho_frob_symbol): Declare.
|
||
|
||
2012-01-08 Richard Sandiford <rdsandiford@googlemail.com>
|
||
|
||
* config/tc-mips.c (s_tls_rel_directive): Call mips_clear_insn_labels.
|
||
|
||
2012-01-08 Andrew Pinski <andrew.pinski@caviumnetworks.com>
|
||
Richard Sandiford <rdsandiford@googlemail.com>
|
||
|
||
* config/tc-mips.c (mips_move_labels): Take the list of labels and
|
||
textness as parameters.
|
||
(mips_move_text_labels): New function.
|
||
(append_insn): Use it instead of mips_move_labels.
|
||
(mips_emit_delays, start_noreorder): Likewise.
|
||
(mips_align): Take the labels rather than just one label.
|
||
Move all labels to after the .align.
|
||
(s_align): Change the last argument to mips_align.
|
||
(s_cons): Likewise.
|
||
(s_float_cons): Likewise.
|
||
(s_gpword): Likewise.
|
||
(s_gpdword): Likewise.
|
||
|
||
2012-01-06 Tristan Gingold <gingold@adacore.com>
|
||
|
||
* config/tc-i386.c: Update copyright year.
|
||
(lex_got): Also defined for Mach-O.
|
||
Add a guard for non-ELF configuration.
|
||
(md_longopts): Also handle -64 for Mach-O.
|
||
(md_parse_option): Likewise.
|
||
(i386_target_format): Adjust for x86_64-darwin.
|
||
|
||
2012-01-04 Iain Sandoe <idsandoe@googlemail.com>
|
||
|
||
* config/obj-macho.c (obj_mach_o_segT_from_bfd_name): Tidy definition.
|
||
(obj_mach_o_get_section_names): New (split from obj_mach_o_section).
|
||
(obj_mach_o_make_or_get_sect): Likewise.
|
||
(obj_mach_o_section): Split out the functionality shared with zerofill.
|
||
(obj_mach_o_zerofill): New.
|
||
(obj_mach_o_common_parse): Ensure whitespace is skipped.
|
||
(mach_o_pseudo_table): Add .zerofill.
|
||
|
||
2012-01-03 Iain Sandoe <idsandoe@googlemail.com>
|
||
|
||
* config/obj-macho.c (obj_macho_process_stab): New.
|
||
* config/obj-macho.h (OBJ_PROCESS_STAB): Define.
|
||
(obj_macho_process_stab): Declare.
|
||
|
||
For older changes see ChangeLog-2011
|
||
|
||
Local Variables:
|
||
mode: change-log
|
||
left-margin: 8
|
||
fill-column: 74
|
||
version-control: never
|
||
End:
|