2014-07-29 14:18:07 +02:00
|
|
|
|
2014-07-29 Matthew Fortune <matthew.fortune@imgtec.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-mips.c: Rename INSN_LOAD_COPROC_DELAY to INSN_LOAD_COPROC
|
|
|
|
|
and INSN_COPROC_MOVE_DELAY to INSN_COPROC_MOVE throughout.
|
|
|
|
|
|
[MIPS] Implement O32 FPXX, FP64 and FP64A ABI extensions
Specification:
https://dmz-portal.mips.com/wiki/MIPS_O32_ABI_-_FR0_and_FR1_Interlinking
include/
* elf/mips.h (PT_MIPS_ABIFLAGS, SHT_MIPS_ABIFLAGS): Define.
(Val_GNU_MIPS_ABI_FP_OLD_64): Rename from Val_GNU_MIPS_ABI_FP_64.
(Val_GNU_MIPS_ABI_FP_64): Redefine.
(Val_GNU_MIPS_ABI_FP_XX): Define.
(Elf_External_ABIFlags_v0, Elf_Internal_ABIFlags_v0): New structures.
(AFL_REG_NONE, AFL_REG_32, AFL_REG_64, AFL_REG_128): Define.
(AFL_ASE_DSP, AFL_ASE_DSPR2, AFL_ASE_EVA, AFL_ASE_MCU): Likewise.
(AFL_ASE_MDMX, AFL_ASE_MIPS3D, AFL_ASE_MT, AFL_ASE_SMARTMIPS): Likewise.
(AFL_ASE_VIRT, AFL_ASE_MSA, AFL_ASE_MIPS16): Likewise.
(AFL_ASE_MICROMIPS, AFL_ASE_XPA): Likewise.
(AFL_EXT_XLR, AFL_EXT_OCTEON2, AFL_EXT_OCTEONP): Likewise.
(AFL_EXT_LOONGSON_3A, AFL_EXT_OCTEON, AFL_EXT_5900): Likewise.
(AFL_EXT_4650, AFL_EXT_4010, AFL_EXT_4100, AFL_EXT_3900): Likewise.
(AFL_EXT_10000, AFL_EXT_SB1, AFL_EXT_4111, AFL_EXT_4120): Likewise.
(AFL_EXT_5400, AFL_EXT_5500, AFL_EXT_LOONGSON_2E): Likewise.
(AFL_EXT_LOONGSON_2F): Likewise.
(bfd_mips_elf_swap_abiflags_v0_in): Prototype.
(bfd_mips_elf_swap_abiflags_v0_out): Likewise.
(bfd_mips_isa_ext): Likewise.
bfd/
* elfxx-mips.c (ABI_O32_P, MIPS_ELF_ABIFLAGS_SECTION_NAME_P): New macro.
(mips_elf_obj_tdata): Add abiflags and abiflags_valid fields.
(bfd_mips_elf_swap_abiflags_v0_in): New function.
(bfd_mips_elf_swap_abiflags_v0_out): Likewise.
(_bfd_mips_elf_section_from_shdr): Handle SHT_MIPS_ABIFLAGS.
(_bfd_mips_elf_fake_sections): Likewise.
(_bfd_mips_elf_always_size_sections): Handle .MIPS.abiflags.
(_bfd_mips_elf_additional_program_headers): Account for new
PT_MIPS_ABIFLAGS program header.
(_bfd_mips_elf_modify_segment_map): Create PT_MIPS_ABIFLAGS segment and
associate with .MIPS.abiflags.
(_bfd_mips_elf_gc_mark_extra_sections): New function.
(bfd_mips_isa_ext, update_mips_abiflags_isa): New static function.
(infer_mips_abiflags): Likewise.
(_bfd_mips_elf_final_link): Handle .MIPS.abiflags.
(mips_32bit_flags_p): Moved higher.
(mips_elf_merge_obj_attributes, _bfd_mips_fp_abi_string): Error
checking for FP ABIs.
(_bfd_mips_elf_merge_private_bfd_data): Restructure and add abiflags
checks. Check EF_MIPS_FP64 flag consistency.
(print_mips_ases, print_mips_isa_ext): New static function.
(print_mips_fp_abi_value, get_mips_reg_size): Likewise.
(_bfd_mips_elf_print_private_bfd_data): Display abiflags data.
(_bfd_mips_post_process_headers): Set EI_ABIVERSION = 3 for
Val_GNU_MIPS_ABI_FP_64 or Val_GNU_MIPS_ABI_FP_64A.
* elfxx-mips.h (_bfd_mips_elf_gc_mark_extra_sections): New prototype.
* elf32-mips.c (elf_backend_gc_mark_extra_sections): Implement.
* elfn32-mips.c (elf_backend_gc_mark_extra_sections): Implement.
* elf64-mips.c (elf_backend_gc_mark_extra_sections): Implement.
binutils/
* readelf.c (get_mips_segment_type): Display name for PT_MIPS_ABIFLAGS.
(get_mips_section_type_name): Display name for SHT_MIPS_ABIFLAGS.
(display_mips_gnu_attribute): Abstracted fp abi printing to...
(print_mips_fp_abi_value): New static function. Handle new FP ABIs.
(print_mips_ases, print_mips_isa_ext): New static functions.
(get_mips_reg_size): Likewise.
(process_mips_specific): Display abiflags data.
elfcpp/
* elfcpp.h (PT_MIPS_ABIFLAGS): New program header type.
gas/
* config/tc-mips.c (mips_flags_frag): New static global.
(struct mips_set_options): Add oddspreg field.
(file_mips_opts, mips_opts): Initialize oddspreg.
(ISA_HAS_ODD_SINGLE_FPR): Add CPU argument and update for R5900 and
Loongson-3a.
(enum options, md_longopts, md_parse_option): Add -mfpxx, -modd-spreg
and -mno-odd-spreg options.
(md_begin): Create .MIPS.abiflags section.
(fpabi_incompatible_with, fpabi_requires): New static function.
(check_fpabi): Likewise.
(mips_check_options): Handle fp=xx and oddspreg restrictions.
(file_mips_check_options): Set oddspreg by default for fp=xx.
(mips_oddfpreg_ok): Re-write function.
(check_regno): Check odd numbered registers regardless of FPR size.
For fp != 32 use as_bad instead of as_warn.
(match_float_constant): Rewrite check regarding FP register width. Add
support for generating constants when MXHC1 is present. Handle fp=xx
to comply with the ABI.
(macro): Update M_LI_DD similarly to match_float_constant. Generate
MTHC1 when available. Check that correct code can be generated for
fp=xx and fp=64 ABIs.
(parse_code_option, s_mipsset): Add fp=xx, oddspreg and nooddspreg
options.
(mips_convert_ase_flags): New static function.
(mips_elf_final_processing): Use fpabi == Val_GNU_MIPS_ABI_FP_OLD_64
to determine when to add the EF_MIPS_FP64 flag. Populate the
.MIPS.abiflags section.
(md_mips_end): Update .gnu_attribute based on command line and .module
as applicable. Use check_fpabi to ensure .gnu.attribute and command
line/.module options are consistent.
* doc/as.texinfo: Add missing -mgp64/-mfp64 options and document new
-mfpxx, -modd-spreg and -mno-odd-spreg options.
* doc/c-mips.texi: Document -mfpxx, -modd-spreg, -mno-odd-spreg,
gnu_attribute values and FP ABIs.
ld/
* emulparams/elf32bmip.sh: Add .MIPS.abiflags.
* emulparams/elf32bmipn32-defs.sh: Likewise.
* emulparams/elf64bmip-defs.sh: Likewise.
opcodes/
* micromips-opc.c (COD, LCD) New macros.
(cfc1, ctc1): Remove FP_S attribute.
(dmfc1, mfc1, mfhc1): Add LCD attribute.
(dmtc1, mtc1, mthc1): Add COD attribute.
* mips-opc.c (cfc1, cftc1, ctc, cttc1): Remove FP_S attribute.
binutils/testsuite/
* binutils-all/readelf.s: Account for .MIPS.abiflags and
.gnu.attributes.
* binutils-all/readelf.ss-tmips: Likewise.
* binutils-all/strip-3.d: Likewise.
gas/testsuite/
* gas/mips/attr-gnu-4-0.d: New.
* gas/mips/attr-gnu-4-0.s: Likewise.
* gas/mips/attr-gnu-4-1-mfp32.l: Likewise.
* gas/mips/attr-gnu-4-1-mfp32.s: Likewise.
* gas/mips/attr-gnu-4-1-mfp64.l: Likewise.
* gas/mips/attr-gnu-4-1-mfp64.s: Likewise.
* gas/mips/attr-gnu-4-1-mfpxx.s: Likewise.
* gas/mips/attr-gnu-4-1-msingle-float.l: Likewise.
* gas/mips/attr-gnu-4-1-msingle-float.s: Likewise.
* gas/mips/attr-gnu-4-1-msoft-float.l: Likewise.
* gas/mips/attr-gnu-4-1-msoft-float.s: Likewise.
* gas/mips/attr-gnu-4-1.d: Likewise.
* gas/mips/attr-gnu-4-1.s: Likewise.
* gas/mips/attr-gnu-4-2-mdouble-float.l: Likewise.
* gas/mips/attr-gnu-4-2-mdouble-float.s: Likewise.
* gas/mips/attr-gnu-4-2-msoft-float.l: Likewise.
* gas/mips/attr-gnu-4-2-msoft-float.s: Likewise.
* gas/mips/attr-gnu-4-2.d: Likewise.
* gas/mips/attr-gnu-4-2.s: Likewise.
* gas/mips/attr-gnu-4-3-mhard-float.l: Likewise.
* gas/mips/attr-gnu-4-3-mhard-float.s: Likewise.
* gas/mips/attr-gnu-4-3.d: Likewise.
* gas/mips/attr-gnu-4-3.s: Likewise.
* gas/mips/attr-gnu-4-4.l: Likewise.
* gas/mips/attr-gnu-4-4.s: Likewise.
* gas/mips/attr-gnu-4-5-64.l: Likewise.
* gas/mips/attr-gnu-4-5-64.s: Likewise.
* gas/mips/attr-gnu-4-5.d: Likewise.
* gas/mips/attr-gnu-4-5.l: Likewise.
* gas/mips/attr-gnu-4-5.s: Likewise.
* gas/mips/attr-gnu-4-6-64.l: Likewise.
* gas/mips/attr-gnu-4-6-64.s: Likewise.
* gas/mips/attr-gnu-4-6.d: Likewise.
* gas/mips/attr-gnu-4-6.l: Likewise.
* gas/mips/attr-gnu-4-6.s: Likewise.
* gas/mips/attr-gnu-4-6-msingle-float.l: Likewise.
* gas/mips/attr-gnu-4-6-msingle-float.s: Likewise.
* gas/mips/attr-gnu-4-6-msoft-float.l: Likewise.
* gas/mips/attr-gnu-4-6-msoft-float.s: Likewise.
* gas/mips/attr-gnu-4-6-noodd.l: Likewise.
* gas/mips/attr-gnu-4-6-noodd.s: Likewise.
* gas/mips/attr-gnu-4-7-64.l: Likewise.
* gas/mips/attr-gnu-4-7-64.s: Likewise.
* gas/mips/attr-gnu-4-7-msingle-float.l: Likewise.
* gas/mips/attr-gnu-4-7-msingle-float.s: Likewise.
* gas/mips/attr-gnu-4-7-msoft-float.l: Likewise.
* gas/mips/attr-gnu-4-7-msoft-float.s: Likewise.
* gas/mips/attr-gnu-4-7-odd.l: Likewise.
* gas/mips/attr-gnu-4-7-odd.s: Likewise.
* gas/mips/attr-gnu-4-7.d: Likewise.
* gas/mips/attr-gnu-4-7.l: Likewise.
* gas/mips/attr-gnu-4-7.s: Likewise.
* gas/mips/attr-none-double.d: Likewise.
* gas/mips/attr-none-o32-fp64.d: Likewise.
* gas/mips/attr-none-o32-fp64-nooddspreg.d
* gas/mips/attr-none-o32-fpxx.d: Likewise.
* gas/mips/attr-none-single-float.d: Likewise.
* gas/mips/attr-none-soft-float.d: Likewise.
* gas/mips/elf_arch_mips32r3.d: Likewise.
* gas/mips/elf_arch_mips32r5.d: Likewise.
* gas/mips/elf_arch_mips64r3.d: Likewise.
* gas/mips/elf_arch_mips64r5.d: Likewise.
* gas/mips/li-d.d: Likewise.
* gas/mips/li-d.s: Likewise.
* gas/mips/module-check-warn.l: Likewise.
* gas/mips/module-check-warn.s: Likewise.
* gas/mips/module-check.d: Likewise.
* gas/mips/module-check.s: Likewise.
* gas/mips/module-mfp32.d: Likewise.
* gas/mips/module-mfp32.s: Likewise.
* gas/mips/module-mfp64.d: Likewise.
* gas/mips/module-mfp64.s: Likewise.
* gas/mips/module-mfp64-noodd.d: Likewise.
* gas/mips/module-mfp64-noodd.s: Likewise.
* gas/mips/module-mfpxx.d: Likewise.
* gas/mips/module-mfpxx.s: Likewise.
* gas/mips/module-msingle-float.d: Likewise.
* gas/mips/module-msingle-float.s: Likewise.
* gas/mips/module-msoft-float.d: Likewise.
* gas/mips/module-msoft-float.s: Likewise.
* gas/mips/module-set-mfpxx.d: Likewise.
* gas/mips/module-set-mfpxx.s: Likewise.
* gas/mips/fpxx-oddfpreg.d: Likewise.
* gas/mips/fpxx-oddfpreg.l: Likewise.
* gas/mips/fpxx-oddfpreg.s: Likewise.
* gas/mips/no-odd-spreg.d: Likewise.
* gas/mips/odd-spreg.d: Likewise.
* gas/elf/section2.e-mips: Adjust expected output.
* gas/mips/attr-gnu-abi-fp-1.d: Likewise.
* gas/mips/attr-gnu-abi-msa-1.d: Likewise.
* gas/mips/call-nonpic-1.d: Likewise.
* gas/mips/elf_arch_mips1.d: Likewise.
* gas/mips/elf_arch_mips2.d: Likewise.
* gas/mips/elf_arch_mips3.d: Likewise.
* gas/mips/elf_arch_mips32.d: Likewise.
* gas/mips/elf_arch_mips32r2.d: Likewise.
* gas/mips/elf_arch_mips4.d: Likewise.
* gas/mips/elf_arch_mips5.d: Likewise.
* gas/mips/elf_arch_mips64.d: Likewise.
* gas/mips/elf_arch_mips64r2.d: Likewise.
* gas/mips/elf_ase_micromips-2.d: Likewise.
* gas/mips/elf_ase_micromips.d: Likewise.
* gas/mips/elf_ase_mips16-2.d: Likewise.
* gas/mips/elf_ase_mips16.d: Likewise.
* gas/mips/module-defer-warn1.d: Likewise.
* gas/mips/module-override.d: Likewise.
* gas/mips/n32-consec.d: Likewise.
* gas/mips/nan-2008-1.d: Likewise.
* gas/mips/nan-2008-2.d: Likewise.
* gas/mips/nan-2008-3.d: Likewise.
* gas/mips/nan-2008-4.d: Likewise.
* gas/mips/nan-legacy-1.d: Likewise.
* gas/mips/nan-legacy-2.d: Likewise.
* gas/mips/nan-legacy-3.d: Likewise.
* gas/mips/nan-legacy-4.d: Likewise.
* gas/mips/nan-legacy-5.d: Likewise.
* gas/mips/tmips16-e.d: Likewise.
* gas/mips/tmips16-f.d: Likewise.
* gas/mips/tmipsel16-e.d: Likewise.
* gas/mips/tmipsel16-f.d: Likewise.
* gas/testsuite/gas/mips/mips.exp: Add new tests.
ld/testsuite/
* ld-mips-elf/abiflags-strip1-ph.d: New.
* ld-mips-elf/abiflags-strip2-ph.d: Likewise.
* ld-mips-elf/abiflags-strip3-ph.d: Likewise.
* ld-mips-elf/abiflags-strip4-ph.d: Likewise.
* ld-mips-elf/abiflags-strip5-ph.d: Likewise.
* ld-mips-elf/abiflags-strip6-ph.d: Likewise.
* ld-mips-elf/abiflags-strip7-ph.d: Likewise.
* ld-mips-elf/abiflags-strip8-ph.d: Likewise.
* ld-mips-elf/abiflags-strip9-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-0-n32-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-0-n64-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-0-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-06.d: Likewise.
* ld-mips-elf/attr-gnu-4-07.d: Likewise.
* ld-mips-elf/attr-gnu-4-08.d: Likewise.
* ld-mips-elf/attr-gnu-4-1-n32-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-1-n64-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-1-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-16.d: Likewise.
* ld-mips-elf/attr-gnu-4-17.d: Likewise.
* ld-mips-elf/attr-gnu-4-18.d: Likewise.
* ld-mips-elf/attr-gnu-4-2-n32-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-2-n64-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-2-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-26.d: Likewise.
* ld-mips-elf/attr-gnu-4-27.d: Likewise.
* ld-mips-elf/attr-gnu-4-28.d: Likewise.
* ld-mips-elf/attr-gnu-4-3-n32-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-3-n64-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-3-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-36.d: Likewise.
* ld-mips-elf/attr-gnu-4-37.d: Likewise.
* ld-mips-elf/attr-gnu-4-38.d: Likewise.
* ld-mips-elf/attr-gnu-4-4-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-46.d: Likewise.
* ld-mips-elf/attr-gnu-4-47.d: Likewise.
* ld-mips-elf/attr-gnu-4-48.d: Likewise.
* ld-mips-elf/attr-gnu-4-5-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-50.d: Likewise.
* ld-mips-elf/attr-gnu-4-52.d: Likewise.
* ld-mips-elf/attr-gnu-4-53.d: Likewise.
* ld-mips-elf/attr-gnu-4-54.d: Likewise.
* ld-mips-elf/attr-gnu-4-55.d: Likewise.
* ld-mips-elf/attr-gnu-4-56.d: Likewise.
* ld-mips-elf/attr-gnu-4-57.d: Likewise.
* ld-mips-elf/attr-gnu-4-58.d: Likewise.
* ld-mips-elf/attr-gnu-4-6-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-6.s: Likewise.
* ld-mips-elf/attr-gnu-4-60.d: Likewise.
* ld-mips-elf/attr-gnu-4-61.d: Likewise.
* ld-mips-elf/attr-gnu-4-62.d: Likewise.
* ld-mips-elf/attr-gnu-4-63.d: Likewise.
* ld-mips-elf/attr-gnu-4-64.d: Likewise.
* ld-mips-elf/attr-gnu-4-65.d: Likewise.
* ld-mips-elf/attr-gnu-4-66.d: Likewise.
* ld-mips-elf/attr-gnu-4-67.d: Likewise.
* ld-mips-elf/attr-gnu-4-68.d: Likewise.
* ld-mips-elf/attr-gnu-4-7-ph.d: Likewise.
* ld-mips-elf/attr-gnu-4-7.s: Likewise.
* ld-mips-elf/attr-gnu-4-70.d: Likewise.
* ld-mips-elf/attr-gnu-4-71.d: Likewise.
* ld-mips-elf/attr-gnu-4-72.d: Likewise.
* ld-mips-elf/attr-gnu-4-73.d: Likewise.
* ld-mips-elf/attr-gnu-4-74.d: Likewise.
* ld-mips-elf/attr-gnu-4-75.d: Likewise.
* ld-mips-elf/attr-gnu-4-76.d: Likewise.
* ld-mips-elf/attr-gnu-4-77.d: Likewise.
* ld-mips-elf/attr-gnu-4-78.d: Likewise.
* ld-mips-elf/attr-gnu-4-8.s: Likewise.
* ld-mips-elf/attr-gnu-4-81.d: Likewise.
* ld-mips-elf/empty.s: Likewise.
* ld-mips-elf/attr-gnu-4-00.d: Adjust expected output.
* ld-mips-elf/attr-gnu-4-01.d: Likewise.
* ld-mips-elf/attr-gnu-4-02.d: Likewise.
* ld-mips-elf/attr-gnu-4-03.d: Likewise.
* ld-mips-elf/attr-gnu-4-04.d: Likewise.
* ld-mips-elf/attr-gnu-4-05.d: Likewise.
* ld-mips-elf/attr-gnu-4-10.d: Likewise.
* ld-mips-elf/attr-gnu-4-11.d: Likewise.
* ld-mips-elf/attr-gnu-4-14.d: Likewise.
* ld-mips-elf/attr-gnu-4-15.d: Likewise.
* ld-mips-elf/attr-gnu-4-2.s: Likewise.
* ld-mips-elf/attr-gnu-4-20.d: Likewise.
* ld-mips-elf/attr-gnu-4-22.d: Likewise.
* ld-mips-elf/attr-gnu-4-24.d: Likewise.
* ld-mips-elf/attr-gnu-4-25.d: Likewise.
* ld-mips-elf/attr-gnu-4-3.s: Likewise.
* ld-mips-elf/attr-gnu-4-30.d: Likewise.
* ld-mips-elf/attr-gnu-4-33.d: Likewise.
* ld-mips-elf/attr-gnu-4-34.d: Likewise.
* ld-mips-elf/attr-gnu-4-35.d: Likewise.
* ld-mips-elf/attr-gnu-4-40.d: Likewise.
* ld-mips-elf/attr-gnu-4-41.d: Likewise.
* ld-mips-elf/attr-gnu-4-42.d: Likewise.
* ld-mips-elf/attr-gnu-4-43.d: Likewise.
* ld-mips-elf/attr-gnu-4-44.d: Likewise.
* ld-mips-elf/attr-gnu-4-45.d: Likewise.
* ld-mips-elf/attr-gnu-4-5.s: Likewise.
* ld-mips-elf/attr-gnu-4-51.d: Likewise.
* ld-mips-elf/attr-gnu-8-00.d: Likewise.
* ld-mips-elf/attr-gnu-8-01.d: Likewise.
* ld-mips-elf/attr-gnu-8-02.d: Likewise.
* ld-mips-elf/attr-gnu-8-10.d: Likewise.
* ld-mips-elf/attr-gnu-8-11.d: Likewise.
* ld-mips-elf/attr-gnu-8-20.d: Likewise.
* ld-mips-elf/attr-gnu-8-22.d: Likewise.
* ld-mips-elf/jalx-2.dd: Likewise.
* ld-mips-elf/mips16-pic-1.gd: Likewise.
* ld-mips-elf/mips16-pic-2.gd: Likewise.
* ld-mips-elf/mips16-pic-3.gd: Likewise.
* ld-mips-elf/mips16-pic-4a.gd: Likewise.
* ld-mips-elf/multi-got-no-shared.d: Likewise.
* ld-mips-elf/nan-2008.d: Likewise.
* ld-mips-elf/nan-legacy.d: Rework test.
* ld-mips-elf/pic-and-nonpic-3a.gd: Likewise.
* ld-mips-elf/pic-and-nonpic-3b.gd: Likewise.
* ld-mips-elf/pic-and-nonpic-5b.gd: Likewise.
* ld-mips-elf/pic-and-nonpic-6.ld: Likewise.
* ld-mips-elf/rel32-n32.d: Likewise.
* ld-mips-elf/rel32-o32.d: Likewise.
* ld-mips-elf/rel64.d: Likewise.
* ld-mips-elf/tls-multi-got-1.r: Likewise.
* ld-elf/group.ld: Discard .MIPS.abiflags and .gnu.attributes.
* ld-elf/orphan-region.ld: Likewise.
* ld-elf/orphan.ld: Likewise.
* ld-mips-elf/compressed-plt-1.ld: Likewise.
* ld-mips-elf/dyn-sec64.ld: Likewise.
* ld-mips-elf/got-dump-1.ld: Likewise.
* ld-mips-elf/got-dump-2.ld: Likewise.
* ld-mips-elf/got-page-1.ld: Likewise.
* ld-mips-elf/mips-dyn.ld: Likewise.
* ld-mips-elf/mips-lib.ld: Likewise.
* ld-mips-elf/pic-and-nonpic-3a.ld: Likewise.
* ld-mips-elf/pic-and-nonpic-3b.ld: Likewise.
* ld-mips-elf/pic-and-nonpic-4b.ld: Likewise.
* ld-mips-elf/pic-and-nonpic-5b.ld: Likewise.
* ld-mips-elf/region1.t: Likewise.
* ld-mips-elf/stub-dynsym-1.ld: Likewise.
* ld-mips-elf/tls-hidden3.ld: Likewise.
* ld-mips-elf/vxworks1.ld: Likewise.
* ld-scripts/overlay-size.t: Likewise.
* ld-mips-elf/elf-rel-got-n32-embed.d: Remove .MIPS.abiflags from
objects.
* ld-mips-elf/elf-rel-got-n32.d: Likewise.
* ld-mips-elf/elf-rel-got-n64-embed.d: Likewise.
* ld-mips-elf/elf-rel-got-n64-linux.d: Likewise.
* ld-mips-elf/elf-rel-got-n64.d: Likewise.
* ld-mips-elf/elf-rel-xgot-n32.d: Likewise.
* ld-mips-elf/elf-rel-xgot-n32-embed.d: Likewise.
* ld-mips-elf/elf-rel-xgot-n64.d: Likewise.
* ld-mips-elf/elf-rel-xgot-n64-linux.d: Likewise.
* ld-mips-elf/elf-rel-xgot-n64-embed.d: Likewise.
* ld-mips-elf/mips-elf.exp: Add new tests.
2014-07-29 12:27:59 +02:00
|
|
|
|
2014-07-29 Matthew Fortune <matthew.fortune@imgtec.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-mips.c (mips_flags_frag): New static global.
|
|
|
|
|
(struct mips_set_options): Add oddspreg field.
|
|
|
|
|
(file_mips_opts, mips_opts): Initialize oddspreg.
|
|
|
|
|
(ISA_HAS_ODD_SINGLE_FPR): Add CPU argument and update for R5900 and
|
|
|
|
|
Loongson-3a.
|
|
|
|
|
(enum options, md_longopts, md_parse_option): Add -mfpxx, -modd-spreg
|
|
|
|
|
and -mno-odd-spreg options.
|
|
|
|
|
(md_begin): Create .MIPS.abiflags section.
|
|
|
|
|
(fpabi_incompatible_with, fpabi_requires): New static function.
|
|
|
|
|
(check_fpabi): Likewise.
|
|
|
|
|
(mips_check_options): Handle fp=xx and oddspreg restrictions.
|
|
|
|
|
(file_mips_check_options): Set oddspreg by default for fp=xx.
|
|
|
|
|
(mips_oddfpreg_ok): Re-write function.
|
|
|
|
|
(check_regno): Check odd numbered registers regardless of FPR size.
|
|
|
|
|
For fp != 32 use as_bad instead of as_warn.
|
|
|
|
|
(match_float_constant): Rewrite check regarding FP register width. Add
|
|
|
|
|
support for generating constants when MXHC1 is present. Handle fp=xx
|
|
|
|
|
to comply with the ABI.
|
|
|
|
|
(macro): Update M_LI_DD similarly to match_float_constant. Generate
|
|
|
|
|
MTHC1 when available. Check that correct code can be generated for
|
|
|
|
|
fp=xx and fp=64 ABIs.
|
|
|
|
|
(parse_code_option, s_mipsset): Add fp=xx, oddspreg and nooddspreg
|
|
|
|
|
options.
|
|
|
|
|
(mips_convert_ase_flags): New static function.
|
|
|
|
|
(mips_elf_final_processing): Use fpabi == Val_GNU_MIPS_ABI_FP_OLD_64
|
|
|
|
|
to determine when to add the EF_MIPS_FP64 flag. Populate the
|
|
|
|
|
.MIPS.abiflags section.
|
|
|
|
|
(md_mips_end): Update .gnu_attribute based on command line and .module
|
|
|
|
|
as applicable. Use check_fpabi to ensure .gnu.attribute and command
|
|
|
|
|
line/.module options are consistent.
|
|
|
|
|
* doc/as.texinfo: Add missing -mgp64/-mfp64 options and document new
|
|
|
|
|
-mfpxx, -modd-spreg and -mno-odd-spreg options.
|
|
|
|
|
* doc/c-mips.texi: Document -mfpxx, -modd-spreg, -mno-odd-spreg,
|
|
|
|
|
gnu_attribute values and FP ABIs.
|
|
|
|
|
|
2014-07-22 02:10:52 +02:00
|
|
|
|
2014-07-27 Joel Sherrill <joel.sherrill@oarcorp.com>
|
|
|
|
|
|
|
|
|
|
Add RTEMS target support and simplify matching
|
|
|
|
|
|
|
|
|
|
* gas/configure.tgt (or1k*-*-rtems*): Ensure a match.
|
|
|
|
|
(or1k*-*-*): Use or1k* to match or1knd and or1kZ.
|
|
|
|
|
|
2014-07-27 14:51:20 +02:00
|
|
|
|
2014-07-27 Anthony Green <green@moxielogic.com>
|
|
|
|
|
|
|
|
|
|
* configure.tgt (generic_target): Add moxie-*-moxiebox*
|
|
|
|
|
* config/tc-moxie.c: Remove moxie_target_format.
|
|
|
|
|
(md_begin): Set default target_big_endian.
|
|
|
|
|
* config/tc-moxie.h: Only set TARGET_BYTES_BIG_ENDIAN if unset.
|
|
|
|
|
(TARGET_FORMAT): Set based on target_big_endian.
|
|
|
|
|
|
2014-07-26 13:30:50 +02:00
|
|
|
|
2014-07-26 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/bfin-parse.y: Don't include obstack.h.
|
|
|
|
|
* config/obj-aout.c: Likewise.
|
|
|
|
|
* config/obj-coff.c: Likewise.
|
|
|
|
|
* config/obj-som.c: Likewise.
|
|
|
|
|
* config/tc-bfin.c: Likewise.
|
|
|
|
|
* config/tc-i960.c: Likewise.
|
|
|
|
|
* config/tc-rl78.c: Likewise.
|
|
|
|
|
* config/tc-rx.c: Likewise.
|
|
|
|
|
* config/tc-tic4x.c: Likewise.
|
|
|
|
|
* expr.c: Likewise.
|
|
|
|
|
* listing.c: Likewise.
|
|
|
|
|
* config/obj-elf.c (elf_file_symbol): Make name_length a size_t.
|
|
|
|
|
* config/tc-aarch64.c (symbol_locate): Likewise.
|
|
|
|
|
* config/tc-arm.c (symbol_locate): Likewise.
|
|
|
|
|
* config/tc-mmix.c (mmix_handle_mmixal): Make len_0 a size_t.
|
|
|
|
|
* config/tc-score.c (s3_build_score_ops_hsh): Make len a size_t.
|
|
|
|
|
(s3_build_dependency_insn_hsh): Likewise.
|
|
|
|
|
* config/tc-score7.c (s7_build_score_ops_hsh): Likewise.
|
|
|
|
|
(s7_build_dependency_insn_hsh): Likewise.
|
|
|
|
|
* frags.c (frag_grow): Make parameter a size_t, and use size_t locals.
|
|
|
|
|
(frag_new): Make parameter a size_t.
|
|
|
|
|
(frag_var_init): Make max_chars and var parameters size_t.
|
|
|
|
|
(frag_var, frag_variant): Likewise.
|
|
|
|
|
(frag_room): Return a size_t.
|
|
|
|
|
(frag_align_pattern): Make n_fill parameter a size_t.
|
|
|
|
|
* frags.h: Update function prototypes.
|
|
|
|
|
* symbols.c (save_symbol_name): Make name_length a size_t.
|
|
|
|
|
|
Add AVX512DQ instructions and their AVX512VL variants.
gas/
* config/tc-i386.c (cpu_arch): Add .avx512dq, CPU_AVX512DQ_FLAGS.
* doc/c-i386.texi: Document avx512dq/.avx512dq.
gas/testsuite/
* gas/i386/avx512dq-intel.d: New.
* gas/i386/avx512dq.d: New.
* gas/i386/avx512dq.s: New.
* gas/i386/avx512dq_vl-intel.d: New.
* gas/i386/avx512dq_vl.d: New.
* gas/i386/avx512dq_vl.s: New.
* gas/i386/i386.exp: Run new AVX-512 tests.
* gas/i386/x86-64-avx512dq-intel.d: New.
* gas/i386/x86-64-avx512dq.d: New.
* gas/i386/x86-64-avx512dq.s: New.
* gas/i386/x86-64-avx512dq_vl-intel.d: New.
* gas/i386/x86-64-avx512dq_vl.d: New.
* gas/i386/x86-64-avx512dq_vl.s: New.
opcodes/
* i386-dis-evex.h: Updated.
* i386-dis.c (PREFIX enum): Add PREFIX_EVEX_0F54, PREFIX_EVEX_0F55,
PREFIX_EVEX_0F56, PREFIX_EVEX_0F57, PREFIX_EVEX_0F3A16,
PREFIX_EVEX_0F3A22, PREFIX_EVEX_0F3A50, PREFIX_EVEX_0F3A51,
PREFIX_EVEX_0F3A56, PREFIX_EVEX_0F3A57, PREFIX_EVEX_0F3A66,
PREFIX_EVEX_0F3A67.
(VEX_LEN enum): Add VEX_LEN_0F92_P_2, VEX_LEN_0F93_P_2,
VEX_W_0F92_P_2_LEN_0, VEX_W_0F93_P_2_LEN_0.
(VEX_W enum): Add EVEX_W_0F54_P_0, EVEX_W_0F54_P_2, EVEX_W_0F55_P_0,
EVEX_W_0F55_P_2, EVEX_W_0F56_P_0, EVEX_W_0F56_P_2, EVEX_W_0F57_P_0,
EVEX_W_0F57_P_2, EVEX_W_0F78_P_2, EVEX_W_0F79_P_2, EVEX_W_0F7A_P_2,
EVEX_W_0F7B_P_2, EVEX_W_0F3838_P_1, EVEX_W_0F3839_P_1,
EVEX_W_0F3A16_P_2, EVEX_W_0F3A22_P_2, EVEX_W_0F3A50_P_2,
EVEX_W_0F3A51_P_2, EVEX_W_0F3A56_P_2, EVEX_W_0F3A57_P_2,
EVEX_W_0F3A66_P_2, EVEX_W_0F3A67_P_2.
(prefix_table): Add entries for new instructions.
(vex_len_table): Ditto.
(vex_w_table): Ditto.
(OP_E_memory): Update xmmq_mode handling.
* i386-gen.c (cpu_flag_init): Add CPU_AVX512DQ_FLAGS.
(cpu_flags): Add CpuAVX512DQ.
* i386-init.h: Regenerared.
* i386-opc.h (CpuAVX512DQ): New.
(i386_cpu_flags): Add cpuavx512dq.
* i386-opc.tbl: Add AVX512DQ instructions.
* i386-tbl.h: Regenerate.
2014-07-15 11:33:39 +02:00
|
|
|
|
2014-07-22 Sergey Guriev <sergey.s.guriev@intel.com>
|
|
|
|
|
Alexander Ivchenko <alexander.ivchenko@intel.com>
|
|
|
|
|
Maxim Kuznetsov <maxim.kuznetsov@intel.com>
|
|
|
|
|
Sergey Lega <sergey.s.lega@intel.com>
|
|
|
|
|
Anna Tikhonova <anna.tikhonova@intel.com>
|
|
|
|
|
Ilya Tocar <ilya.tocar@intel.com>
|
|
|
|
|
Andrey Turetskiy <andrey.turetskiy@intel.com>
|
|
|
|
|
Ilya Verbin <ilya.verbin@intel.com>
|
|
|
|
|
Kirill Yukhin <kirill.yukhin@intel.com>
|
|
|
|
|
Michael Zolotukhin <michael.v.zolotukhin@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (cpu_arch): Add .avx512dq, CPU_AVX512DQ_FLAGS.
|
|
|
|
|
* doc/c-i386.texi: Document avx512dq/.avx512dq.
|
|
|
|
|
|
Add support for AVX512BW instructions and their AVX512VL versions.
gas/
* config/tc-i386.c (cpu_arch): Add .avx512bw, CPU_AVX512BW_FLAGS.
* doc/c-i386.texi: Document avx512bw/.avx512bw.
gas/testsuite/
* gas/i386/avx512bw-intel.d: New.
* gas/i386/avx512bw-opts-intel.d: New.
* gas/i386/avx512bw-opts.d: New.
* gas/i386/avx512bw-opts.s: New.
* gas/i386/avx512bw-wig.s: New.
* gas/i386/avx512bw-wig1-intel.d: New.
* gas/i386/avx512bw-wig1.d: New.
* gas/i386/avx512bw.d: New.
* gas/i386/avx512bw.s: New.
* gas/i386/avx512bw_vl-intel.d: New.
* gas/i386/avx512bw_vl-opts-intel.d: New.
* gas/i386/avx512bw_vl-opts.d: New.
* gas/i386/avx512bw_vl-opts.s: New.
* gas/i386/avx512bw_vl-wig.s: New.
* gas/i386/avx512bw_vl-wig1-intel.d: New.
* gas/i386/avx512bw_vl-wig1.d: New.
* gas/i386/avx512bw_vl.d: New.
* gas/i386/avx512bw_vl.s: New.
* gas/i386/i386.exp: Run new AVX-512 tests.
* gas/i386/x86-64-avx512bw-intel.d: New.
* gas/i386/x86-64-avx512bw-opts-intel.d: New.
* gas/i386/x86-64-avx512bw-opts.d: New.
* gas/i386/x86-64-avx512bw-opts.s: New.
* gas/i386/x86-64-avx512bw-wig.s: New.
* gas/i386/x86-64-avx512bw-wig1-intel.d: New.
* gas/i386/x86-64-avx512bw-wig1.d: New.
* gas/i386/x86-64-avx512bw.d: New.
* gas/i386/x86-64-avx512bw.s: New.
* gas/i386/x86-64-avx512bw_vl-intel.d: New.
* gas/i386/x86-64-avx512bw_vl-opts-intel.d: New.
* gas/i386/x86-64-avx512bw_vl-opts.d: New.
* gas/i386/x86-64-avx512bw_vl-opts.s: New.
* gas/i386/x86-64-avx512bw_vl-wig.s: New.
* gas/i386/x86-64-avx512bw_vl-wig1-intel.d: New.
* gas/i386/x86-64-avx512bw_vl-wig1.d: New.
* gas/i386/x86-64-avx512bw_vl.d: New.
* gas/i386/x86-64-avx512bw_vl.s: New.
opcodes/
* i386-dis-evex.h: Add new instructions (prefixes bellow).
* i386-dis.c (fetch_data): Add EdqwS, Edb, Edw, MaskBDE.
(enum): Add dqw_swap_mode, db_mode, dw_mode, mask_bd_mode, REG_EVEX_0F71.
(PREFIX enum): Add PREFIX_VEX_0F4A, PREFIX_VEX_0F99, PREFIX_VEX_0F3A31,
PREFIX_VEX_0F3A33, PREFIX_EVEX_0F60, PREFIX_EVEX_0F61, PREFIX_EVEX_0F63,
PREFIX_EVEX_0F64, PREFIX_EVEX_0F65, PREFIX_EVEX_0F67, PREFIX_EVEX_0F68,
PREFIX_EVEX_0F69, PREFIX_EVEX_0F6B, PREFIX_EVEX_0F71_REG_2, PREFIX_EVEX_0F71_REG_4,
PREFIX_EVEX_0F71_REG_6, PREFIX_EVEX_0F73_REG_3, PREFIX_EVEX_0F73_REG_7,
PREFIX_EVEX_0F74, PREFIX_EVEX_0F75, PREFIX_EVEX_0FC4, PREFIX_EVEX_0FC5,
PREFIX_EVEX_0FD1, PREFIX_EVEX_0FD5, PREFIX_EVEX_0FD8, PREFIX_EVEX_0FD9,
PREFIX_EVEX_0FDA, PREFIX_EVEX_0FDC, PREFIX_EVEX_0FDD, PREFIX_EVEX_0FDE,
PREFIX_EVEX_0FE0, PREFIX_EVEX_0FE1, PREFIX_EVEX_0FE3, PREFIX_EVEX_0FE4,
PREFIX_EVEX_0FE5, PREFIX_EVEX_0FE8, PREFIX_EVEX_0FE9, PREFIX_EVEX_0FEA,
PREFIX_EVEX_0FEC, PREFIX_EVEX_0FED, PREFIX_EVEX_0FEE, PREFIX_EVEX_0FF1,
PREFIX_EVEX_0FF5, PREFIX_EVEX_0FF6, PREFIX_EVEX_0FF8, PREFIX_EVEX_0FF9,
PREFIX_EVEX_0FFC, PREFIX_EVEX_0FFD, PREFIX_EVEX_0F3800, PREFIX_EVEX_0F3804,
PREFIX_EVEX_0F380B, PREFIX_EVEX_0F3810, PREFIX_EVEX_0F381C, PREFIX_EVEX_0F381D,
PREFIX_EVEX_0F3820, PREFIX_EVEX_0F3826, PREFIX_EVEX_0F382B, PREFIX_EVEX_0F3830,
PREFIX_EVEX_0F3838, PREFIX_EVEX_0F383C, PREFIX_EVEX_0F383E, PREFIX_EVEX_0F3866,
PREFIX_EVEX_0F3875, PREFIX_EVEX_0F3878, PREFIX_EVEX_0F3879, PREFIX_EVEX_0F387A,
PREFIX_EVEX_0F387B, PREFIX_EVEX_0F387D, PREFIX_EVEX_0F388D, PREFIX_EVEX_0F3A0F,
PREFIX_EVEX_0F3A14, PREFIX_EVEX_0F3A15, PREFIX_EVEX_0F3A20, PREFIX_EVEX_0F3A3E,
PREFIX_EVEX_0F3A3F, PREFIX_EVEX_0F3A42.
(VEX_LEN enum): Add VEX_LEN_0F41_P_2, VEX_LEN_0F42_P_2, VEX_LEN_0F44_P_2,
VEX_LEN_0F45_P_2, VEX_LEN_0F46_P_2, VEX_LEN_0F47_P_2, VEX_LEN_0F4A_P_0,
VEX_LEN_0F4A_P_2, VEX_LEN_0F4B_P_0, VEX_LEN_0F90_P_2, VEX_LEN_0F91_P_2,
VEX_LEN_0F92_P_3, VEX_LEN_0F93_P_3, VEX_LEN_0F98_P_2, VEX_LEN_0F99_P_0,
VEX_LEN_0F99_P_2, VEX_LEN_0F3A31_P_2, VEX_LEN_0F3A33_P_2, VEX_W_0F41_P_2_LEN_1,
VEX_W_0F42_P_2_LEN_1, VEX_W_0F44_P_2_LEN_0, VEX_W_0F45_P_2_LEN_1,
VEX_W_0F46_P_2_LEN_1, VEX_W_0F47_P_2_LEN_1, VEX_W_0F4A_P_0_LEN_1,
VEX_W_0F4A_P_2_LEN_1, VEX_W_0F4B_P_0_LEN_1, VEX_W_0F90_P_2_LEN_0,
VEX_W_0F91_P_2_LEN_0, VEX_W_0F92_P_3_LEN_0, VEX_W_0F93_P_3_LEN_0,
VEX_W_0F98_P_2_LEN_0, VEX_W_0F99_P_0_LEN_0, VEX_W_0F99_P_2_LEN_0,
VEX_W_0F3A31_P_2_LEN_0, VEX_W_0F3A33_P_2_LEN_0.
(VEX_W enum): Add EVEX_W_0F6B_P_2, EVEX_W_0F6F_P_3, EVEX_W_0F7F_P_3,
EVEX_W_0F3810_P_1, EVEX_W_0F3810_P_2, EVEX_W_0F3811_P_2, EVEX_W_0F3812_P_2,
EVEX_W_0F3820_P_1, EVEX_W_0F3826_P_1, EVEX_W_0F3826_P_2, EVEX_W_0F3828_P_1,
EVEX_W_0F3829_P_1, EVEX_W_0F382B_P_2, EVEX_W_0F3830_P_1, EVEX_W_0F3866_P_2,
EVEX_W_0F3875_P_2, EVEX_W_0F3878_P_2, EVEX_W_0F3879_P_2, EVEX_W_0F387A_P_2,
EVEX_W_0F387B_P_2, EVEX_W_0F387D_P_2, EVEX_W_0F388D_P_2, EVEX_W_0F3A3E_P_2,
EVEX_W_0F3A3F_P_2, EVEX_W_0F3A42_P_2.
(prefix_table): Add entries for new instructions.
(vex_table) : Ditto.
(vex_len_table): Ditto.
(vex_w_table): Ditto.
(intel_operand_size): Add db_mode, dw_mode, dqw_swap_mode,
mask_bd_mode handling.
(OP_E_register): Add dqw_swap_mode, dw_mode, db_mode, mask_bd_mode
handling.
(OP_E_memory): Add dqw_mode, dw_mode, dqw_swap_mode, dqb_mode, db_mode
handling.
(OP_G): Add db_mode, dw_mode, dqw_swap_mode, mask_bd_mode handling.
(OP_EX): Add dqw_swap_mode handling.
(OP_VEX): Add mask_bd_mode handling.
(OP_Mask): Add mask_bd_mode handling.
* i386-gen.c (cpu_flag_init): Add CPU_AVX512BW_FLAGS.
(cpu_flags): Add CpuAVX512BW.
* i386-init.h: Regenerated.
* i386-opc.h (CpuAVX512BW): New.
(i386_cpu_flags): Add cpuavx512bw.
* i386-opc.tbl: Add AVX512BW instructions.
* i386-tbl.h: Regenerate.
2014-07-11 14:32:29 +02:00
|
|
|
|
2014-07-22 Sergey Guriev <sergey.s.guriev@intel.com>
|
|
|
|
|
Alexander Ivchenko <alexander.ivchenko@intel.com>
|
|
|
|
|
Maxim Kuznetsov <maxim.kuznetsov@intel.com>
|
|
|
|
|
Sergey Lega <sergey.s.lega@intel.com>
|
|
|
|
|
Anna Tikhonova <anna.tikhonova@intel.com>
|
|
|
|
|
Ilya Tocar <ilya.tocar@intel.com>
|
|
|
|
|
Andrey Turetskiy <andrey.turetskiy@intel.com>
|
|
|
|
|
Ilya Verbin <ilya.verbin@intel.com>
|
|
|
|
|
Kirill Yukhin <kirill.yukhin@intel.com>
|
|
|
|
|
Michael Zolotukhin <michael.v.zolotukhin@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (cpu_arch): Add .avx512bw, CPU_AVX512BW_FLAGS.
|
|
|
|
|
* doc/c-i386.texi: Document avx512bw/.avx512bw.
|
|
|
|
|
|
2014-07-18 12:59:54 +02:00
|
|
|
|
2014-07-22 Sergey Guriev <sergey.s.guriev@intel.com>
|
|
|
|
|
Alexander Ivchenko <alexander.ivchenko@intel.com>
|
|
|
|
|
Maxim Kuznetsov <maxim.kuznetsov@intel.com>
|
|
|
|
|
Sergey Lega <sergey.s.lega@intel.com>
|
|
|
|
|
Anna Tikhonova <anna.tikhonova@intel.com>
|
|
|
|
|
Ilya Tocar <ilya.tocar@intel.com>
|
|
|
|
|
Andrey Turetskiy <andrey.turetskiy@intel.com>
|
|
|
|
|
Ilya Verbin <ilya.verbin@intel.com>
|
|
|
|
|
Kirill Yukhin <kirill.yukhin@intel.com>
|
|
|
|
|
Michael Zolotukhin <michael.v.zolotukhin@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (cpu_arch): Add .avx512vl, CPU_AVX512VL_FLAGS.
|
|
|
|
|
(build_vex_prefix): Don't abort on VEX.W.
|
|
|
|
|
(check_VecOperands): Support BROADCAST_1TO4 and BROADCAST_1TO2.
|
|
|
|
|
(check_VecOperations): Ditto.
|
|
|
|
|
* doc/c-i386.texi: Document avx512vl/.avx512vl.
|
|
|
|
|
|
2014-07-22 00:27:05 +02:00
|
|
|
|
2014-07-21 Joel Sherrill <joel.sherrill@oarcorp.com>
|
|
|
|
|
|
|
|
|
|
Add or reactivate or1k-*-rtems*
|
|
|
|
|
* gas/configure.tgt (or1k-*-rtems*): Add.
|
|
|
|
|
|
2014-07-17 11:59:32 +02:00
|
|
|
|
2014-07-17 Ilya Tocar <ilya.tocar@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (parse_register): Set need_vrex.
|
|
|
|
|
|
2014-07-15 11:15:43 +02:00
|
|
|
|
2014-07-15 Jiong Wang <jiong.wang@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (add_to_lit_pool): Use "inst.operands[1].imm" for
|
|
|
|
|
sign extension. Casting the type of imm1 and imm2 to offsetT. Fix
|
|
|
|
|
one logic error when checking X_op.
|
|
|
|
|
|
2014-07-14 20:59:50 +02:00
|
|
|
|
2014-07-14 Andreas Schwab <schwab@linux-m68k.org>
|
|
|
|
|
|
|
|
|
|
* config/tc-m68k.c (md_convert_frag_1): Don't complain with
|
|
|
|
|
--pcrel about TAB (DBCCLBR, LONG) conversion.
|
|
|
|
|
|
2014-07-12 09:35:35 +02:00
|
|
|
|
2014-07-12 David Majnemer <david.majnemer@gmail.com>
|
|
|
|
|
|
|
|
|
|
* read.c (assign_symbol): Don't force "set" symbols local for PE.
|
|
|
|
|
|
2014-07-08 13:14:56 +02:00
|
|
|
|
2014-07-08 Jiong Wang <jiong.wang@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (literal_pool): New field "alignment".
|
|
|
|
|
(find_or_make_literal_pool): Initialize "alignment" to 2.
|
|
|
|
|
(s_ltorg): Align the pool using value of "alignment"
|
|
|
|
|
(parse_big_immediate): New parameter "in_exp". Return
|
|
|
|
|
parsed expression if "in_exp" is not null.
|
|
|
|
|
(parse_address_main): Invoke "parse_big_immediate" for
|
|
|
|
|
constant parameter.
|
|
|
|
|
(add_to_lit_pool): Add one parameter 'nbytes'.
|
|
|
|
|
Split 8 byte entry into two 4 byte entry.
|
|
|
|
|
Add padding to align 8 byte entry to 8 byte boundary.
|
|
|
|
|
(encode_arm_cp_address): Generate literal pool entry if possible.
|
|
|
|
|
(move_or_literal_pool): Generate entry for vldr case.
|
|
|
|
|
(enum lit_type): New enum type.
|
|
|
|
|
(do_ldst): Use new enum type.
|
|
|
|
|
(do_ldstv4): Likewise.
|
|
|
|
|
(do_t_ldst): Likewise.
|
|
|
|
|
(neon_write_immbits): Support Thumb-2 mode.
|
|
|
|
|
|
2014-07-07 17:15:19 +02:00
|
|
|
|
2014-07-07 Barney Stratford <barney_stratford@fastmail.fm>
|
|
|
|
|
|
|
|
|
|
* config/tc-avr.c (avr_operand): Permit referring to r26-r31 by
|
|
|
|
|
name as [xyz][hl]. Permit using a symbol whoes name begins with
|
|
|
|
|
‘r’ to refer to a register.
|
|
|
|
|
Allow arbitrary expressions for the P and p operators.
|
|
|
|
|
(md_apply_fix): Check the BFD_RELOC_AVR_PORT5 and
|
|
|
|
|
BFD_RELOC_AVR_PORT6 relocations.
|
|
|
|
|
|
2014-07-04 07:36:40 +02:00
|
|
|
|
2014-07-04 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* doc/internals.texi: Update "configure.in" comments.
|
|
|
|
|
* acinclude.m4: Likewise.
|
|
|
|
|
* config/tc-sparc.c: Likewise.
|
|
|
|
|
|
2014-07-04 05:29:42 +02:00
|
|
|
|
2014-07-04 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* configure.ac: Rename from configure.in.
|
|
|
|
|
* Makefile.in: Regenerate.
|
|
|
|
|
* config.in: Regenerate.
|
|
|
|
|
* doc/Makefile.in: Regenerate.
|
|
|
|
|
|
2014-07-04 05:42:07 +02:00
|
|
|
|
2014-07-04 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* doc/Makefile.am (CONFIG_STATUS_DEPENDENCIES): Delete.
|
|
|
|
|
* doc/Makefile.in: Regenerate.
|
|
|
|
|
|
2014-07-04 04:05:16 +02:00
|
|
|
|
2014-07-04 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* configure.in: Include bfd/version.m4.
|
|
|
|
|
(AC_INIT, AM_INIT_AUTOMAKE): Use modern form.
|
|
|
|
|
(BFD_VERSION): Delete.
|
|
|
|
|
* configure.com: Get bfd version from bfd/version.m4.
|
|
|
|
|
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Remove bfd/configure.in.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* Makefile.in: Regenerate.
|
|
|
|
|
* doc/Makefile.in: Regenerate.
|
|
|
|
|
|
2014-07-01 11:20:17 +02:00
|
|
|
|
2014-07-01 Barney Stratford <barney_stratford@fastmail.fm>
|
|
|
|
|
Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
|
|
|
|
|
Pitchumani Sivanupandi <pitchumani.s@atmel.com>
|
|
|
|
|
Soundararajan <Sounderarajan.D@atmel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-avr.c (mcu_types): Add avrtiny arch.
|
|
|
|
|
Add avrtiny arch devices attiny4, attiny5, attiny9, attiny10, attiny20
|
|
|
|
|
and attiny40.
|
|
|
|
|
(md_show_usage): Add avrtiny arch in usage message.
|
2014-07-04 04:05:16 +02:00
|
|
|
|
(avr_operand): validate and issue error for invalid register for
|
|
|
|
|
avrtiny.
|
2014-07-01 11:20:17 +02:00
|
|
|
|
add new reloc exp for 16 bit lds/sts instruction.
|
2014-07-04 04:05:16 +02:00
|
|
|
|
(md_apply_fix): check 16 bit lds/sts operand for out of range and
|
|
|
|
|
encode.
|
2014-07-01 11:20:17 +02:00
|
|
|
|
(md_assemble): check ISA for arch and issue diagnostic.
|
|
|
|
|
* NEWS: Mention new support.
|
|
|
|
|
* doc/c-avr.texi: Document support for avrtiny architecture.
|
|
|
|
|
|
2014-06-27 03:24:03 +02:00
|
|
|
|
2014-06-27 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/obj-macho.c (obj_mach_o_set_symbol_qualifier): Don't set
|
|
|
|
|
SYM_MACHO_FIELDS_NOT_VALIDATED after reporting an error.
|
|
|
|
|
(obj_mach_o_frob_label): Avoid cascading errors.
|
|
|
|
|
(obj_mach_o_frob_symbol): Don't set SYM_MACHO_FIELDS_NOT_VALIDATED.
|
|
|
|
|
|
2014-06-18 23:16:30 +02:00
|
|
|
|
2014-06-18 DJ Delorie <dj@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/rx-parse.y (BSET, BCLR, BTST, BNOT, BMCMD): Make .B
|
|
|
|
|
suffix optional.
|
|
|
|
|
|
2014-06-18 00:11:01 +02:00
|
|
|
|
2014-06-17 Hans-Peter Nilsson <hp@bitrange.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-mmix.c (loc_assert_s): New member frag.
|
|
|
|
|
(s_loc): Set it.
|
|
|
|
|
(mmix_md_end): If an error is reported for a LOC expression, patch
|
|
|
|
|
up the related frag.
|
|
|
|
|
|
2014-06-17 18:21:08 +02:00
|
|
|
|
2014-06-17 Chris Metcalf <cmetcalf@tilera.com>
|
|
|
|
|
|
|
|
|
|
PR gas/16908
|
|
|
|
|
* macro.c (buffer_and_nest): Honour #line directives inside
|
|
|
|
|
macros.
|
|
|
|
|
|
2014-06-17 11:06:00 +02:00
|
|
|
|
2014-06-17 Jiong Wang <jiong.wang@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (depr_it_insns): New check for inc/dec sp.
|
|
|
|
|
|
2014-06-17 00:56:01 +02:00
|
|
|
|
2014-06-17 Hans-Peter Nilsson <hp@axis.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-cris.c (cris_bad): New function.
|
|
|
|
|
(cris_process_instruction): Where applicable, use it instead of
|
|
|
|
|
as_bad.
|
|
|
|
|
|
2014-06-16 18:37:46 +02:00
|
|
|
|
2014-06-16 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-aarch64.c (md_apply_fix): Ignore unused relocs.
|
|
|
|
|
|
2014-06-16 18:22:19 +02:00
|
|
|
|
2014-06-16 Jiong Wang <jiong.wang@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-aarch64.c (END_OF_INSN): New macro.
|
|
|
|
|
(parse_operands): Handle operand given and in wrong format when
|
|
|
|
|
operand is optional.
|
|
|
|
|
|
2014-06-16 03:34:04 +02:00
|
|
|
|
2014-06-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* write.h (subsegs_finish): Delete declaration.
|
|
|
|
|
* write.c (subsegs_finish): Make static.
|
|
|
|
|
(write_object_file): Call subsegs_finish from here. Don't print
|
|
|
|
|
warning and error count here..
|
|
|
|
|
* as.c (main): ..do so here instead. Remove dead code for "no
|
|
|
|
|
object file generated". Split out count strings to better support
|
|
|
|
|
internationalisation. Don't call subsegs_finish. Tidy setting of
|
|
|
|
|
"keep_it". Run write_object_file even after errors.
|
|
|
|
|
(keep_it): Make static.
|
|
|
|
|
* config/obj-elf.c (elf_frob_symbol): Remove assert.
|
|
|
|
|
(elf_frob_file_before_adjust): Likewise.
|
|
|
|
|
|
2014-06-16 02:32:59 +02:00
|
|
|
|
2014-06-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-dlx.c (machine_ip): Move initialisation of the_insn
|
|
|
|
|
earlier.
|
|
|
|
|
|
2014-06-16 03:58:26 +02:00
|
|
|
|
2014-06-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (reloc): Don't avoid pcrel check for
|
|
|
|
|
BFD_RELOC_SIZE64. Return NO_RELOC on failing pcrel check.
|
|
|
|
|
|
2014-06-16 03:26:56 +02:00
|
|
|
|
2014-06-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-tic6x.c (s_tic6x_ehtype): Clear after frag_more.
|
|
|
|
|
(tic6x_output_exidx_entry): Likewise.
|
|
|
|
|
(md_apply_fix): Simplify 1 byte md_number_to_chars.
|
|
|
|
|
|
2014-06-16 03:03:26 +02:00
|
|
|
|
2014-06-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-tic54x.c (tic54x_mlib): Don't write garbage past
|
|
|
|
|
end of archive to temp file.
|
|
|
|
|
(tic54x_start_line_hook): Start scan for parallel on next line,
|
|
|
|
|
not one char into next line (which may overrun the buffer).
|
|
|
|
|
|
2014-06-16 02:47:50 +02:00
|
|
|
|
2014-06-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-vax.c (md_apply_fix): Rewrite.
|
|
|
|
|
(tc_gen_reloc, vax_cons, vax_cons_fix_new): Style: Use NO_RELOC
|
|
|
|
|
define rather than the equivalent BFD_RELOC_NONE.
|
|
|
|
|
|
2014-06-16 02:26:29 +02:00
|
|
|
|
2014-06-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (s_arm_elf_cons): Initialise after frag_more.
|
|
|
|
|
(md_apply_fix): Delete now unnecessary zeroing for BFD_RELOC_ARM_GOT*
|
|
|
|
|
and BFD_RELOC_ARM_TLS* relocs. Simplify BFD_RELOC_8 case.
|
|
|
|
|
|
2014-06-16 02:20:15 +02:00
|
|
|
|
2014-06-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-cris.c (md_create_long_jump): Follow "short" jump
|
|
|
|
|
with a nop rather than leaving uninitialised.
|
|
|
|
|
|
2014-06-13 16:52:55 +02:00
|
|
|
|
2014-06-13 Chen Gang <gang.chen.5i5j@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-score7.c: Replace sprintf with strcpy where
|
|
|
|
|
appropriate.
|
2014-06-13 17:07:21 +02:00
|
|
|
|
(s7_b32_relax_to_b16): Use symbol_get_frag() to access a symbol's
|
|
|
|
|
frag.
|
|
|
|
|
* config/tc-score.c (s3_relax_branch_inst16): Likewise.
|
|
|
|
|
(s3_relax_cmpbranch_inst32): Likewise.
|
2014-06-13 16:52:55 +02:00
|
|
|
|
|
2014-06-07 04:39:04 +02:00
|
|
|
|
2014-06-07 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-ppc.c (ppc_insert_operand): Handle PPC_OPERAND_SIGNOPT
|
|
|
|
|
on unsigned fields. Comment on PPC_OPERAND_SIGNOPT signed fields
|
|
|
|
|
in 64-bit mode.
|
|
|
|
|
|
2014-06-06 08:29:19 +02:00
|
|
|
|
2014-06-02 Martin Storsjo <martin@martin.st>
|
|
|
|
|
|
|
|
|
|
* doc/c-aarch64.texi: Fix the documentation on :pg_hi21:.
|
|
|
|
|
|
Make it easy to make --disable-werror the default for both binutils and gdb
The goal of this patch is to provide an easy way to make
--disable-werror the default when building binutils, or the parts
of binutils that need to get built when building GDB. In development
mode, we want to continue making -Werror the default with GCC.
But, when making releases, I think we want to make it as easy as
possible for regular users to successfully build from sources.
GDB already has this kind of feature to turn -Werror as well as
the use of the libmcheck library. As GDB Release Manager, I take
advantage of it to turn those off after having cut the branch.
I'd like to be able to do the same for the binutils bits. And
perhaps Tristan will want to do the same for his releases too
(not sure, binutils builders might be a little savvier than GDB
builders).
This patch introduces a new file, called development.sh, which
just sets a variable called $development. In our development branches
(Eg. "master"), it's set to true. But setting it to false would allow
us to change the default behavior of various development-related
features to be turned off; in this case, it turns off the use of
-Werror by default (use --enable-werror to turn it back on).
bfd/ChangeLog:
* development.sh: New file.
* warning.m4 (AM_BINUTILS_WARNINGS): Source bfd/development.sh.
Make -Werror the default with GCC only if DEVELOPMENT is true.
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add
$(srcdir)/development.sh.
* Makefile.in, configure: Regenerate.
binutils/ChangeLog:
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add dependency on
bfd's development.sh.
* Makefile.in, configure: Regenerate.
gas/ChangeLog:
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add dependency on
bfd's development.sh.
* Makefile.in, configure: Regenerate.
gold/ChangeLog:
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): New.
* Makefile.in, configure: Regenerate.
gprof/ChangeLog:
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add dependency on
bfd's development.sh.
* Makefile.in, configure: Regenerate.
ld/ChangeLog:
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add dependency on
bfd's development.sh.
* Makefile.in, configure: Regenerate.
opcodes/ChangeLog:
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add dependency on
bfd's development.sh.
* Makefile.in, configure: Regenerate.
gdb/ChangeLog:
* development.sh: Delete.
* Makefile.in (config.status): Adjust dependency on development.sh.
* configure.ac: Adjust development.sh source call.
* configure: Regenerate.
gdb/gdbserver/ChangeLog:
* configure.ac: Adjust development.sh source call.
* Makefile.in (config.status): Adjust dependency on development.sh.
* configure: Regenerate.
Tested on x86_64-linux by building two ways: One with DEVELOPMENT
set to true, and one with DEVELOPMENT set to false. In the first
case, I could see the use of -Werror, while it disappeared in
the second case.
2014-05-19 23:46:01 +02:00
|
|
|
|
2014-06-05 Joel Brobecker <brobecker@adacore.com>
|
|
|
|
|
|
|
|
|
|
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add dependency on
|
|
|
|
|
bfd's development.sh.
|
|
|
|
|
* Makefile.in, configure: Regenerate.
|
|
|
|
|
|
2014-06-03 09:49:02 +02:00
|
|
|
|
2014-06-03 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-msp430.c (OPTION_WARN_INTR_NOPS): Use y instead of z.
|
|
|
|
|
(OPTION_NO_WARN_INTR_NOPS): Use Y instead of Z.
|
|
|
|
|
* doc/c-msp430.texi: Update command line option description.
|
|
|
|
|
|
2014-05-22 11:23:22 +02:00
|
|
|
|
2014-05-22 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* listing.c (listing_warning, listing_error): Add space after colon.
|
|
|
|
|
* messages.c (as_warn_internal, as_bad_internal): Use the same
|
|
|
|
|
string as above.
|
|
|
|
|
|
2014-05-21 00:50:21 +02:00
|
|
|
|
2014-05-20 Matthew Fortune <matthew.fortune@imgtec.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-mips.c (file_mips_opts_checked): New static global.
|
|
|
|
|
(s_module): New static function.
|
|
|
|
|
(file_ase): Remove.
|
|
|
|
|
(mips_pseudo_table): Add .module handler.
|
|
|
|
|
(mips_set_ase): Add opts argument and use instead of mips_opts.
|
|
|
|
|
(md_assemble): Use file_mips_check_options.
|
|
|
|
|
(md_parse_option): Update to use file_mips_opts instead of mips_opts.
|
|
|
|
|
(mips_set_architecture): Delete function. Moved to...
|
|
|
|
|
(mips_after_parse_args): Here. All logic now applies to
|
|
|
|
|
file_mips_opts first and then copies the final state to mips_opts.
|
|
|
|
|
Move error checking and defaults inference to mips_check_options and
|
|
|
|
|
file_mips_check_options.
|
|
|
|
|
(mips_check_options): New static function. Common option checking for
|
|
|
|
|
command line, .module and .set. Use .module values in error messages
|
|
|
|
|
instead of refering to command line options.
|
|
|
|
|
(file_mips_check_options): New static function. A wrapper for
|
|
|
|
|
mips_check_options with file_mips_opts. Updates BFD arch based on
|
|
|
|
|
final options.
|
|
|
|
|
(s_mipsset): Split into s_mipsset and parse_code_option. Settings
|
|
|
|
|
supported by both .set and .module are moved to parse_code_option.
|
|
|
|
|
Warnings and errors are kept in s_mipsset because when
|
|
|
|
|
parse_code_option is used with s_module the warnings are deferred
|
|
|
|
|
until code is generated. Any setting supporting 'default' value is
|
|
|
|
|
kept in s_mipsset as it is not applicable to s_module. Inferred
|
|
|
|
|
settings are also kept in s_mipsset as s_module does not infer any
|
|
|
|
|
settings. Use mips_check_options.
|
|
|
|
|
(parse_code_option): New static function derived from s_mipsset.
|
|
|
|
|
(s_module): New static function that implements .module. Allows file
|
|
|
|
|
level settings to be changed until code is generated.
|
|
|
|
|
(s_cpload, s_cpsetup, s_cplocal): Use file_mips_check_options.
|
|
|
|
|
(s_cprestore, s_cpreturn, s_cpadd, mips_address_bytes): Likewise.
|
|
|
|
|
(mips_elf_final_processing): Update file_ase to file_mips_opts.ase.
|
|
|
|
|
(md_mips_end): Use file_mips_check_options.
|
|
|
|
|
* doc/c-mips.texi: Document .module.
|
|
|
|
|
|
2014-05-21 00:34:19 +02:00
|
|
|
|
2014-05-20 Matthew Fortune <matthew.fortune@imgtec.com>
|
|
|
|
|
|
|
|
|
|
* messages.c (as_warn_internal): Remove extra whitespace from
|
|
|
|
|
warning messages.
|
|
|
|
|
|
2014-05-20 13:45:47 +02:00
|
|
|
|
2014-05-20 Matthew Fortune <matthew.fortune@imgtec.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-mips.c (FP64_ASES): Add ASE_MSA.
|
|
|
|
|
(mips_after_parse_args): Do not select ASE_MSA without -mfp64.
|
|
|
|
|
|
2014-05-20 21:45:30 +02:00
|
|
|
|
2014-05-20 Mike Stump <mikestump@comcast.net>
|
|
|
|
|
|
|
|
|
|
* messages.c (as_warn_internal): Ensure we don't interleave output
|
|
|
|
|
within a single line when make -j is used.
|
|
|
|
|
(as_bad_internal): Likewise.
|
|
|
|
|
|
2014-05-20 20:02:41 +02:00
|
|
|
|
2014-05-20 Richard Sandiford <rdsandiford@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* config/obj-elf.h (obj_elf_seen_attribute): Declare.
|
|
|
|
|
* config/obj-elf.c (recorded_attribute_info): New structure.
|
|
|
|
|
(recorded_attributes): New variable.
|
|
|
|
|
(record_attribute, obj_elf_seen_attribute): New functions.
|
|
|
|
|
(obj_elf_vendor_attribute): Record which attributes have been seen.
|
|
|
|
|
|
2014-05-20 11:28:42 +02:00
|
|
|
|
2014-05-20 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-msp430.c (CHECK_RELOC_MSP430): Add OP parameter.
|
|
|
|
|
Generate BFD_RELOC_MSP430_ABS_HI16 if vshift is 1.
|
|
|
|
|
(msp430_srcoperand): Store vshift value in operand.
|
|
|
|
|
|
2014-05-19 15:29:31 +02:00
|
|
|
|
2014-05-19 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR gas/16858
|
|
|
|
|
* config/tc-i386.c (md_apply_fix): Improve the detection of code
|
|
|
|
|
symbols for 32-bit PE targets.
|
|
|
|
|
|
2014-05-18 21:28:04 +02:00
|
|
|
|
2014-05-18 Richard Sandiford <rdsandiford@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-mips.c (md_obj_begin): Delete.
|
|
|
|
|
(md_obj_end): Fold into...
|
|
|
|
|
(md_mips_end): ...here. Move to end of file.
|
|
|
|
|
|
2014-05-17 18:45:18 +02:00
|
|
|
|
2014-05-17 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR gas/16946
|
|
|
|
|
* config/tc-v850.c (handle_ctoff): Generate an error if called
|
|
|
|
|
when using the RH850 ABI.
|
|
|
|
|
|
2014-05-16 15:57:10 +02:00
|
|
|
|
2014-05-16 Kaushik Phata <Kaushik.Phatak@kpit.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-rl78.c (enum options): Add OPTION_32BIT_DOUBLES
|
|
|
|
|
and OPTION_64BIT_DOUBLES.
|
|
|
|
|
(md_longopts): Add -m32bit-doubles and -m64bit-doubles.
|
|
|
|
|
(md_parse_option): Parse -m32bit-doubles and -m64bit-doubles.
|
|
|
|
|
(md_show_usage): Show all of the RL78 options.
|
|
|
|
|
(rl78_float_cons): New static functions.
|
|
|
|
|
(md_pseudo_table): Update handler for "double".
|
|
|
|
|
* doc/c-rl78.texi: Document new options.
|
|
|
|
|
* doc/as.texinfo: Likewise.
|
|
|
|
|
|
2014-05-13 12:55:08 +02:00
|
|
|
|
2014-05-13 Matthew Fortune <matthew.fortune@imgtec.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-mips.c (mips_set_options): Rename gp32 to gp throughout.
|
|
|
|
|
(HAVE_32BIT_GPRS, HAVE_64BIT_GPRS): Remove. Re-implement via GPR_SIZE.
|
|
|
|
|
(HAVE_32BIT_FPRS, HAVE_64BIT_FPRS): Remove. Re-implement via FPR_SIZE.
|
|
|
|
|
(GPR_SIZE, FPR_SIZE): New macros. Use throughout.
|
|
|
|
|
|
2014-05-08 23:07:49 +02:00
|
|
|
|
2014-05-08 Matthew Fortune <matthew.fortune@imgtec.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-mips.c (md_parse_option): Update missed file_mips_isa
|
|
|
|
|
references.
|
|
|
|
|
|
2014-05-08 00:33:47 +02:00
|
|
|
|
2014-05-08 Matthew Fortune <matthew.fortune@imgtec.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-mips.c (mips_set_options): Rename fp32 field to fp.
|
|
|
|
|
Update fp32 == 0 to fp == 64 and fp32 == 1 to fp != 64 throughout.
|
|
|
|
|
(file_mips_gp32, file_mips_fp32, file_mips_soft_float,
|
|
|
|
|
file_mips_single_float, file_mips_isa, file_mips_arch): Merge into
|
|
|
|
|
one struct...
|
|
|
|
|
(file_mips_opts): Here. New static global. Update throughout.
|
|
|
|
|
(mips_opts): Update defaults for gp32 and fp.
|
|
|
|
|
|
2014-05-07 23:37:00 +02:00
|
|
|
|
2014-05-08 Matthew Fortune <matthew.fortune@imgtec.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-mips.c (streq): Define.
|
|
|
|
|
(mips_convert_symbolic_attribute): New function.
|
|
|
|
|
* config/tc-mips.h (CONVERT_SYMBOLIC_ATTRIBUTE): Define.
|
|
|
|
|
(mips_convert_symbolic_attribute): New prototype.
|
|
|
|
|
|
2013-05-06 19:43:21 +02:00
|
|
|
|
2014-05-02 Max Filippov <jcmvbkbc@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-xtensa.c (md_apply_fix): mark BFD_RELOC_XTENSA_DIFF*
|
|
|
|
|
fixups as signed.
|
|
|
|
|
|
Add MIPS r3 and r5 support.
This patch firstly adds support for mips32r3 mips32r5, mips64r3
and mips64r5. Secondly it adds support for the eretnc instruction.
ChangeLog:
bfd/
* aoutx.h (NAME (aout, machine_type)): Add mips32r3, mips64r3,
mips32r5 and mips64r5.
* archures.c (bfd_architecture): Likewise.
* bfd-in2.h (bfd_architecture): Likewise.
* cpu-mips.c (arch_info_struct): Likewise.
* elfxx-mips.c (mips_set_isa_flags): Likewise.
gas/
* tc-mips.c (ISA_SUPPORTS_MIPS16E): Add mips32r3, mips32r5, mips64r3
and mips64r5.
(ISA_HAS_64BIT_FPRS): Likewise.
(ISA_HAS_ROR): Likewise.
(ISA_HAS_ODD_SINGLE_FPR): Likewise.
(ISA_HAS_MXHC1): Likewise.
(hilo_interlocks): Likewise.
(md_longopts): Likewise.
(ISA_HAS_64BIT_REGS): Add mips64r3 and mips64r5.
(ISA_HAS_DROR): Likewise.
(options): Add OPTION_MIPS32R3, OPTION_MIPS32R5, OPTION_MIPS64R3, and
OPTION_MIPS64R5.
(mips_isa_rev): Add support for mips32r3, mips32r5, mips64r3 and
mips64r5.
(md_parse_option): Likewise.
(s_mipsset): Likewise.
(mips_cpu_info_table): Add entries for mips32r3, mips32r5, mips64r3
and mips64r5. Also change p5600 entry to be mips32r5.
* configure.in: Add support for mips32r3, mips32r5, mips64r3 and
mips64r5.
* configure: Regenerate.
* doc/c-mips.texi: Document the -mips32r3, -mips32r5, -mips64r3 and
-mips64r5 command line options.
* doc/as.texinfo: Likewise.
gas/testsuite/
* gas/mips/mips.exp: Add MIPS32r5 tests. Also add the mips32r3,
mips32r5, mips64r3 and mips64r5 isas to the testsuite.
* gas/mips/r5.s: New test.
* gas/mips/r5.d: Likewise.
include/opcode/
* mips.h (INSN_ISA_MASK): Updated.
(INSN_ISA32R3): New define.
(INSN_ISA32R5): New define.
(INSN_ISA64R3): New define.
(INSN_ISA64R5): New define.
(INSN_ISA64, INSN_ISA64R2, INSN_ISA3_32, INSN_ISA3_32R2, INSN_ISA4_32
INSN_ISA4_32R2, INSN_ISA5_32R2): Renumbered.
(mips_isa_table): Add entries for mips32r3, mips32r5, mips64r3 and
mips64r5.
(INSN_UPTO32R3): New define.
(INSN_UPTO32R5): New define.
(INSN_UPTO64R3): New define.
(INSN_UPTO64R5): New define.
(ISA_MIPS32R3): New define.
(ISA_MIPS32R5): New define.
(ISA_MIPS64R3): New define.
(ISA_MIPS64R5): New define.
(CPU_MIPS32R3): New define.
(CPU_MIPS32R5): New define.
(CPU_MIPS64R3): New define.
(CPU_MIPS64R5): New define.
opcodes/
* mips-opc.c (mips_builtin_opcodes): Add MIPS32r5 eretnc instruction.
(I34): New define.
(I36): New define.
(I66): New define.
(I68): New define.
* mips-dis.c (mips_arch_choices): Add mips32r3, mips32r5, mips64r3 and
mips64r5.
(parse_mips_dis_option): Update MSA and virtualization support to
allow mips64r3 and mips64r5.
2014-05-02 15:12:48 +02:00
|
|
|
|
2014-05-07 Andrew Bennett <andrew.bennett@imgtec.com>
|
|
|
|
|
|
|
|
|
|
* tc-mips.c (ISA_SUPPORTS_MIPS16E): Add mips32r3, mips32r5, mips64r3
|
|
|
|
|
and mips64r5.
|
|
|
|
|
(ISA_HAS_64BIT_FPRS): Likewise.
|
|
|
|
|
(ISA_HAS_ROR): Likewise.
|
|
|
|
|
(ISA_HAS_ODD_SINGLE_FPR): Likewise.
|
|
|
|
|
(ISA_HAS_MXHC1): Likewise.
|
|
|
|
|
(hilo_interlocks): Likewise.
|
|
|
|
|
(md_longopts): Likewise.
|
|
|
|
|
(ISA_HAS_64BIT_REGS): Add mips64r3 and mips64r5.
|
|
|
|
|
(ISA_HAS_DROR): Likewise.
|
|
|
|
|
(options): Add OPTION_MIPS32R3, OPTION_MIPS32R5, OPTION_MIPS64R3, and
|
|
|
|
|
OPTION_MIPS64R5.
|
|
|
|
|
(mips_isa_rev): Add support for mips32r3, mips32r5, mips64r3 and
|
|
|
|
|
mips64r5.
|
|
|
|
|
(md_parse_option): Likewise.
|
|
|
|
|
(s_mipsset): Likewise.
|
|
|
|
|
(mips_cpu_info_table): Add entries for mips32r3, mips32r5, mips64r3
|
|
|
|
|
and mips64r5. Also change p5600 entry to be mips32r5.
|
|
|
|
|
* configure.in: Add support for mips32r3, mips32r5, mips64r3 and
|
|
|
|
|
mips64r5.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* doc/c-mips.texi: Document the -mips32r3, -mips32r5, -mips64r3 and
|
|
|
|
|
-mips64r5 command line options.
|
|
|
|
|
* doc/as.texinfo: Likewise.
|
|
|
|
|
|
2014-04-28 15:32:59 +02:00
|
|
|
|
2014-04-28 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR gas/16858
|
|
|
|
|
* config/tc-i386.c (md_apply_fix): Do not adjust value of
|
|
|
|
|
pc-relative fixes against weak symbols.
|
|
|
|
|
|
2014-04-26 15:30:09 +02:00
|
|
|
|
2014-04-26 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* po/POTFILES.in: Regenerate.
|
|
|
|
|
|
2014-04-24 12:35:51 +02:00
|
|
|
|
2014-04-24 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (s_ltorg): Only create a mapping symbol for ELF
|
|
|
|
|
based targets.
|
|
|
|
|
|
2014-04-04 11:07:06 +02:00
|
|
|
|
2014-04-23 Will Newton <will.newton@linaro.org>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (s_ltorg): Call make_mapping_symbol
|
|
|
|
|
directly instead of mapping_state.
|
|
|
|
|
|
2014-04-23 12:24:30 +02:00
|
|
|
|
2014-04-23 Andrew Bennett <andrew.bennett@imgtec.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-mips.c (options): Add OPTION_XPA and OPTION_NO_XPA.
|
|
|
|
|
(md_longopts): Add xpa and no-xpa command line options.
|
|
|
|
|
(mips_ases): Add MIPS XPA ASE.
|
|
|
|
|
(mips_cpu_info_table): Update p5600 entry to allow the XPA ASE.
|
|
|
|
|
* doc/as.texinfo: Document the MIPS XPA command line options.
|
|
|
|
|
* doc/c-mips.texi: Document the MIPS XPA command line options,
|
|
|
|
|
and assembler directives.
|
|
|
|
|
|
2014-04-23 04:41:14 +02:00
|
|
|
|
2014-04-22 Sandra Loosemore <sandra@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-nios2.c (nios2_consume_arg): Add case for 'E' to
|
|
|
|
|
unbreak self-test mode.
|
|
|
|
|
|
2014-04-15 17:12:46 +02:00
|
|
|
|
2014-04-22 Max Filippov <jcmvbkbc@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-xtensa.c (xtensa_handle_align): record alignment for the
|
|
|
|
|
first section frag.
|
|
|
|
|
|
2014-04-22 16:57:47 +02:00
|
|
|
|
2014-04-22 Christian Svensson <blue@cmd.nu>
|
|
|
|
|
|
|
|
|
|
* Makefile.am: Remove openrisc and or32 support. Add support for or1k.
|
|
|
|
|
* configure.in: Likewise.
|
|
|
|
|
* configure.tgt: Likewise.
|
|
|
|
|
* doc/as.texinfo: Likewise.
|
|
|
|
|
* config/obj-coff.h: Likewise.
|
|
|
|
|
* config/tc-or1k.c: New file.
|
|
|
|
|
* config/tc-or1k.h: New file.
|
|
|
|
|
* config/tc-openrisc.c: Delete.
|
|
|
|
|
* config/tc-openrisc.h: Delete.
|
|
|
|
|
* config/tc-or32.c: Delete.
|
|
|
|
|
* config/tc-or32.h: Delete.
|
|
|
|
|
* Makefile.in: Regenerate.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
|
2014-04-16 15:28:15 +02:00
|
|
|
|
2014-04-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-tilegx.h (TC_CONS_FIX_NEW): Add RELOC arg.
|
|
|
|
|
* config/tc-tilepro.h (TC_CONS_FIX_NEW): Likewise.
|
|
|
|
|
|
2014-04-10 17:50:33 +02:00
|
|
|
|
2014-04-10 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-avr.c: Add new flag mlink-relax.
|
|
|
|
|
(md_show_usage): Add flag and help text.
|
|
|
|
|
(md_parse_option): Record whether link relax is turned on.
|
|
|
|
|
(relaxable_section): New.
|
|
|
|
|
(avr_validate_fix_sub): New.
|
|
|
|
|
(avr_force_relocation): New.
|
|
|
|
|
(md_apply_fix): Generate DIFF reloc.
|
|
|
|
|
(avr_allow_local_subtract): New.
|
|
|
|
|
|
|
|
|
|
* config/tc-avr.h (TC_LINKRELAX_FIXUP): Define to 0.
|
|
|
|
|
(TC_FORCE_RELOCATION): Define.
|
|
|
|
|
(TC_FORCE_RELOCATION_SUB_SAME): Define.
|
|
|
|
|
(TC_VALIDATE_FIX_SUB): Define.
|
|
|
|
|
(avr_force_relocation): Declare.
|
|
|
|
|
(avr_validate_fix_sub): Declare.
|
|
|
|
|
(md_allow_local_subtract): Define.
|
|
|
|
|
(avr_allow_local_subtract): Declare.
|
|
|
|
|
|
2014-04-08 15:50:42 +02:00
|
|
|
|
2014-04-10 Andrew Bennett <andrew.bennett@imgtec.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-mips.c (mips_cpu_info_table): Add P5600
|
|
|
|
|
configuation.
|
|
|
|
|
* doc/c-mips.texi: Document p5600.
|
|
|
|
|
|
2014-04-09 15:05:58 +02:00
|
|
|
|
2014-04-09 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-rl78.h (TC_CONS_FIX_NEW): Add RELOC parameter.
|
|
|
|
|
* config/tc-z80.h (TC_CONS_FIX_NEW): Discard RELOC parameter.
|
|
|
|
|
* config/tc-aarch64.h (TC_CONS_FIX_NEW): Discard RELOC parameter.
|
|
|
|
|
* read.c (emit_expr_fix): Mark the r parameter as potentially
|
|
|
|
|
unused.
|
|
|
|
|
|
2014-04-08 23:33:53 +02:00
|
|
|
|
2014-04-09 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-ppc.c (warn_476, last_insn, last_seg, last_subseg):
|
|
|
|
|
New static vars.
|
|
|
|
|
(md_longopts, md_parse_option, md_show_usage): Add --ppc476-workaround.
|
|
|
|
|
(ppc_elf_cons_fix_check): New function.
|
|
|
|
|
(md_assemble): Set last_insn, last_seg, last_subseg.
|
|
|
|
|
(ppc_byte, md_apply_fix): Handle warn_476.
|
|
|
|
|
* config/tc-ppc.h (TC_CONS_FIX_CHECK): Define.
|
|
|
|
|
(ppc_elf_cons_fix_check): Declare.
|
|
|
|
|
* read.c (cons_worker): Invoke TC_CONS_FIX_CHECK.
|
|
|
|
|
|
gas TC_PARSE_CONS_EXPRESSION communication with TC_CONS_FIX_NEW
A number of targets pass extra information from TC_PARSE_CONS_EXPRESSION
to TC_CONS_FIX_NEW via static variables. That's OK, but not best
practice. tc-ppc.c goes further in implementing its own replacement
for cons(), because the generic one doesn't allow relocation modifiers
on constants. This patch fixes both of these warts.
* gas/config/tc-alpha.h (TC_CONS_FIX_NEW): Add RELOC parameter.
* gas/config/tc-arc.c (arc_cons_fix_new): Add reloc parameter.
* gas/config/tc-arc.h (arc_cons_fix_new): Update prototype.
(TC_CONS_FIX_NEW): Add RELOC parameter.
* gas/config/tc-arm.c (cons_fix_new_arm): Similarly
* gas/config/tc-arm.h (cons_fix_new_arm, TC_CONS_FIX_NEW): Similarly.
* gas/config/tc-cr16.c (cr16_cons_fix_new): Similarly.
* gas/config/tc-cr16.h (cr16_cons_fix_new, TC_CONS_FIX_NEW): Similarly.
* gas/config/tc-crx.h (TC_CONS_FIX_NEW): Similarly.
* gas/config/tc-m32c.c (m32c_cons_fix_new): Similarly.
* gas/config/tc-m32c.h (m32c_cons_fix_new, TC_CONS_FIX_NEW): Similarly.
* gas/config/tc-mn10300.c (mn10300_cons_fix_new): Similarly.
* gas/config/tc-mn10300.h (mn10300_cons_fix_new, TC_CONS_FIX_NEW):
Similarly.
* gas/config/tc-ns32k.c (cons_fix_new_ns32k): Similarly.
* gas/config/tc-ns32k.h (cons_fix_new_ns32k): Similarly.
* gas/config/tc-pj.c (pj_cons_fix_new_pj): Similarly.
* gas/config/tc-pj.h (pj_cons_fix_new_pj, TC_CONS_FIX_NEW): Similarly.
* gas/config/tc-rx.c (rx_cons_fix_new): Similarly.
* gas/config/tc-rx.h (rx_cons_fix_new, TC_CONS_FIX_NEW): Similarly.
* gas/config/tc-sh.c (sh_cons_fix_new): Similarly.
* gas/config/tc-sh.h (sh_cons_fix_new, TC_CONS_FIX_NEW): Similarly.
* gas/config/tc-tic54x.c (tic54x_cons_fix_new): Similarly.
* gas/config/tc-tic54x.h (tic54x_cons_fix_new, TC_CONS_FIX_NEW):
Similarly.
* gas/config/tc-tic6x.c (tic6x_cons_fix_new): Similarly.
* gas/config/tc-tic6x.h (tic6x_cons_fix_new, TC_CONS_FIX_NEW):
Similarly.
* gas/config/tc-arc.c (arc_parse_cons_expression): Return reloc.
* gas/config/tc-arc.h (arc_parse_cons_expression): Update proto.
* gas/config/tc-avr.c (exp_mod_data): Make global.
(pexp_mod_data): Delete.
(avr_parse_cons_expression): Return exp_mod_data pointer.
(avr_cons_fix_new): Add exp_mod_data_t pointer param.
(exp_mod_data_t): Move typedef..
* gas/config/tc-avr.h: ..to here.
(exp_mod_data): Declare.
(TC_PARSE_CONS_RETURN_TYPE, TC_PARSE_CONS_RETURN_NONE): Define.
(avr_parse_cons_expression, avr_cons_fix_new): Update prototype.
(TC_CONS_FIX_NEW): Update.
* gas/config/tc-hppa.c (hppa_field_selector): Delete static var.
(cons_fix_new_hppa): Add hppa_field_selector param.
(fix_new_hppa): Adjust.
(parse_cons_expression_hppa): Return field selector.
* gas/config/tc-hppa.h (parse_cons_expression_hppa): Update proto.
(cons_fix_new_hppa): Likewise.
(TC_PARSE_CONS_RETURN_TYPE, TC_PARSE_CONS_RETURN_NONE): Define.
* gas/config/tc-i386.c (got_reloc): Delete static var.
(x86_cons_fix_new): Add reloc param.
(x86_cons): Return got reloc.
* gas/config/tc-i386.h (x86_cons, x86_cons_fix_new): Update proto.
(TC_CONS_FIX_NEW): Add RELOC param.
* gas/config/tc-ia64.c (ia64_cons_fix_new): Add reloc param. Adjust
calls.
* gas/config/tc-ia64.h (ia64_cons_fix_new): Update prototype.
(TC_CONS_FIX_NEW): Add reloc param.
* gas/config/tc-microblaze.c (parse_cons_expression_microblaze):
Return reloc.
(cons_fix_new_microblaze): Add reloc param.
* gas/config/tc-microblaze.h: Formatting.
(parse_cons_expression_microblaze): Update proto.
(cons_fix_new_microblaze): Likewise.
* gas/config/tc-nios2.c (nios2_tls_ldo_reloc): Delete static var.
(nios2_cons): Return ldo reloc.
(nios2_cons_fix_new): Delete.
* gas/config/tc-nios2.h (nios2_cons): Update prototype.
(nios2_cons_fix_new, TC_CONS_FIX_NEW): Delete.
* gas/config/tc-ppc.c (md_pseudo_table): Remove quad, long, word,
short. Make llong use cons.
(ppc_elf_suffix): Return BFD_RELOC_NONE rather than BFD_RELOC_UNUSED.
(ppc_elf_cons): Delete.
(ppc_elf_parse_cons): New function.
(ppc_elf_validate_fix): Don't check for BFD_RELOC_UNUSED.
(md_assemble): Use BFD_RELOC_NONE rather than BFD_RELOC_UNUSED.
* gas/config/tc-ppc.h (TC_PARSE_CONS_EXPRESSION): Define
(ppc_elf_parse_cons): Declare.
* gas/config/tc-sparc.c (sparc_cons_special_reloc): Delete static var.
(sparc_cons): Return reloc specifier.
(cons_fix_new_sparc): Add reloc specifier param.
(sparc_cfi_emit_pcrel_expr): Use emit_expr_with_reloc.
* gas/config/tc-sparc.h (TC_PARSE_CONS_RETURN_TYPE): Define.
(TC_PARSE_CONS_RETURN_NONE): Define.
(sparc_cons, cons_fix_new_sparc): Update prototype.
* gas/config/tc-v850.c (hold_cons_reloc): Delete static var.
(v850_reloc_prefix): Use BFD_RELOC_NONE rather than BFD_RELOC_UNUSED.
(md_assemble): Likewise.
(parse_cons_expression_v850): Return reloc.
(cons_fix_new_v850): Add reloc parameter.
* gas/config/tc-v850.h (parse_cons_expression_v850): Update proto.
(cons_fix_new_v850): Likewise.
* gas/config/tc-vax.c (vax_cons_special_reloc): Delete static var.
(vax_cons): Return reloc.
(vax_cons_fix_new): Add reloc parameter.
* gas/config/tc-vax.h (vax_cons, vax_cons_fix_new): Update proto.
* gas/config/tc-xstormy16.c (xstormy16_cons_fix_new): Add reloc param.
* gas/config/tc-xstormy16.h (xstormy16_cons_fix_new): Update proto.
* gas/dwarf2dbg.c (TC_PARSE_CONS_RETURN_NONE): Provide default.
(emit_fixed_inc_line_addr): Adjust exmit_expr_fix calls.
* gas/read.c (TC_PARSE_CONS_EXPRESSION): Return value.
(do_parse_cons_expression): Adjust.
(cons_worker): Pass return value from TC_PARSE_CONS_EXPRESSION
to emit_expr_with_reloc.
(emit_expr_with_reloc): New function handling reloc, mostly
extracted from..
(emit_expr): ..here.
(emit_expr_fix): Add reloc param. Adjust TC_CONS_FIX_NEW invocation.
Handle reloc.
(parse_mri_cons): Convert to ISO.
* gas/read.h (TC_PARSE_CONS_RETURN_TYPE): Define.
(TC_PARSE_CONS_RETURN_NONE): Define.
(emit_expr_with_reloc): Declare.
(emit_expr_fix): Update prototype.
* gas/write.c (write_object_file): Update TC_CONS_FIX_NEW invocation.
2014-04-08 07:08:22 +02:00
|
|
|
|
2014-04-09 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* gas/config/tc-alpha.h (TC_CONS_FIX_NEW): Add RELOC parameter.
|
|
|
|
|
* gas/config/tc-arc.c (arc_cons_fix_new): Add reloc parameter.
|
|
|
|
|
* gas/config/tc-arc.h (arc_cons_fix_new): Update prototype.
|
|
|
|
|
(TC_CONS_FIX_NEW): Add RELOC parameter.
|
|
|
|
|
* gas/config/tc-arm.c (cons_fix_new_arm): Similarly
|
|
|
|
|
* gas/config/tc-arm.h (cons_fix_new_arm, TC_CONS_FIX_NEW): Similarly.
|
|
|
|
|
* gas/config/tc-cr16.c (cr16_cons_fix_new): Similarly.
|
|
|
|
|
* gas/config/tc-cr16.h (cr16_cons_fix_new, TC_CONS_FIX_NEW): Similarly.
|
|
|
|
|
* gas/config/tc-crx.h (TC_CONS_FIX_NEW): Similarly.
|
|
|
|
|
* gas/config/tc-m32c.c (m32c_cons_fix_new): Similarly.
|
|
|
|
|
* gas/config/tc-m32c.h (m32c_cons_fix_new, TC_CONS_FIX_NEW): Similarly.
|
|
|
|
|
* gas/config/tc-mn10300.c (mn10300_cons_fix_new): Similarly.
|
|
|
|
|
* gas/config/tc-mn10300.h (mn10300_cons_fix_new, TC_CONS_FIX_NEW):
|
|
|
|
|
Similarly.
|
|
|
|
|
* gas/config/tc-ns32k.c (cons_fix_new_ns32k): Similarly.
|
|
|
|
|
* gas/config/tc-ns32k.h (cons_fix_new_ns32k): Similarly.
|
|
|
|
|
* gas/config/tc-pj.c (pj_cons_fix_new_pj): Similarly.
|
|
|
|
|
* gas/config/tc-pj.h (pj_cons_fix_new_pj, TC_CONS_FIX_NEW): Similarly.
|
|
|
|
|
* gas/config/tc-rx.c (rx_cons_fix_new): Similarly.
|
|
|
|
|
* gas/config/tc-rx.h (rx_cons_fix_new, TC_CONS_FIX_NEW): Similarly.
|
|
|
|
|
* gas/config/tc-sh.c (sh_cons_fix_new): Similarly.
|
|
|
|
|
* gas/config/tc-sh.h (sh_cons_fix_new, TC_CONS_FIX_NEW): Similarly.
|
|
|
|
|
* gas/config/tc-tic54x.c (tic54x_cons_fix_new): Similarly.
|
|
|
|
|
* gas/config/tc-tic54x.h (tic54x_cons_fix_new, TC_CONS_FIX_NEW):
|
|
|
|
|
Similarly.
|
|
|
|
|
* gas/config/tc-tic6x.c (tic6x_cons_fix_new): Similarly.
|
|
|
|
|
* gas/config/tc-tic6x.h (tic6x_cons_fix_new, TC_CONS_FIX_NEW):
|
|
|
|
|
Similarly.
|
|
|
|
|
* gas/config/tc-arc.c (arc_parse_cons_expression): Return reloc.
|
|
|
|
|
* gas/config/tc-arc.h (arc_parse_cons_expression): Update proto.
|
|
|
|
|
* gas/config/tc-avr.c (exp_mod_data): Make global.
|
|
|
|
|
(pexp_mod_data): Delete.
|
|
|
|
|
(avr_parse_cons_expression): Return exp_mod_data pointer.
|
|
|
|
|
(avr_cons_fix_new): Add exp_mod_data_t pointer param.
|
|
|
|
|
(exp_mod_data_t): Move typedef..
|
|
|
|
|
* gas/config/tc-avr.h: ..to here.
|
|
|
|
|
(exp_mod_data): Declare.
|
|
|
|
|
(TC_PARSE_CONS_RETURN_TYPE, TC_PARSE_CONS_RETURN_NONE): Define.
|
|
|
|
|
(avr_parse_cons_expression, avr_cons_fix_new): Update prototype.
|
|
|
|
|
(TC_CONS_FIX_NEW): Update.
|
|
|
|
|
* gas/config/tc-hppa.c (hppa_field_selector): Delete static var.
|
|
|
|
|
(cons_fix_new_hppa): Add hppa_field_selector param.
|
|
|
|
|
(fix_new_hppa): Adjust.
|
|
|
|
|
(parse_cons_expression_hppa): Return field selector.
|
|
|
|
|
* gas/config/tc-hppa.h (parse_cons_expression_hppa): Update proto.
|
|
|
|
|
(cons_fix_new_hppa): Likewise.
|
|
|
|
|
(TC_PARSE_CONS_RETURN_TYPE, TC_PARSE_CONS_RETURN_NONE): Define.
|
|
|
|
|
* gas/config/tc-i386.c (got_reloc): Delete static var.
|
|
|
|
|
(x86_cons_fix_new): Add reloc param.
|
|
|
|
|
(x86_cons): Return got reloc.
|
|
|
|
|
* gas/config/tc-i386.h (x86_cons, x86_cons_fix_new): Update proto.
|
|
|
|
|
(TC_CONS_FIX_NEW): Add RELOC param.
|
|
|
|
|
* gas/config/tc-ia64.c (ia64_cons_fix_new): Add reloc param. Adjust
|
|
|
|
|
calls.
|
|
|
|
|
* gas/config/tc-ia64.h (ia64_cons_fix_new): Update prototype.
|
|
|
|
|
(TC_CONS_FIX_NEW): Add reloc param.
|
|
|
|
|
* gas/config/tc-microblaze.c (parse_cons_expression_microblaze):
|
|
|
|
|
Return reloc.
|
|
|
|
|
(cons_fix_new_microblaze): Add reloc param.
|
|
|
|
|
* gas/config/tc-microblaze.h: Formatting.
|
|
|
|
|
(parse_cons_expression_microblaze): Update proto.
|
|
|
|
|
(cons_fix_new_microblaze): Likewise.
|
|
|
|
|
* gas/config/tc-nios2.c (nios2_tls_ldo_reloc): Delete static var.
|
|
|
|
|
(nios2_cons): Return ldo reloc.
|
|
|
|
|
(nios2_cons_fix_new): Delete.
|
|
|
|
|
* gas/config/tc-nios2.h (nios2_cons): Update prototype.
|
|
|
|
|
(nios2_cons_fix_new, TC_CONS_FIX_NEW): Delete.
|
|
|
|
|
* gas/config/tc-ppc.c (md_pseudo_table): Remove quad, long, word,
|
|
|
|
|
short. Make llong use cons.
|
|
|
|
|
(ppc_elf_suffix): Return BFD_RELOC_NONE rather than BFD_RELOC_UNUSED.
|
|
|
|
|
(ppc_elf_cons): Delete.
|
|
|
|
|
(ppc_elf_parse_cons): New function.
|
|
|
|
|
(ppc_elf_validate_fix): Don't check for BFD_RELOC_UNUSED.
|
|
|
|
|
(md_assemble): Use BFD_RELOC_NONE rather than BFD_RELOC_UNUSED.
|
|
|
|
|
* gas/config/tc-ppc.h (TC_PARSE_CONS_EXPRESSION): Define
|
|
|
|
|
(ppc_elf_parse_cons): Declare.
|
|
|
|
|
* gas/config/tc-sparc.c (sparc_cons_special_reloc): Delete static var.
|
|
|
|
|
(sparc_cons): Return reloc specifier.
|
|
|
|
|
(cons_fix_new_sparc): Add reloc specifier param.
|
|
|
|
|
(sparc_cfi_emit_pcrel_expr): Use emit_expr_with_reloc.
|
|
|
|
|
* gas/config/tc-sparc.h (TC_PARSE_CONS_RETURN_TYPE): Define.
|
|
|
|
|
(TC_PARSE_CONS_RETURN_NONE): Define.
|
|
|
|
|
(sparc_cons, cons_fix_new_sparc): Update prototype.
|
|
|
|
|
* gas/config/tc-v850.c (hold_cons_reloc): Delete static var.
|
|
|
|
|
(v850_reloc_prefix): Use BFD_RELOC_NONE rather than BFD_RELOC_UNUSED.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
(parse_cons_expression_v850): Return reloc.
|
|
|
|
|
(cons_fix_new_v850): Add reloc parameter.
|
|
|
|
|
* gas/config/tc-v850.h (parse_cons_expression_v850): Update proto.
|
|
|
|
|
(cons_fix_new_v850): Likewise.
|
|
|
|
|
* gas/config/tc-vax.c (vax_cons_special_reloc): Delete static var.
|
|
|
|
|
(vax_cons): Return reloc.
|
|
|
|
|
(vax_cons_fix_new): Add reloc parameter.
|
|
|
|
|
* gas/config/tc-vax.h (vax_cons, vax_cons_fix_new): Update proto.
|
|
|
|
|
* gas/config/tc-xstormy16.c (xstormy16_cons_fix_new): Add reloc param.
|
|
|
|
|
* gas/config/tc-xstormy16.h (xstormy16_cons_fix_new): Update proto.
|
|
|
|
|
* gas/dwarf2dbg.c (TC_PARSE_CONS_RETURN_NONE): Provide default.
|
|
|
|
|
(emit_fixed_inc_line_addr): Adjust exmit_expr_fix calls.
|
|
|
|
|
* gas/read.c (TC_PARSE_CONS_EXPRESSION): Return value.
|
|
|
|
|
(do_parse_cons_expression): Adjust.
|
|
|
|
|
(cons_worker): Pass return value from TC_PARSE_CONS_EXPRESSION
|
|
|
|
|
to emit_expr_with_reloc.
|
|
|
|
|
(emit_expr_with_reloc): New function handling reloc, mostly
|
|
|
|
|
extracted from..
|
|
|
|
|
(emit_expr): ..here.
|
|
|
|
|
(emit_expr_fix): Add reloc param. Adjust TC_CONS_FIX_NEW invocation.
|
|
|
|
|
Handle reloc.
|
|
|
|
|
(parse_mri_cons): Convert to ISO.
|
|
|
|
|
* gas/read.h (TC_PARSE_CONS_RETURN_TYPE): Define.
|
|
|
|
|
(TC_PARSE_CONS_RETURN_NONE): Define.
|
|
|
|
|
(emit_expr_with_reloc): Declare.
|
|
|
|
|
(emit_expr_fix): Update prototype.
|
|
|
|
|
* gas/write.c (write_object_file): Update TC_CONS_FIX_NEW invocation.
|
|
|
|
|
|
2014-04-03 14:40:04 +02:00
|
|
|
|
2014-04-03 Ilya Tocar <ilya.tocar@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (cpu_arch): Add .se1.
|
|
|
|
|
* doc/c-i386.texi: Document .se1/se1.
|
|
|
|
|
|
2014-04-02 22:50:29 +02:00
|
|
|
|
2014-04-02 DJ Delorie <dj@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-rl78.c (md_apply_fix): Add overflow warnings for
|
|
|
|
|
pc-relative branches.
|
|
|
|
|
|
2014-04-02 17:29:35 +02:00
|
|
|
|
2014-04-02 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR gas/16765
|
|
|
|
|
* config/tc-arm.c (create_unwind_entry): Report an error if an
|
|
|
|
|
attempt to recreate an unwind directive is encountered.
|
|
|
|
|
|
2014-03-27 10:41:06 +01:00
|
|
|
|
2014-03-27 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-score.c (s3_parse_pce_inst): Add "%s" parameter to
|
|
|
|
|
sprintf in order to avoid a compile time warning.
|
|
|
|
|
|
2014-03-26 17:34:04 +01:00
|
|
|
|
2014-03-26 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-rl78.c (rl78_op): Issue an error message if a 16-bit
|
|
|
|
|
relocation is used on an 8-bit operand or vice versa.
|
|
|
|
|
(tc_gen_reloc): Use the RL78_16U relocation for RL78_CODE.
|
|
|
|
|
(md_apply_fix): Add support for RL78_HI8, RL78_HI16 and RL78_LO16.
|
|
|
|
|
|
2014-03-25 17:50:10 +01:00
|
|
|
|
2014-03-25 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/obj-coff-seh.c (obj_coff_seh_code): New function -
|
|
|
|
|
switches the current segment back to the code segment recorded
|
|
|
|
|
when seh_proc was last invoked.
|
|
|
|
|
* config/obj-coff-seh.h (SEH_CMDS): Add seh_code.
|
|
|
|
|
|
2014-03-25 02:31:09 +01:00
|
|
|
|
2014-03-25 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-ppc.c (ppc_is_toc_sym): Revert 2014-03-05.
|
|
|
|
|
(md_assemble): Likewise. Warn.
|
|
|
|
|
|
2014-03-21 12:53:42 +01:00
|
|
|
|
2014-03-21 David Weatherford <weath@cadence.com>
|
|
|
|
|
Max Filippov <jcmvbkbc@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-xtensa.c (xtensa_check_frag_count)
|
|
|
|
|
xtensa_create_trampoline_frag,
|
|
|
|
|
xtensa_maybe_create_trampoline_frag, init_trampoline_frag,
|
|
|
|
|
find_trampoline_seg, search_trampolines, get_best_trampoline,
|
|
|
|
|
check_and_update_trampolines, add_jump_to_trampoline,
|
|
|
|
|
dump_trampolines): New functions.
|
|
|
|
|
(md_parse_option): Add cases for --[no-]trampolines options.
|
|
|
|
|
(md_assemble, finish_vinsn, xtensa_end): Add call to
|
|
|
|
|
xtensa_check_frag_count.
|
|
|
|
|
(xg_assemble_vliw_tokens): Add call to
|
|
|
|
|
xtensa_maybe_create_trampoline_frag.
|
|
|
|
|
(xtensa_relax_frag): Relax fragments with RELAX_TRAMPOLINE state.
|
|
|
|
|
(relax_frag_immed): Relax jump instructions that cannot reach its
|
|
|
|
|
target.
|
|
|
|
|
* config/tc-xtensa.h (xtensa_relax_statesE::RELAX_TRAMPOLINE): New
|
|
|
|
|
relax state.
|
|
|
|
|
* doc/as.texinfo: Document --[no-]trampolines command-line options.
|
|
|
|
|
* doc/c-xtensa.texi: Document trampolines relaxation and command
|
|
|
|
|
line options.
|
|
|
|
|
* frags.c (get_frag_count, clear_frag_count): New function.
|
|
|
|
|
(frag_alloc): Increment totalfrags counter.
|
|
|
|
|
* frags.h (get_frag_count, clear_frag_count): New function.
|
|
|
|
|
|
2014-03-20 22:50:49 +01:00
|
|
|
|
2014-03-20 DJ Delorie <dj@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/rl78-defs.h (RL78_RELAX_NONE, RL78_RELAX_BRANCH): Add.
|
|
|
|
|
* config/rl78-parse.y (BC, BNC, BZ, BNZ, BH, BHZ, bt_bf): Call
|
|
|
|
|
rl78_relax().
|
|
|
|
|
* config/tc-rl78.h (md_relax_frag): Define.
|
|
|
|
|
(rl78_relax_frag): Declare.
|
|
|
|
|
* config/tc-rl78.c (rl78_relax): Add.
|
|
|
|
|
(md_assemble): Set up the variable frags also when relaxing.
|
|
|
|
|
(op_type_T): New.
|
|
|
|
|
(rl78_opcode_type): New.
|
|
|
|
|
(rl78_frag_fix_value): New.
|
|
|
|
|
(md_estimate_size_before_relax): New-ish.
|
|
|
|
|
(rl78_relax_frag): New.
|
|
|
|
|
(md_convert_frag): New-ish.
|
|
|
|
|
|
gas/
* config/tc-mips.h (DIFF_EXPR_OK, CFI_DIFF_EXPR_OK): Define.
* config/tc-mips.c (md_pcrel_from): Remove error message.
(md_apply_fix): Convert PC-relative BFD_RELOC_32s to
BFD_RELOC_32_PCREL. Report a specific error message for unhandled
PC-relative expressions. Handle BFD_RELOC_8.
gas/testsuite/
* gas/all/gas.exp: Remove XFAIL of forward.d for MIPS.
* gas/mips/pcrel-1.s, gas/mips/pcrel-1.d, gas/mips/pcrel-2.s,
gas/mips/pcrel-2.d, gas/mips/pcrel-3.s, gas/mips/pcrel-3.l,
gas/mips/pcrel-4.s, gas/mips/pcrel-4-32.d, gas/mips/pcrel-4-n32.d,
gas/mips/pcrel-4-64.d: New tests.
* gas/mips/mips.exp: Run them.
* gas/mips/lui-2.l: Tweak error message for line 7.
ld/testsuite/
* ld-elf/merge.d: Remove MIPS XFAIL.
2014-03-20 22:18:43 +01:00
|
|
|
|
2014-03-20 Richard Sandiford <rdsandiford@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-mips.h (DIFF_EXPR_OK, CFI_DIFF_EXPR_OK): Define.
|
|
|
|
|
* config/tc-mips.c (md_pcrel_from): Remove error message.
|
|
|
|
|
(md_apply_fix): Convert PC-relative BFD_RELOC_32s to
|
|
|
|
|
BFD_RELOC_32_PCREL. Report a specific error message for unhandled
|
|
|
|
|
PC-relative expressions. Handle BFD_RELOC_8.
|
|
|
|
|
|
2014-03-19 17:43:41 +01:00
|
|
|
|
2014-03-19 Jose E. Marchesi <jose.marchesi@oracle.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-sparc.c (hpriv_reg_table): Added entries for
|
|
|
|
|
%hstick_offset and %hstick_enable.
|
|
|
|
|
* doc/c-sparc.texi (Sparc-Regs): Document the %hstick_offset and
|
|
|
|
|
%hstick_enable hyperprivileged registers.
|
|
|
|
|
|
2014-03-19 15:43:00 +01:00
|
|
|
|
2014-03-19 Daniel Gutson <daniel.gutson@tallertechnologies.com>
|
2014-03-19 15:31:25 +01:00
|
|
|
|
Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (codecomposer_syntax): New flag that states whether the
|
|
|
|
|
CCS syntax compatibility mode is on or off.
|
|
|
|
|
(asmfunc_states): New enum to represent the asmfunc directive state.
|
|
|
|
|
(asmfunc_state): New variable holding the asmfunc directive state.
|
|
|
|
|
(comment_chars): Rename to arm_comment_chars.
|
|
|
|
|
(line_separator_chars): Rename to arm_line_separator_chars.
|
|
|
|
|
(s_ccs_ref): New function that handles the .ref directive.
|
|
|
|
|
(asmfunc_debug): New function.
|
|
|
|
|
(s_ccs_asmfunc): New function that handles the .asmfunc directive.
|
|
|
|
|
(s_ccs_endasmfunc): New function that handles the .endasmfunc directive.
|
|
|
|
|
(s_ccs_def): New function that handles the .def directive.
|
|
|
|
|
(tc_start_label_without_colon): New function.
|
|
|
|
|
(md_pseudo_table): Added new CCS directives.
|
|
|
|
|
(arm_ccs_mode): New function that handles the -mccs command line option.
|
|
|
|
|
(arm_long_opts): Added new -mccs command line option.
|
|
|
|
|
* config/tc-arm.h (LABELS_WITHOUT_COLONS): New macro.
|
|
|
|
|
(TC_START_LABEL_WITHOUT_COLON): New macro.
|
|
|
|
|
(tc_start_label_without_colon): Added extern function declaration.
|
|
|
|
|
(tc_comment_chars): Define.
|
|
|
|
|
(tc_line_separator_chars): Define.
|
|
|
|
|
* app.c (do_scrub_begin): Use tc_line_separator_chars, if defined.
|
|
|
|
|
* read.c (read_begin): Likewise.
|
|
|
|
|
* doc/as.texinfo: Add documentation for the -mccs command line
|
|
|
|
|
option.
|
|
|
|
|
* doc/c-arm.texi: Likewise.
|
|
|
|
|
* doc/internals.texi: Document tc_line_separator_chars.
|
|
|
|
|
* NEWS: Mention the new feature.
|
|
|
|
|
|
2014-03-18 18:41:43 +01:00
|
|
|
|
2014-03-18 Jiong Wang <jiong.wang@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-aarch64.c (aarch64_opts): Add new option
|
|
|
|
|
"mno-verbose-error".
|
|
|
|
|
(verbose_error_p): Initialize to 1.
|
|
|
|
|
* doc/c-aarch64.texi (AArch64 Options): Document -mverbose-error
|
|
|
|
|
and -mno-verbose-error.
|
|
|
|
|
|
2014-03-17 17:30:30 +01:00
|
|
|
|
2014-03-17 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR gas/16694
|
|
|
|
|
* config/tc-arm.c (tc_arm_regname_to_dw2regnum): Parse VFP
|
|
|
|
|
registers as well.
|
|
|
|
|
|
2014-03-13 18:10:04 +01:00
|
|
|
|
2014-03-13 Richard Earnshaw <rearnsha@arm.com>
|
|
|
|
|
Jiong Wang <Jiong.Wang@arm.com>
|
|
|
|
|
|
|
|
|
|
* doc/c-aarch64.texi: Clean up some formatting issues.
|
|
|
|
|
(AArch64 Options): Document -mcpu and -march.
|
|
|
|
|
(AArch64 Extensions): New node.
|
|
|
|
|
|
2013-12-02 14:30:32 +01:00
|
|
|
|
2014-03-13 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (use_big_obj): Declare.
|
|
|
|
|
(OPTION_MBIG_OBJ): Define.
|
|
|
|
|
(md_longopts): Add -mbig-obj option.
|
|
|
|
|
(md_parse_option): Handle it.
|
|
|
|
|
(md_show_usage): Display help for this option.
|
|
|
|
|
(i386_target_format): Use bigobj for x86-64 if -mbig-obj.
|
|
|
|
|
* doc/c-i386.texi: Document the option.
|
|
|
|
|
|
2014-03-12 16:44:09 +01:00
|
|
|
|
2014-03-12 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR gas/16688
|
|
|
|
|
* config/tc-aarch64.c (literal_expression): New structure.
|
|
|
|
|
(literal_pool): Replace exp array with literal_expression array.
|
|
|
|
|
(add_to_lit_pool): When adding a bignum cache the big value.
|
|
|
|
|
(s_ltorg): When emitting a bignum initialise the global bignum
|
|
|
|
|
array from the cached value.
|
|
|
|
|
|
2014-03-12 05:32:00 +01:00
|
|
|
|
2014-03-12 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* Makefile.in: Regenerate.
|
|
|
|
|
* config.in: Regenerate.
|
|
|
|
|
* doc/Makefile.in: Regenerate.
|
|
|
|
|
|
* gas/tc-avr.c: Add new devices
avr25: ata5272, attiny828
avr35: ata5505, attiny1634
avr4: atmega8a, ata6285, ata6286, atmega48pa
avr5: at90pwm161, ata5790, ata5795, atmega164pa, atmega165pa,
atmega168pa, atmega32a, atmega64rfr2, atmega644rfr2, atmega64a,
atmega16hva2
avr51: atmega128a, atmega1284
avrxmega2: atxmega16a4u, atxmega16c4, atxmega32a4u, atxmega32c4,
atxmega32e5, atxmega16e5, atxmega8e5
avrxmega4: atxmega64a3u, atxmega64a4u, atxmega64b1, atxmega64b3,
atxmega64c3, atxmega64d4
avrxmega6: atxmega128a3u, atxmega128b3, atxmega128c3,
atxmega128d4, atxmega192a3u, atxmega192c3, atxmega256a3u,
atxmega256c3, atxmega384c3, atxmega384d3
avrxmega7: atxmega128a4u
* doc/c-avr.texi: Ditto.
2014-03-06 15:59:05 +01:00
|
|
|
|
2014-03-06 Pitchumani Sivanupandi <pitchumani.s@atmel.com>
|
|
|
|
|
Vishnu KS <Vishnu.k_s@atmel.com>
|
|
|
|
|
Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
|
|
|
|
|
Soundararajan <Soundararajan.dhakshinamoorthy@atmel.com>
|
|
|
|
|
|
|
|
|
|
* gas/tc-avr.c: Add new devices
|
|
|
|
|
avr25: ata5272, attiny828
|
|
|
|
|
avr35: ata5505, attiny1634
|
|
|
|
|
avr4: atmega8a, ata6285, ata6286, atmega48pa
|
|
|
|
|
avr5: at90pwm161, ata5790, ata5795, atmega164pa, atmega165pa,
|
|
|
|
|
atmega168pa, atmega32a, atmega64rfr2, atmega644rfr2, atmega64a,
|
|
|
|
|
atmega16hva2
|
|
|
|
|
avr51: atmega128a, atmega1284
|
|
|
|
|
avrxmega2: atxmega16a4u, atxmega16c4, atxmega32a4u, atxmega32c4,
|
|
|
|
|
atxmega32e5, atxmega16e5, atxmega8e5
|
|
|
|
|
avrxmega4: atxmega64a3u, atxmega64a4u, atxmega64b1, atxmega64b3,
|
|
|
|
|
atxmega64c3, atxmega64d4
|
|
|
|
|
avrxmega6: atxmega128a3u, atxmega128b3, atxmega128c3,
|
|
|
|
|
atxmega128d4, atxmega192a3u, atxmega192c3, atxmega256a3u,
|
|
|
|
|
atxmega256c3, atxmega384c3, atxmega384d3
|
|
|
|
|
avrxmega7: atxmega128a4u
|
|
|
|
|
* doc/c-avr.texi: Ditto.
|
|
|
|
|
|
2014-03-05 12:46:15 +01:00
|
|
|
|
2014-03-05 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
Update copyright years.
|
|
|
|
|
|
2014-03-05 10:27:39 +01:00
|
|
|
|
2014-03-05 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-ppc.c (ppc_elf_suffix): Support @localentry.
|
|
|
|
|
(md_apply_fix): Support R_PPC64_ADDR64_LOCAL.
|
|
|
|
|
|
2014-03-05 10:01:45 +01:00
|
|
|
|
2014-03-05 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-ppc.c (md_assemble): Move code adjusting reloc types
|
|
|
|
|
later. Merge absolute and relative branch reloc selection.
|
|
|
|
|
Generate 16-bit relocs for most 16-bit insn fields given a
|
|
|
|
|
non-constant expression.
|
|
|
|
|
|
2014-03-05 09:57:57 +01:00
|
|
|
|
2014-03-05 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-ppc.c (ppc_is_toc_sym): Remove OBJ_ELF support.
|
|
|
|
|
(md_assemble): Don't call ppc_is_toc_sym for ELF.
|
|
|
|
|
|
2014-03-04 22:30:39 +01:00
|
|
|
|
2014-03-04 Heiher <r@hev.cc>
|
2014-03-04 22:18:02 +01:00
|
|
|
|
|
|
|
|
|
* config/tc-mips.c (mips_cpu_info_table): Use ISA_MIPS64R2 for
|
|
|
|
|
Loongson-3A.
|
|
|
|
|
|
2014-03-03 18:27:55 +01:00
|
|
|
|
2014-03-03 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/msp430/msp430.c: Replace known mcu array with known
|
|
|
|
|
msp430 ISA mcu name array.
|
|
|
|
|
Accept any name for -mmcu option.
|
|
|
|
|
Add -mz option to warn about missing NOP following an interrupt
|
|
|
|
|
status change.
|
|
|
|
|
(check_for_nop): New.
|
|
|
|
|
(msp430_operands): Emit a warning, if requested, when an interrupt
|
|
|
|
|
changing instruction is not followed by a NOP.
|
|
|
|
|
* doc/c-msp430.c: Document -mz option.
|
|
|
|
|
|
2014-03-01 12:25:26 +01:00
|
|
|
|
2014-03-03 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/bfin-lex-wrapper.c: Correct copyright date.
|
2014-03-03 04:11:34 +01:00
|
|
|
|
* config/obj-fdpicelf.c: Likewise.
|
|
|
|
|
* config/obj-fdpicelf.h: Likewise.
|
2014-03-01 12:25:26 +01:00
|
|
|
|
* config/tc-frv.c: Correct copyright punctuation.
|
|
|
|
|
* config/tc-ip2k.c: Likewise.
|
|
|
|
|
* config/tc-iq2000.c: Likewise.
|
|
|
|
|
* config/tc-mep.c: Likewise.
|
|
|
|
|
* config/tc-tic4x.c: Likewise.
|
|
|
|
|
* config/tc-tic4x.h: Likewise.
|
|
|
|
|
|
2014-03-01 10:12:49 +01:00
|
|
|
|
2014-03-01 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-avr.c: Remove atxmega16x1.
|
|
|
|
|
|
2014-02-28 05:39:32 +01:00
|
|
|
|
2014-02-28 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* dwarf2dbg.c (out_debug_line): Correct .debug_line header_length
|
|
|
|
|
field for 64-bit dwarf.
|
|
|
|
|
|
2014-02-20 15:57:31 +01:00
|
|
|
|
2014-02-21 Ilya Tocar <ilya.tocar@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (cpu_arch): Add .prefetchwt1.
|
|
|
|
|
* doc/c-i386.texi: Document .prefetchwt1/prefetchwt1.
|
|
|
|
|
|
Add clflushopt, xsaves, xsavec, xrstors
gas/
2014-02-12 Ilya Tocar <ilya.tocar@intel.com>
* config/tc-i386.c (cpu_arch): Add .clflushopt, .xsavec, .xsaves.
* doc/c-i386.texi: Document .xsavec/xsavec/.xsaves/xsaves/
clflushopt/.clfushopt.
gas/testsuite/
2014-02-12 Ilya Tocar <ilya.tocar@intel.com>
* gas/i386/clflushopt-intel.d: New.
* gas/i386/clflushopt.d: Ditto.
* gas/i386/clflushopt.s: Ditto.
* gas/i386/i386.exp: Run new tests.
* gas/i386/x86-64-clflushopt-intel.d: New.
* gas/i386/x86-64-clflushopt.d: Ditto.
* gas/i386/x86-64-clflushopt.s: Ditto.
* gas/i386/x86-64-xsavec-intel.d: Ditto.
* gas/i386/x86-64-xsavec.d: Ditto.
* gas/i386/x86-64-xsavec.s: Ditto.
* gas/i386/x86-64-xsaves-intel.d: Ditto.
* gas/i386/x86-64-xsaves.d: Ditto.
* gas/i386/x86-64-xsaves.s: Ditto.
* gas/i386/xsavec-intel.d: Ditto.
* gas/i386/xsavec.d: Ditto.
* gas/i386/xsavec.s: Ditto.
* gas/i386/xsaves-intel.d: Ditto.
* gas/i386/xsaves.d: Ditto.
* gas/i386/xsaves.s: Ditto.
opcodes/
2014-02-12 Ilya Tocar <ilya.tocar@intel.com>
* i386-dis.c (MOD enum): Add MOD_0FC7_REG_3, MOD_0FC7_REG_4,
MOD_0FC7_REG_5.
(PREFIX enum): Add PREFIX_0FAE_REG_7.
(reg_table): Add MOD_0FC7_REG_3, MOD_0FC7_REG_4 MOD_0FC7_REG_5.
(prefix_table): Add clflusopt.
(mod_table): Add xrstors, xsavec, xsaves.
* i386-gen.c (cpu_flag_init): Add CPU_CLFLUSHOPT_FLAGS,
CPU_XSAVES_FLAGS, CPU_XSAVEC_FLAGS.
(cpu_flags): Add CpuClflushOpt, CpuXSAVES, CpuXSAVEC.
* i386-init.h: Regenerate.
* i386-opc.tbl: Add clflushopt, xrstors, xrstors64, xsaves,
xsaves64, xsavec, xsavec64.
* i386-tbl.h: Regenerate.
2013-11-25 13:35:42 +01:00
|
|
|
|
2014-02-12 Ilya Tocar <ilya.tocar@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (cpu_arch): Add .clflushopt, .xsavec, .xsaves.
|
|
|
|
|
* doc/c-i386.texi: Document .xsavec/xsavec/.xsaves/xsaves/
|
|
|
|
|
clflushopt/.clfushopt.
|
|
|
|
|
|
2014-02-10 00:29:35 +01:00
|
|
|
|
2014-02-10 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* po/POTFILES.in: Regenerate.
|
|
|
|
|
* po/gas.pot: Regenerate.
|
|
|
|
|
|
2014-02-03 17:42:42 +01:00
|
|
|
|
2014-02-03 Sandra Loosemore <sandra@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-nios2.c (md_apply_fix): Test for new relocs.
|
|
|
|
|
(nios2_special_reloc): Add %call_lo, %call_hiadj, %got_lo,
|
|
|
|
|
%got_hiadj relocation operators. Sort table and add comment
|
|
|
|
|
to explain ordering.
|
|
|
|
|
(nios2_fix_adjustable): Test for new relocs.
|
|
|
|
|
* doc/c-nios2.texi (Nios II Relocations): Document new relocation
|
|
|
|
|
operators.
|
|
|
|
|
|
Nios II CALL26 linker relaxation
2014-01-30 Sandra Loosemore <sandra@codesourcery.com>
bfd/
* bfd-in2.h: Update from reloc.c.
* elf32-nios2.c: Include elf32-nios2.h.
(elf_nios2_howto_table_rel): Add entry for R_NIOS2_CALL26_NOAT.
(nios2_reloc_map): Likewise.
(enum elf32_nios2_stub_type): Declare.
(struct elf32_nios2_stub_hash_entry): Declare.
(nios2_stub_hash_entry, nios2_stub_hash_lookup): New macros.
(struct elf32_nios2_link_hash_entry): Add hsh_cache field.
(struct elf32_nios2_link_hash_table): Add new fields bstab,
stub_bfd, add_stub_section, layout_sections_again, stub_group,
bfd_count, top_index, input_list, all_local_syms.
(nios2_call26_stub_entry): New.
(nios2_elf32_install_imm16): Move up in file.
(nios2_elf32_install_data): Move up in file.
(hiadj): Move up in file.
(stub_hash_newfunc): New.
(link_hash_newfunc): Initialize hsh_cache field.
(STUB_SUFFIX): New.
(nios2_stub_name): New.
(nios2_get_stub_entry): New.
(nios2_add_stub): New.
(nios2_elf32_setup_section_lists): New.
(nios2_elf32_next_input_section): New.
(CALL26_SEGMENT): New.
(MAX_STUB_SECTION_SIZE): New.
(group_sections): New.
(nios2_type_of_stub): New.
(nios2_build_one_stub): New.
(nios2_size_one_stub): New.
(get_local_syms): New.
(nios2_elf32_size_stubs): New.
(nios2_elf32_build_stubs): New.
(nios2_elf32_do_call26_relocate): Correct CALL26 overflow test.
(nios2_elf32_relocate_section): Handle R_NIOS2_CALL26_NOAT. Add
trampolines for R_NIOS2_CALL26 stubs.
(nios2_elf32_check_relocs): Handle R_NIOS2_CALL26_NOAT.
(nios2_elf32_gc_sweep_hook): Likewise.
(nios2_elf32_link_hash_table_create): Initialize the stub hash table.
(nios2_elf32_link_hash_table_free): New.
(bfd_elf32_bfd_link_hash_table_free): Define.
* elf32-nios2.h: New file.
* libbfd.h: Update from reloc.c.
* reloc.c (BFD_RELOC_NIOS2_CALL26_NOAT): New.
gas/
* config/tc-nios2.c (md_apply_fix): Handle BFD_RELOC_NIOS2_CALL26_NOAT.
(nios2_assemble_args_m): Likewise.
(md_assemble): Likewise.
gas/testsuite/
* gas/nios2/call26_noat.d: New.
* gas/nios2/call26_noat.s: New.
* gas/nios2/call_noat.d: New.
* gas/nios2/call_noat.s: New.
include/elf/
* nios2.h (elf_nios2_reloc_type): Add R_NIOS2_CALL26_NOAT.
ld/
* Makefile.am (enios2elf.c, enios2linux.c): Update dependencies.
* Makefile.in: Regenerated.
* emulparams/nios2elf.sh (EXTRA_EM_FILE): Set.
* emulparams/nios2linux.sh (EXTRA_EM_FILE): Set.
* emultempl/nios2elf.em: New file.
* gen-doc.texi (NIOSII): Set.
* ld.texinfo (NIOSII): Set.
ld/testsuite/
* ld-nios2/relax_call26.s: New.
* ld-nios2/relax_call26_boundary.ld: New.
* ld-nios2/relax_call26_boundary.s: New.
* ld-nios2/relax_call26_boundary_c8.d: New.
* ld-nios2/relax_call26_boundary_cc.d: New.
* ld-nios2/relax_call26_boundary_d0.d: New.
* ld-nios2/relax_call26_boundary_d4.d: New.
* ld-nios2/relax_call26_boundary_d8.d: New.
* ld-nios2/relax_call26_boundary_dc.d: New.
* ld-nios2/relax_call26_boundary_f0.d: New.
* ld-nios2/relax_call26_boundary_f4.d: New.
* ld-nios2/relax_call26_boundary_f8.d: New.
* ld-nios2/relax_call26_boundary_fc.d: New.
* ld-nios2/relax_call26_cache.d: New.
* ld-nios2/relax_call26_cache.ld: New.
* ld-nios2/relax_call26_cache.s: New.
* ld-nios2/relax_call26_multi.d: New.
* ld-nios2/relax_call26_multi.ld: New.
* ld-nios2/relax_call26_norelax.d: New.
* ld-nios2/relax_call26_shared.d: New.
* ld-nios2/relax_call26_shared.ld: New.
2014-01-31 02:47:07 +01:00
|
|
|
|
2014-01-30 Sandra Loosemore <sandra@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-nios2.c (md_apply_fix): Handle BFD_RELOC_NIOS2_CALL26_NOAT.
|
|
|
|
|
(nios2_assemble_args_m): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
|
2014-01-24 20:43:58 +01:00
|
|
|
|
2014-01-24 DJ Delorie <dj@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-msp430.c (msp430_section): Always flag data sections,
|
|
|
|
|
regardless of -md.
|
|
|
|
|
(msp430_frob_section): New. Make sure all sections are noticed if
|
|
|
|
|
they have content.
|
|
|
|
|
(msp430_lcomm): New. Flag bss if .lcomm is seen.
|
|
|
|
|
(msp430_comm): New. Likewise.
|
|
|
|
|
(md_pseudo_table): Add them.
|
|
|
|
|
* config/tc-msp430.h (msp430_frob_section): Declare.
|
|
|
|
|
(tc_frob_section): Define.
|
|
|
|
|
|
2014-01-23 18:08:24 +01:00
|
|
|
|
2014-01-23 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-msp430.c (show_mcu_list): Delete.
|
|
|
|
|
(md_parse_option): Accept any MCU name. Accept several more
|
|
|
|
|
variants for the -mcpu option.
|
|
|
|
|
(md_show_usage): Do not call show_mcu_list.
|
|
|
|
|
|
2014-01-22 22:41:13 +01:00
|
|
|
|
2014-01-22 DJ Delorie <dj@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-msp430.c (msp430_refsym): New: ".refsym <symbol>"
|
|
|
|
|
* doc/c-msp430.texi (MSP430 Directives): Document it.
|
|
|
|
|
|
2014-01-22 20:39:02 +01:00
|
|
|
|
2014-01-22 Michael Zolotukhin <michael.v.zolotukhin@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (check_VecOperands): Remove regzmm from AVX2
|
|
|
|
|
gather assert.
|
|
|
|
|
|
2014-01-22 18:57:31 +01:00
|
|
|
|
2014-01-22 Michael Zolotukhin <michael.v.zolotukhin@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR gas/16489
|
|
|
|
|
* config/tc-i386.c (check_VecOperands): Add check for invalid
|
|
|
|
|
register set in AVX512 gathers.
|
|
|
|
|
|
2014-01-22 06:06:27 +01:00
|
|
|
|
2014-01-22 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-tic4x.c (md_shortopts): s/CONST/const/.
|
|
|
|
|
|
2014-01-21 21:12:19 +01:00
|
|
|
|
2014-01-21 DJ Delorie <dj@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-rl78.c (require_end_of_expr): New.
|
|
|
|
|
(md_operand): Call it.
|
|
|
|
|
(rl78_cons_fix_new): Mark LO16, HI16, ahd HI8 internal relocations
|
|
|
|
|
as not overflowing.
|
|
|
|
|
|
2014-01-16 11:08:45 +01:00
|
|
|
|
2014-01-17 Will Newton <will.newton@linaro.org>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (do_vfp_nsyn_cvt_fpv8): Set OP to 1
|
|
|
|
|
for the s32.f64 flavours of VCVT.
|
|
|
|
|
|
2014-01-14 13:39:45 +01:00
|
|
|
|
2014-01-14 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR gas/16434
|
|
|
|
|
* config/tc-z80.c (wrong_match): Provide format string to
|
|
|
|
|
as_warn.
|
|
|
|
|
(parse_exp_not_indexed): Delete unused variable dummy.
|
|
|
|
|
(emit_byte): Delete unused variable fixp.
|
|
|
|
|
|
2014-01-08 17:22:35 +01:00
|
|
|
|
2014-01-08 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (regbnd): Removed.
|
|
|
|
|
(vec_disp8): Likewise.
|
|
|
|
|
|
2014-01-08 14:48:12 +01:00
|
|
|
|
2014-01-08 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* as.c (parse_args): Update copyright year to 2014.
|
|
|
|
|
|
2014-01-05 05:47:10 +01:00
|
|
|
|
2014-01-07 Tom Tromey <tromey@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-tic30.c (debug): Avoid old VA_* compatibility
|
|
|
|
|
wrappers.
|
|
|
|
|
|
2014-01-06 03:49:29 +01:00
|
|
|
|
2014-01-07 Tom Tromey <tromey@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-microblaze.h (parse_cons_expression_microblaze): Don't
|
|
|
|
|
use PARAMS.
|
|
|
|
|
|
2013-12-23 18:11:10 +01:00
|
|
|
|
2014-01-07 Tom Tromey <tromey@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-xc16x.h: Don't use ANSI_PROTOTYPES.
|
|
|
|
|
|
2013-12-04 19:29:25 +01:00
|
|
|
|
2013-01-07 Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-aarch64.c (aarch64_cpus): Add entry for "xgene-1"
|
|
|
|
|
|
2014-01-08 14:32:12 +01:00
|
|
|
|
For older changes see ChangeLog-2013
|
2002-01-07 13:12:47 +01:00
|
|
|
|
|
2014-01-08 14:32:12 +01:00
|
|
|
|
Copyright (C) 2014 Free Software Foundation, Inc.
|
2012-12-10 13:48:03 +01:00
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
2002-01-07 13:12:47 +01:00
|
|
|
|
Local Variables:
|
|
|
|
|
mode: change-log
|
|
|
|
|
left-margin: 8
|
|
|
|
|
fill-column: 74
|
|
|
|
|
version-control: never
|
|
|
|
|
End:
|