Add support for ARC instruction relaxation in the assembler.
gas/
2016-01-26 Claudiu Zissulescu <claziss@synopsys.com>
Janek van Oirschot <jvanoirs@synopsys.com>
* config/tc-arc.h (TC_FRAG_TYPE, TC_PCREL_ADJUST, MAX_INSN_ARGS)
(MAX_INSN_FLGS, MAX_FLAG_NAME_LENGHT, TC_GENERIC_RELAX_TABLE):
Define.
(arc_flags, arc_relax_type): New structure.
* config/tc-arc.c (FRAG_MAX_GROWTH, RELAX_TABLE_ENTRY)
(RELAX_TABLE_ENTRY_MAX): New define.
(relaxation_state, md_relax_table, arc_relaxable_insns)
(arc_num_relaxable_ins): New variable.
(rlx_operand_type, arc_rlx_types): New enums.
(arc_relaxable_ins): New structure.
(OPTION_RELAX): New option.
(arc_insn): New relax member.
(arc_flags): Remove.
(relax_insn_p): New function.
(apply_fixups): Likewise.
(relaxable_operand): Likewise.
(may_relax_expr): Likewise.
(relaxable_flag): Likewise.
(arc_pcrel_adjust): Likewise.
(md_estimate_size_before_relax): Implement.
(md_convert_frag): Likewise.
(md_parse_option): Handle new mrelax option.
(md_show_usage): Likewise.
(assemble_insn): Set relax member.
(emit_insn0): New function.
(emit_insn1): Likewise.
(emit_insn): Handle relaxation case.
* NEWS: Mention the new relaxation option.
* doc/c-arc.texi (ARC Options): Document new mrelax option.
gas/testsuite
2016-01-26 Claudiu Zissulescu <claziss@synopsys.com>
* gas/arc/relax-avoid1.d: New file.
* gas/arc/relax-avoid1.s: Likewise.
* gas/arc/relax-avoid2.d: Likewise.
* gas/arc/relax-avoid2.s: Likewise.
* gas/arc/relax-avoid3.d: Likewise.
* gas/arc/relax-avoid3.s: Likewise.
* gas/arc/relax-b.d: Likewise.
* gas/arc/relax-b.s: Likewise.
include/opcode/
2016-01-26 Claudiu Zissulescu <claziss@synopsys.com>
Janek van Oirschot <jvanoirs@synopsys.com>
* arc.h (arc_opcode arc_relax_opcodes, arc_num_relax_opcodes):
Declare.
opcodes/
2016-01-26 Claudiu Zissulescu <claziss@synopsys.com>
Janek van Oirschot <jvanoirs@synopsys.com>
* arc-opc.c (arc_relax_opcodes, arc_num_relax_opcodes): New
variable.
2016-02-10 13:09:01 +01:00
|
|
|
|
2016-02-10 Claudiu Zissulescu <claziss@synopsys.com>
|
|
|
|
|
Janek van Oirschot <jvanoirs@synopsys.com>
|
|
|
|
|
|
|
|
|
|
* opcode/arc.h (arc_opcode arc_relax_opcodes, arc_num_relax_opcodes):
|
|
|
|
|
Declare.
|
|
|
|
|
|
2016-02-09 17:34:24 +01:00
|
|
|
|
2016-02-09 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* opcode/metag.h (metag_scondtab): Mark as possibly unused.
|
|
|
|
|
* opcode/nds32.h (nds32_r45map): Likewise.
|
|
|
|
|
(nds32_r54map): Likewise.
|
|
|
|
|
* opcode/visium.h (gen_reg_table): Likewise.
|
|
|
|
|
(fp_reg_table, cc_table, opcode_table): Likewise.
|
|
|
|
|
|
2016-02-09 03:22:02 +01:00
|
|
|
|
2016-02-09 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 16583
|
|
|
|
|
* elf/common.h (AT_SUN_HWCAP): Undef before defining.
|
|
|
|
|
|
2016-02-04 10:55:10 +01:00
|
|
|
|
2016-02-04 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR target/19561
|
|
|
|
|
* opcode/msp430.h (IGNORE_CARRY_BIT): New define.
|
|
|
|
|
(RRUX): Synthesise using case 2 rather than 7.
|
|
|
|
|
|
2015-12-14 07:26:19 +01:00
|
|
|
|
2016-01-19 John Baldwin <jhb@FreeBSD.org>
|
|
|
|
|
|
|
|
|
|
* elf/common.h (NT_FREEBSD_THRMISC): Define.
|
|
|
|
|
(NT_FREEBSD_PROCSTAT_PROC): Define.
|
|
|
|
|
(NT_FREEBSD_PROCSTAT_FILES): Define.
|
|
|
|
|
(NT_FREEBSD_PROCSTAT_VMMAP): Define.
|
|
|
|
|
(NT_FREEBSD_PROCSTAT_GROUPS): Define.
|
|
|
|
|
(NT_FREEBSD_PROCSTAT_UMASK): Define.
|
|
|
|
|
(NT_FREEBSD_PROCSTAT_RLIMIT): Define.
|
|
|
|
|
(NT_FREEBSD_PROCSTAT_OSREL): Define.
|
|
|
|
|
(NT_FREEBSD_PROCSTAT_PSSTRINGS): Define.
|
|
|
|
|
(NT_FREEBSD_PROCSTAT_AUXV): Define.
|
|
|
|
|
|
Add PIC and TLS support to the ARC target.
bfd/ChangeLog:
* arc-plt.def: New file.
* arc-plt.h: Likewise.
* elf32-arc.c (elf_arc_abs_plt0_entry, elf_arc_abs_pltn_entry,
elf_arcV2_abs_plt0_entry, elf_arcV2_abs_pltn_entry,
elf_arc_pic_plt0_entry, elf_arc_pic_pltn_entry,
elf_arcV2_pic_plt0_entry, elf_arcV2_pic_pltn_entry): Remove.
(name_for_global_symbol): Added.
(ADD_RELA): Helper to create dynamic relocs.
(new_got_entry_to_list): Create a new got entry in linked list.
(symbol_has_entry_of_type): Search for specific type of entry in
list.
(is_reloc_for_GOT): return FALSE for any TLS related relocs.
(is_reloc_for_TLS, arc_elf_set_private_flags)
(arc_elf_print_private_bfd_data, arc_elf_copy_private_bfd_data)
(arc_elf_merge_private_bfd_data): New functions.
(debug_arc_reloc): Cleaned debug info printing.
(PDATA reloc): Changed not to perform address alignment.
(reverse_me): Added. Fix for ARC_32 relocs.
(arc_do_relocation): Return bfd_reloc_of when no relocation should
occur.
(arc_get_local_got_ents): Renamed from arc_get_local_got_offsets.
Changed function to access an array of list of GOT entries instead
of just an array of offsets.
(elf_arc_relocate_section): Added support for PIC and TLS related relocations.
(elf_arc_check_relocs): Likewise.
(elf_arc_adjust_dynamic_symbol, elf_arc_finish_dynamic_symbol,
(elf_arc_finish_dynamic_sections): Likewise
(arc_create_dynamic_sections): Modified conditions to create
dynamic sections.
(ADD_SYMBOL_REF_SEC_AND_RELOC): New macro.
(plt_do_relocs_for_symbol, relocate_plt_for_symbol)
(relocate_plt_for_entry): Changed to support new way to define PLT
related code.
(add_symbol_to_plt): Likewise.
(arc_elf_link_hash_table_create): New function.
include/ChangeLog:
* elf/arc-reloc.def (ARC_32, ARC_GOTPC, ARC_TLS_GD_GOT)
(ARC_TLS_IE_GOT, ARC_TLS_DTPOFF, ARC_TLS_DTPOFF_S9, ARC_TLS_LE_S9)
(ARC_TLS_LE_32): Fixed formula.
(ARC_TLS_GD_LD): Use new special function.
* opcode/arc-func.h: Changed all the replacement
functions to clear the patching bits before doing an or it with the value
argument.
2016-01-19 16:25:58 +01:00
|
|
|
|
2016-01-18 Miranda Cupertino <Cupertino.Miranda@synopsys.com>
|
|
|
|
|
Zissulescu Claudiu <Claudiu.Zissulescu@synopsys.com>
|
|
|
|
|
|
|
|
|
|
* elf/arc-reloc.def (ARC_32, ARC_GOTPC, ARC_TLS_GD_GOT)
|
|
|
|
|
(ARC_TLS_IE_GOT, ARC_TLS_DTPOFF, ARC_TLS_DTPOFF_S9, ARC_TLS_LE_S9)
|
|
|
|
|
(ARC_TLS_LE_32): Fixed formula.
|
|
|
|
|
(ARC_TLS_GD_LD): Use new special function.
|
|
|
|
|
* opcode/arc-func.h: Changed all the replacement
|
|
|
|
|
functions to clear the patching bits before doing an or it with the value
|
|
|
|
|
argument.
|
|
|
|
|
|
2016-01-18 16:58:47 +01:00
|
|
|
|
2016-01-18 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR ld/19440
|
|
|
|
|
* coff/internal.h (internal_syment): Use int to hold section
|
|
|
|
|
number.
|
|
|
|
|
(N_UNDEF): Cast to int not short.
|
|
|
|
|
(N_ABS): Likewise.
|
|
|
|
|
(N_DEBUG): Likewise.
|
|
|
|
|
(N_TV): Likewise.
|
|
|
|
|
(P_TV): Likewise.
|
|
|
|
|
|
2016-01-11 12:06:56 +01:00
|
|
|
|
2016-01-11 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
Import this change from GCC mainline:
|
|
|
|
|
|
|
|
|
|
2016-01-07 Mike Frysinger <vapier@gentoo.org>
|
|
|
|
|
|
|
|
|
|
* longlong.h: Change !__SHMEDIA__ to
|
|
|
|
|
(!defined (__SHMEDIA__) || !__SHMEDIA__).
|
|
|
|
|
Change __SHMEDIA__ to defined (__SHMEDIA__) && __SHMEDIA__.
|
|
|
|
|
|
2016-01-06 19:31:23 +01:00
|
|
|
|
2016-01-06 Maciej W. Rozycki <macro@imgtec.com>
|
|
|
|
|
|
|
|
|
|
* opcode/mips.h: Add a summary of MIPS16 operand codes.
|
|
|
|
|
|
2016-01-03 07:30:32 +01:00
|
|
|
|
2016-01-05 Mike Frysinger <vapier@gentoo.org>
|
|
|
|
|
|
|
|
|
|
* libiberty.h (dupargv): Change arg to char * const *.
|
|
|
|
|
(writeargv, countargv): Likewise.
|
|
|
|
|
|
2016-01-01 12:25:12 +01:00
|
|
|
|
2016-01-01 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
Update year range in copyright notice of all files.
|
|
|
|
|
|
2016-01-01 11:44:31 +01:00
|
|
|
|
For older changes see ChangeLog-0415, aout/ChangeLog-9115,
|
|
|
|
|
cgen/ChangeLog-0915, coff/ChangeLog-0415, elf/ChangeLog-0415,
|
|
|
|
|
mach-o/ChangeLog-1115, nlm/ChangeLog-9315, opcode/ChangeLog-0415,
|
|
|
|
|
som/ChangeLog-1015, and vms/ChangeLog-1015
|
|
|
|
|
|
|
|
|
|
Copyright (C) 2016 Free Software Foundation, Inc.
|
|
|
|
|
|
|
|
|
|
Copying and distribution of this file, with or without modification,
|
|
|
|
|
are permitted in any medium without royalty provided the copyright
|
|
|
|
|
notice and this notice are preserved.
|
|
|
|
|
|
|
|
|
|
Local Variables:
|
|
|
|
|
mode: change-log
|
|
|
|
|
left-margin: 8
|
|
|
|
|
fill-column: 74
|
|
|
|
|
version-control: never
|
|
|
|
|
End:
|