2020-08-28 21:39:29 +08:00
|
|
|
|
2020-08-28 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 26460
|
|
|
|
|
* config/tc-ia64.c (parse_operands): Don't access past end of
|
|
|
|
|
idesc->operands.
|
|
|
|
|
|
2020-08-27 03:46:04 +08:00
|
|
|
|
2020-08-26 Mark Wielaard <mark@klomp.org>
|
|
|
|
|
|
|
|
|
|
* as.c (parse_args): Handle bad -gdwarf options.
|
|
|
|
|
|
2020-08-26 11:21:14 +08:00
|
|
|
|
2020-08-28 Cooper Qu <cooper.qu@linux.alibaba.com>
|
|
|
|
|
|
|
|
|
|
* gas/config/tc-csky.c (md_begin): Set attributes.
|
|
|
|
|
(isa_flag): Change type to unsigned 64 bits.
|
|
|
|
|
(struct csky_cpu_info): Likewise.
|
|
|
|
|
(struct csky_macro_info): Likewise.
|
|
|
|
|
(set_csky_attribute): New.
|
|
|
|
|
* testsuite/gas/csky/802j.d: Ignore .csky.attributes section.
|
|
|
|
|
* testsuite/gas/csky/all.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/bsr1.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/csky_vdsp.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/cskyv2_all.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/cskyv2_ck803r2.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/cskyv2_ck860.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/cskyv2_dsp.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/cskyv2_elrw.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/cskyv2_float.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/enhance_dsp.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/java.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/v1_float.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/v2_float_part1.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/v2_float_part2.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/v2_tls_gd.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/v2_tls_ie.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/v2_tls_ld.d: Likewise.
|
|
|
|
|
* testsuite/gas/csky/v2_tls_le.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/elf.exp: Add handler for CSKY.
|
|
|
|
|
* testsuite/gas/elf/section2.e-csky: New.
|
|
|
|
|
|
2020-08-27 12:16:45 +08:00
|
|
|
|
2020-08-27 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 26467
|
|
|
|
|
* cgen.c (weak_operand_overflow_check): Handle opmask for
|
|
|
|
|
operand length zero. Use 1UL constant.
|
|
|
|
|
|
2020-08-26 18:58:40 +08:00
|
|
|
|
2020-08-26 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 26508
|
|
|
|
|
* config/tc-xtensa.c (xg_get_trampoline_chain): Return early
|
|
|
|
|
when n_entries is zero.
|
|
|
|
|
|
2020-08-26 16:09:58 +08:00
|
|
|
|
2020-08-26 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 26448
|
|
|
|
|
* symbols.c: Include limits.h.
|
|
|
|
|
(resolve_symbol_value <O_left_shift, O_right_shift>): Do an
|
|
|
|
|
unsigned shift. Warn if shift count larger than valueT size.
|
|
|
|
|
|
2020-08-26 13:25:39 +08:00
|
|
|
|
2020-08-26 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 26447
|
|
|
|
|
* expr.c (expr <O_left_shift>): Do an unsigned shift.
|
|
|
|
|
|
|
|
|
|
2020-08-25 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
bpf: add xBPF ISA
This patch adds support for xBPF, another ISA targetting the BPF
virtual architecture. For now, the primary difference between eBPF
and xBPF is that xBPF supports indirect calls through the
'call %reg' form of the call instruction.
bfd/
* archures.c (bfd_mach_xbpf): Define.
* bfd-in2.h: Regenerate.
* cpu-bpf.c (bfd_xbpf_arch) New.
(bfd_bpf_arch) Update next in list field to point to xbpf arch.
cpu/
* bpf.cpu (arch bpf): Add xbpf mach and isas.
(define-xbpf-isa) New pmacro.
(all-isas) Add xbpfle,xbpfbe.
(endian-isas): New pmacro.
(mach xbpf): New.
(model xbpf-def): Likewise.
(h-gpr): Add xbpf mach.
(f-dstle, f-srcle, dstle, srcle): Add xbpfle isa.
(f-dstbe, f-srcbe, dstbe, srcbe): Add xbpfbe isa.
(define-alu-insn-un): Use new endian-isas pmacro.
(define-alu-insn-bin, define-alu-insn-mov): Likewise.
(define-endian-insn, define-lddw): Likewise.
(dlind, dxli, dxsi, dsti): Likewise.
(define-cond-jump-insn, define-call-insn): Likewise.
(define-atomic-insns): Likewise.
gas/
* config/tc-bpf.c: Add option -mxbpf to select xbpf isa.
* testsuite/gas/bpf/indcall-1.d: New file.
* testsuite/gas/bpf/indcall-1.s: Likewise.
* testsuite/gas/bpf/indcall-bad-1.l: Likewise.
* testsuite/gas/bpf/indcall-bad-1.s: Likewise.
* testsuite/gas/bpf/bpf.exp: Run new tests.
opcodes/
* bpf-desc.c: Regenerate.
* bpf-desc.h: Likewise.
* bpf-opc.c: Likewise.
* bpf-opc.h: Likewise.
* disassemble.c (disassemble_init_for_target): Set bits for xBPF
ISA when appropriate.
2020-08-26 21:39:00 +08:00
|
|
|
|
2020-08-26 David Faust <david.faust@oracle.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-bpf.c: Add option -mxbpf to select xbpf isa.
|
|
|
|
|
* testsuite/gas/bpf/indcall-1.d: New file.
|
|
|
|
|
* testsuite/gas/bpf/indcall-1.s: Likewise.
|
|
|
|
|
* testsuite/gas/bpf/indcall-bad-1.l: Likewise.
|
|
|
|
|
* testsuite/gas/bpf/indcall-bad-1.s: Likewise.
|
|
|
|
|
* testsuite/gas/bpf/bpf.exp: Run new tests.
|
|
|
|
|
|
2020-08-25 15:46:28 +08:00
|
|
|
|
2020-08-25 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
2020-08-26 13:25:39 +08:00
|
|
|
|
PR 26501
|
2020-08-25 15:46:28 +08:00
|
|
|
|
* gas/config/tc-tic54x.c (tic54x_undefined_symbol): Properly treat
|
|
|
|
|
misc_symbol_hash entries without values.
|
|
|
|
|
|
2020-08-25 15:26:07 +08:00
|
|
|
|
2020-08-25 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 26500
|
|
|
|
|
* tc-tic4x.c (tic4x_inst_make): Don't die on terminating insn
|
|
|
|
|
with name = "".
|
|
|
|
|
|
2020-08-25 14:04:10 +08:00
|
|
|
|
2020-08-25 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 26441
|
|
|
|
|
* config/tc-cr16.c (get_b_cc): Return NULL early if op isn't
|
|
|
|
|
two or three chars, and don't bother copying.
|
|
|
|
|
|
2020-08-25 12:42:49 +08:00
|
|
|
|
2020-08-25 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 26426
|
|
|
|
|
* config/tc-arm.c (do_neon_mvn, do_neon_swp): Bail out on
|
|
|
|
|
NS_NULL shape.
|
|
|
|
|
|
2020-08-25 13:21:21 +08:00
|
|
|
|
2020-08-25 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 26410
|
|
|
|
|
* symbols.c (dollar_label_count, dollar_label_max): Make size_t.
|
|
|
|
|
(dollar_label_clear): Don't call memset with NULL pointer.
|
|
|
|
|
|
2020-08-25 08:27:58 +08:00
|
|
|
|
2020-08-25 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arc.c (declare_register_set): Avoid false positive
|
|
|
|
|
format-overflow warning.
|
|
|
|
|
* config/tc-epiphany.c (md_assemble): Likewise.
|
|
|
|
|
* config/tc-mips.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-mmix.c (mmix_md_begin): Likewise.
|
|
|
|
|
* config/tc-nds32.c (nds32_elf_append_relax_relocs): Avoid false
|
|
|
|
|
positive "may be used uninitialized" warning.
|
|
|
|
|
|
2020-08-24 20:13:47 +08:00
|
|
|
|
2020-08-24 Cooper Qu <cooper.qu@linux.alibaba.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-csky.c (csky_archs): Add item for CK860,
|
|
|
|
|
change ck810 and ck807's arch_flag.
|
|
|
|
|
(csky_cpus): Add item for CK860.
|
|
|
|
|
(md_begin): Enable DSP for CK810 and CK807 by default.
|
|
|
|
|
(md_apply_fix): Fix CKCORE_TLS_IE32 relocation failure.
|
|
|
|
|
* gas/testsuite/gas/csky/cskyv2_all.d: Change 'sync 0'
|
|
|
|
|
to 'sync'.
|
|
|
|
|
* gas/testsuite/gas/csky/cskyv2_all.s: Likewise.
|
|
|
|
|
* gas/testsuite/gas/csky/cskyv2_ck860.d: New.
|
|
|
|
|
* gas/testsuite/gas/csky/cskyv2_ck860.s: New.
|
|
|
|
|
* gas/testsuite/gas/csky/enhance_dsp.d: Change plsli.u16
|
|
|
|
|
to plsli.16.
|
|
|
|
|
* gas/testsuite/gas/csky/enhance_dsp.s: Likewise.
|
|
|
|
|
|
2020-08-23 19:35:34 +08:00
|
|
|
|
2020-08-24 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-tic54x.c (stag_add_field_symbols): Don't free "name"
|
|
|
|
|
in case where it isn't copied.
|
|
|
|
|
* config/tc-tic54x.h (LOCAL_LABELS_FB): Undef.
|
|
|
|
|
* testsuite/gas/tic54x/field.d: Dump section contents and symbols
|
|
|
|
|
rather than disassembling.
|
|
|
|
|
* testsuite/gas/tic54x/set.d: Adjust for newer disassembly.
|
|
|
|
|
|
2020-08-24 11:51:31 +08:00
|
|
|
|
2020-08-24 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-aarch64.c (md_begin): Don't bother checking for
|
|
|
|
|
out of memory failure from str_htab_create.
|
|
|
|
|
* config/tc-arc.c (arc_insert_opcode, md_begin): Likewise.
|
|
|
|
|
(arc_extcorereg, arc_stralloc): Likewise.
|
|
|
|
|
* config/tc-arm.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
|
|
|
|
|
* config/tc-cris.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-crx.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-pdp11.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-score.c (s3_build_reg_hsh, s3_begin): Likewise.
|
|
|
|
|
* config/tc-score7.c (s7_build_reg_hsh, s7_begin): Likewise.
|
|
|
|
|
|
2020-08-24 11:28:14 +08:00
|
|
|
|
2020-08-24 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (move_or_literal_pool): Avoid false positive
|
|
|
|
|
"may be used uninitialised".
|
|
|
|
|
(opcode_lookup): Likewise.
|
|
|
|
|
|
2020-08-24 11:36:46 +08:00
|
|
|
|
2020-08-24 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 26526
|
|
|
|
|
* symbols.c (local_symbol_convert): Clear out xtra.
|
|
|
|
|
|
2020-08-21 18:08:10 +08:00
|
|
|
|
2020-08-21 Cooper Qu <cooper.qu@linux.alibaba.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-csky.c (CSKY_ISA_803R2): New.
|
|
|
|
|
(csky_archs): Add ck803r2 series.
|
|
|
|
|
(md_begin): Fix warning about -medsp.
|
|
|
|
|
(csky_get_freg_val): Support lowercase of fpu register name.
|
|
|
|
|
* testsuite/gas/csky/cskyv2_ck803r2.s: New file.
|
|
|
|
|
* testsuite/gas/csky/cskyv2_ck803r2.d: New file.
|
|
|
|
|
|
PR26513, 629310abec breaks assembling PowerPC Linux kernels
Inserting with replacement is wrong for some gas hash table uses.
This patch implements an htab_insert that conditionally replaces, and
similarly for str_hash_insert. str_hash_insert with replace=0 is
roughly equivalent to the older hash_insert, and str_hash_insert with
replace=1 to the older hash_jam, but return values are different. I
found it useful to know whether the slot was occupied prior to
inserting/replacing. I've also reinstated the fatal errors on messing
up opcode tables with duplicates.
PR 26513
* hash.h (htab_insert): Update prototype and comment.
(struct string_tuple): Make "value" a const void*.
(string_tuple_alloc): Likewise.
(str_hash_find, str_hash_find_n): Cast returned value.
(str_hash_insert): Add "replace" parameter, and return slot pointer.
Free alloc'd element when not inserted.
* hash.c (htab_insert): Likewise. Return slot when element exists,
otherwise return NULL.
* read.c (pop_insert): Insert into hash table without first searching.
* config/tc-avr.c (md_begin): Likewise.
* config/tc-msp430.c (md_begin): Likewise.
* config/tc-nds32.c (nds32_init_nds32_pseudo_opcodes): Likewise.
* config/tc-v850.c (md_begin): Likewise.
* macro.c (do_formals, define_macro, macro_expand_body): Likewise.
(delete_macro): Delete from hash table.
* config/tc-tic54x.c (subsym_create_or_replace): Correct logic.
* symbols.c (local_symbol_make, symbol_table_insert): Allow
replacement of hash table entries.
* config/obj-coff-seh.c (seh_hash_insert): Likewise.
* config/obj-coff.c (tag_insert): Likewise.
* config/tc-iq2000.c (iq2000_add_macro): Likewise.
* config/tc-m68k.c (md_begin): Likewise for aliases.
* config/tc-tic4x.c (tic4x_asg): Likewise.
* config/tc-tic6x.c (md_begin): Likewise.
* dw2gencfi.c (dwcfi_hash_find_or_make): Disallow replacement of
hash table entries.
* ecoff.c (add_string, get_tag): Likewise.
* macro.c (expand_irp): Likewise.
* config/obj-elf.c (build_additional_section_info): Likewise.
* config/tc-aarch64.c (insert_reg_alias): Likewise.
(checked_hash_insert): Likewise.
* config/tc-alpha.c (get_alpha_reloc_tag, md_begin): Likewise.
* config/tc-arc.c (arc_insert_opcode, declare_register): Likewise.
(declare_addrtype, md_begin, arc_extcorereg): Likewise.
* config/tc-arm.c (insert_reg_alias): Likewise.
(arm_tc_equal_in_insn, md_begin): Likewise.
* config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
* config/tc-cris.c (md_begin): Likewise.
* config/tc-crx.c (md_begin): Likewise.
* config/tc-csky.c (md_begin): Likewise.
* config/tc-d10v.c (md_begin): Likewise.
* config/tc-dlx.c (md_begin): Likewise.
* config/tc-ft32.c (md_begin): Likewise.
* config/tc-h8300.c (md_begin): Likewise.
* config/tc-hppa.c (md_begin): Likewise.
* config/tc-i386.c (md_begin): Likewise.
* config/tc-ia64.c (dot_rot, dot_entry, declare_register): Likewise.
(md_begin, dot_alias): Likewise.
* config/tc-m68hc11.c (md_begin): Likewise.
* config/tc-m68k.c (md_begin): Likewise.
* config/tc-mcore.c (md_begin): Likewise.
* config/tc-microblaze.c (md_begin): Likewise.
* config/tc-mips.c (md_begin): Likewise.
* config/tc-mmix.c (md_begin): Likewise.
* config/tc-mn10200.c (md_begin): Likewise.
* config/tc-mn10300.c (md_begin): Likewise.
* config/tc-moxie.c (md_begin): Likewise.
* config/tc-nds32.c (nds32_relax_hint, md_begin): Likewise.
* config/tc-nios2.c (md_begin): Likewise.
* config/tc-ns32k.c (md_begin): Likewise.
* config/tc-pdp11.c (md_begin): Likewise.
* config/tc-pj.c (fake_opcode, md_begin): Likewise.
* config/tc-ppc.c (ppc_setup_opcodes): Likewise.
* config/tc-pru.c (md_begin): Likewise.
* config/tc-riscv.c (init_ext_version_hash): Likewise.
(init_opcode_names_hash, hash_reg_name, init_opcode_hash): Likewise.
(riscv_init_csr_hash): Likewise.
* config/tc-s390.c (s390_setup_opcodes, md_begin): Likewise.
* config/tc-score.c (s3_insert_reg): Likewise.
(s3_build_score_ops_hsh, s3_build_dependency_insn_hsh): Likewise.
* config/tc-score7.c (s7_build_score_ops_hsh): Likewise.
(s7_build_dependency_insn_hsh, s7_insert_reg): Likewise.
* config/tc-sh.c (md_begin): Likewise.
* config/tc-sparc.c (md_begin): Likewise.
* config/tc-spu.c (md_begin): Likewise.
* config/tc-tic30.c (md_begin): Likewise.
* config/tc-tic4x.c (tic4x_inst_insert): Likewise.
* config/tc-tic54x.c (stag_add_field_symbols, md_begin): Likewise.
(tic54x_endstruct, tic54x_var, tic54x_macro_info): Likewise.
(subsym_substitute): Likewise.
* config/tc-tilegx.c (md_begin): Likewise.
* config/tc-tilepro.c (md_begin): Likewise.
* config/tc-vax.c (vip_begin): Likewise.
* config/tc-wasm32.c (md_begin): Likewise.
* config/tc-xgate.c (md_begin): Likewise.
* config/tc-z8k.c (md_begin): Likewise.
* testsuite/gas/ppc/dcbt.d,
* testsuite/gas/ppc/dcbt.s: New test.
* testsuite/gas/ppc/ppc.exp: Run it.
* ecoff.c (add_string): Report fatal error on duplicates.
* config/tc-alpha.c (md_begin): Likewise.
* config/tc-arc.c (arc_insert_opcode, declare_register): Likewise.
(declare_addrtype, md_begin, arc_extcorereg): Likewise.
* config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
* config/tc-cris.c (md_begin): Likewise.
* config/tc-crx.c (md_begin): Likewise.
* config/tc-dlx.c (md_begin): Likewise.
* config/tc-hppa.c (md_begin): Likewise.
* config/tc-i386.c (md_begin): Likewise.
* config/tc-ia64.c (dot_rot, dot_entry, declare_register): Likewise.
(md_begin): Likewise.
* config/tc-m68k.c (md_begin): Likewise.
* config/tc-mips.c (md_begin): Likewise.
* config/tc-nios2.c (md_begin): Likewise.
* config/tc-ns32k.c (md_begin): Likewise.
* config/tc-ppc.c (ppc_setup_opcodes): Likewise.
* config/tc-pru.c (md_begin): Likewise.
* config/tc-riscv.c (init_ext_version_hash): Likewise.
(init_opcode_names_hash, hash_reg_name, init_opcode_hash): Likewise.
* config/tc-s390.c (s390_setup_opcodes, md_begin): Likewise.
* config/tc-sparc.c (md_begin): Likewise.
* config/tc-tic30.c (md_begin): Likewise.
* config/tc-tic4x.c (tic4x_inst_insert): Likewise.
* config/tc-tilegx.c (md_begin): Likewise.
* config/tc-tilepro.c (md_begin): Likewise.
* config/tc-vax.c (vip_begin): Likewise.
* config/tc-alpha.c,
* config/tc-arm.c,
* config/tc-avr.c,
* config/tc-cr16.c,
* config/tc-csky.c,
* config/tc-i386.c,
* config/tc-m68hc11.c,
* config/tc-m68k.c,
* config/tc-microblaze.c,
* config/tc-ns32k.c,
* config/tc-pj.c,
* config/tc-ppc.c,
* config/tc-score.c,
* config/tc-score7.c,
* config/tc-tic4x.c,
* config/tc-tic54x.c,
* config/tc-tilegx.c,
* config/tc-tilepro.c,
* config/tc-xgate.c: Formatting.
2020-08-22 16:29:57 +08:00
|
|
|
|
2020-08-23 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 26513
|
|
|
|
|
* hash.h (htab_insert): Update prototype and comment.
|
|
|
|
|
(struct string_tuple): Make "value" a const void*.
|
|
|
|
|
(string_tuple_alloc): Likewise.
|
|
|
|
|
(str_hash_find, str_hash_find_n): Cast returned value.
|
|
|
|
|
(str_hash_insert): Add "replace" parameter, and return slot pointer.
|
|
|
|
|
Free alloc'd element when not inserted.
|
|
|
|
|
* hash.c (htab_insert): Likewise. Return slot when element exists,
|
|
|
|
|
otherwise return NULL.
|
|
|
|
|
* read.c (pop_insert): Insert into hash table without first searching.
|
|
|
|
|
* config/tc-avr.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-msp430.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-nds32.c (nds32_init_nds32_pseudo_opcodes): Likewise.
|
|
|
|
|
* config/tc-v850.c (md_begin): Likewise.
|
|
|
|
|
* macro.c (do_formals, define_macro, macro_expand_body): Likewise.
|
|
|
|
|
(delete_macro): Delete from hash table.
|
|
|
|
|
* config/tc-tic54x.c (subsym_create_or_replace): Correct logic.
|
|
|
|
|
|
|
|
|
|
* symbols.c (local_symbol_make, symbol_table_insert): Allow
|
|
|
|
|
replacement of hash table entries.
|
|
|
|
|
* config/obj-coff-seh.c (seh_hash_insert): Likewise.
|
|
|
|
|
* config/obj-coff.c (tag_insert): Likewise.
|
|
|
|
|
* config/tc-iq2000.c (iq2000_add_macro): Likewise.
|
|
|
|
|
* config/tc-m68k.c (md_begin): Likewise for aliases.
|
|
|
|
|
* config/tc-tic4x.c (tic4x_asg): Likewise.
|
|
|
|
|
* config/tc-tic6x.c (md_begin): Likewise.
|
|
|
|
|
|
|
|
|
|
* dw2gencfi.c (dwcfi_hash_find_or_make): Disallow replacement of
|
|
|
|
|
hash table entries.
|
|
|
|
|
* ecoff.c (add_string, get_tag): Likewise.
|
|
|
|
|
* macro.c (expand_irp): Likewise.
|
|
|
|
|
* config/obj-elf.c (build_additional_section_info): Likewise.
|
|
|
|
|
* config/tc-aarch64.c (insert_reg_alias): Likewise.
|
|
|
|
|
(checked_hash_insert): Likewise.
|
|
|
|
|
* config/tc-alpha.c (get_alpha_reloc_tag, md_begin): Likewise.
|
|
|
|
|
* config/tc-arc.c (arc_insert_opcode, declare_register): Likewise.
|
|
|
|
|
(declare_addrtype, md_begin, arc_extcorereg): Likewise.
|
|
|
|
|
* config/tc-arm.c (insert_reg_alias): Likewise.
|
|
|
|
|
(arm_tc_equal_in_insn, md_begin): Likewise.
|
|
|
|
|
* config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
|
|
|
|
|
* config/tc-cris.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-crx.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-csky.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-d10v.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-dlx.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-ft32.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-h8300.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-hppa.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-i386.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-ia64.c (dot_rot, dot_entry, declare_register): Likewise.
|
|
|
|
|
(md_begin, dot_alias): Likewise.
|
|
|
|
|
* config/tc-m68hc11.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-m68k.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-mcore.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-microblaze.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-mips.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-mmix.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-mn10200.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-mn10300.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-moxie.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-nds32.c (nds32_relax_hint, md_begin): Likewise.
|
|
|
|
|
* config/tc-nios2.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-ns32k.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-pdp11.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-pj.c (fake_opcode, md_begin): Likewise.
|
|
|
|
|
* config/tc-ppc.c (ppc_setup_opcodes): Likewise.
|
|
|
|
|
* config/tc-pru.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-riscv.c (init_ext_version_hash): Likewise.
|
|
|
|
|
(init_opcode_names_hash, hash_reg_name, init_opcode_hash): Likewise.
|
|
|
|
|
(riscv_init_csr_hash): Likewise.
|
|
|
|
|
* config/tc-s390.c (s390_setup_opcodes, md_begin): Likewise.
|
|
|
|
|
* config/tc-score.c (s3_insert_reg): Likewise.
|
|
|
|
|
(s3_build_score_ops_hsh, s3_build_dependency_insn_hsh): Likewise.
|
|
|
|
|
* config/tc-score7.c (s7_build_score_ops_hsh): Likewise.
|
|
|
|
|
(s7_build_dependency_insn_hsh, s7_insert_reg): Likewise.
|
|
|
|
|
* config/tc-sh.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-sparc.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-spu.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-tic30.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-tic4x.c (tic4x_inst_insert): Likewise.
|
|
|
|
|
* config/tc-tic54x.c (stag_add_field_symbols, md_begin): Likewise.
|
|
|
|
|
(tic54x_endstruct, tic54x_var, tic54x_macro_info): Likewise.
|
|
|
|
|
(subsym_substitute): Likewise.
|
|
|
|
|
* config/tc-tilegx.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-tilepro.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-vax.c (vip_begin): Likewise.
|
|
|
|
|
* config/tc-wasm32.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-xgate.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-z8k.c (md_begin): Likewise.
|
|
|
|
|
* testsuite/gas/ppc/dcbt.d,
|
|
|
|
|
* testsuite/gas/ppc/dcbt.s: New test.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run it.
|
|
|
|
|
|
|
|
|
|
* ecoff.c (add_string): Report fatal error on duplicates.
|
|
|
|
|
* config/tc-alpha.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-arc.c (arc_insert_opcode, declare_register): Likewise.
|
|
|
|
|
(declare_addrtype, md_begin, arc_extcorereg): Likewise.
|
|
|
|
|
* config/tc-cr16.c (initialise_reg_hash_table, md_begin): Likewise.
|
|
|
|
|
* config/tc-cris.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-crx.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-dlx.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-hppa.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-i386.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-ia64.c (dot_rot, dot_entry, declare_register): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
* config/tc-m68k.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-mips.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-nios2.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-ns32k.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-ppc.c (ppc_setup_opcodes): Likewise.
|
|
|
|
|
* config/tc-pru.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-riscv.c (init_ext_version_hash): Likewise.
|
|
|
|
|
(init_opcode_names_hash, hash_reg_name, init_opcode_hash): Likewise.
|
|
|
|
|
* config/tc-s390.c (s390_setup_opcodes, md_begin): Likewise.
|
|
|
|
|
* config/tc-sparc.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-tic30.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-tic4x.c (tic4x_inst_insert): Likewise.
|
|
|
|
|
* config/tc-tilegx.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-tilepro.c (md_begin): Likewise.
|
|
|
|
|
* config/tc-vax.c (vip_begin): Likewise.
|
|
|
|
|
|
|
|
|
|
* config/tc-alpha.c,
|
|
|
|
|
* config/tc-arm.c,
|
|
|
|
|
* config/tc-avr.c,
|
|
|
|
|
* config/tc-cr16.c,
|
|
|
|
|
* config/tc-csky.c,
|
|
|
|
|
* config/tc-i386.c,
|
|
|
|
|
* config/tc-m68hc11.c,
|
|
|
|
|
* config/tc-m68k.c,
|
|
|
|
|
* config/tc-microblaze.c,
|
|
|
|
|
* config/tc-ns32k.c,
|
|
|
|
|
* config/tc-pj.c,
|
|
|
|
|
* config/tc-ppc.c,
|
|
|
|
|
* config/tc-score.c,
|
|
|
|
|
* config/tc-score7.c,
|
|
|
|
|
* config/tc-tic4x.c,
|
|
|
|
|
* config/tc-tic54x.c,
|
|
|
|
|
* config/tc-tilegx.c,
|
|
|
|
|
* config/tc-tilepro.c,
|
|
|
|
|
* config/tc-xgate.c: Formatting.
|
|
|
|
|
|
Redo gas local symbol support
gas handles local symbols specially in order to save memory, but the
implementation using two separate hash tables is inefficient,
particularly the scheme of duplicating a struct local_symbol when it
needs to be converted to a full struct symbol. Also, updating symbol
pointers with LOCAL_SYMBOL_CHECK is horrible and has led to some hard
to find bugs.
This changes the implementation to use a single hash table and avoids
another copy of the symbol name in symbol_entry_t. When converting
local symbols the struct local_symbol memory is reused. Not only
does that save memory, but there is no need to twiddle symbol pointers
with LOCAL_SYMBOL_CHECK.
Assembling gcc-10 -g -Og gold/powerpc.cc output shows the following:
old:
symbol table hash statistics:
1371192 searches
1290398 collisions
143585 elements
262139 table size
mini local symbol table hash statistics:
2966204 searches
2707489 collisions
523533 elements
1048573 table size
523533 mini local symbols created, 140453 converted
new:
symbol table hash statistics:
2828883 searches
2453138 collisions
526665 elements
1048573 table size
523533 mini local symbols created, 140453 converted
* symbols.c (struct local_symbol): Add "hash" entry. Reorder fields.
Delete union. Adjust code throughout file.
(struct symbol): Add "hash", "name" and "x" entries. Reorder fields.
Split off some to..
(struct xsymbol): ..this. New struct. Adjust code throughout file
accessing these fields.
(struct symbol_entry): Delete.
(union symbol_entry): New.
(hash_symbol_entry): Adjust for symbol_entry_t change.
(symbol_entry_find): Likewise.
(eq_symbol_entry): Compare hash values too.
(symbol_entry_alloc): Delete.
(local_symbol_converted_p, local_symbol_mark_converted): Delete.
(local_symbol_get_real_symbol, local_symbol_set_real_symbol): Delete.
(local_hash): Delete.
(abs_symbol_x, dot_symbol_x): New static var.
(symbol_init): New function.
(symbol_create): Rewrite.
(LOCAL_SYMBOL_CHECK): Delete. Replace uses throughout with simple
test of flags.local_symbol.
(local_symbol_make): Adjust for struct local_symbol changes.
(local_symbol_convert): Rewrite. Adjust all callers.
(symbol_table_insert): Simplify.
(symbol_clone): Comment on local sym cloning. Handle split symbol
struct.
(get_real_sym): Delete. Remove all uses.
(symbol_find_exact_noref): Simplify.
(resolve_local_symbol): Don't resolve non-locals.
(S_SET_SEGMENT): Don't special case reg_section.
(S_SET_NAME): Set both name and bsym->name.
(symbol_mark_resolved, symbol_resolved_p): Simplify.
(symbol_symbolS): Update comment.
(symbol_begin): Don't create local_hash. Adjust abs_symbol setup.
(dot_symbol_init): Adjust dot_symbol setup.
(symbol_print_statistics): Delete local_hash stats.
2020-08-20 14:06:46 +08:00
|
|
|
|
2020-08-21 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* symbols.c (struct local_symbol): Add "hash" entry. Reorder fields.
|
|
|
|
|
Delete union. Adjust code throughout file.
|
|
|
|
|
(struct symbol): Add "hash", "name" and "x" entries. Reorder fields.
|
|
|
|
|
Split off some to..
|
|
|
|
|
(struct xsymbol): ..this. New struct. Adjust code throughout file
|
|
|
|
|
accessing these fields.
|
|
|
|
|
(struct symbol_entry): Delete.
|
|
|
|
|
(union symbol_entry): New.
|
|
|
|
|
(hash_symbol_entry): Adjust for symbol_entry_t change.
|
|
|
|
|
(symbol_entry_find): Likewise.
|
|
|
|
|
(eq_symbol_entry): Compare hash values too.
|
|
|
|
|
(symbol_entry_alloc): Delete.
|
|
|
|
|
(local_symbol_converted_p, local_symbol_mark_converted): Delete.
|
|
|
|
|
(local_symbol_get_real_symbol, local_symbol_set_real_symbol): Delete.
|
|
|
|
|
(local_hash): Delete.
|
|
|
|
|
(abs_symbol_x, dot_symbol_x): New static var.
|
|
|
|
|
(symbol_init): New function.
|
|
|
|
|
(symbol_create): Rewrite.
|
|
|
|
|
(LOCAL_SYMBOL_CHECK): Delete. Replace uses throughout with simple
|
|
|
|
|
test of flags.local_symbol.
|
|
|
|
|
(local_symbol_make): Adjust for struct local_symbol changes.
|
|
|
|
|
(local_symbol_convert): Rewrite. Adjust all callers.
|
|
|
|
|
(symbol_table_insert): Simplify.
|
|
|
|
|
(symbol_clone): Comment on local sym cloning. Handle split symbol
|
|
|
|
|
struct.
|
|
|
|
|
(get_real_sym): Delete. Remove all uses.
|
|
|
|
|
(symbol_find_exact_noref): Simplify.
|
|
|
|
|
(resolve_local_symbol): Don't resolve non-locals.
|
|
|
|
|
(S_SET_SEGMENT): Don't special case reg_section.
|
|
|
|
|
(S_SET_NAME): Set both name and bsym->name.
|
|
|
|
|
(symbol_mark_resolved, symbol_resolved_p): Simplify.
|
|
|
|
|
(symbol_symbolS): Update comment.
|
|
|
|
|
(symbol_begin): Don't create local_hash. Adjust abs_symbol setup.
|
|
|
|
|
(dot_symbol_init): Adjust dot_symbol setup.
|
|
|
|
|
(symbol_print_statistics): Delete local_hash stats.
|
|
|
|
|
|
2020-08-21 11:31:37 +08:00
|
|
|
|
2020-08-21 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* symbols.c (struct symbol_flags): Rename sy_volatile to volatil,
|
|
|
|
|
and remove sy_ from other field names. Update throughout.
|
|
|
|
|
(struct symbol): Remove sy_ from field names. Delete unused
|
|
|
|
|
TARGET_SYMBOL_FIELDS. Update throughout file. Move after..
|
|
|
|
|
(struct local_symbol): ..here. Remove lsy_ from field names.
|
|
|
|
|
Delete unused TC_LOCAL_SYMFIELD_TYPE. Update throughout file.
|
|
|
|
|
(local_symbol_resolved_p, local_symbol_mark_resolved): Delete.
|
|
|
|
|
Expand uses throughout file.
|
|
|
|
|
(local_symbol_get_frag, local_symbol_set_frag): Likewise.
|
|
|
|
|
(symbol_new): Move symbol_table_frozen test to..
|
|
|
|
|
(symbol_append): ..here, and..
|
|
|
|
|
(symbol_insert): ..here.
|
|
|
|
|
(resolve_symbol_value, symbol_relc_make_expr): White space fixes.
|
|
|
|
|
(HANDLE_XADD_OPT1, HANDLE_XADD_OPT2): Likewise.
|
|
|
|
|
* config/obj-coff.h (RESOLVE_SYMBOL_REDEFINITION): Update.
|
|
|
|
|
|
2020-08-21 07:47:53 +08:00
|
|
|
|
2020-08-21 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* symbols.h (symbol_new, symbol_create, local_symbol_make),
|
|
|
|
|
(symbol_temp_new): Arrange params as section, frag, offset.
|
|
|
|
|
* symbols.c: Adjust to suit.
|
|
|
|
|
* as.c: Likewise.
|
|
|
|
|
* cgen.c: Likewise.
|
|
|
|
|
* dwarf2dbg.c: Likewise.
|
|
|
|
|
* ecoff.c: Likewise.
|
|
|
|
|
* expr.c: Likewise.
|
|
|
|
|
* itbl-ops.c: Likewise.
|
|
|
|
|
* read.c: Likewise.
|
|
|
|
|
* stabs.c: Likewise.
|
|
|
|
|
* subsegs.c: Likewise.
|
|
|
|
|
* config/obj-coff.c: Likewise.
|
|
|
|
|
* config/obj-elf.c: Likewise.
|
|
|
|
|
* config/obj-macho.c: Likewise.
|
|
|
|
|
* config/tc-aarch64.c: Likewise.
|
|
|
|
|
* config/tc-alpha.c: Likewise.
|
|
|
|
|
* config/tc-arc.c: Likewise.
|
|
|
|
|
* config/tc-arm.c: Likewise.
|
|
|
|
|
* config/tc-avr.c: Likewise.
|
|
|
|
|
* config/tc-cr16.c: Likewise.
|
|
|
|
|
* config/tc-cris.c: Likewise.
|
|
|
|
|
* config/tc-csky.c: Likewise.
|
|
|
|
|
* config/tc-dlx.c: Likewise.
|
|
|
|
|
* config/tc-hppa.c: Likewise.
|
|
|
|
|
* config/tc-i386.c: Likewise.
|
|
|
|
|
* config/tc-ia64.c: Likewise.
|
|
|
|
|
* config/tc-m32r.c: Likewise.
|
|
|
|
|
* config/tc-m68k.c: Likewise.
|
|
|
|
|
* config/tc-mips.c: Likewise.
|
|
|
|
|
* config/tc-mmix.c: Likewise.
|
|
|
|
|
* config/tc-mn10200.c: Likewise.
|
|
|
|
|
* config/tc-mn10300.c: Likewise.
|
|
|
|
|
* config/tc-nds32.c: Likewise.
|
|
|
|
|
* config/tc-nios2.c: Likewise.
|
|
|
|
|
* config/tc-ppc.c: Likewise.
|
|
|
|
|
* config/tc-riscv.c: Likewise.
|
|
|
|
|
* config/tc-s390.c: Likewise.
|
|
|
|
|
* config/tc-sh.c: Likewise.
|
|
|
|
|
* config/tc-tic4x.c: Likewise.
|
|
|
|
|
* config/tc-tic54x.c: Likewise.
|
|
|
|
|
* config/tc-xtensa.c: Likewise.
|
|
|
|
|
|
2020-08-21 16:17:36 +08:00
|
|
|
|
2020-08-21 Cooper Qu <cooper.qu@linux.alibaba.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-csky.c (csky_insn_info): Add member last_isize.
|
|
|
|
|
(md_assemble): Assign value to csky_insn.last_isize.
|
|
|
|
|
* testsuite/gas/csky/enhance_dsp.d: Test bloop's two operands form.
|
|
|
|
|
* testsuite/gas/csky/enhance_dsp.s: Likewise.
|
|
|
|
|
|
2020-08-18 20:24:41 +08:00
|
|
|
|
2020-08-20 Martin Liska <mliska@suse.cz>
|
|
|
|
|
|
|
|
|
|
* NEWS: Mention --reduce-memory-overheads and --hash-size arguments
|
|
|
|
|
options.
|
|
|
|
|
* as.c: Remove the options from help.
|
|
|
|
|
* doc/as.texi: Remove options.
|
|
|
|
|
* doc/internals.texi: Remove hash from documentation.
|
|
|
|
|
* hash.c (struct hash_entry): Remove.
|
|
|
|
|
(struct hash_control): Likewise.
|
|
|
|
|
(set_gas_hash_table_size): Likewise.
|
|
|
|
|
(hash_new_sized): Likewise.
|
|
|
|
|
(hash_new): Likewise.
|
|
|
|
|
(hash_die): Likewise.
|
|
|
|
|
(hash_lookup): Likewise.
|
|
|
|
|
(hash_insert): Likewise.
|
|
|
|
|
(hash_jam): Likewise.
|
|
|
|
|
(hash_replace): Likewise.
|
|
|
|
|
(hash_find): Likewise.
|
|
|
|
|
(hash_find_n): Likewise.
|
|
|
|
|
(hash_delete): Likewise.
|
|
|
|
|
(hash_traverse): Likewise.
|
|
|
|
|
(hash_print_statistics): Likewise.
|
|
|
|
|
(TABLES): Likewise.
|
|
|
|
|
(STATBUFSIZE): Likewise.
|
|
|
|
|
(main): Likewise.
|
|
|
|
|
(what): Likewise.
|
|
|
|
|
(destroy): Likewise.
|
|
|
|
|
(applicatee): Likewise.
|
|
|
|
|
(whattable): Likewise.
|
|
|
|
|
* hash.h (struct hash_control): Likewise.
|
|
|
|
|
(set_gas_hash_table_size): Likewise.
|
|
|
|
|
(hash_new): Likewise.
|
|
|
|
|
(hash_new_sized): Likewise.
|
|
|
|
|
(hash_die): Likewise.
|
|
|
|
|
(hash_insert): Likewise.
|
|
|
|
|
(hash_jam): Likewise.
|
|
|
|
|
(hash_replace): Likewise.
|
|
|
|
|
(hash_find): Likewise.
|
|
|
|
|
(hash_find_n): Likewise.
|
|
|
|
|
(hash_delete): Likewise.
|
|
|
|
|
(hash_traverse): Likewise.
|
|
|
|
|
(hash_print_statistics): Likewise.
|
|
|
|
|
|
2020-08-18 16:57:21 +08:00
|
|
|
|
2020-08-20 Martin Liska <mliska@suse.cz>
|
|
|
|
|
|
|
|
|
|
* config/obj-coff-seh.c (seh_hash_insert): Port to use new
|
|
|
|
|
str_htab type.
|
|
|
|
|
(seh_hash_find): Likewise.
|
|
|
|
|
(seh_hash_find_or_make): Likewise.
|
|
|
|
|
* config/obj-coff.c (tag_init): Likewise.
|
|
|
|
|
(tag_insert): Likewise.
|
|
|
|
|
(tag_find): Likewise.
|
|
|
|
|
* config/obj-elf.c (struct group_list): Likewise.
|
|
|
|
|
(build_additional_section_info): Likewise.
|
|
|
|
|
(free_section_idx): Likewise.
|
|
|
|
|
(elf_adjust_symtab): Likewise.
|
|
|
|
|
(elf_frob_file_after_relocs): Likewise.
|
|
|
|
|
* config/tc-aarch64.c (INSN_SIZE): Likewise.
|
|
|
|
|
(parse_reg): Likewise.
|
|
|
|
|
(insert_reg_alias): Likewise.
|
|
|
|
|
(create_register_alias): Likewise.
|
|
|
|
|
(s_unreq): Likewise.
|
|
|
|
|
(parse_shift): Likewise.
|
|
|
|
|
(parse_pldop): Likewise.
|
|
|
|
|
(parse_barrier): Likewise.
|
|
|
|
|
(parse_barrier_psb): Likewise.
|
|
|
|
|
(parse_bti_operand): Likewise.
|
|
|
|
|
(parse_sys_reg): Likewise.
|
|
|
|
|
(parse_sys_ins_reg): Likewise.
|
|
|
|
|
(lookup_mnemonic): Likewise.
|
|
|
|
|
(opcode_lookup): Likewise.
|
|
|
|
|
(parse_operands): Likewise.
|
|
|
|
|
(checked_hash_insert): Likewise.
|
|
|
|
|
(sysreg_hash_insert): Likewise.
|
|
|
|
|
(fill_instruction_hash_table): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
* config/tc-alpha.c (struct alpha_reloc_tag): Likewise.
|
|
|
|
|
(get_alpha_reloc_tag): Likewise.
|
|
|
|
|
(assemble_tokens_to_insn): Likewise.
|
|
|
|
|
(assemble_tokens): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
* config/tc-arc.c (arc_find_opcode): Likewise.
|
|
|
|
|
(arc_insert_opcode): Likewise.
|
|
|
|
|
(find_opcode_match): Likewise.
|
|
|
|
|
(declare_register): Likewise.
|
|
|
|
|
(declare_addrtype): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(arc_parse_name): Likewise.
|
|
|
|
|
(tc_arc_regname_to_dw2regnum): Likewise.
|
|
|
|
|
(arc_extcorereg): Likewise.
|
|
|
|
|
* config/tc-arm.c (MVE_BAD_QREG): Likewise.
|
|
|
|
|
(arm_reg_parse_multi): Likewise.
|
|
|
|
|
(parse_reloc): Likewise.
|
|
|
|
|
(insert_reg_alias): Likewise.
|
|
|
|
|
(create_register_alias): Likewise.
|
|
|
|
|
(s_unreq): Likewise.
|
|
|
|
|
(parse_shift): Likewise.
|
|
|
|
|
(parse_psr): Likewise.
|
|
|
|
|
(parse_cond): Likewise.
|
|
|
|
|
(parse_barrier): Likewise.
|
|
|
|
|
(do_vfp_nsyn_opcode): Likewise.
|
|
|
|
|
(opcode_lookup): Likewise.
|
|
|
|
|
(arm_tc_equal_in_insn): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
* config/tc-avr.c (md_begin): Likewise.
|
|
|
|
|
(avr_ldi_expression): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
(avr_update_gccisr): Likewise.
|
|
|
|
|
(avr_emit_insn): Likewise.
|
|
|
|
|
* config/tc-cr16.c (get_register): Likewise.
|
|
|
|
|
(get_register_pair): Likewise.
|
|
|
|
|
(get_index_register): Likewise.
|
|
|
|
|
(get_index_register_pair): Likewise.
|
|
|
|
|
(get_pregister): Likewise.
|
|
|
|
|
(get_pregisterp): Likewise.
|
|
|
|
|
(initialise_reg_hash_table): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(cr16_assemble): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-cris.c (cris_insn_first_word_frag): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(cris_process_instruction): Likewise.
|
|
|
|
|
* config/tc-crx.c (get_register): Likewise.
|
|
|
|
|
(get_copregister): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-csky.c (md_begin): Likewise.
|
|
|
|
|
(parse_opcode): Likewise.
|
|
|
|
|
(get_operand_value): Likewise.
|
|
|
|
|
(v1_work_jbsr): Likewise.
|
|
|
|
|
(v2_work_rotlc): Likewise.
|
|
|
|
|
(v2_work_bgeni): Likewise.
|
|
|
|
|
(v2_work_not): Likewise.
|
|
|
|
|
* config/tc-d10v.c (sizeof): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(do_assemble): Likewise.
|
|
|
|
|
(md_apply_fix): Likewise.
|
|
|
|
|
* config/tc-d30v.c (sizeof): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(do_assemble): Likewise.
|
|
|
|
|
* config/tc-dlx.c (RELOC_DLX_VTENTRY): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(machine_ip): Likewise.
|
|
|
|
|
* config/tc-ft32.c (md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-h8300.c (md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-hppa.c (pa_ip): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
* config/tc-i386.c (md_begin): Likewise.
|
|
|
|
|
(i386_print_statistics): Likewise.
|
|
|
|
|
(parse_insn): Likewise.
|
|
|
|
|
(process_operands): Likewise.
|
|
|
|
|
(i386_index_check): Likewise.
|
|
|
|
|
(parse_real_register): Likewise.
|
|
|
|
|
* config/tc-ia64.c (dot_rot): Likewise.
|
|
|
|
|
(dot_entry): Likewise.
|
|
|
|
|
(declare_register): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(ia64_parse_name): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
(dot_alias): Likewise.
|
|
|
|
|
(do_alias): Likewise.
|
|
|
|
|
(ia64_adjust_symtab): Likewise.
|
|
|
|
|
(do_secalias): Likewise.
|
|
|
|
|
(ia64_frob_file): Likewise.
|
|
|
|
|
* config/tc-m68hc11.c (m68hc11_print_statistics): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(print_insn_format): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-m68k.c (tc_gen_reloc): Likewise.
|
|
|
|
|
(m68k_ip): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
* config/tc-mcore.c (md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-microblaze.c (md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
(md_apply_fix): Likewise.
|
|
|
|
|
* config/tc-mips.c (nopic_need_relax): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(macro_build): Likewise.
|
|
|
|
|
(mips16_macro_build): Likewise.
|
|
|
|
|
(mips_lookup_insn): Likewise.
|
|
|
|
|
(mips_ip): Likewise.
|
|
|
|
|
(mips16_ip): Likewise.
|
|
|
|
|
* config/tc-mmix.c (sizeof): Likewise.
|
|
|
|
|
(mmix_md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-mn10200.c (md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-mn10300.c (HAVE_AM30): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-moxie.c (md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-msp430.c (md_begin): Likewise.
|
|
|
|
|
(msp430_operands): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-nds32.c (PV_DONT_CARE): Likewise.
|
|
|
|
|
(builtin_isreg): Likewise.
|
|
|
|
|
(builtin_regnum): Likewise.
|
|
|
|
|
(nds32_init_nds32_pseudo_opcodes): Likewise.
|
|
|
|
|
(nds32_lookup_pseudo_opcode): Likewise.
|
|
|
|
|
(nds32_relax_hint): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(nds32_find_reloc_table): Likewise.
|
|
|
|
|
(nds32_elf_append_relax_relocs_traverse): Likewise.
|
|
|
|
|
(nds32_relax_branch_instructions): Likewise.
|
|
|
|
|
(md_convert_frag): Likewise.
|
|
|
|
|
(nds32_elf_analysis_relax_hint): Likewise.
|
|
|
|
|
(tc_nds32_regname_to_dw2regnum): Likewise.
|
|
|
|
|
* config/tc-nios2.c (nios2_opcode_lookup): Likewise.
|
|
|
|
|
(nios2_reg_lookup): Likewise.
|
|
|
|
|
(nios2_ps_lookup): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
* config/tc-ns32k.c (struct hash_control): Likewise.
|
|
|
|
|
(parse): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
* config/tc-pdp11.c (md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-pj.c (fake_opcode): Likewise.
|
|
|
|
|
(alias): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-ppc.c (ppc_setup_opcodes): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-pru.c (pru_opcode_lookup): Likewise.
|
|
|
|
|
(pru_reg_lookup): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(md_end): Likewise.
|
|
|
|
|
* config/tc-riscv.c (init_ext_version_hash): Likewise.
|
|
|
|
|
(riscv_get_default_ext_version): Likewise.
|
|
|
|
|
(riscv_set_arch): Likewise.
|
|
|
|
|
(init_opcode_names_hash): Likewise.
|
|
|
|
|
(opcode_name_lookup): Likewise.
|
|
|
|
|
(enum reg_class): Likewise.
|
|
|
|
|
(hash_reg_name): Likewise.
|
|
|
|
|
(riscv_init_csr_hash): Likewise.
|
|
|
|
|
(reg_csr_lookup_internal): Likewise.
|
|
|
|
|
(reg_lookup_internal): Likewise.
|
|
|
|
|
(init_opcode_hash): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(DECLARE_CSR): Likewise.
|
|
|
|
|
(macro_build): Likewise.
|
|
|
|
|
(riscv_ip): Likewise.
|
|
|
|
|
* config/tc-s390.c (register_name): Likewise.
|
|
|
|
|
(s390_setup_opcodes): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
(s390_insn): Likewise.
|
|
|
|
|
* config/tc-score.c (struct s3_reg_map): Likewise.
|
|
|
|
|
(s3_score_reg_parse): Likewise.
|
|
|
|
|
(s3_dependency_type_from_insn): Likewise.
|
|
|
|
|
(s3_parse_16_32_inst): Likewise.
|
|
|
|
|
(s3_parse_48_inst): Likewise.
|
|
|
|
|
(s3_insert_reg): Likewise.
|
|
|
|
|
(s3_build_reg_hsh): Likewise.
|
|
|
|
|
(s3_build_score_ops_hsh): Likewise.
|
|
|
|
|
(s3_build_dependency_insn_hsh): Likewise.
|
|
|
|
|
(s3_begin): Likewise.
|
|
|
|
|
* config/tc-score7.c (struct s7_reg_map): Likewise.
|
|
|
|
|
(s7_score_reg_parse): Likewise.
|
|
|
|
|
(s7_dependency_type_from_insn): Likewise.
|
|
|
|
|
(s7_parse_16_32_inst): Likewise.
|
|
|
|
|
(s7_build_score_ops_hsh): Likewise.
|
|
|
|
|
(s7_build_dependency_insn_hsh): Likewise.
|
|
|
|
|
(s7_insert_reg): Likewise.
|
|
|
|
|
(s7_build_reg_hsh): Likewise.
|
|
|
|
|
(s7_begin): Likewise.
|
|
|
|
|
* config/tc-sh.c (EMPTY): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(find_cooked_opcode): Likewise.
|
|
|
|
|
* config/tc-sparc.c (md_begin): Likewise.
|
|
|
|
|
(sparc_ip): Likewise.
|
|
|
|
|
* config/tc-spu.c (md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-tic30.c (md_begin): Likewise.
|
|
|
|
|
(tic30_operand): Likewise.
|
|
|
|
|
(tic30_parallel_insn): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-tic4x.c (TIC4X_ALT_SYNTAX): Likewise.
|
|
|
|
|
(tic4x_asg): Likewise.
|
|
|
|
|
(tic4x_inst_insert): Likewise.
|
|
|
|
|
(tic4x_inst_add): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(tic4x_operand_parse): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-tic54x.c (MAX_SUBSYM_HASH): Likewise.
|
|
|
|
|
(stag_add_field_symbols): Likewise.
|
|
|
|
|
(tic54x_endstruct): Likewise.
|
|
|
|
|
(tic54x_tag): Likewise.
|
|
|
|
|
(tic54x_remove_local_label): Likewise.
|
|
|
|
|
(tic54x_clear_local_labels): Likewise.
|
|
|
|
|
(tic54x_var): Likewise.
|
|
|
|
|
(tic54x_macro_start): Likewise.
|
|
|
|
|
(tic54x_macro_info): Likewise.
|
|
|
|
|
(tic54x_macro_end): Likewise.
|
|
|
|
|
(subsym_isreg): Likewise.
|
|
|
|
|
(subsym_structsz): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(is_mmreg): Likewise.
|
|
|
|
|
(is_type): Likewise.
|
|
|
|
|
(encode_condition): Likewise.
|
|
|
|
|
(encode_cc3): Likewise.
|
|
|
|
|
(encode_cc2): Likewise.
|
|
|
|
|
(encode_operand): Likewise.
|
|
|
|
|
(tic54x_parse_insn): Likewise.
|
|
|
|
|
(tic54x_parse_parallel_insn_firstline): Likewise.
|
|
|
|
|
(subsym_create_or_replace): Likewise.
|
|
|
|
|
(subsym_lookup): Likewise.
|
|
|
|
|
(subsym_substitute): Likewise.
|
|
|
|
|
(tic54x_undefined_symbol): Likewise.
|
|
|
|
|
* config/tc-tic6x.c (md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-tilegx.c (O_hw2_last_plt): Likewise.
|
|
|
|
|
(INSERT_SPECIAL_OP): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(tilegx_parse_name): Likewise.
|
|
|
|
|
(parse_reg_expression): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-tilepro.c (O_tls_ie_load): Likewise.
|
|
|
|
|
(INSERT_SPECIAL_OP): Likewise.
|
|
|
|
|
(tilepro_parse_name): Likewise.
|
|
|
|
|
(parse_reg_expression): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-v850.c (md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-vax.c (md_ri_to_chars): Likewise.
|
|
|
|
|
(vip_begin): Likewise.
|
|
|
|
|
(vip): Likewise.
|
|
|
|
|
(main): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
* config/tc-wasm32.c (md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-xgate.c (xgate_parse_operand): Likewise.
|
|
|
|
|
(md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
* config/tc-z8k.c (md_begin): Likewise.
|
|
|
|
|
(md_assemble): Likewise.
|
|
|
|
|
|
2020-08-18 16:51:28 +08:00
|
|
|
|
2020-08-20 Martin Liska <mliska@suse.cz>
|
|
|
|
|
|
|
|
|
|
* dw2gencfi.c (dwcfi_hash_insert): Use htab_t and str_hash_*
|
|
|
|
|
functions.
|
|
|
|
|
(dwcfi_hash_find): Likewise.
|
|
|
|
|
(dwcfi_hash_find_or_make): Likewise.
|
|
|
|
|
|
2020-08-18 16:49:16 +08:00
|
|
|
|
2020-08-20 Martin Liska <mliska@suse.cz>
|
|
|
|
|
|
|
|
|
|
* ecoff.c (INIT_VARRAY): Use htab_t.
|
|
|
|
|
(add_string): Likewise.
|
|
|
|
|
(ecoff_read_begin_hook): Use new str_htab_create.
|
|
|
|
|
(get_tag): Use htab_t.
|
|
|
|
|
(add_file): Likewise.
|
|
|
|
|
|
2020-08-18 16:49:16 +08:00
|
|
|
|
2020-08-20 Martin Liska <mliska@suse.cz>
|
|
|
|
|
|
|
|
|
|
* hash.h (struct string_tuple): New.
|
|
|
|
|
(hash_string_tuple): Likewise.
|
|
|
|
|
(eq_string_tuple): Likewise.
|
|
|
|
|
(string_tuple_alloc): Likewise.
|
|
|
|
|
(str_hash_find): Likewise.
|
|
|
|
|
(str_hash_find_n): Likewise.
|
|
|
|
|
(str_hash_delete): Likewise.
|
|
|
|
|
(str_hash_insert): Likewise.
|
|
|
|
|
(str_htab_create): Likewise.
|
|
|
|
|
|
2020-08-16 01:48:17 +08:00
|
|
|
|
2020-08-20 Martin Liska <mliska@suse.cz>
|
|
|
|
|
|
|
|
|
|
* symbols.c (struct symbol_entry): New.
|
|
|
|
|
(hash_symbol_entry): Likewise.
|
|
|
|
|
(eq_symbol_entry): Likewise.
|
|
|
|
|
(symbol_entry_alloc): Likewise.
|
|
|
|
|
(symbol_entry_find): Likewise.
|
|
|
|
|
(local_symbol_make): Use htab hash table.
|
|
|
|
|
(local_symbol_convert): Likewise.
|
|
|
|
|
(symbol_table_insert): Likewise.
|
|
|
|
|
(symbol_find_exact_noref): Likewise.
|
|
|
|
|
(resolve_local_symbol): Likewise.
|
|
|
|
|
(resolve_local_symbol_values): Likewise.
|
|
|
|
|
(symbol_begin): Likewise.
|
|
|
|
|
(symbol_print_statistics): Likewise.
|
|
|
|
|
|
2020-08-16 01:47:35 +08:00
|
|
|
|
2020-08-20 Martin Liska <mliska@suse.cz>
|
|
|
|
|
|
|
|
|
|
* read.c (struct po_entry): New.
|
|
|
|
|
(hash_po_entry): Likewise.
|
|
|
|
|
(eq_po_entry): Likewise.
|
|
|
|
|
(po_entry_alloc): Likewise.
|
|
|
|
|
(po_entry_find): Likewise.
|
|
|
|
|
(pop_insert): Likewise.
|
|
|
|
|
(pobegin): Use htab hash table.
|
|
|
|
|
(read_a_source_file): Likewise.
|
|
|
|
|
(s_macro): Likewise.
|
|
|
|
|
(read_print_statistics): Likewise.
|
|
|
|
|
* config/tc-m68k.c (m68k_conditional_pseudoop): Add const qualifier.
|
|
|
|
|
* config/tc-m68k.h (m68k_conditional_pseudoop): Likewise.
|
|
|
|
|
|
2020-08-16 01:47:01 +08:00
|
|
|
|
2020-08-20 Martin Liska <mliska@suse.cz>
|
|
|
|
|
|
|
|
|
|
* config/tc-iq2000.c (iq2000_add_macro): Use htab hash table.
|
|
|
|
|
* macro.c (struct hash_control): Use htab.
|
|
|
|
|
(macro_init): Likewise.
|
|
|
|
|
(do_formals): Likewise.
|
|
|
|
|
(free_macro): Likewise.
|
|
|
|
|
(define_macro): Likewise.
|
|
|
|
|
(sub_actual): Likewise.
|
|
|
|
|
(macro_expand_body): Likewise.
|
|
|
|
|
(macro_expand): Likewise.
|
|
|
|
|
(check_macro): Likewise.
|
|
|
|
|
(delete_macro): Likewise.
|
|
|
|
|
(expand_irp): Likewise.
|
|
|
|
|
* macro.h (struct macro_hash_entry): New struct.
|
|
|
|
|
(hash_macro_entry): New.
|
|
|
|
|
(eq_macro_entry): Likewise.
|
|
|
|
|
(macro_entry_alloc): Likewise.
|
|
|
|
|
(macro_entry_find): Likewise.
|
|
|
|
|
(struct formal_hash_entry): Likewise.
|
|
|
|
|
(hash_formal_entry): Likewise.
|
|
|
|
|
(eq_formal_entry): Likewise.
|
|
|
|
|
(formal_entry_alloc): Likewise.
|
|
|
|
|
(formal_entry_find): Likewise.
|
|
|
|
|
|
2020-08-16 01:46:33 +08:00
|
|
|
|
2020-08-20 Martin Liska <mliska@suse.cz>
|
|
|
|
|
|
|
|
|
|
* as.h: Include hashtab.h.
|
|
|
|
|
* hash.c (htab_insert): New.
|
|
|
|
|
(htab_print_statistics): Likewise.
|
|
|
|
|
* hash.h (htab_insert): Likewise.
|
|
|
|
|
(htab_print_statistics): Likewise.
|
|
|
|
|
|
2020-08-19 07:17:35 +08:00
|
|
|
|
2020-08-19 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/int128.s: Correct vcmpuq.
|
|
|
|
|
* testsuite/gas/ppc/int128.d: Update.
|
|
|
|
|
* testsuite/gas/ppc/xvtlsbb.d: Update.
|
|
|
|
|
|
2020-08-19 01:48:42 +08:00
|
|
|
|
2020-08-18 Peter Bergner <bergner@linux.ibm.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/vsx4.s: Update test to use new mnemonic.
|
|
|
|
|
* testsuite/gas/ppc/vsx4.d: Likewise.
|
|
|
|
|
|
2020-08-17 21:23:14 +08:00
|
|
|
|
2020-08-17 Alex Coplan <alex.coplan@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/obj-elf.c (obj_elf_change_section): When repurposing an
|
|
|
|
|
existing symbol, ensure that we set sy_value as per other (fresh)
|
|
|
|
|
section symbols.
|
|
|
|
|
* testsuite/gas/elf/elf.exp: Add new test.
|
|
|
|
|
* testsuite/gas/elf/section-symbol-redef.d: New test.
|
|
|
|
|
* testsuite/gas/elf/section-symbol-redef.s: Input for test.
|
|
|
|
|
|
2020-08-13 18:50:13 +08:00
|
|
|
|
2020-08-13 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 26359
|
|
|
|
|
* config/obj-som.c (obj_som_init_stab_section): Do nothing if the
|
|
|
|
|
$GDB_DEBUG$ section has already been created.
|
|
|
|
|
|
2020-08-12 23:44:54 +08:00
|
|
|
|
2020-08-12 Joe Ramsay <joe.ramsay@.arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (do_neon_cvt_1): Parse vcvtne as vcvt-ne for
|
|
|
|
|
NS_FD shape when MVE is present
|
|
|
|
|
* testsuite/gas/arm/mve-vcvtne-it-bad.d: New test.
|
|
|
|
|
* testsuite/gas/arm/mve-vcvtne-it-bad.l: New test.
|
|
|
|
|
* testsuite/gas/arm/mve-vcvtne-it-bad.s: New test.
|
|
|
|
|
* testsuite/gas/arm/mve-vcvtne-it.d: New test.
|
|
|
|
|
* testsuite/gas/arm/mve-vcvtne-it.s: New test.
|
|
|
|
|
|
2020-08-12 20:49:54 +08:00
|
|
|
|
2020-08-12 Alex Coplan <alex.coplan@arm.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/aarch64/mpam-bad.d: New test.
|
|
|
|
|
* testsuite/gas/aarch64/mpam-bad.l: Error output.
|
|
|
|
|
* testsuite/gas/aarch64/mpam-bad.s: Input.
|
|
|
|
|
* testsuite/gas/aarch64/mpam.d: New test.
|
|
|
|
|
* testsuite/gas/aarch64/mpam.s: Input.
|
|
|
|
|
|
2020-08-12 20:47:04 +08:00
|
|
|
|
2020-08-12 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 26346
|
|
|
|
|
* doc/c-riscv.texi (RISC-V-Options): Fix typo in the description
|
|
|
|
|
of the -mno-csr-check option.
|
|
|
|
|
|
2020-08-12 18:25:38 +08:00
|
|
|
|
2020-08-12 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* po/ru.po: Updated Russian translation.
|
|
|
|
|
|
2020-08-11 00:44:02 +08:00
|
|
|
|
2020-08-10 Alex Coplan <alex.coplan@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-aarch64.c (parse_sys_reg): Don't assert when parsing
|
|
|
|
|
a long system register.
|
|
|
|
|
(parse_sys_ins_reg): Likewise.
|
|
|
|
|
(sysreg_hash_insert): New.
|
|
|
|
|
(md_begin): Use sysreg_hash_insert() to ensure all system
|
|
|
|
|
registers are no longer than the maximum length at startup.
|
|
|
|
|
* testsuite/gas/aarch64/invalid-sysreg-assert.d: New test.
|
|
|
|
|
* testsuite/gas/aarch64/invalid-sysreg-assert.l: Error output.
|
|
|
|
|
* testsuite/gas/aarch64/invalid-sysreg-assert.s: Input.
|
|
|
|
|
|
2020-08-10 23:20:17 +08:00
|
|
|
|
2020-08-10 Przemyslaw Wirkus <przemyslaw.wirkus@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-aarch64.c (parse_sys_reg): Call to
|
|
|
|
|
aarch64_sys_ins_reg_supported_p instead of
|
|
|
|
|
aarch64_sys_reg_supported_p.
|
|
|
|
|
(parse_sys_ins_reg): Add aarch64_sys_reg_deprecated_p check.
|
|
|
|
|
* testsuite/gas/aarch64/illegal-sysreg-5.d: New test.
|
|
|
|
|
* testsuite/gas/aarch64/illegal-sysreg-5.l: New test.
|
|
|
|
|
* testsuite/gas/aarch64/sysreg-5.s: New test.
|
|
|
|
|
|
2020-08-10 13:38:27 +08:00
|
|
|
|
2020-08-10 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/power8.d,
|
|
|
|
|
* testsuite/gas/ppc/power8.s: Add miso.
|
|
|
|
|
* testsuite/gas/ppc/power9.d,
|
|
|
|
|
* testsuite/gas/ppc/power8.s: Add exser, msgsndu, msgclru.
|
|
|
|
|
|
2020-08-10 13:37:33 +08:00
|
|
|
|
2020-08-10 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/power8.d: Update.
|
|
|
|
|
* testsuite/gas/ppc/vsx2.d: Update.
|
|
|
|
|
|
Error on lmw, lswi and related PowerPC insns when LE
* config/tc-ppc.c (md_assemble): Error for lmw, stmw, lswi, lswx,
stswi, or stswx in little-endian mode.
* testsuite/gas/ppc/476.d,
* testsuite/gas/ppc/476.s: Delete lmw, stmw, lswi, lswx, stswi, stswx.
* testsuite/gas/ppc/a2.d,
* testsuite/gas/ppc/a2.s: Move lmw, stmw, lswi, lswx, stswi, stswx..
* testsuite/gas/ppc/be.d,
* testsuite/gas/ppc/be.s: ..to here, new big-endian only test.
* testsuite/gas/ppc/le_error.d,
* testsuite/gas/ppc/le_error.l: New little-endian test.
* testsuite/gas/ppc/ppc.exp: Run new tests.
2020-08-10 13:36:43 +08:00
|
|
|
|
2020-08-10 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-ppc.c (md_assemble): Error for lmw, stmw, lswi, lswx,
|
|
|
|
|
stswi, or stswx in little-endian mode.
|
|
|
|
|
* testsuite/gas/ppc/476.d,
|
|
|
|
|
* testsuite/gas/ppc/476.s: Delete lmw, stmw, lswi, lswx, stswi, stswx.
|
|
|
|
|
* testsuite/gas/ppc/a2.d,
|
|
|
|
|
* testsuite/gas/ppc/a2.s: Move lmw, stmw, lswi, lswx, stswi, stswx..
|
|
|
|
|
* testsuite/gas/ppc/be.d,
|
|
|
|
|
* testsuite/gas/ppc/be.s: ..to here, new big-endian only test.
|
|
|
|
|
* testsuite/gas/ppc/le_error.d,
|
|
|
|
|
* testsuite/gas/ppc/le_error.l: New little-endian test.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run new tests.
|
|
|
|
|
|
2020-08-07 21:46:42 +08:00
|
|
|
|
2020-08-07 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* read.c (read_a_source_file): Ignore rest of line on overflow
|
|
|
|
|
error.
|
|
|
|
|
|
2020-08-07 00:39:03 +08:00
|
|
|
|
2020-08-06 Alex Coplan <alex.coplan@arm.com>
|
|
|
|
|
|
|
|
|
|
* read.c (read_a_source_file): Use long for local labels, detect
|
|
|
|
|
overflow and raise an error for overly-long labels.
|
|
|
|
|
* testsuite/gas/all/gas.exp: Add local-label-overflow test.
|
|
|
|
|
* testsuite/gas/all/local-label-overflow.d: New test.
|
|
|
|
|
* testsuite/gas/all/local-label-overflow.l: Error output.
|
|
|
|
|
* testsuite/gas/all/local-label-overflow.s: Input.
|
|
|
|
|
|
2020-08-05 04:29:15 +08:00
|
|
|
|
2020-08-04 Christian Groessler <chris@groessler.org>
|
|
|
|
|
|
|
|
|
|
* gas/testsuite/gas/z8k/inout.d: Adapt to correct encoding of
|
|
|
|
|
"sout/soutb #imm,reg"
|
|
|
|
|
|
2020-08-04 20:55:31 +08:00
|
|
|
|
2020-08-04 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* NEWS: Mention {disp16} pseudo prefix.
|
|
|
|
|
|
gas: Revert an accidental change in x86-64-pseudos.d
Revert an accidental change in
commit 41eb8e88859b297f59f4d093aab9306d4b7057d9
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Jul 30 16:13:02 2020 -0700
x86: Add {disp16} pseudo prefix
@@ -304,7 +308,7 @@ Disassembly of section .text:
+[a-f0-9]+: 40 d3 e0 rex shl %cl,%eax
+[a-f0-9]+: 40 a0 01 00 00 00 00 00 00 00 rex movabs 0x1,%al
+[a-f0-9]+: 40 38 ca rex cmp %cl,%dl
- +[a-f0-9]+: 40 b3 01 rex mov \$(0x)?1,%bl
+ +[a-f0-9]+: 40 b3 01 rex mov \$(0x)1,%bl
+[a-f0-9]+: f2 40 0f 38 f0 c1 rex crc32 %cl,%eax
+[a-f0-9]+: 40 89 c3 rex mov %eax,%ebx
+[a-f0-9]+: 41 89 c6 mov %eax,%r14d
PR gas/26305
* testsuite/gas/i386/x86-64-pseudos.d: Revert an accidental
change.
2020-08-04 20:50:12 +08:00
|
|
|
|
2020-08-04 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/x86-64-pseudos.d: Revert an accidental
|
|
|
|
|
change.
|
|
|
|
|
|
2020-08-04 04:02:24 +08:00
|
|
|
|
2020-08-04 Mark Wielaard <mark@klomp.org>
|
|
|
|
|
|
|
|
|
|
* dwarf2dbg.c (out_debug_abbrev): When DWARF2_VERSION >= 4, use
|
|
|
|
|
DW_FORM_udata for DW_AT_high_pc.
|
|
|
|
|
(out_debug_info): Use emit_leb128_expr for DW_AT_high_pc, when
|
|
|
|
|
DWARF2_VERSION >= 4.
|
|
|
|
|
* read.c (emit_leb128_exp): No longer static.
|
|
|
|
|
* read.h (emit_leb128_exp): Define.
|
|
|
|
|
|
2020-08-03 08:23:44 +08:00
|
|
|
|
2020-08-02 Mark Wielaard <mark@klomp.org>
|
|
|
|
|
|
|
|
|
|
* gas/dwarf2dbg.c (out_dir_and_file_list): For DWARF5 emit at
|
|
|
|
|
least one directory if there is at least one file. Use dirs[1]
|
|
|
|
|
if dirs[0] is not set, or if there is no dirs[1] the current
|
|
|
|
|
working directory. Use files[1] filename, when files[0] filename
|
|
|
|
|
isn't set.
|
|
|
|
|
|
2020-08-03 08:04:17 +08:00
|
|
|
|
2020-08-02 Mark Wielaard <mark@klomp.org>
|
|
|
|
|
|
|
|
|
|
* dwarf2dbg.c (out_debug_info): Emit unit type and abbrev offset
|
|
|
|
|
for DWARF5.
|
|
|
|
|
* gas/testsuite/gas/elf/dwarf-4-cu.d: New file.
|
|
|
|
|
* gas/testsuite/gas/elf/dwarf-4-cu.s: Likewise.
|
|
|
|
|
* gas/testsuite/gas/elf/dwarf-5-cu.d: Likewise.
|
|
|
|
|
* gas/testsuite/gas/elf/dwarf-5-cu.s: Likewise.
|
|
|
|
|
* testsuite/gas/elf/elf.exp: Run dwarf-4-cu and dwarf-5-cu.
|
|
|
|
|
|
2020-08-03 00:55:52 +08:00
|
|
|
|
2020-08-02 Mark Wielaard <mark@klomp.org>
|
|
|
|
|
|
|
|
|
|
* doc/as.texi (--gdwarf-[345]): Fix typo.
|
|
|
|
|
|
2020-08-03 22:04:58 +08:00
|
|
|
|
2020-08-03 Jozef Lawrynowicz <jozef.l@mittosystems.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-msp430.c (OPTION_MOVE_DATA): Remove.
|
|
|
|
|
(md_parse_option): Remove case for OPTION_MOVE_DATA.
|
|
|
|
|
(md_longopts): Remove "md" entry.
|
|
|
|
|
(md_show_usage): Likewise.
|
|
|
|
|
|
2020-07-31 07:13:02 +08:00
|
|
|
|
2020-07-30 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/26305
|
|
|
|
|
* config/tc-i386.c (_i386_insn::disp_encoding): Add
|
|
|
|
|
disp_encoding_16bit.
|
|
|
|
|
(parse_insn): Check Prefix_XXX for pseudo prefixes. Handle
|
|
|
|
|
{disp16}.
|
|
|
|
|
(build_modrm_byte): Handle {disp16}.
|
|
|
|
|
(i386_index_check): Check invalid {disp16} and {disp32} pseudo
|
|
|
|
|
prefixes.
|
|
|
|
|
* doc/c-i386.texi: Update {disp32} documentation and document
|
|
|
|
|
{disp16}.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run x86-64-inval-pseudo.
|
|
|
|
|
* testsuite/gas/i386/inval-pseudo.s: Add {disp32}/{disp16}
|
|
|
|
|
tests.
|
|
|
|
|
* testsuite/gas/i386/pseudos.s: Add {disp8}/{disp32} vmovaps
|
|
|
|
|
tests with 128-byte displacement. Add {disp16} tests.
|
|
|
|
|
* testsuite/gas/i386/x86-64-pseudos.s: Add {disp8}/{disp32}
|
|
|
|
|
vmovaps test. Add (%r13)/(%r13d) tests.
|
|
|
|
|
* testsuite/gas/i386/x86-64-inval-pseudo.l: New file.
|
|
|
|
|
* testsuite/gas/i386/x86-64-inval-pseudo.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/inval-pseudo.l: Updated.
|
|
|
|
|
* testsuite/gas/i386/pseudos.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-pseudos.d: Likewise.
|
|
|
|
|
|
Unify Solaris procfs and largefile handling
GDB currently doesn't build on 32-bit Solaris:
* On Solaris 11.4/x86:
In file included from /usr/include/sys/procfs.h:26,
from /vol/src/gnu/gdb/hg/master/dist/gdb/i386-sol2-nat.c:24:
/usr/include/sys/old_procfs.h:31:2: error: #error "Cannot use procfs in the large file compilation environment"
#error "Cannot use procfs in the large file compilation environment"
^~~~~
* On Solaris 11.3/x86 there are several more instances of this.
The interaction between procfs and large-file support historically has
been a royal mess on Solaris:
* There are two versions of the procfs interface:
** The old ioctl-based /proc, deprecated and not used any longer in
either gdb or binutils.
** The `new' (introduced in Solaris 2.6, 1997) structured /proc.
* There are two headers one can possibly include:
** <procfs.h> which only provides the structured /proc, definining
_STRUCTURED_PROC=1 and then including ...
** <sys/procfs.h> which defaults to _STRUCTURED_PROC=0, the ioctl-based
/proc, but provides structured /proc if _STRUCTURED_PROC == 1.
* procfs and the large-file environment didn't go well together:
** Until Solaris 11.3, <sys/procfs.h> would always #error in 32-bit
compilations when the large-file environment was active
(_FILE_OFFSET_BITS == 64).
** In both Solaris 11.4 and Illumos, this restriction was lifted for
structured /proc.
So one has to be careful always to define _STRUCTURED_PROC=1 when
testing for or using <sys/procfs.h> on Solaris. As the errors above
show, this isn't always the case in binutils-gdb right now.
Also one may need to disable large-file support for 32-bit compilations
on Solaris. config/largefile.m4 meant to do this by wrapping the
AC_SYS_LARGEFILE autoconf macro with appropriate checks, yielding
ACX_LARGEFILE. Unfortunately the macro doesn't always succeed because
it neglects the _STRUCTURED_PROC part.
To make things even worse, since GCC 9 g++ predefines
_FILE_OFFSET_BITS=64 on Solaris. So even if largefile.m4 deciced not to
enable large-file support, this has no effect, breaking the gdb build.
This patch addresses all this as follows:
* All tests for the <sys/procfs.h> header are made with
_STRUCTURED_PROC=1, the definition going into the various config.h
files instead of having to make them (and sometimes failing) in the
affected sources.
* To cope with the g++ predefine of _FILE_OFFSET_BITS=64,
-U_FILE_OFFSET_BITS is added to various *_CPPFLAGS variables. It had
been far easier to have just
#undef _FILE_OFFSET_BITS
in config.h, but unfortunately such a construct in config.in is
commented by config.status irrespective of indentation and whitespace
if large-file support is disabled. I found no way around this and
putting the #undef in several global headers for bfd, binutils, ld,
and gdb seemed way more invasive.
* Last, the applicability check in largefile.m4 was modified only to
disable largefile support if really needed. To do so, it checks if
<sys/procfs.h> compiles with _FILE_OFFSET_BITS=64 defined. If it
doesn't, the disabling only happens if gdb exists in-tree and isn't
disabled, otherwise (building binutils from a tarball), there's no
conflict.
What initially confused me was the check for $plugins here, which
originally caused the disabling not to take place. Since AC_PLUGINGS
does enable plugin support if <dlfcn.h> exists (which it does on
Solaris), the disabling never happened.
I could find no explanation why the linker plugin needs large-file
support but thought it would be enough if gld and GCC's lto-plugin
agreed on the _FILE_OFFSET_BITS value. Unfortunately, that's not
enough: lto-plugin uses the simple-object interface from libiberty,
which includes off_t arguments. So to fully disable large-file
support would mean also disabling it in libiberty and its users: gcc
and libstdc++-v3. This seems highly undesirable, so I decided to
disable the linker plugin instead if large-file support won't work.
The patch allows binutils+gdb to build on i386-pc-solaris2.11 (both
Solaris 11.3 and 11.4, using GCC 9.3.0 which is the worst case due to
predefined _FILE_OFFSET_BITS=64). Also regtested on
amd64-pc-solaris2.11 (again on Solaris 11.3 and 11.4),
x86_64-pc-linux-gnu and i686-pc-linux-gnu.
config:
* largefile.m4 (ACX_LARGEFILE) <sparc-*-solaris*|i?86-*-solaris*>:
Check for <sys/procfs.h> incompatilibity with large-file support
on Solaris.
Only disable large-file support and perhaps plugins if needed.
Set, substitute LARGEFILE_CPPFLAGS if so.
bfd:
* bfd.m4 (BFD_SYS_PROCFS_H): New macro.
(BFD_HAVE_SYS_PROCFS_TYPE): Require BFD_SYS_PROCFS_H.
Don't define _STRUCTURED_PROC.
(BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): Likewise.
* elf.c [HAVE_SYS_PROCFS_H] (_STRUCTURED_PROC): Don't define.
* configure.ac: Use BFD_SYS_PROCFS_H to check for <sys/procfs.h>.
* configure, config.in: Regenerate.
* Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
* Makefile.in, doc/Makefile.in: Regenerate.
binutils:
* Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
* Makefile.in, doc/Makefile.in: Regenerate.
* configure: Regenerate.
gas:
* Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
* Makefile.in, doc/Makefile.in: Regenerate.
* configure: Regenerate.
gdb:
* proc-api.c (_STRUCTURED_PROC): Don't define.
* proc-events.c: Likewise.
* proc-flags.c: Likewise.
* proc-why.c: Likewise.
* procfs.c: Likewise.
* Makefile.in (INTERNAL_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
* configure, config.in: Regenerate.
gdbserver:
* configure, config.in: Regenerate.
gdbsupport:
* Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
* common.m4 (GDB_AC_COMMON): Use BFD_SYS_PROCFS_H to check for
<sys/procfs.h>.
* Makefile.in: Regenerate.
* configure, config.in: Regenerate.
gnulib:
* configure.ac: Run ACX_LARGEFILE before gl_EARLY.
* configure: Regenerate.
gprof:
* Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
* Makefile.in: Regenerate.
* configure: Regenerate.
ld:
* Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
* Makefile.in: Regenerate.
* configure: Regenerate.
2020-07-30 21:41:50 +08:00
|
|
|
|
2020-07-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
|
|
|
|
|
|
|
|
|
* Makefile.am (AM_CPPFLAGS): Add LARGEFILE_CPPFLAGS.
|
|
|
|
|
* Makefile.in, doc/Makefile.in: Regenerate.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
|
2020-07-30 19:56:46 +08:00
|
|
|
|
2020-07-30 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/elf/dwarf2-3.d:Pass --gdwarf-3 to assembler.
|
|
|
|
|
* testsuite/gas/elf/dwarf2-5.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/dw2-compress-3a.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/dw2-compress-3b.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/dw2-compressed-3a.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/dw2-compressed-3b.d: Likewise.
|
|
|
|
|
|
2020-07-30 15:39:14 +08:00
|
|
|
|
2020-07-30 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
2020-07-30 21:59:39 +08:00
|
|
|
|
* as.c (dwarf_level): Initialise to 3 in case this is not set on
|
2020-07-30 15:39:14 +08:00
|
|
|
|
the command line.
|
|
|
|
|
|
MIPS: Make the IRIX naming of local section symbols consistent
Make the MIPS/IRIX naming of local section symbols consistent between
files produced by generic ELF code and ELF linker code, complementing
commit 174fd7f95561 ("New bfd elf hook: force naming of local section
symbols"), <https://sourceware.org/ml/binutils/2004-02/msg00072.html>.
Local section symbols have no names in the standard ELF gABI, however
the lack of a name causes problems with IRIX's MIPSpro linker. To work
around the issue we give them names, however we do that in generic ELF
code only, based on what the `elf_backend_name_local_section_symbols'
hook returns if present. That makes objects created by GAS or `objdump'
work correctly, however not ones created by `ld -r'. That would not
normally cause issues with IRIX systems using GAS and `objdump' only
with the MIPSpro linker, however if GNU LD was used for whatever reason
in producing objects later fed to IRIX's MIPSpro linker, then things
would break.
Modify ELF linker code accordingly then, using the same hook. Adjust
the `ld-elf/64ksec-r' test accordingly so that it also accepts a section
symbol with a name.
Also modify the hook itself so that only actual ET_REL objects have
names assigned to local section symbols. Other kinds of ELF files are
not ever supposed to be relocated with the MIPSpro linker, so we can
afford producing more standard output.
Add suitable GAS, LD and `objcopy' test cases to the relevant testsuites
to keep these tools consistently verified. This change also fixes:
FAIL: objcopy executable (pr25662)
across MIPS targets using the IRIX compatibility mode.
bfd/
* elflink.c (bfd_elf_final_link): Give local symbols a name if
so requested.
* elfxx-mips.c (_bfd_mips_elf_name_local_section_symbols): Only
return TRUE if making ET_REL output.
binutils/
* testsuite/binutils-all/mips/global-local-symtab-sort-o32.d:
New test.
* testsuite/binutils-all/mips/global-local-symtab-sort-o32t.d:
New test.
* testsuite/binutils-all/mips/global-local-symtab-sort-n32.d:
New test.
* testsuite/binutils-all/mips/global-local-symtab-sort-n32t.d:
New test.
* testsuite/binutils-all/mips/global-local-symtab-sort-n64.d:
New test.
* testsuite/binutils-all/mips/global-local-symtab-sort-n64t.d:
New test.
* testsuite/binutils-all/mips/global-local-symtab-final-o32.d:
New test.
* testsuite/binutils-all/mips/global-local-symtab-final-n32.d:
New test.
* testsuite/binutils-all/mips/global-local-symtab-final-n64.d:
New test.
* testsuite/binutils-all/mips/mips.exp: Run the new tests.
gas/
* testsuite/gas/mips/global-local-symtab-sort-o32.d: New test.
* testsuite/gas/mips/global-local-symtab-sort-o32t.d: New test.
* testsuite/gas/mips/global-local-symtab-sort-n32.d: New test.
* testsuite/gas/mips/global-local-symtab-sort-n32t.d: New test.
* testsuite/gas/mips/global-local-symtab-sort-n64.d: New test.
* testsuite/gas/mips/global-local-symtab-sort-n64t.d: New test.
* testsuite/gas/mips/mips.exp: Run the new tests.
ld/
* testsuite/ld-elf/sec64k.exp: Also accept a section symbol with
a name.
* testsuite/ld-mips-elf/global-local-symtab-sort-o32.d: New
test.
* testsuite/ld-mips-elf/global-local-symtab-sort-o32t.d: New
test.
* testsuite/ld-mips-elf/global-local-symtab-sort-n32.d: New
test.
* testsuite/ld-mips-elf/global-local-symtab-sort-n32t.d: New
test.
* testsuite/ld-mips-elf/global-local-symtab-sort-n64.d: New
test.
* testsuite/ld-mips-elf/global-local-symtab-sort-n64t.d: New
test.
* testsuite/ld-mips-elf/global-local-symtab-final-o32.d: New
test.
* testsuite/ld-mips-elf/global-local-symtab-final-n32.d: New
test.
* testsuite/ld-mips-elf/global-local-symtab-final-n64.d: New
test.
* testsuite/ld-mips-elf/mips-elf.exp: Run the new tests.
2020-07-30 03:56:41 +08:00
|
|
|
|
2020-07-29 Maciej W. Rozycki <macro@linux-mips.org>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/mips/global-local-symtab-sort-o32.d: New test.
|
|
|
|
|
* testsuite/gas/mips/global-local-symtab-sort-o32t.d: New test.
|
|
|
|
|
* testsuite/gas/mips/global-local-symtab-sort-n32.d: New test.
|
|
|
|
|
* testsuite/gas/mips/global-local-symtab-sort-n32t.d: New test.
|
|
|
|
|
* testsuite/gas/mips/global-local-symtab-sort-n64.d: New test.
|
|
|
|
|
* testsuite/gas/mips/global-local-symtab-sort-n64t.d: New test.
|
|
|
|
|
* testsuite/gas/mips/mips.exp: Run the new tests.
|
|
|
|
|
|
MIPS/LD: Set symtab's `sh_info' correctly for IRIX emulations
Correct ELF linker code so as to set the `sh_info' value of the static
symbol table section according to the section symbols vs other symbols
split where required by the selection of the IRIX compatibility mode for
MIPS target. Add a `elf_backend_elfsym_local_is_section' hook for that
purpose, returning TRUE if it is only STB_LOCAL/STT_SECTION symbols that
are to be considered local for the purpose of this split rather than all
STB_LOCAL symbols.
We do it already in generic ELF code, and have done it since 1993, with
the `elf_backend_sym_is_global' hook, affecting GAS and `objcopy', so
these tools produce correct ELF output in the IRIX compatibility mode,
however if such output is fed as input to `ld -r', then the linker's
output is no longer valid for that mode. The relevant changes to
generic ELF code are:
commit 062189c6eab72c7ba1bab1cf30fdb27d67a7d668
Author: Ian Lance Taylor <ian@airs.com>
Date: Thu Nov 18 17:12:47 1993 +0000
and:
commit 6e07e54f1b347f885cc6c021c3fd912c79bdaf55
Author: Ian Lance Taylor <ian@airs.com>
Date: Thu Jan 6 20:01:42 1994 +0000
(split across two GIT commits likely due to repository conversion
peculiarities).
The `elf_backend_sym_is_global' hook however operates on BFD rather than
ELF symbols, making it unsuitable for the ELF linker as the linker does
not convert any symbol tables processed into the BFD format. Converting
the hook to operate on ELF symbols would in principle be possible, but
it would still require a considerable rewrite of `bfd_elf_final_link' to
adapt to the interface.
Therefore, especially given that no new use for the IRIX compatibility
mode is expected, minimize changes made to the ELF linker code and just
add an entirely new hook, and wire it in the o32 and n32 MIPS backends
accordingly; the n64 backend never uses the IRIX compatibility mode.
Since we have no coverage here at all add suitable GAS, LD and `objcopy'
test cases to the relevant testsuites to keep these tools consistently
verified.
bfd/
* elf-bfd.h (elf_backend_data): Add
`elf_backend_elfsym_local_is_section' member.
* elfxx-target.h (elf_backend_elfsym_local_is_section): New
macro.
(elfNN_bed): Add `elf_backend_elfsym_local_is_section' member.
* elflink.c (bfd_elf_final_link): Use it to determine whether
set the `.symtab' section's `sh_info' value to the index of the
first non-local or non-section symbol.
* elf32-mips.c (mips_elf32_elfsym_local_is_section): New
function.
(elf_backend_elfsym_local_is_section): New macro.
* elfn32-mips.c (mips_elf_n32_elfsym_local_is_section): New
function.
(elf_backend_elfsym_local_is_section): New macro.
binutils/
* testsuite/binutils-all/mips/global-local-symtab-o32.d: New
test.
* testsuite/binutils-all/mips/global-local-symtab-o32t.d: New
test.
* testsuite/binutils-all/mips/global-local-symtab-n32.d: New
test.
* testsuite/binutils-all/mips/global-local-symtab-n32t.d: New
test.
* testsuite/binutils-all/mips/global-local-symtab-n64.d: New
test.
* testsuite/binutils-all/mips/mips.exp: Run the new tests.
gas/
* testsuite/gas/mips/global-local-symtab-o32.d: New test.
* testsuite/gas/mips/global-local-symtab-o32t.d: New test.
* testsuite/gas/mips/global-local-symtab-n32.d: New test.
* testsuite/gas/mips/global-local-symtab-n32t.d: New test.
* testsuite/gas/mips/global-local-symtab-n64.d: New test.
* testsuite/gas/mips/global-local-symtab.s: New test source.
* testsuite/gas/mips/mips.exp: Run the new tests.
ld/
* testsuite/ld-mips-elf/global-local-symtab-o32.d: New test.
* testsuite/ld-mips-elf/global-local-symtab-o32t.d: New test.
* testsuite/ld-mips-elf/global-local-symtab-n32.d: New test.
* testsuite/ld-mips-elf/global-local-symtab-n32t.d: New test.
* testsuite/ld-mips-elf/global-local-symtab-n64.d: New test.
* testsuite/ld-mips-elf/global-local-symtab.ld: New test linker
script.
* testsuite/ld-mips-elf/mips-elf.exp: Run the new tests.
2020-07-30 03:56:41 +08:00
|
|
|
|
2020-07-29 Maciej W. Rozycki <macro@linux-mips.org>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/mips/global-local-symtab-o32.d: New test.
|
|
|
|
|
* testsuite/gas/mips/global-local-symtab-o32t.d: New test.
|
|
|
|
|
* testsuite/gas/mips/global-local-symtab-n32.d: New test.
|
|
|
|
|
* testsuite/gas/mips/global-local-symtab-n32t.d: New test.
|
|
|
|
|
* testsuite/gas/mips/global-local-symtab-n64.d: New test.
|
|
|
|
|
* testsuite/gas/mips/global-local-symtab.s: New test source.
|
|
|
|
|
* testsuite/gas/mips/mips.exp: Run the new tests.
|
|
|
|
|
|
2020-07-28 18:41:16 +08:00
|
|
|
|
2020-07-28 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/26305
|
|
|
|
|
* config/tc-i386.c (build_modrm_byte): Use disp32/disp16 on
|
|
|
|
|
(%bp)/(%ebp)/(%rbp) for {disp32}.
|
|
|
|
|
* doc/c-i386.texi: Update {disp32} documentation.
|
|
|
|
|
* testsuite/gas/i386/pseudos.s: Add (%bp)/(%ebp) tests.
|
|
|
|
|
* testsuite/gas/i386/x86-64-pseudos.s: Add (%ebp)/(%rbp) tests.
|
|
|
|
|
* testsuite/gas/i386/pseudos.d: Updated.
|
|
|
|
|
* testsuite/gas/i386/x86-64-pseudos.d: Likewise.
|
|
|
|
|
|
2020-07-27 20:52:14 +08:00
|
|
|
|
2020-07-27 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* doc/as.texi: Replace preceeded with preceded.
|
|
|
|
|
|
2020-07-22 19:46:00 +08:00
|
|
|
|
2020-07-22 Maciej W. Rozycki <macro@linux-mips.org>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/mips/jal-svr4pic-irix.d: New file.
|
|
|
|
|
* testsuite/gas/mips/mips1@jal-svr4pic-irix.d: New file.
|
|
|
|
|
* testsuite/gas/mips/mipsr6@jal-svr4pic-irix.d: New file.
|
|
|
|
|
* testsuite/gas/mips/micromips@jal-svr4pic-irix.d: New file.
|
|
|
|
|
* testsuite/gas/mips/r3000@jal-svr4pic-irix.d: New file.
|
|
|
|
|
* testsuite/gas/mips/jal-svr4pic-local-irix.d: New file.
|
|
|
|
|
* testsuite/gas/mips/mips1@jal-svr4pic-local-irix.d: New file.
|
|
|
|
|
* testsuite/gas/mips/micromips@jal-svr4pic-local-irix.d: New
|
|
|
|
|
file.
|
|
|
|
|
* testsuite/gas/mips/r3000@jal-svr4pic-local-irix.d: New file.
|
|
|
|
|
* testsuite/gas/mips/jal-svr4pic-noreorder-irix.d: New file.
|
|
|
|
|
* testsuite/gas/mips/mips1@jal-svr4pic-noreorder-irix.d: New
|
|
|
|
|
file.
|
|
|
|
|
* testsuite/gas/mips/mipsr6@jal-svr4pic-noreorder-irix.d: New
|
|
|
|
|
file.
|
|
|
|
|
* testsuite/gas/mips/micromips@jal-svr4pic-noreorder-irix.d: New
|
|
|
|
|
file.
|
|
|
|
|
* testsuite/gas/mips/r3000@jal-svr4pic-noreorder-irix.d: New
|
|
|
|
|
file.
|
|
|
|
|
* testsuite/gas/mips/jal-xgot-irix.d: New file.
|
|
|
|
|
* testsuite/gas/mips/jalr2-irix.d: New file.
|
|
|
|
|
* testsuite/gas/mips/micromips-branch-relax-insn32-pic-irix.d:
|
|
|
|
|
New file.
|
|
|
|
|
* testsuite/gas/mips/micromips-branch-relax-pic-irix.d: New
|
|
|
|
|
file.
|
|
|
|
|
* testsuite/gas/mips/mips-abi32-pic2-irix.d: New file.
|
|
|
|
|
* testsuite/gas/mips/jal-svr4pic-local.d: Don't exclude
|
|
|
|
|
`*-*-irix*' targets. Add source file designator.
|
|
|
|
|
* testsuite/gas/mips/mips1@jal-svr4pic-local.d: Don't exclude
|
|
|
|
|
`*-*-irix*' targets.
|
|
|
|
|
* testsuite/gas/mips/r3000@jal-svr4pic-local.d: Likewise.
|
|
|
|
|
* testsuite/gas/mips/micromips@jal-svr4pic-local.d: Likewise.
|
|
|
|
|
* testsuite/gas/mips/jalr2.d: Add name designator.
|
|
|
|
|
* testsuite/gas/mips/mips.exp: Use respective IRIX variants for
|
|
|
|
|
tests involving the JALR relocation throughout.
|
|
|
|
|
|
2020-07-22 19:46:00 +08:00
|
|
|
|
2020-07-22 Maciej W. Rozycki <macro@linux-mips.org>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/mips/mips.exp: Use a helper variable for
|
|
|
|
|
IRIX/non-IRIX test selection.
|
|
|
|
|
|
2020-07-21 20:20:11 +08:00
|
|
|
|
2020-07-21 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/evex-no-scale-64.d,
|
|
|
|
|
testsuite/gas/i386/addr32.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-addr32-intel.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-addr32.d: Adjust expectations.
|
|
|
|
|
|
2020-07-21 18:32:44 +08:00
|
|
|
|
2020-07-21 Cooper Qu <cooper.qu@linux.alibaba.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-csky.c (md_begin): Fix tests of arch and mach flags.
|
|
|
|
|
|
2020-07-21 17:34:40 +08:00
|
|
|
|
2020-07-21 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/evex-no-scale-32.d,
|
|
|
|
|
testsuite/gas/i386/evex-no-scale-64.d: Add #source and #pass.
|
|
|
|
|
* testsuite/gas/i386/evex-no-scale-32.s,
|
|
|
|
|
testsuite/gas/i386/evex-no-scale-64.s: Rename / fold into ...
|
|
|
|
|
* testsuite/gas/i386/evex-no-scale.s: ... this. Use .struct
|
|
|
|
|
instead of .section.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Move above tests out of ELF-
|
|
|
|
|
specific section.
|
|
|
|
|
|
2020-07-21 08:59:24 +08:00
|
|
|
|
2020-07-21 Maciej W. Rozycki <macro@linux-mips.org>
|
|
|
|
|
|
|
|
|
|
* config/tc-mips.c (prev_reloc_op_frag): Remove variable.
|
|
|
|
|
(my_getSmallExpression): Adjust accordingly.
|
|
|
|
|
|
2020-07-20 14:57:18 +08:00
|
|
|
|
2020-07-20 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
PR gas/4572
|
|
|
|
|
* config/tc-i386.c (i386_comment_chars): Drop TE_I386AIX from
|
|
|
|
|
conditional around it.
|
|
|
|
|
(md_begin): Insert backslash into operand_chars[] when slash is
|
|
|
|
|
a comment character.
|
|
|
|
|
* config/tc-i386-intel.c (i386_operator): Recognize \/, \%, and
|
|
|
|
|
\* as operators when / may be a comment character.
|
|
|
|
|
* testsuite/gas/i386/svr4.s, testsuite/gas/i386/svr4.d: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new test.
|
|
|
|
|
|
2020-07-20 14:56:23 +08:00
|
|
|
|
2020-07-20 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
PR gas/4572
|
|
|
|
|
* app.c (last_char): Drop TC_ARM conditional around it.
|
|
|
|
|
(struct app_save): Drop TC_ARM conditional around last_char.
|
|
|
|
|
(app_push, app_pop): Drop TC_ARM conditional from last_char
|
|
|
|
|
accesses.
|
|
|
|
|
(do_scrub_chars): Likewise. Drop TC_ARM conditional from
|
|
|
|
|
backslash-precedes-comment-character check.
|
|
|
|
|
|
2020-07-20 14:55:48 +08:00
|
|
|
|
2020-07-20 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (frag_opcode_byte): New.
|
|
|
|
|
(output_branch): Emit error when in absolute section.
|
|
|
|
|
(output_jump, output_insn): Use frag_opcode_byte. Handle being
|
|
|
|
|
in absolute section.
|
|
|
|
|
(output_interseg_jump, output_disp, output_imm): Handle being in
|
|
|
|
|
absolute section.
|
|
|
|
|
* testsuite/gas/i386/sizing.s,
|
|
|
|
|
testsuite/gas/i386/sizing32.d,
|
|
|
|
|
testsuite/gas/i386/sizing64.d: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new tests.
|
|
|
|
|
|
2020-07-20 14:54:37 +08:00
|
|
|
|
2020-07-20 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Include *-*-vxworks alongside
|
|
|
|
|
is_elf_format as applicable; merely exclude iamcu tests.
|
|
|
|
|
|
2020-07-19 21:51:19 +08:00
|
|
|
|
2020-07-19 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/26263
|
|
|
|
|
* config/tc-i386.c (i386_validate_fix): Change PLT32 reloc
|
|
|
|
|
against section to PC32 reloc.
|
|
|
|
|
* testsuite/gas/i386/relax-5.d: Updated.
|
|
|
|
|
* testsuite/gas/i386/x86-64-relax-4.d: Likewise.
|
|
|
|
|
|
2020-07-15 21:49:45 +08:00
|
|
|
|
2020-07-15 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/26237
|
|
|
|
|
* testsuite/gas/i386/evex-no-scale-64.d: Updated.
|
|
|
|
|
* testsuite/gas/i386/addr32.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-addr32.d: Likewise.
|
|
|
|
|
|
2020-07-15 19:52:53 +08:00
|
|
|
|
2020-07-15 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* write.c (create_note_reloc): Add desc2_size parameter. Zero out
|
|
|
|
|
the addend field of REL relocations. Store the full addend into
|
|
|
|
|
the note for REL relocations.
|
|
|
|
|
|
2020-07-15 14:54:40 +08:00
|
|
|
|
2020-07-15 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/x86-64-stack.s: Adjust 32-bit push
|
|
|
|
|
immediate.
|
|
|
|
|
* testsuite/gas/i386/x86-64-stack-intel.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-stack-suffix.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-stack.d: Adjust expectations.
|
|
|
|
|
|
2020-07-15 14:53:55 +08:00
|
|
|
|
2020-07-15 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/disassem.d,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64-branch.d,
|
|
|
|
|
testsuite/gas/i386/intel.d, testsuite/gas/i386/jump16.d,
|
|
|
|
|
testsuite/gas/i386/lfence-load.d, testsuite/gas/i386/noreg16.d,
|
|
|
|
|
testsuite/gas/i386/noreg32.d,
|
|
|
|
|
testsuite/gas/i386/noreg64-rex64.d,
|
|
|
|
|
testsuite/gas/i386/noreg64.d, testsuite/gas/i386/notrack.d,
|
|
|
|
|
testsuite/gas/i386/opcode.d,
|
|
|
|
|
testsuite/gas/i386/solaris/x86-64-branch-2.d,
|
|
|
|
|
testsuite/gas/i386/solaris/x86-64-jump.d,
|
|
|
|
|
testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d,
|
|
|
|
|
testsuite/gas/i386/solaris/x86-64-nop-3.d,
|
|
|
|
|
testsuite/gas/i386/solaris/x86-64-nop-4.d,
|
|
|
|
|
testsuite/gas/i386/solaris/x86-64-nop-5.d,
|
|
|
|
|
testsuite/gas/i386/solaris/x86-64-relax-2.d,
|
|
|
|
|
testsuite/gas/i386/solaris/x86-64-relax-3.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-1a.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-1b.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-1c.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-1d.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-1e.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-1f.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-1g.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-1h.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-1i.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-2a.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-2b.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-2c.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-3.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-4a.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-4b.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-5.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-align-branch-6.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-branch-2.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-branch-3.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-branch.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-disassem.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-disp32.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-gotpcrel-no-relax.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-gotpcrel.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-ifunc.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-jump.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-lfence-byte.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-lfence-indbr-a.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-lfence-indbr-b.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-lfence-indbr-c.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-lfence-load.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-lfence-ret-a.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-lfence-ret-b.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-lfence-ret-c.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-lfence-ret-d.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-lfence-ret-e.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-mpx-add-bnd-prefix.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-mpx-branch-1.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-mpx.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-nop-3.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-nop-4.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-nop-5.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-nops-7.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-notrack.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-opcode.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-relax-2.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-relax-3.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-relax-4.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-rtm.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-stack.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-unique.d,
|
|
|
|
|
testsuite/gas/i386/x86_64-intel.d: Adjust expectations.
|
|
|
|
|
|
2020-07-15 00:57:52 +08:00
|
|
|
|
2020-07-14 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/26237
|
|
|
|
|
* testsuite/gas/i386/addr32.s: Add tests for 32-bit wrapped around
|
|
|
|
|
address.
|
|
|
|
|
* testsuite/gas/i386/x86-64-addr32.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/addr32.d: Updated.
|
|
|
|
|
* testsuite/gas/i386/x86-64-addr32-intel.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-addr32.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/ilp32/x86-64-addr32-intel.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/ilp32/x86-64-addr32.d: Likewise.
|
|
|
|
|
|
2020-07-14 16:43:38 +08:00
|
|
|
|
2020-07-14 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/intel.s: Use dr<N> instead of db<N>.
|
|
|
|
|
* testsuite/gas/i386/intel-intel.d: Disambiguate name.
|
|
|
|
|
* testsuite/gas/i386/intel.d,
|
|
|
|
|
testsuite/gas/i386/opcode-intel.d: Adjust expectations.
|
|
|
|
|
|
2020-07-14 16:33:40 +08:00
|
|
|
|
2020-07-14 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/prefix.d: Adjust expectations.
|
|
|
|
|
|
2020-07-14 16:28:12 +08:00
|
|
|
|
2020-07-14 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/x86-64-avx-intel.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-sse4_2-intel.d: Adjust expectations.
|
|
|
|
|
|
2020-07-14 16:26:51 +08:00
|
|
|
|
2020-07-14 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/movbe-suffix.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-movbe-suffix.d: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new tests.
|
|
|
|
|
|
2020-07-14 16:25:43 +08:00
|
|
|
|
2020-07-14 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/crc32-suffix.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-crc32-suffix.d: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new tests.
|
|
|
|
|
* testsuite/gas/i386/arch-10-bdver1.d,
|
|
|
|
|
testsuite/gas/i386/arch-10-bdver2.d,
|
|
|
|
|
testsuite/gas/i386/arch-10-bdver3.d,
|
|
|
|
|
testsuite/gas/i386/arch-10-bdver4.d,
|
|
|
|
|
testsuite/gas/i386/arch-10-btver1.d,
|
|
|
|
|
testsuite/gas/i386/arch-10-btver2.d,
|
|
|
|
|
testsuite/gas/i386/arch-10-lzcnt.d,
|
|
|
|
|
testsuite/gas/i386/arch-10-prefetchw.d,
|
|
|
|
|
testsuite/gas/i386/arch-10.d, testsuite/gas/i386/arch-2.d,
|
|
|
|
|
testsuite/gas/i386/arch-3.d, testsuite/gas/i386/arch-5.d,
|
|
|
|
|
testsuite/gas/i386/arch-6.d, testsuite/gas/i386/crc32.d,
|
|
|
|
|
testsuite/gas/i386/sse-noavx.d, testsuite/gas/i386/sse4_2.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-arch-2-bdver1.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-arch-2-bdver2.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-arch-2-bdver3.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-arch-2-bdver4.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-arch-2-btver1.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-arch-2-btver2.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-arch-2-lzcnt.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-arch-2-prefetchw.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-arch-2.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-crc32.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-pseudos.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-sse-noavx.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-sse4_2.d: Adjust expectations.
|
|
|
|
|
|
2020-07-14 16:24:26 +08:00
|
|
|
|
2020-07-14 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
|
|
|
|
|
ModR/M-encoded byte register cases.
|
|
|
|
|
* testsuite/gas/i386/x86-64-pseudos.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-reg-intel.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-reg.d: Adjust expectations.
|
|
|
|
|
|
2020-07-14 16:23:36 +08:00
|
|
|
|
2020-07-14 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
|
|
|
|
|
not-ModR/M-encoded byte register cases.
|
|
|
|
|
* testsuite/gas/i386/x86-64-pseudos.d: Adjust expectations.
|
|
|
|
|
|
2020-07-14 16:22:45 +08:00
|
|
|
|
2020-07-14 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/ilp32/x86-64-arch-1.d,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64-arch-2.d,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64-avx-intel.d,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64-avx.d,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64-crc32-intel.d,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64-crc32.d,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64-gotpcrel.d,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64-ifunc.d,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64-reg-intel.d,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64-reg.d,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64-rep-suffix.d,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64-sse4_2-intel.d,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64-sse4_2.d,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64-stack-intel.d,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64-stack-suffix.d,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64-stack.d: Reference parent dir
|
|
|
|
|
dump expectations.
|
|
|
|
|
|
2020-07-14 01:18:39 +08:00
|
|
|
|
2020-07-13 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (offset_in_range): Remove 32-bit sign
|
|
|
|
|
extension.
|
|
|
|
|
|
2020-07-13 21:49:58 +08:00
|
|
|
|
2020-07-13 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* po/fr.po: Updated French translation.
|
|
|
|
|
|
2020-07-13 18:27:05 +08:00
|
|
|
|
2020-07-13 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/elf/dwarf2-7.d: Remove most xfails.
|
|
|
|
|
* testsuite/gas/elf/dwarf2-12.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/dwarf2-13.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/dwarf2-14.d: Likewise.
|
|
|
|
|
|
2020-07-11 19:04:08 +08:00
|
|
|
|
2020-07-11 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (output_insn): Check i.xstate to set
|
|
|
|
|
GNU_PROPERTY_X86_FEATURE_2_TMM.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run x86-64-property-7,
|
|
|
|
|
x86-64-property-8 and x86-64-property-9.
|
|
|
|
|
* testsuite/gas/i386/x86-64-property-7.d: New file.
|
|
|
|
|
* testsuite/gas/i386/x86-64-property-7.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-property-8.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-property-8.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-property-9.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-property-9.s: Likewise.
|
|
|
|
|
|
2020-07-10 23:43:37 +08:00
|
|
|
|
2020-07-10 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (_i386_insn): Remove has_regmmx, has_regxmm,
|
|
|
|
|
has_regymm, has_regzmm and has_regtmm. Add xstate.
|
|
|
|
|
(md_assemble): Set i.xstate from operand types in instruction
|
|
|
|
|
template.
|
|
|
|
|
(build_modrm_byte): Updated.
|
|
|
|
|
(output_insn): Check i.xstate.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run property-6 and
|
|
|
|
|
x86-64-property-6.
|
|
|
|
|
* testsuite/gas/i386/property-6.d: New file.
|
|
|
|
|
* testsuite/gas/i386/property-6.s: Updated.
|
|
|
|
|
* testsuite/gas/i386/x86-64-property-6.d: Likewise.
|
|
|
|
|
|
2020-07-10 20:58:42 +08:00
|
|
|
|
2020-07-10 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/property-5.d: Correct test name.
|
|
|
|
|
|
2020-07-10 20:17:29 +08:00
|
|
|
|
2020-07-10 Lili Cui <lili.cui@intel.com>
|
|
|
|
|
|
|
|
|
|
* NEWS: Mention support for Intel AMX instructions.
|
|
|
|
|
* config/tc-i386.c (i386_error): Add invalid_sib_address.
|
|
|
|
|
(cpu_arch): Add .amx_int8, .amx_bf16 and .amx_tile.
|
|
|
|
|
(cpu_noarch): Add noamx_int8, noamx_bf16 and noamx_tile.
|
|
|
|
|
(match_simd_size): Add tmmword check.
|
|
|
|
|
(operand_type_match): Add tmmword.
|
|
|
|
|
(type_names): Add rTMM.
|
|
|
|
|
(i386_error): Add invalid_tmm_register_set.
|
|
|
|
|
(check_VecOperands): Handle invalid_sib_address and
|
|
|
|
|
invalid_tmm_register_set.
|
|
|
|
|
(match_template): Handle invalid_sib_address.
|
|
|
|
|
(build_modrm_byte): Handle non-vector SIB and zmmword.
|
|
|
|
|
(i386_index_check): Disallow RegIP for non-vector SIB.
|
|
|
|
|
(check_register): Handle zmmword.
|
|
|
|
|
* doc/c-i386.texi: Document amx_int8, amx_bf16 and amx_tile.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Add AMX new tests.
|
|
|
|
|
* testsuite/gas/i386/intel-regs.d: Add tmm.
|
|
|
|
|
* testsuite/gas/i386/intel-regs.s: Add tmm.
|
|
|
|
|
* testsuite/gas/i386/x86-64-amx-intel.d: New.
|
|
|
|
|
* testsuite/gas/i386/x86-64-amx-inval.l: New.
|
|
|
|
|
* testsuite/gas/i386/x86-64-amx-inval.s: New.
|
|
|
|
|
* testsuite/gas/i386/x86-64-amx.d: New.
|
|
|
|
|
* testsuite/gas/i386/x86-64-amx.s: New.
|
|
|
|
|
* testsuite/gas/i386/x86-64-amx-bad.d: New.
|
|
|
|
|
* testsuite/gas/i386/x86-64-amx-bad.s: New.
|
|
|
|
|
|
2020-07-10 18:25:44 +08:00
|
|
|
|
2020-07-10 Tom de Vries <tdevries@suse.de>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/elf/dwarf2-11.d: Update expected output from
|
|
|
|
|
readelf's line table decoding.
|
|
|
|
|
* testsuite/gas/elf/dwarf2-12.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/dwarf2-13.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/dwarf2-14.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/dwarf2-15.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/dwarf2-16.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/dwarf2-17.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/dwarf2-18.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/dwarf2-19.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/dwarf2-5.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/dwarf2-6.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/dwarf2-7.d: Likewise.
|
|
|
|
|
|
2020-07-10 01:33:25 +08:00
|
|
|
|
2020-07-09 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (output_insn): Set YMM/ZMM features for
|
|
|
|
|
VEX/EVEX vector instructions.
|
|
|
|
|
* testsuite/gas/i386/property-4.d: New file.
|
|
|
|
|
* testsuite/gas/i386/property-4.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/property-5.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/property-5.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-property-4.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-property-5.d: Likewise.
|
|
|
|
|
|
2020-07-09 23:29:25 +08:00
|
|
|
|
2020-07-09 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* NEWS: Mention --enable-x86-used-note.
|
|
|
|
|
* configure.ac: Configure with --enable-x86-used-note by default
|
|
|
|
|
for Linux/x86.
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
|
2020-07-08 19:51:32 +08:00
|
|
|
|
2020-07-09 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/obj-coff.h: Remove TE_PE support.
|
|
|
|
|
* config/tc-ppc.c: Likewise.
|
|
|
|
|
* config/tc-ppc.h: Likewise.
|
|
|
|
|
* configure.tgt: Remove powerpc PE and powerpc lynxos.
|
|
|
|
|
* testsuite/gas/cfi/cfi.exp (cfi-common-6): Remove powerpc PE
|
|
|
|
|
condition.
|
|
|
|
|
* testsuite/gas/macros/macros.exp: Don't xfail powerpc PE.
|
|
|
|
|
|
2020-07-08 17:19:26 +08:00
|
|
|
|
2020-07-08 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/fma4-lig.d, testsuite/gas/i386/xop-lig.d:
|
|
|
|
|
New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new tests.
|
|
|
|
|
|
2020-07-07 21:01:48 +08:00
|
|
|
|
2020-07-07 Claudiu Zissulescu <claziss@synopsys.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arc.c (find_opcode_match): Add error messages.
|
|
|
|
|
* testsuite/gas/arc/add_s-err.s: Update test.
|
|
|
|
|
* testsuite/gas/arc/asm-errors.err: Likewise.
|
|
|
|
|
* testsuite/gas/arc/cpu-em-err.s: Likewise.
|
|
|
|
|
* testsuite/gas/arc/hregs-err.s: Likewise.
|
|
|
|
|
* testsuite/gas/arc/warn.s: Likewise.
|
|
|
|
|
|
2020-07-07 20:06:38 +08:00
|
|
|
|
2020-07-07 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/26212
|
|
|
|
|
* doc/c-i386.texi: Remove an incorrect AVX2 entry.
|
|
|
|
|
|
2020-07-07 10:20:52 +08:00
|
|
|
|
2020-07-07 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/all/gas.exp: Use is_xcoff_format.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Likewise.
|
|
|
|
|
* testsuite/gas/all/weakref1l.d: Likewise.
|
|
|
|
|
|
2020-07-07 16:37:38 +08:00
|
|
|
|
2020-07-07 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/arm/cde-missing-fp.l: Fix spelling mistake in
|
|
|
|
|
expected output.
|
|
|
|
|
|
2020-07-06 19:41:27 +08:00
|
|
|
|
2020-07-06 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/x86-64-avx512bw-wig1.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-avx512bw-wig1-intel.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-evex-wig1.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-evex-wig1-intel.d: Adjust
|
|
|
|
|
expectations.
|
|
|
|
|
|
2020-07-06 19:35:38 +08:00
|
|
|
|
2020-07-06 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/avx512f-opts.s: Add EVEX movq tests.
|
|
|
|
|
* testsuite/gas/i386/x86-64-avx512f-opts.s: Add blank line.
|
|
|
|
|
* testsuite/gas/i386/avx512f-opts-intel.d,
|
|
|
|
|
testsuite/gas/i386/avx512f-opts.d
|
|
|
|
|
testsuite/gas/i386/x86-64-avx512f-opts-intel.d
|
|
|
|
|
testsuite/gas/i386/x86-64-avx512f-opts.d: Adjust expectations.
|
|
|
|
|
|
2020-07-06 17:54:36 +08:00
|
|
|
|
2020-07-06 Yuri Chornoivan <yurchor@ukr.net>
|
|
|
|
|
|
|
|
|
|
PR 26204
|
|
|
|
|
* config/tc-arm.c: Fix spelling mistake.
|
|
|
|
|
* config/tc-riscv.c: Likewise.
|
|
|
|
|
* config/tc-z80.c: Likewise.
|
|
|
|
|
* po/gas.pot: Regenerate.
|
|
|
|
|
|
2020-07-06 17:43:35 +08:00
|
|
|
|
2020-07-06 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* po/uk.po: Updated Ukranian translation.
|
|
|
|
|
|
2020-07-04 17:34:23 +08:00
|
|
|
|
2020-07-04 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* po/gas.pot: Regenerate.
|
|
|
|
|
|
|
|
|
|
2020-07-04 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* version.m4: Change version number to 2.35.50.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* po/bfd.pot: Regenerate.
|
|
|
|
|
|
2020-07-04 17:16:22 +08:00
|
|
|
|
2020-07-04 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
Binutils 2.35 branch created.
|
|
|
|
|
|
2020-07-03 13:59:13 +08:00
|
|
|
|
2020-07-03 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 26028
|
|
|
|
|
* testsuite/gas/ia64/unwind-ilp32.d: Add -T to readelf options.
|
|
|
|
|
|
2020-07-02 21:30:00 +08:00
|
|
|
|
2020-07-02 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (build_modrm_byte): Check vexswapsources to
|
|
|
|
|
swap two source operands.
|
|
|
|
|
|
2020-07-02 21:08:16 +08:00
|
|
|
|
2020-07-02 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/all/fill-1.d: Skip for MeP targets.
|
|
|
|
|
|
2020-07-02 20:53:07 +08:00
|
|
|
|
2020-07-02 Alex Coplan <alex.coplan@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-aarch64.c (reg_name_p): Fix cast so that we don't
|
|
|
|
|
segfault on negative chars.
|
|
|
|
|
* testsuite/gas/aarch64/reglike-label-unicode-segv.d: New test.
|
|
|
|
|
* testsuite/gas/aarch64/reglike-label-unicode-segv.s: Input.
|
|
|
|
|
|
2020-07-02 18:30:52 +08:00
|
|
|
|
2020-07-02 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 26028
|
|
|
|
|
* testsuite/gas/ia64/group-2.d: Add -T option to readelf
|
|
|
|
|
command line.
|
|
|
|
|
* testsuite/gas/ia64/unwind.d: Likewise.
|
|
|
|
|
* testsuite/gas/mmix/bspec-1.d: Likewise.
|
|
|
|
|
* testsuite/gas/mmix/bspec-2.d: Likewise.
|
|
|
|
|
* testsuite/gas/mmix/comment-1.d: Likewise.
|
|
|
|
|
* testsuite/gas/tic6x/scomm-directive-4.d: Likewise.
|
|
|
|
|
|
2020-07-01 07:45:34 +08:00
|
|
|
|
2020-07-01 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-xc16x.c (md_apply_fix): Add FIXME.
|
|
|
|
|
|
2020-07-01 07:44:45 +08:00
|
|
|
|
2020-07-01 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/all/eqv-dot.d: xfail targets that set linkrelax
|
|
|
|
|
in data sections, and mep.
|
|
|
|
|
|
2020-06-30 23:47:02 +08:00
|
|
|
|
2020-06-30 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* NEWS: Mention x86 NaCl target support removal.
|
|
|
|
|
* config/tc-i386.c: Remove x86 NaCl target support.
|
|
|
|
|
* config/tc-i386.h: Likewise.
|
|
|
|
|
* configure.tgt: Likewise.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Likewise.
|
|
|
|
|
* testsuite/gas/i386/iamcu-1.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/iamcu-2.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/iamcu-3.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/iamcu-4.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/iamcu-5.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/k1om.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/l1om.d: Likewise.
|
|
|
|
|
|
2020-06-08 10:54:53 +08:00
|
|
|
|
2020-06-30 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-riscv.c (riscv_csr_class_check): Removed. Move the
|
|
|
|
|
checking into riscv_csr_address.
|
|
|
|
|
(riscv_csr_version_check): Likewise.
|
|
|
|
|
(riscv_csr_address): New function. Return the suitable CSR address
|
|
|
|
|
after checking the ISA dependency and versions. Issue warnings if
|
|
|
|
|
we find any conflict and -mcsr-check is set. CSR_CLASS_F and
|
|
|
|
|
CSR_CLASS_DEBUG are unprivileged CSR for now, so don't check the
|
|
|
|
|
priv spec versions for them.
|
|
|
|
|
(reg_csr_lookup_internal): Call riscv_csr_address to find the
|
|
|
|
|
suitable CSR address.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-fext.d: Remove -mpriv-spec=1.11.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-fext.l: We don't care the
|
|
|
|
|
priv spec warnings here. These warnings are added by accident.
|
|
|
|
|
Remove them and only focus on the ISA dependency warnings.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Updated since
|
|
|
|
|
dscratch0 and dscratch1 are regarded as the unprivileged CSR rather
|
|
|
|
|
than the privileged ones.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg.s: Likewise. Add missing debug CSR.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-version-1p9p1.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-version-1p10.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-version-1p11.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
|
|
|
|
|
|
2020-06-29 21:28:31 +08:00
|
|
|
|
2020-06-29 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* tc-i386.c (build_vex_prefix): Support VEX base opcode length > 1.
|
|
|
|
|
(md_assemble): Don't process ImmExt without operands.
|
|
|
|
|
|
2020-06-29 11:32:02 +08:00
|
|
|
|
2020-06-29 Hans-Peter Nilsson <hp@bitrange.com>
|
|
|
|
|
|
|
|
|
|
PR gas/25331
|
|
|
|
|
* config/tc-mmix.c (md_assemble) <fixup for
|
|
|
|
|
BFD_RELOC_MMIX_BASE_PLUS_OFFSET>: This fixup affects 1 byte, not 8.
|
|
|
|
|
Also, set its fx_no_overflow.
|
|
|
|
|
(md_convert_frag) <case ENCODE_RELAX (STATE_PUSHJSTUB, STATE_ZERO)>:
|
|
|
|
|
Similarly this fixup affects 4 bytes, not 8 and needs its
|
|
|
|
|
fx_no_overflow set.
|
|
|
|
|
* config/tc-mmix.h (TC_FX_SIZE_SLACK): Don't define.
|
2020-06-29 11:38:26 +08:00
|
|
|
|
* testsuite/gas/mmix/pr25331.d, testsuite/gas/mmix/pr25331.s: New test.
|
2020-06-29 11:32:02 +08:00
|
|
|
|
|
2020-06-29 08:37:56 +08:00
|
|
|
|
2020-06-29 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-s12z.c: Use C style comments.
|
|
|
|
|
* config/tc-z80.c: Likewise.
|
|
|
|
|
* config/tc-xtensa.c (emit_ld_r_n): Remove commented out code.
|
|
|
|
|
|
2020-06-27 01:24:59 +08:00
|
|
|
|
2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (md_assemble): Process ImmExt without
|
|
|
|
|
operands.
|
|
|
|
|
|
2020-06-26 23:24:30 +08:00
|
|
|
|
2020-06-26 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (check_VecOperands): Replace vecsib with sib.
|
|
|
|
|
Replace VecSIB128, VecSIB256 and VecSIB512 with VECSIB128,
|
|
|
|
|
VECSIB256 and VECSIB512, respectively.
|
|
|
|
|
(build_modrm_byte): Replace vecsib with sib.
|
|
|
|
|
|
2020-06-26 22:42:55 +08:00
|
|
|
|
2020-06-26 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/nop-1-suffix.d: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new test.
|
|
|
|
|
|
2020-06-26 04:05:38 +08:00
|
|
|
|
2020-06-26 Pat Bernardi <bernardi@adacore.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-m68k.c (m68k_elf_gnu_attribute): New function.
|
|
|
|
|
(md_pseudo_table): Handle "gnu_attribute".
|
|
|
|
|
* doc/as.texi: Document GNU attribute for M68K.
|
|
|
|
|
|
2020-06-25 18:11:51 +08:00
|
|
|
|
2020-06-25 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 26141
|
|
|
|
|
* config/tc-arm.c (arm_force_relocation): Force resolution of
|
|
|
|
|
BFD_RELOC_THUMB_PCREL_BRANCH12 relocations.
|
|
|
|
|
* testsuite/gas/arm/plt-1.d: Adjust expected disassembly.
|
|
|
|
|
|
2020-06-25 15:30:09 +08:00
|
|
|
|
2020-06-25 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (md_assemble): Move call to process_immext()
|
|
|
|
|
...
|
|
|
|
|
(process_operands): ... here.
|
|
|
|
|
|
2020-06-25 15:29:29 +08:00
|
|
|
|
2020-06-25 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (process_suffix): Skip ambiguous operand size
|
|
|
|
|
diagnostic when there is a sizing prefix. Switch to word/dword/
|
|
|
|
|
qword encoding when there is a sizing prefix and no (explicit or
|
|
|
|
|
derived) suffix.
|
|
|
|
|
(update_imm): Handle presence of a sizing prefix.
|
|
|
|
|
* testsuite/gas/i386/noreg16-data32.d,
|
|
|
|
|
testsuite/gas/i386/noreg32-data16.d,
|
|
|
|
|
testsuite/gas/i386/noreg32-data16.e,
|
|
|
|
|
testsuite/gas/i386/noreg64-data16.d,
|
|
|
|
|
testsuite/gas/i386/noreg64-data16.e,
|
|
|
|
|
testsuite/gas/i386/noreg64-rex64.d: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new tests.
|
|
|
|
|
* testsuite/gas/i386/noreg32.s, testsuite/gas/i386/noreg64.s:
|
|
|
|
|
Introduce and use pfx* macros.
|
|
|
|
|
* testsuite/gas/i386/noreg16.s: Likewise. Replace 32-bit
|
|
|
|
|
addressing.
|
|
|
|
|
* testsuite/gas/i386/noreg16.d: Adjust expectations.
|
|
|
|
|
|
2020-06-25 15:27:21 +08:00
|
|
|
|
2020-06-25 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/avx-16bit.d,
|
|
|
|
|
testsuite/gas/i386/avx-scalar.d, testsuite/gas/i386/avx.d,
|
|
|
|
|
testsuite/gas/i386/avx512f-16bit.d,
|
|
|
|
|
testsuite/gas/i386/avx512f.d,
|
|
|
|
|
testsuite/gas/i386/evex-lig256.d,
|
|
|
|
|
testsuite/gas/i386/evex-lig512.d
|
|
|
|
|
testsuite/gas/i386/evex-wig1.d, testsuite/gas/i386/katmai.d,
|
|
|
|
|
testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg32.d,
|
|
|
|
|
testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/simd.d,
|
|
|
|
|
testsuite/gas/i386/sse2-16bit.d,
|
|
|
|
|
testsuite/gas/i386/sse2.d, testsuite/gas/i386/sse2avx.d: Adjust
|
|
|
|
|
expectations.
|
|
|
|
|
|
2020-06-25 15:26:28 +08:00
|
|
|
|
2020-06-25 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (md_assemble): Also reject explicit REX
|
|
|
|
|
prefixes with VEX and alike encoded insns. Zap consumed bits
|
|
|
|
|
from i.rex.
|
|
|
|
|
(output_insn): Don't ignore REX prefix for VEX and alike
|
|
|
|
|
encodings; abort() instead if encountered.
|
|
|
|
|
* testsuite/gas/i386/x86-64-pseudos.s: Move REX-with-VEX cases
|
|
|
|
|
...
|
|
|
|
|
* testsuite/gas/i386/x86-64-pseudos-bad.s: ... here.
|
|
|
|
|
* testsuite/gas/i386/x86-64-pseudos.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-pseudos-bad.l: Adjust expectations.
|
|
|
|
|
|
2020-06-25 15:25:52 +08:00
|
|
|
|
2020-06-25 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (process_operands): Translate explicit REX
|
|
|
|
|
prefix into i.rex for SSE2AVX templates.
|
|
|
|
|
(set_rex_vrex): New helper.
|
|
|
|
|
(build_modrm_byte): Use it.
|
|
|
|
|
* testsuite/gas/i386/x86-64-sse2avx.s: Add cases with explict
|
|
|
|
|
REX prefixes.
|
|
|
|
|
* testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
|
|
|
|
|
|
2020-06-25 15:25:12 +08:00
|
|
|
|
2020-06-25 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (cpu_flags_match): Only match SSE2AVX
|
|
|
|
|
templates when there's no data size prefix.
|
|
|
|
|
(md_assemble): Reject data size prefix also for legacy encoded
|
|
|
|
|
SIMD templates.
|
|
|
|
|
* testsuite/gas/i386/prefix32.s, testsuite/gas/i386/prefix64.s:
|
|
|
|
|
Uncomment previously not working line.
|
|
|
|
|
* testsuite/gas/i386/sse2avx.s: Add ldmxcsr/stmxcsr cases with
|
|
|
|
|
data16 prefix.
|
|
|
|
|
* testsuite/gas/i386/prefix32.l, testsuite/gas/i386/prefix64.l,
|
|
|
|
|
testsuite/gas/i386/sse2avx.d: Adjust expectations.
|
|
|
|
|
|
2020-06-25 15:24:23 +08:00
|
|
|
|
2020-06-25 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (build_evex_prefix): Drop early setting of
|
|
|
|
|
vec_length.
|
|
|
|
|
|
2020-06-22 16:11:18 +08:00
|
|
|
|
2020-06-23 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-riscv.c (explicit_priv_attr): Rename explicit_csr to
|
|
|
|
|
explicit_priv_attr. It used to indicate CSR or priv instructions are
|
|
|
|
|
explictly used.
|
|
|
|
|
(riscv_is_priv_insn): Return True if it is a privileged instruction.
|
|
|
|
|
(riscv_ip): Call riscv_is_priv_insn to check whether the instruction
|
|
|
|
|
is privileged or not. If it is, then set explicit_priv_attr to TRUE.
|
|
|
|
|
(riscv_write_out_attrs): Clarification of when to generate the elf
|
|
|
|
|
priv spec attributes.
|
|
|
|
|
* testsuite/gas/riscv/attribute-11.s: Add comments.
|
|
|
|
|
* testsuite/gas/riscv/attribute-14.s: New testcase. Use symbol
|
|
|
|
|
`priv_insn_<n>` to decide which priv instruction is expected to used.
|
|
|
|
|
(<n> is a to e.)
|
|
|
|
|
* testsuite/gas/riscv/attribute-14a.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-14b.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-14c.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-14d.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-14e.d: Likewise.
|
|
|
|
|
|
RISC-V: Report warning when linking the objects with different priv specs.
We do know some conflicts among different privileged specs. For linker,
the safest approach is that don't allow the object linked with others which
may cause conflicts. But this may cause inconvenience since not all objects
with conflicting priv specs are linked will cause problems. But it is hard
to know the detailed conflict cases for linker, so we probably need a option
to tell linker that we do know there are no conflicts, or we are willing to
take risks to link the objects with conflicted priv specs. But the option
is still under discussion.
Therefore, we can report warnings rather than errors when linking the objects
with conflicted priv specs. This not only makes the linker more flexible,
but also warns people that the conflicts may happen. We also need to update
the output priv spec version once the input priv spec is newer.
bfd/
* elfxx-riscv.c (struct priv_spec_t priv_specs[]): Move them from
opcodes/riscv-opc.c to bfd/elfxx-riscv.c, since we need it in linker.
(riscv_get_priv_spec_class): Likewise.
(riscv_get_priv_spec_name): Likewise.
(riscv_get_priv_spec_class_from_numbers): New function, convert
the version numbers into string, then call riscv_get_priv_spec_class
to get the priv spec class.
* elfxx-riscv.h (riscv_get_priv_spec_class): Move forward declaration
from include/opcode/riscv.h to bfd/elfxx-riscv.h.
(riscv_get_priv_spec_name): Likewise.
(riscv_get_priv_spec_class_from_numbers): New forward declaration.
(opcode/riscv.h): Include it in the header rather than elfxx-riscv.c.
* elfnn-riscv.c (riscv_merge_attributes): Get the priv spec classes
of input and output objects form their priv spec attributes by
riscv_get_priv_spec_class_from_numbers. Report warning rather than
errors when linking objects with differnet priv spec versions. We do
know v1.9.1 may have conflicts to other versions, so report the
warning, too. After that, update the output priv spec version to the
newest one so far.
gas/
* config/tc-riscv.c (buf_size, buf): Remove the unused variables.
(riscv_set_default_priv_spec): Get the priv spec version from the
priv spec attributes by riscv_get_priv_spec_class_from_numbers.
include/
* opcode/riscv.h (riscv_get_priv_spec_class): Move the function
forward declarations to bfd/elfxx-riscv.h.
(riscv_get_priv_spec_name): Likewise.
opcodes/
* riscv-opc.c: Move the structures and functions to bfd/elfxx-riscv.c.
* riscv-dis.c: Include elfxx-riscv.h.
ld/
* testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-01.d: Updated.
* testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-02.d: Updated.
* testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-03.d: Updated.
* testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-04.d: Updated.
* testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-05.d: Updated.
* testsuite/ld-riscv-elf/attr-merge-priv-spec-failed-06.d: Updated.
2020-06-12 23:06:49 +08:00
|
|
|
|
2020-06-22 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-riscv.c (buf_size, buf): Remove the unused variables.
|
|
|
|
|
(riscv_set_default_priv_spec): Get the priv spec version from the
|
|
|
|
|
priv spec attributes by riscv_get_priv_spec_class_from_numbers.
|
|
|
|
|
|
2020-06-20 09:11:40 +08:00
|
|
|
|
2020-06-20 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* configure.tgt: Set bfd_gas for all SH targets.
|
|
|
|
|
|
2020-06-18 15:13:49 +08:00
|
|
|
|
2020-06-18 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/arch-13.s: Add alternative VMGEXIT case.
|
|
|
|
|
* testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
|
|
|
|
|
expectations.
|
|
|
|
|
|
2020-06-17 01:07:15 +08:00
|
|
|
|
2020-06-16 Lili Cui <lili.cui@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (cpu_arch): Correct noavx512_vp2intersect
|
|
|
|
|
cpu_arch to CPU_ANY_VP2INTERSECT_FLAGS.
|
|
|
|
|
* doc/c-i386.texi: Add avx512_vp2intersect.
|
|
|
|
|
|
2020-06-16 16:34:55 +08:00
|
|
|
|
2020-06-16 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (md_assemble): Drop SSE4a from SSE check
|
|
|
|
|
conditional.
|
|
|
|
|
* testsuite/gas/i386/sse-check.s: Adjust comment.
|
|
|
|
|
* testsuite/gas/i386/sse-check-error.l,
|
|
|
|
|
testsuite/gas/i386/sse-check-warn.e,
|
|
|
|
|
testsuite/gas/i386/x86-64-sse-check-error.l: Adjust
|
|
|
|
|
expectations.
|
|
|
|
|
|
2020-06-16 10:43:05 +08:00
|
|
|
|
2020-06-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-tic30.h: Remove OBJ_AOUT support.
|
|
|
|
|
* configure.tgt: Delete tic30-*-*aout* entry.
|
|
|
|
|
|
2020-05-10 23:03:08 +08:00
|
|
|
|
2020-06-15 Max Filippov <jcmvbkbc@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-xtensa.c (XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New
|
|
|
|
|
macros.
|
|
|
|
|
(elf32xtensa_abi): New declaration.
|
|
|
|
|
(option_abi_windowed, option_abi_call0): New enum constants.
|
|
|
|
|
(md_longopts): Add entries for --abi-windowed and --abi-call0.
|
|
|
|
|
(md_parse_option): Add handlers for --abi-windowed and
|
|
|
|
|
--abi-call0.
|
|
|
|
|
(xtensa_add_config_info): Use xtensa_abi_choice instead of
|
|
|
|
|
XSHAL_ABI to format ABI tag.
|
|
|
|
|
* doc/as.texi (Target Xtensa options): Add --abi-windowed and
|
|
|
|
|
--abi-call0 to the list of options.
|
|
|
|
|
* doc/c-xtensa.texi: Add description for options --abi-windowed
|
|
|
|
|
and --abi-call0.
|
|
|
|
|
* testsuite/gas/xtensa/abi-call0.d: New test definition.
|
|
|
|
|
* testsuite/gas/xtensa/abi-windowed.d: New test definition.
|
|
|
|
|
* testsuite/gas/xtensa/abi.s: New test source.
|
|
|
|
|
|
2020-06-14 20:18:35 +08:00
|
|
|
|
2020-06-14 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/26115
|
|
|
|
|
* testsuite/gas/i386/tsxldtrk.d: Replace xsuspldtrk with
|
|
|
|
|
xsusldtrk.
|
|
|
|
|
* testsuite/gas/i386/tsxldtrk.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-tsxldtrk.s: Likewise.
|
|
|
|
|
|
RISC-V: Drop the privileged spec v1.9 support.
There is a conflict between v1.9 and v1.9.1 - CSR MISA address. MISA is
0xf10 in v1.9, but change to 0x301 in v1.9.1. The change made MISA writable,
but may also cause risk of compatibility. Binutils already support the
-mpriv-spec options and ELF priv attributes, which can used to choose what
privileged spec you want, and then give a correponding CSR name and address
to use. But Gdb and other tools don't have the simialr mechanism for now.
However, there are two things can be confirmed,
1. If we don't have a way to control the priv specs, then the changes, like
MISA, will cause risk and hard to maintain.
2. We get the guarantee that the CSR address won't be reused in the future
specs, even if it is dropped.
I'm not sure if Gdb needs to care about the priv spec versions, it is still
discussing. But drop the priv spec v1.9, and make sure that we won't reuse
the CSR address is a useful solution for now. Also, we might drop the v1.9.1
in a year or two. After that, specs above v1.10 should be compatible anyway.
gas/
* testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Removed.
* testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
* testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
include/
* opcode/riscv-opc.h: Update the defined versions of CSR from
PRIV_SPEC_CLASS_1P9 to PRIV_SPEC_CLASS_1P9P1. Also, drop the
MISA DECLARE_CSR_ALIAS since it's aborted version is v1.9.
* opcode/riscv.h (enum riscv_priv_spec_class): Remove
PRIV_SPEC_CLASS_1P9.
opcodes/
* riscv-opc.c (priv_specs): Remove v1.9 and PRIV_SPEC_CLASS_1P9.
2020-06-10 14:07:54 +08:00
|
|
|
|
2020-06-12 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Removed.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-version-1p9.d: Likewise.
|
|
|
|
|
|
2020-06-09 18:13:39 +08:00
|
|
|
|
2020-06-09 Seth Girvan <snth@snthhacks.com>
|
|
|
|
|
|
|
|
|
|
* doc/c-avr.texi: Improve wording.
|
|
|
|
|
|
2020-06-09 17:28:15 +08:00
|
|
|
|
2020-06-09 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/x86-64-pseudos-bad.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-pseudos-bad.l: New.
|
|
|
|
|
|
2020-06-09 14:59:04 +08:00
|
|
|
|
2020-06-09 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/prefix.s: Add bogus prefix-with-VEX/EVEX
|
|
|
|
|
encoding tests.
|
|
|
|
|
* testsuite/gas/i386/prefix.d: Adjust expectations.
|
|
|
|
|
|
2020-06-09 14:56:39 +08:00
|
|
|
|
2020-06-09 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/prefix.s: Add bogus REP / EVEX.W prefix
|
|
|
|
|
with VEX/EVEX encoding tests.
|
|
|
|
|
* testsuite/gas/i386/prefix.d: Adjust expectations.
|
|
|
|
|
|
2020-06-09 14:47:31 +08:00
|
|
|
|
2020-06-09 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (process_suffix): Restrict defaulting to 'q'
|
|
|
|
|
suffix.
|
|
|
|
|
* testsuite/gas/i386/noreg64.s: Add lcall/ljmp cases.
|
|
|
|
|
* testsuite/gas/i386/noreg64.d: Adjust expectations.
|
|
|
|
|
* testsuite/gas/i386/noreg-intel64.d,
|
|
|
|
|
testsuite/gas/i386/noreg-intel64.l,
|
|
|
|
|
testsuite/gas/i386/noreg-intel64.s: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new tests.
|
|
|
|
|
|
2020-06-09 14:46:22 +08:00
|
|
|
|
2020-06-09 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (vex_encoding_error): New enumerator.
|
|
|
|
|
(VEX_check_operands): Rename to VEX_check_encoding. Check
|
|
|
|
|
for vex_encoding_error. Move Imm4 handling ...
|
|
|
|
|
(check_VecOperands): ... here.
|
|
|
|
|
(match_template): Call VEX_check_encoding when there are no
|
|
|
|
|
operands. Split construct calling check_VecOperands and
|
|
|
|
|
VEX_check_encoding (when there are operands).
|
|
|
|
|
(check_register): Don't blindly set vex_encoding_evex.
|
|
|
|
|
* testsuite/gas/i386/pseudos-bad.s,
|
|
|
|
|
testsuite/gas/i386/pseudos-bad.l: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new test.
|
|
|
|
|
* testsuite/gas/i386/xmmhi64.s: Drop {vex2}.
|
|
|
|
|
|
2020-06-08 22:16:29 +08:00
|
|
|
|
2020-06-08 Alex Coplan <alex.coplan@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (insns): Add dfb.
|
|
|
|
|
* testsuite/gas/arm/dfb.d: New test.
|
|
|
|
|
* testsuite/gas/arm/dfb.s: Input for test.
|
|
|
|
|
|
2020-06-08 17:25:57 +08:00
|
|
|
|
2020-06-08 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/cfi/cfi-i386-2.d: Skip for PE based targets.
|
|
|
|
|
|
2020-06-08 14:40:58 +08:00
|
|
|
|
2020-06-08 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (pi): Add checks for RegMask and RegBND.
|
|
|
|
|
|
2020-06-08 14:40:22 +08:00
|
|
|
|
2020-06-08 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (check_byte_reg): Drop dead conditional
|
|
|
|
|
around as_bad().
|
|
|
|
|
|
2020-06-08 14:39:57 +08:00
|
|
|
|
2020-06-08 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (check_register): Split RegTR handling, to
|
|
|
|
|
fail recognition also in 64-bit mode as well as with i586 or
|
|
|
|
|
i686 explicitly enabled.
|
|
|
|
|
* testsuite/gas/i386/x86_64.s: Add insns referencing tr<N>.
|
|
|
|
|
* testsuite/gas/i386/x86_64-intel.d,
|
|
|
|
|
testsuite/gas/i386/x86_64.d: Adjust expectations.
|
|
|
|
|
|
2020-06-08 14:39:23 +08:00
|
|
|
|
2020-06-08 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/cfi/cfi-i386-2.d: Adjust expectations.
|
|
|
|
|
* testsuite/gas/cfi/cfi.exp: Run this test.
|
|
|
|
|
|
2020-06-08 14:38:54 +08:00
|
|
|
|
2020-06-08 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (parse_real_register): Add allow_pseudo_reg
|
|
|
|
|
check to %st(N) parsing logic.
|
|
|
|
|
* testsuite/gas/cfi/cfi-i386.s: Set "generic32" arch.
|
|
|
|
|
|
2020-06-08 14:37:47 +08:00
|
|
|
|
2020-06-08 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (bad_reg): New.
|
|
|
|
|
(check_VecOperations, i386_att_operand, i386_parse_name): Check
|
|
|
|
|
for it.
|
|
|
|
|
(check_register): New, broken out from ...
|
|
|
|
|
(parse_real_register): ... here. Call it.
|
|
|
|
|
(parse_register): Call it, and error upon failure.
|
|
|
|
|
* testsuite/gas/i386/equ-bad.s, testsuite/gas/i386/equ-bad.l,
|
|
|
|
|
testsuite/gas/i386/x86-64-equ-bad.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-equ-bad.l: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new tests.
|
|
|
|
|
|
2020-06-06 12:52:37 +08:00
|
|
|
|
2020-06-06 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-ppc.c (md_show_usage): Mention -mpower10 and -mpwr10.
|
|
|
|
|
* doc/c-ppc.texi: Likewise.
|
|
|
|
|
|
Rename PowerPC64 pcrel GOT TLS relocations
These relocations should have had REL in their names, to reflect the
fact that they are pc-relative. Fix that now by adding _PCREL.
I've added some back-compatibility code to support anyone using
.reloc with the old relocations.
include/
* elf/ppc64.h (elf_ppc64_reloc_type): Rename
R_PPC64_GOT_TLSGD34 to R_PPC64_GOT_TLSGD_PCREL34,
R_PPC64_GOT_TLSLD34 to R_PPC64_GOT_TLSLD_PCREL34,
R_PPC64_GOT_TPREL34 to R_PPC64_GOT_TPREL_PCREL34, and
R_PPC64_GOT_DTPREL34 to R_PPC64_GOT_DTPREL_PCREL34.
bfd/
* reloc.c: Rename
BFD_RELOC_PPC64_GOT_TLSGD34 to BFD_RELOC_PPC64_GOT_TLSGD_PCREL34,
BFD_RELOC_PPC64_GOT_TLSLD34 to BFD_RELOC_PPC64_GOT_TLSLD_PCREL34,
BFD_RELOC_PPC64_GOT_TPREL34 to BFD_RELOC_PPC64_GOT_TPREL_PCREL34,
BFD_RELOC_PPC64_GOT_DTPREL34 to BFD_RELOC_PPC64_GOT_DTPREL_PCREL34.
* elf64-ppc.c: Update throughout for reloc renaming.
(ppc64_elf_reloc_name_lookup): Handle old reloc names.
* libbfd.h: Regenerate.
* bfd-in2.h: Regenerate.
gas/
* config/tc-ppc.c: Update throughout for reloc renaming.
elfcpp/
* powerpc.h: Rename
R_PPC64_GOT_TLSGD34 to R_PPC64_GOT_TLSGD_PCREL34,
R_PPC64_GOT_TLSLD34 to R_PPC64_GOT_TLSLD_PCREL34,
R_PPC64_GOT_TPREL34 to R_PPC64_GOT_TPREL_PCREL34, and
R_PPC64_GOT_DTPREL34 to R_PPC64_GOT_DTPREL_PCREL34.
gold/
* powerpc.cc: Update throughout for reloc renaming.
2020-06-06 10:26:20 +08:00
|
|
|
|
2020-06-06 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-ppc.c: Update throughout for reloc renaming.
|
|
|
|
|
|
2020-06-05 22:23:30 +08:00
|
|
|
|
2020-06-05 Jose E. Marchesi <jose.marchesi@oracle.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-bpf.c (md_apply_fix): Avoid GCC 10 warning
|
|
|
|
|
stringop-overflow.
|
|
|
|
|
|
2020-05-29 15:31:46 +08:00
|
|
|
|
2020-06-05 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-riscv.c (explicit_csr): New static boolean.
|
|
|
|
|
Used to indicate CSR are explictly used.
|
|
|
|
|
(riscv_ip): Set explicit_csr to TRUE if any CSR is used.
|
|
|
|
|
(riscv_write_out_attrs): If we already have set elf priv
|
|
|
|
|
attributes, then generate them. Otherwise, don't generate
|
|
|
|
|
them when no CSR are used.
|
|
|
|
|
* testsuite/gas/riscv/attribute-01.d: Remove the priv attributes.
|
|
|
|
|
* testsuite/gas/riscv/attribute-02.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-03.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-04.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-05.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-06.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-07.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-08.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-09.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-10.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-unknown.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-11.s: New testcase.
|
|
|
|
|
* testsuite/gas/riscv/attribute-11.d: New testcase. The CSR is
|
|
|
|
|
used, so we should output the ELF priv attributes.
|
|
|
|
|
* testsuite/gas/riscv/attribute-12.d: New testcase. The CSR is
|
|
|
|
|
used, so output the priv attributes according to the -mpriv-spec.
|
|
|
|
|
* testsuite/gas/riscv/attribute-13.d: New testcase. The CSR isn't
|
|
|
|
|
used, so ignore the -mpriv-spec setting.
|
|
|
|
|
|
2020-06-05 02:15:06 +08:00
|
|
|
|
2020-06-04 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-ip2k. (ip2k_apply_fix): Pass endianness to
|
|
|
|
|
cgen_get_insn_value.
|
|
|
|
|
* config/tc-xstormy16.c (xstormy16_md_apply_fix): Pass
|
|
|
|
|
endianness to cgen_get_insn_value and cgen_put_insn_value.
|
|
|
|
|
|
2020-06-04 22:33:34 +08:00
|
|
|
|
2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-bpf.c (md_apply_fix): Simplify and avoid using
|
|
|
|
|
cgen_put_insn_value.
|
|
|
|
|
|
2020-06-04 22:17:07 +08:00
|
|
|
|
2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-bpf.c (md_begin): Pass CGEN_CPU_OPEN_INSN_ENDIAN to
|
|
|
|
|
bpf_cgen_cpu_open.
|
|
|
|
|
(md_assemble): Remove no longer needed hack.
|
|
|
|
|
|
opcodes: discriminate endianness and insn-endianness in CGEN ports
The CGEN support code in opcodes accesses instruction contents using a
couple of functions defined in cgen-opc.c: cgen_get_insn_value and
cgen_put_insn_value. These functions use the "instruction endianness"
in the CPU description to order the read/written bytes.
The process of writing an instruction to the object file is:
a) cgen_put_insn_value ;; Writes out the opcodes.
b) ARCH_cgen_insert_operand
insert_normal
insert_1
cgen_put_insn_value ;; Writes out the bytes of the
;; operand.
Likewise, the process of reading an instruction from the object file
is:
a) cgen_get_insn_value ;; Reads the opcodes.
b) ARCH_cgen_extract_operand
extract_normal
extract_1
cgen_get_insn_value ;; Reads in the bytes of the
;; operand.
As can be seen above, cgen_{get,put}_insn_value are used to both
process the instruction opcodes (the constant fields conforming the
base instruction) and also the values of the instruction operands,
such as immediates.
This is problematic for architectures in which the endianness of
instructions is different to the endianness of data. An example is
BPF, where instructions are always encoded big-endian but the data may
be either big or little.
This patch changes the cgen_{get,put}_insn_value functions in order to
get an extra argument with the endianness to use, and adapts the
existin callers to these functions in order to provide cd->endian or
cd->insn_endian, whatever appropriate. Callers like extract_1 and
insert_1 pass cd->endian (since they are reading/writing operand
values) while callers reading/writing the base instruction pass
cd->insn_endian instead.
A few little adjustments have been needed in some existing CGEN based
ports:
* The BPF assembler uses cgen_put_insn_value. It has been adapted to
pass the new endian argument.
* The mep port has code in mep.opc that uses cgen_{get,put}_insn_value.
It has been adapted to pass the new endianargument. Ditto for a
call in the assembler.
Tested with --enable-targets=all.
Regested in all supported targets.
No regressions.
include/ChangeLog:
2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
* opcode/cgen.h: Get an `endian' argument in both
cgen_get_insn_value and cgen_put_insn_value.
opcodes/ChangeLog:
2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
* cgen-opc.c (cgen_get_insn_value): Get an `endian' argument.
(cgen_put_insn_value): Likewise.
(cgen_lookup_insn): Pass endianness to cgen_{get,put}_insn_value.
* cgen-dis.in (print_insn): Likewise.
* cgen-ibld.in (insert_1): Likewise.
(insert_1): Likewise.
(insert_insn_normal): Likewise.
(extract_1): Likewise.
* bpf-dis.c: Regenerate.
* bpf-ibld.c: Likewise.
* bpf-ibld.c: Likewise.
* cgen-dis.in: Likewise.
* cgen-ibld.in: Likewise.
* cgen-opc.c: Likewise.
* epiphany-dis.c: Likewise.
* epiphany-ibld.c: Likewise.
* fr30-dis.c: Likewise.
* fr30-ibld.c: Likewise.
* frv-dis.c: Likewise.
* frv-ibld.c: Likewise.
* ip2k-dis.c: Likewise.
* ip2k-ibld.c: Likewise.
* iq2000-dis.c: Likewise.
* iq2000-ibld.c: Likewise.
* lm32-dis.c: Likewise.
* lm32-ibld.c: Likewise.
* m32c-dis.c: Likewise.
* m32c-ibld.c: Likewise.
* m32r-dis.c: Likewise.
* m32r-ibld.c: Likewise.
* mep-dis.c: Likewise.
* mep-ibld.c: Likewise.
* mt-dis.c: Likewise.
* mt-ibld.c: Likewise.
* or1k-dis.c: Likewise.
* or1k-ibld.c: Likewise.
* xc16x-dis.c: Likewise.
* xc16x-ibld.c: Likewise.
* xstormy16-dis.c: Likewise.
* xstormy16-ibld.c: Likewise.
gas/ChangeLog:
2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
* cgen.c (gas_cgen_finish_insn): Pass the endianness to
cgen_put_insn_value.
(gas_cgen_md_apply_fix): Likewise.
(gas_cgen_md_apply_fix): Likewise.
* config/tc-bpf.c (md_apply_fix): Pass data endianness to
cgen_put_insn_value.
* config/tc-mep.c (mep_check_ivc2_scheduling): Pass endianness to
cgen_put_insn_value.
cpu/ChangeLog:
2020-06-02 Jose E. Marchesi <jose.marchesi@oracle.com>
* mep.opc (print_slot_insn): Pass the insn endianness to
cgen_get_insn_value.
2020-06-04 22:15:53 +08:00
|
|
|
|
2020-06-04 Jose E. Marchesi <jose.marchesi@oracle.com>
|
|
|
|
|
|
|
|
|
|
* cgen.c (gas_cgen_finish_insn): Pass the endianness to
|
|
|
|
|
cgen_put_insn_value.
|
|
|
|
|
(gas_cgen_md_apply_fix): Likewise.
|
|
|
|
|
(gas_cgen_md_apply_fix): Likewise.
|
|
|
|
|
* config/tc-bpf.c (md_apply_fix): Pass data endianness to
|
|
|
|
|
cgen_put_insn_value.
|
|
|
|
|
* config/tc-mep.c (mep_check_ivc2_scheduling): Pass endianness to
|
|
|
|
|
cgen_put_insn_value.
|
|
|
|
|
|
2020-06-04 14:30:46 +08:00
|
|
|
|
2020-06-04 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/config/default.exp: Remove global directive outside
|
|
|
|
|
proc body.
|
|
|
|
|
* testsuite/gas/mep/complex-relocs.exp: Likewise.
|
|
|
|
|
* testsuite/gas/microblaze/relax_size.exp: Likewise.
|
|
|
|
|
* testsuite/gas/microblaze/reloc_sym.exp: Likewise.
|
|
|
|
|
* testsuite/gas/mt/relocs.exp: Likewise.
|
|
|
|
|
* testsuite/gas/rx/rx.exp: Likewise.
|
|
|
|
|
|
2020-06-04 04:42:54 +08:00
|
|
|
|
2020-06-03 Stephen Casner <casner@acm.org>
|
|
|
|
|
|
|
|
|
|
* doc/c-riscv.texi (RISC-V-Options): Fix non-ASCII apostrophe.
|
|
|
|
|
|
2020-06-03 09:36:14 +08:00
|
|
|
|
2020-06-02 Frédéric Pétrot <frederic.petrot@univ-grenoble-alpes.fr>
|
|
|
|
|
Jim Wilson <jimw@sifive.com>
|
|
|
|
|
|
|
|
|
|
PR 26051
|
|
|
|
|
* doc/c-riscv.texi (RISC-V-Formats): Add missing I format using
|
|
|
|
|
simm12(rs1). Correct S format to use simm12(rs1). Drop SB and B
|
|
|
|
|
formats using simm12(rs1). Correct SB and B to use rs1 and rs2.
|
|
|
|
|
Move B before SB. Move J before UJ.
|
|
|
|
|
|
2020-05-29 23:04:50 +08:00
|
|
|
|
2020-06-01 Alex Coplan <alex.coplan@arm.com>
|
|
|
|
|
|
|
|
|
|
* write.c (relax_segment): Fix handling of negative offset when
|
|
|
|
|
relaxing an rs_org frag.
|
|
|
|
|
* testsuite/gas/aarch64/org-neg.d: New test.
|
|
|
|
|
* testsuite/gas/aarch64/org-neg.l: Error output for test.
|
|
|
|
|
* testsuite/gas/aarch64/org-neg.s: Input for test.
|
|
|
|
|
* testsuite/gas/arm/org-neg.d: New test.
|
|
|
|
|
* testsuite/gas/arm/org-neg.l: Error output for test.
|
|
|
|
|
* testsuite/gas/arm/org-neg.s: Input for test.
|
|
|
|
|
|
2020-05-29 01:11:59 +08:00
|
|
|
|
2020-05-28 Stephen Casner <casner@acm.org>
|
|
|
|
|
|
|
|
|
|
Fix unexpected failures in gas testsuite for pdp11-aout target.
|
|
|
|
|
These are caused by the PDP11's mix of little-endian octets in
|
|
|
|
|
shorts but shorts in big endian order for long or quad.
|
|
|
|
|
|
|
|
|
|
* config/tc-pdp11.c (md_number_to_chars): Implement .quad
|
|
|
|
|
* testsuite/gas/all/gas.exp: Select alternate test scripts for
|
|
|
|
|
pdp11, skip octa test completely.
|
|
|
|
|
* testsuite/gas/all/eqv-dot-pdp11.s: Identical to eqv-dot.s
|
|
|
|
|
* testsuite/gas/all/eqv-dot-pdp11.d: Match different octet order.
|
|
|
|
|
* testsuite/gas/all/cond-pdp11.l: Match different octet order.
|
|
|
|
|
|
2020-05-28 21:30:34 +08:00
|
|
|
|
2020-05-28 Alex Coplan <alex.coplan@arm.com>
|
|
|
|
|
|
|
|
|
|
* frags.c (frag_grow): Fix comment.
|
|
|
|
|
|
2020-05-28 09:40:38 +08:00
|
|
|
|
2020-05-27 Stephen Casner <casner@acm.org>
|
|
|
|
|
|
|
|
|
|
PR gas/26001
|
|
|
|
|
* config/tc-pdp11.c (parse_reg): Distinguish register names from
|
|
|
|
|
symbols that begin with a register name.
|
|
|
|
|
* testsuite/gas/pdp11/pdp11.exp: Add test of such symbols.
|
|
|
|
|
* testsuite/gas/pdp11/pr26001.s: Likewise.
|
|
|
|
|
* testsuite/gas/pdp11/pr26001.d: Likewise.
|
|
|
|
|
|
2020-05-28 00:34:58 +08:00
|
|
|
|
2020-05-27 Simon Cook <simon.cook@embecosm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-riscv.c (riscv_init_csr_hash): NULL initilize next
|
|
|
|
|
pointer when creating struct riscv_csr_extra.
|
|
|
|
|
|
2020-05-27 05:17:09 +08:00
|
|
|
|
2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/align-branch-9.d: Updated for PECOFF.
|
|
|
|
|
* testsuite/gas/i386/inval-avx512f.s: Add .p2align for PECOFF.
|
|
|
|
|
* testsuite/gas/i386/inval-avx512f.l: Updated.
|
|
|
|
|
|
2020-05-27 00:34:39 +08:00
|
|
|
|
2020-05-26 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/s390/zarch-z13.d: Add regexp checks for vector
|
|
|
|
|
load/store instruction variants with alignment hints.
|
|
|
|
|
* testsuite/gas/s390/zarch-z13.s: Emit new vector load/store
|
|
|
|
|
instruction variants with alignment hints.
|
|
|
|
|
|
2020-05-27 00:33:48 +08:00
|
|
|
|
2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/26044
|
|
|
|
|
* config/tc-xgate.c (md_apply_fix): Check BFD_RELOC_XGATE_PCREL_X
|
|
|
|
|
instead of R_XGATE_PCREL_X.
|
|
|
|
|
(xgate_parse_operand): Replace R_XGATE_PCREL_X with
|
|
|
|
|
BFD_RELOC_XGATE_PCREL_X.
|
|
|
|
|
|
2020-05-26 22:54:05 +08:00
|
|
|
|
2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/26044
|
|
|
|
|
* config/tc-visium.c (md_convert_frag): Replace fragP->fr_literal
|
|
|
|
|
with &fragP->fr_literal[0].
|
|
|
|
|
|
2020-05-26 22:41:07 +08:00
|
|
|
|
2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/26044
|
|
|
|
|
* config/tc-vax.c (md_estimate_size_before_relax): Replace
|
|
|
|
|
fragP->fr_literal with &fragP->fr_literal[0].
|
|
|
|
|
(md_convert_frag): Likewise.
|
|
|
|
|
|
2020-05-26 21:56:18 +08:00
|
|
|
|
2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/26044
|
|
|
|
|
* config/tc-v850.c (md_convert_frag): Replace fragP->fr_literal
|
|
|
|
|
with &fragP->fr_literal[0].
|
|
|
|
|
|
2020-05-26 21:46:26 +08:00
|
|
|
|
2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/26044
|
|
|
|
|
* config/tc-crx.c (getreg_image): Change argument type to int.
|
|
|
|
|
(md_convert_frag): Replace fragP->fr_literal with
|
|
|
|
|
&fragP->fr_literal[0].
|
|
|
|
|
|
2020-05-26 21:09:54 +08:00
|
|
|
|
2020-05-26 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/26044
|
|
|
|
|
* onfig/tc-score.c (s3_do_macro_bcmp): Replace overlapping
|
|
|
|
|
sprintf with memmove.
|
|
|
|
|
|
2020-05-26 10:37:54 +08:00
|
|
|
|
2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-mcore.c (md_convert_frag): Replace fragP->fr_literal
|
|
|
|
|
with &fragP->fr_literal[0].
|
|
|
|
|
|
2020-05-26 10:29:22 +08:00
|
|
|
|
2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/26041
|
|
|
|
|
* config/tc-cr16.c (md_assemble): Use memmove to concatenate
|
|
|
|
|
2 overlapping strings.
|
|
|
|
|
|
2020-05-26 07:17:50 +08:00
|
|
|
|
2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-cr16.c (md_convert_frag): Replace fragP->fr_literal
|
|
|
|
|
with &fragP->fr_literal[0].
|
|
|
|
|
|
2020-05-25 19:50:56 +08:00
|
|
|
|
2020-05-25 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-csky.c (md_convert_frag): Replace fragp->fr_literal
|
|
|
|
|
with &fragp->fr_literal[0].
|
|
|
|
|
* config/tc-microblaze.c (md_apply_fix): Likewise.
|
|
|
|
|
* config/tc-sh.c (md_convert_frag): Likewise.
|
|
|
|
|
|
2020-05-25 07:42:21 +08:00
|
|
|
|
2020-05-24 Jim Wilson <jimw@sifive.com>
|
|
|
|
|
|
|
|
|
|
PR 26025
|
|
|
|
|
* config/tc-riscv.c (riscv_pre_output_hook): Change s type from const
|
|
|
|
|
asection to segT. New locals seg and subseg. Call subseg_set before
|
|
|
|
|
fix_new_exp. Call subseg_set after loop to restore original values.
|
|
|
|
|
|
2020-05-20 21:19:01 +08:00
|
|
|
|
2020-05-21 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* atof-generic.c: Replace "if (x) free (x)" with "free (x)"
|
|
|
|
|
throughout.
|
|
|
|
|
* config/obj-elf.c: Likewise.
|
|
|
|
|
* config/tc-aarch64.c: Likewise.
|
|
|
|
|
* config/tc-arm.c: Likewise.
|
|
|
|
|
* config/tc-m68k.c: Likewise.
|
|
|
|
|
* config/tc-nios2.c: Likewise.
|
|
|
|
|
* config/tc-tic30.c: Likewise.
|
|
|
|
|
* ecoff.c: Likewise.
|
|
|
|
|
* read.c: Likewise.
|
|
|
|
|
* stabs.c: Likewise.
|
|
|
|
|
* symbols.c: Likewise.
|
|
|
|
|
* testsuite/gas/all/test-gen.c: Likewise.
|
|
|
|
|
|
[PATCH v2 0/9] RISC-V: Support version controling for ISA standard extensions and CSR
1. Remove the -mriscv-isa-version and --with-riscv-isa-version options.
We can still use -march to choose the version for each extensions, so there is
no need to add these.
2. Change the arguments of options from [1p9|1p9p1|...] to [1.9|1.9.1|...].
Unlike the architecture string has specified by spec, ther is no need to do
the same thing for options.
3. Spilt the patches to reduce the burdens of review.
[PATCH 3/7] RISC-V: Support new GAS options and configure options to set ISA versions
to
[PATCH v2 3/9] RISC-V: Support GAS option -misa-spec to set ISA versions
[PATCH v2 4/9] RISC-V: Support configure options to set ISA versions by default.
[PATCH 4/7] RISC-V: Support version checking for CSR according to privilege version.
to
[PATCH v2 5/9] RISC-V: Support version checking for CSR according to privilege spec version.
[PATCH v2 6/9] RISC-V: Support configure option to choose the privilege spec version.
4. Use enum class rather than string to compare the choosen ISA spec in opcodes/riscv-opc.c.
The behavior is same as comparing the choosen privilege spec.
include * opcode/riscv.h: Include "bfd.h" to support bfd_boolean.
(enum riscv_isa_spec_class): New enum class. All supported ISA spec
belong to one of the class
(struct riscv_ext_version): New structure holds version information
for the specific ISA.
* opcode/riscv-opc.h (DECLARE_CSR): There are two version information,
define_version and abort_version. The define_version means which
privilege spec is started to define the CSR, and the abort_version
means which privilege spec is started to abort the CSR. If the CSR is
valid for the newest spec, then the abort_version should be
PRIV_SPEC_CLASS_DRAFT.
(DECLARE_CSR_ALIAS): Same as DECLARE_CSR, but only for the obselete CSR.
* opcode/riscv.h (enum riscv_priv_spec_class): New enum class. Define
the current supported privilege spec versions.
(struct riscv_csr_extra): Add new fields to store more information
about the CSR. We use these information to find the suitable CSR
address when user choosing a specific privilege spec.
binutils * dwarf.c: Updated since DECLARE_CSR is changed.
opcodes * riscv-opc.c (riscv_ext_version_table): The table used to store
all information about the supported spec and the corresponding ISA
versions. Currently, only Zicsr is supported to verify the
correctness of Z sub extension settings. Others will be supported
in the future patches.
(struct isa_spec_t, isa_specs): List for all supported ISA spec
classes and the corresponding strings.
(riscv_get_isa_spec_class): New function. Get the corresponding ISA
spec class by giving a ISA spec string.
* riscv-opc.c (struct priv_spec_t): New structure.
(struct priv_spec_t priv_specs): List for all supported privilege spec
classes and the corresponding strings.
(riscv_get_priv_spec_class): New function. Get the corresponding
privilege spec class by giving a spec string.
(riscv_get_priv_spec_name): New function. Get the corresponding
privilege spec string by giving a CSR version class.
* riscv-dis.c: Updated since DECLARE_CSR is changed.
* riscv-dis.c: Add new disassembler option -Mpriv-spec to dump the CSR
according to the chosen version. Build a hash table riscv_csr_hash to
store the valid CSR for the chosen pirv verison. Dump the direct
CSR address rather than it's name if it is invalid.
(parse_riscv_dis_option_without_args): New function. Parse the options
without arguments.
(parse_riscv_dis_option): Call parse_riscv_dis_option_without_args to
parse the options without arguments first, and then handle the options
with arguments. Add the new option -Mpriv-spec, which has argument.
* riscv-dis.c (print_riscv_disassembler_options): Add description
about the new OBJDUMP option.
ld * testsuite/ld-riscv-elf/attr-merge-arch-01.d: Updated
priv attributes according to the -mpriv-spec option.
* testsuite/ld-riscv-elf/attr-merge-arch-02.d: Likewise.
* testsuite/ld-riscv-elf/attr-merge-arch-03.d: Likewise.
* testsuite/ld-riscv-elf/attr-merge-priv-spec-a.s: Likewise.
* testsuite/ld-riscv-elf/attr-merge-priv-spec-b.s: Likewise.
* testsuite/ld-riscv-elf/attr-merge-priv-spec.d: Likewise.
* testsuite/ld-riscv-elf/attr-merge-stack-align.d: Likewise.
* testsuite/ld-riscv-elf/attr-merge-strict-align-01.d: Likewise.
* testsuite/ld-riscv-elf/attr-merge-strict-align-02.d: Likewise.
* testsuite/ld-riscv-elf/attr-merge-strict-align-03.d: Likewise.
* testsuite/ld-riscv-elf/attr-merge-strict-align-04.d: Likewise.
* testsuite/ld-riscv-elf/attr-merge-strict-align-05.d: Likewise.
bfd * elfxx-riscv.h (riscv_parse_subset_t): Add new callback function
get_default_version. It is used to find the default version for
the specific extension.
* elfxx-riscv.c (riscv_parsing_subset_version): Remove the parameters
default_major_version and default_minor_version. Add new bfd_boolean
parameter *use_default_version. Set it to TRUE if we need to call
the callback rps->get_default_version to find the default version.
(riscv_parse_std_ext): Call rps->get_default_version if we fail to find
the default version in riscv_parsing_subset_version, and then call
riscv_add_subset to add the subset into subset list.
(riscv_parse_prefixed_ext): Likewise.
(riscv_std_z_ext_strtab): Support Zicsr extensions.
* elfnn-riscv.c (riscv_merge_std_ext): Use strcasecmp to compare the
strings rather than characters.
riscv_merge_arch_attr_info): The callback function get_default_version
is only needed for assembler, so set it to NULL int the linker.
* elfxx-riscv.c (riscv_estimate_digit): Remove the static.
* elfxx-riscv.h: Updated.
gas * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Updated.
* config/tc-riscv.c (default_arch_with_ext, default_isa_spec):
Static variables which are used to set the ISA extensions. You can
use -march (or ELF build attributes) and -misa-spec to set them,
respectively.
(ext_version_hash): The hash table used to handle the extensions
with versions.
(init_ext_version_hash): Initialize the ext_version_hash according
to riscv_ext_version_table.
(riscv_get_default_ext_version): The callback function of
riscv_parse_subset_t. According to the choosed ISA spec,
get the default version for the specific extension.
(riscv_set_arch): Set the callback function.
(enum options, struct option md_longopts): Add new option -misa-spec.
(md_parse_option): Do not call riscv_set_arch for -march. We will
call it later in riscv_after_parse_args. Call riscv_get_isa_spec_class
to set default_isa_spec class.
(riscv_after_parse_args): Call init_ext_version_hash to initialize the
ext_version_hash, and then call riscv_set_arch to set the architecture
with versions according to default_arch_with_ext.
* testsuite/gas/riscv/attribute-02.d: Set 0p0 as default version for
x extensions.
* testsuite/gas/riscv/attribute-03.d: Likewise.
* testsuite/gas/riscv/attribute-09.d: New testcase. For i-ext, we
already set it's version to 2p1 by march, so no need to use the default
2p2 version. For m-ext, we do not set the version by -march and ELF arch
attribute, so set the default 2p0 to it. For zicsr, it is not defined in
ISA spec 2p2, so set 0p0 to it.
* testsuite/gas/riscv/attribute-10.d: New testcase. The version of
zicsr is 2p0 according to ISA spec 20191213.
* config/tc-riscv.c (DEFAULT_RISCV_ARCH_WITH_EXT)
(DEFAULT_RISCV_ISA_SPEC): Default configure option settings.
You can set them by configure options --with-arch and
--with-isa-spec, respectively.
(riscv_set_default_isa_spec): New function used to set the
default ISA spec.
(md_parse_option): Call riscv_set_default_isa_spec rather than
call riscv_get_isa_spec_class directly.
(riscv_after_parse_args): If the -isa-spec is not set, then we
set the default ISA spec according to DEFAULT_RISCV_ISA_SPEC by
calling riscv_set_default_isa_spec.
* testsuite/gas/riscv/attribute-01.d: Add -misa-spec=2.2, since
the --with-isa-spec may be set to different ISA spec.
* testsuite/gas/riscv/attribute-02.d: Likewise.
* testsuite/gas/riscv/attribute-03.d: Likewise.
* testsuite/gas/riscv/attribute-04.d: Likewise.
* testsuite/gas/riscv/attribute-05.d: Likewise.
* testsuite/gas/riscv/attribute-06.d: Likewise.
* testsuite/gas/riscv/attribute-07.d: Likewise.
* configure.ac: Add configure options, --with-arch and
--with-isa-spec.
* configure: Regenerated.
* config.in: Regenerated.
* config/tc-riscv.c (default_priv_spec): Static variable which is
used to check if the CSR is valid for the chosen privilege spec. You
can use -mpriv-spec to set it.
(enum reg_class): We now get the CSR address from csr_extra_hash rather
than reg_names_hash. Therefore, move RCLASS_CSR behind RCLASS_MAX.
(riscv_init_csr_hashes): Only need to initialize one hash table
csr_extra_hash.
(riscv_csr_class_check): Change the return type to void. Don't check
the ISA dependency if -mcsr-check isn't set.
(riscv_csr_version_check): New function. Check and find the CSR address
from csr_extra_hash, according to default_priv_spec. Report warning
for the invalid CSR if -mcsr-check is set.
(reg_csr_lookup_internal): Updated.
(reg_lookup_internal): Likewise.
(md_begin): Updated since DECLARE_CSR and DECLARE_CSR_ALIAS are changed.
(enum options, struct option md_longopts): Add new GAS option -mpriv-spec.
(md_parse_option): Call riscv_set_default_priv_version to set
default_priv_spec.
(riscv_after_parse_args): If -mpriv-spec isn't set, then set the default
privilege spec to the newest one.
(enum riscv_csr_class, struct riscv_csr_extra): Move them to
include/opcode/riscv.h.
* testsuite/gas/riscv/priv-reg-fail-fext.d: This test case just want
to check the ISA dependency for CSR, so fix the spec version by adding
-mpriv-spec=1.11.
* testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. There are some
version warnings for the test case.
* gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
* gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
* gas/testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
* gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
* gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
* gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.d: New test case.
Check whether the CSR is valid when privilege version 1.9 is choosed.
* gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
* gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: New test case.
Check whether the CSR is valid when privilege version 1.9.1 is choosed.
* gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
* gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d: New test case.
Check whether the CSR is valid when privilege version 1.10 is choosed.
* gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
* gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d: New test case.
Check whether the CSR is valid when privilege version 1.11 is choosed.
* gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
* config/tc-riscv.c (DEFAULT_RISCV_ISA_SPEC): Default configure option
setting. You can set it by configure option --with-priv-spec.
(riscv_set_default_priv_spec): New function used to set the default
privilege spec.
(md_parse_option): Call riscv_set_default_priv_spec rather than
call riscv_get_priv_spec_class directly.
(riscv_after_parse_args): If -mpriv-spec isn't set, then we set the
default privilege spec according to DEFAULT_RISCV_PRIV_SPEC by
calling riscv_set_default_priv_spec.
* testsuite/gas/riscv/csr-dw-regnums.d: Add -mpriv-spec=1.11, since
the --with-priv-spec may be set to different privilege spec.
* testsuite/gas/riscv/priv-reg.d: Likewise.
* configure.ac: Add configure option --with-priv-spec.
* configure: Regenerated.
* config.in: Regenerated.
* config/tc-riscv.c (explicit_attr): Rename explicit_arch_attr to
explicit_attr. Set it to TRUE if any ELF attribute is found.
(riscv_set_default_priv_spec): Try to set the default_priv_spec if
the priv attributes are set.
(md_assemble): Set the default_priv_spec according to the priv
attributes when we start to assemble instruction.
(riscv_write_out_attrs): Rename riscv_write_out_arch_attr to
riscv_write_out_attrs. Update the arch and priv attributes. If we
don't set the corresponding ELF attributes, then try to output the
default ones.
(riscv_set_public_attributes): If any ELF attribute or -march-attr
options is set (explicit_attr is TRUE), then call riscv_write_out_attrs
to update the arch and priv attributes.
(s_riscv_attribute): Make sure all arch and priv attributes are set
before any instruction.
* testsuite/gas/riscv/attribute-01.d: Update the priv attributes if any
ELF attribute or -march-attr is set. If the priv attributes are not
set, then try to update them by the default setting (-mpriv-spec or
--with-priv-spec).
* testsuite/gas/riscv/attribute-02.d: Likewise.
* testsuite/gas/riscv/attribute-03.d: Likewise.
* testsuite/gas/riscv/attribute-04.d: Likewise.
* testsuite/gas/riscv/attribute-06.d: Likewise.
* testsuite/gas/riscv/attribute-07.d: Likewise.
* testsuite/gas/riscv/attribute-08.d: Likewise.
* testsuite/gas/riscv/attribute-09.d: Likewise.
* testsuite/gas/riscv/attribute-10.d: Likewise.
* testsuite/gas/riscv/attribute-unknown.d: Likewise.
* testsuite/gas/riscv/attribute-05.d: Likewise. Also, the priv spec
set by priv attributes must be supported.
* testsuite/gas/riscv/attribute-05.s: Likewise.
* testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Likewise. Updated
priv attributes according to the -mpriv-spec option.
* testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise.
* testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise.
* testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise.
* testsuite/gas/riscv/priv-reg.d: Removed.
* testsuite/gas/riscv/priv-reg-version-1p9.d: New test case. Dump the
CSR according to the priv spec 1.9.
* testsuite/gas/riscv/priv-reg-version-1p9p1.d: New test case. Dump the
CSR according to the priv spec 1.9.1.
* testsuite/gas/riscv/priv-reg-version-1p10.d: New test case. Dump the
CSR according to the priv spec 1.10.
* testsuite/gas/riscv/priv-reg-version-1p11.d: New test case. Dump the
CSR according to the priv spec 1.11.
* config/tc-riscv.c (md_show_usage): Add descriptions about
the new GAS options.
* doc/c-riscv.texi: Likewise.
2020-05-21 00:22:48 +08:00
|
|
|
|
2020-05-20 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Updated.
|
|
|
|
|
* config/tc-riscv.c (default_arch_with_ext, default_isa_spec):
|
|
|
|
|
Static variables which are used to set the ISA extensions. You can
|
|
|
|
|
use -march (or ELF build attributes) and -misa-spec to set them,
|
|
|
|
|
respectively.
|
|
|
|
|
(ext_version_hash): The hash table used to handle the extensions
|
|
|
|
|
with versions.
|
|
|
|
|
(init_ext_version_hash): Initialize the ext_version_hash according
|
|
|
|
|
to riscv_ext_version_table.
|
|
|
|
|
(riscv_get_default_ext_version): The callback function of
|
|
|
|
|
riscv_parse_subset_t. According to the choosed ISA spec,
|
|
|
|
|
get the default version for the specific extension.
|
|
|
|
|
(riscv_set_arch): Set the callback function.
|
|
|
|
|
(enum options, struct option md_longopts): Add new option -misa-spec.
|
|
|
|
|
(md_parse_option): Do not call riscv_set_arch for -march. We will
|
|
|
|
|
call it later in riscv_after_parse_args. Call riscv_get_isa_spec_class
|
|
|
|
|
to set default_isa_spec class.
|
|
|
|
|
(riscv_after_parse_args): Call init_ext_version_hash to initialize the
|
|
|
|
|
ext_version_hash, and then call riscv_set_arch to set the architecture
|
|
|
|
|
with versions according to default_arch_with_ext.
|
|
|
|
|
* testsuite/gas/riscv/attribute-02.d: Set 0p0 as default version for
|
|
|
|
|
x extensions.
|
|
|
|
|
* testsuite/gas/riscv/attribute-03.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-09.d: New testcase. For i-ext, we
|
|
|
|
|
already set it's version to 2p1 by march, so no need to use the default
|
|
|
|
|
2p2 version. For m-ext, we do not set the version by -march and ELF arch
|
|
|
|
|
attribute, so set the default 2p0 to it. For zicsr, it is not defined in
|
|
|
|
|
ISA spec 2p2, so set 0p0 to it.
|
|
|
|
|
* testsuite/gas/riscv/attribute-10.d: New testcase. The version of
|
|
|
|
|
zicsr is 2p0 according to ISA spec 20191213.
|
|
|
|
|
* config/tc-riscv.c (DEFAULT_RISCV_ARCH_WITH_EXT)
|
|
|
|
|
(DEFAULT_RISCV_ISA_SPEC): Default configure option settings.
|
|
|
|
|
You can set them by configure options --with-arch and
|
|
|
|
|
--with-isa-spec, respectively.
|
|
|
|
|
(riscv_set_default_isa_spec): New function used to set the
|
|
|
|
|
default ISA spec.
|
|
|
|
|
(md_parse_option): Call riscv_set_default_isa_spec rather than
|
|
|
|
|
call riscv_get_isa_spec_class directly.
|
|
|
|
|
(riscv_after_parse_args): If the -isa-spec is not set, then we
|
|
|
|
|
set the default ISA spec according to DEFAULT_RISCV_ISA_SPEC by
|
|
|
|
|
calling riscv_set_default_isa_spec.
|
|
|
|
|
* testsuite/gas/riscv/attribute-01.d: Add -misa-spec=2.2, since
|
|
|
|
|
the --with-isa-spec may be set to different ISA spec.
|
|
|
|
|
* testsuite/gas/riscv/attribute-02.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-03.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-04.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-05.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-06.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-07.d: Likewise.
|
|
|
|
|
* configure.ac: Add configure options, --with-arch and
|
|
|
|
|
--with-isa-spec.
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
* config.in: Regenerated.
|
|
|
|
|
* config/tc-riscv.c (default_priv_spec): Static variable which is
|
|
|
|
|
used to check if the CSR is valid for the chosen privilege spec. You
|
|
|
|
|
can use -mpriv-spec to set it.
|
|
|
|
|
(enum reg_class): We now get the CSR address from csr_extra_hash rather
|
|
|
|
|
than reg_names_hash. Therefore, move RCLASS_CSR behind RCLASS_MAX.
|
|
|
|
|
(riscv_init_csr_hashes): Only need to initialize one hash table
|
|
|
|
|
csr_extra_hash.
|
|
|
|
|
(riscv_csr_class_check): Change the return type to void. Don't check
|
|
|
|
|
the ISA dependency if -mcsr-check isn't set.
|
|
|
|
|
(riscv_csr_version_check): New function. Check and find the CSR address
|
|
|
|
|
from csr_extra_hash, according to default_priv_spec. Report warning
|
|
|
|
|
for the invalid CSR if -mcsr-check is set.
|
|
|
|
|
(reg_csr_lookup_internal): Updated.
|
|
|
|
|
(reg_lookup_internal): Likewise.
|
|
|
|
|
(md_begin): Updated since DECLARE_CSR and DECLARE_CSR_ALIAS are changed.
|
|
|
|
|
(enum options, struct option md_longopts): Add new GAS option -mpriv-spec.
|
|
|
|
|
(md_parse_option): Call riscv_set_default_priv_version to set
|
|
|
|
|
default_priv_spec.
|
|
|
|
|
(riscv_after_parse_args): If -mpriv-spec isn't set, then set the default
|
|
|
|
|
privilege spec to the newest one.
|
|
|
|
|
(enum riscv_csr_class, struct riscv_csr_extra): Move them to
|
|
|
|
|
include/opcode/riscv.h.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-fext.d: This test case just want
|
|
|
|
|
to check the ISA dependency for CSR, so fix the spec version by adding
|
|
|
|
|
-mpriv-spec=1.11.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise. There are some
|
|
|
|
|
version warnings for the test case.
|
|
|
|
|
* gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
|
|
|
|
|
* gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
|
|
|
|
|
* gas/testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
|
|
|
|
|
* gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
|
|
|
|
|
* gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
|
|
|
|
|
* gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.d: New test case.
|
|
|
|
|
Check whether the CSR is valid when privilege version 1.9 is choosed.
|
|
|
|
|
* gas/testsuite/gas/riscv/priv-reg-fail-version-1p9.l: Likewise.
|
|
|
|
|
* gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: New test case.
|
|
|
|
|
Check whether the CSR is valid when privilege version 1.9.1 is choosed.
|
|
|
|
|
* gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.l: Likewise.
|
|
|
|
|
* gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d: New test case.
|
|
|
|
|
Check whether the CSR is valid when privilege version 1.10 is choosed.
|
|
|
|
|
* gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.l: Likewise.
|
|
|
|
|
* gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d: New test case.
|
|
|
|
|
Check whether the CSR is valid when privilege version 1.11 is choosed.
|
|
|
|
|
* gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.l: Likewise.
|
|
|
|
|
* config/tc-riscv.c (DEFAULT_RISCV_ISA_SPEC): Default configure option
|
|
|
|
|
setting. You can set it by configure option --with-priv-spec.
|
|
|
|
|
(riscv_set_default_priv_spec): New function used to set the default
|
|
|
|
|
privilege spec.
|
|
|
|
|
(md_parse_option): Call riscv_set_default_priv_spec rather than
|
|
|
|
|
call riscv_get_priv_spec_class directly.
|
|
|
|
|
(riscv_after_parse_args): If -mpriv-spec isn't set, then we set the
|
|
|
|
|
default privilege spec according to DEFAULT_RISCV_PRIV_SPEC by
|
|
|
|
|
calling riscv_set_default_priv_spec.
|
|
|
|
|
* testsuite/gas/riscv/csr-dw-regnums.d: Add -mpriv-spec=1.11, since
|
|
|
|
|
the --with-priv-spec may be set to different privilege spec.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg.d: Likewise.
|
|
|
|
|
* configure.ac: Add configure option --with-priv-spec.
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
* config.in: Regenerated.
|
|
|
|
|
* config/tc-riscv.c (explicit_attr): Rename explicit_arch_attr to
|
|
|
|
|
explicit_attr. Set it to TRUE if any ELF attribute is found.
|
|
|
|
|
(riscv_set_default_priv_spec): Try to set the default_priv_spec if
|
|
|
|
|
the priv attributes are set.
|
|
|
|
|
(md_assemble): Set the default_priv_spec according to the priv
|
|
|
|
|
attributes when we start to assemble instruction.
|
|
|
|
|
(riscv_write_out_attrs): Rename riscv_write_out_arch_attr to
|
|
|
|
|
riscv_write_out_attrs. Update the arch and priv attributes. If we
|
|
|
|
|
don't set the corresponding ELF attributes, then try to output the
|
|
|
|
|
default ones.
|
|
|
|
|
(riscv_set_public_attributes): If any ELF attribute or -march-attr
|
|
|
|
|
options is set (explicit_attr is TRUE), then call riscv_write_out_attrs
|
|
|
|
|
to update the arch and priv attributes.
|
|
|
|
|
(s_riscv_attribute): Make sure all arch and priv attributes are set
|
|
|
|
|
before any instruction.
|
|
|
|
|
* testsuite/gas/riscv/attribute-01.d: Update the priv attributes if any
|
|
|
|
|
ELF attribute or -march-attr is set. If the priv attributes are not
|
|
|
|
|
set, then try to update them by the default setting (-mpriv-spec or
|
|
|
|
|
--with-priv-spec).
|
|
|
|
|
* testsuite/gas/riscv/attribute-02.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-03.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-04.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-06.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-07.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-08.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-09.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-10.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-unknown.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/attribute-05.d: Likewise. Also, the priv spec
|
|
|
|
|
set by priv attributes must be supported.
|
|
|
|
|
* testsuite/gas/riscv/attribute-05.s: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-version-1p9.d: Likewise. Updated
|
|
|
|
|
priv attributes according to the -mpriv-spec option.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg.d: Removed.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-version-1p9.d: New test case. Dump the
|
|
|
|
|
CSR according to the priv spec 1.9.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-version-1p9p1.d: New test case. Dump the
|
|
|
|
|
CSR according to the priv spec 1.9.1.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-version-1p10.d: New test case. Dump the
|
|
|
|
|
CSR according to the priv spec 1.10.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-version-1p11.d: New test case. Dump the
|
|
|
|
|
CSR according to the priv spec 1.11.
|
|
|
|
|
* config/tc-riscv.c (md_show_usage): Add descriptions about
|
|
|
|
|
the new GAS options.
|
|
|
|
|
* doc/c-riscv.texi: Likewise.
|
|
|
|
|
|
Power10 dcbf, sync, and wait extensions.
opcodes/
* ppc-opc.c (insert_ls, extract_ls): Handle 3-bit L fields and new
WC values on POWER10 sync, dcbf and wait instructions.
(insert_pl, extract_pl): New functions.
(L2OPT, LS, WC): Use insert_ls and extract_ls.
(LS3): New , 3-bit L for sync.
(LS3, L3OPT): New, 3-bit L for sync and dcbf.
(SC2, PL): New, 2-bit SC and PL for sync and wait.
(XWCPL_MASK, XL3RT_MASK, XSYNCLS_MASK): New instruction masks.
(XOPL3, XWCPL, XSYNCLS): New opcode macros.
(powerpc_opcodes) <dcbflp, dcbfps, dcbstps pause_short, phwsync,
plwsync, stcisync, stncisync, stsync, waitrsv>: New extended mnemonics.
<wait>: Enable PL operand on POWER10.
<dcbf>: Enable L3OPT operand on POWER10.
<sync>: Enable SC2 operand on POWER10.
gas/
* testsuite/gas/ppc/power9.s <dcbf, dcbfl, dcbflp>: Add tests.
* testsuite/gas/ppc/power9.d: Likewise.
* testsuite/gas/ppc/power10.s <dcbf, dcbfps, dcbstps, hwsync, lwsync,
pause_short, phwsync, plwsync, ptesync, stcisync, stncisync, stsync,
sync, wait, waitrsv>: Add tests.
* testsuite/gas/ppc/power10.d: Likewise.
2020-05-20 07:09:51 +08:00
|
|
|
|
2020-05-19 Peter Bergner <bergner@linux.ibm.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/power9.s <dcbf, dcbfl, dcbflp>: Add tests.
|
|
|
|
|
* testsuite/gas/ppc/power9.d: Likewise.
|
|
|
|
|
* testsuite/gas/ppc/power10.s <dcbf, dcbfps, dcbstps, hwsync, lwsync,
|
|
|
|
|
pause_short, phwsync, plwsync, ptesync, stcisync, stncisync, stsync,
|
|
|
|
|
sync, wait, waitrsv>: Add tests.
|
|
|
|
|
* testsuite/gas/ppc/power10.d: Likewise.
|
|
|
|
|
|
2020-05-19 19:45:42 +08:00
|
|
|
|
2020-05-19 Alexander Fedotov <alfedotov@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 25992
|
|
|
|
|
* config/tc-arm.c : Add arm_ext_v8r feature.
|
|
|
|
|
(it_fsm_post_encode): Check arm_ext_v8r feature.
|
|
|
|
|
(get_aeabi_cpu_arch_from_fset): Check arm_ext_v8r feature.
|
|
|
|
|
|
2020-05-19 11:25:27 +08:00
|
|
|
|
2020-05-19 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* write.c (write_contents): Use bfd_get_filename rather than
|
|
|
|
|
accessing bfd->filename directly. Use bfd_section_name rather
|
|
|
|
|
than accessing section->name directly.
|
|
|
|
|
|
2020-05-18 13:00:06 +08:00
|
|
|
|
2020-05-19 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* symbols.c (local_symbol_make): Init all of lsy_flags.
|
|
|
|
|
|
2020-05-18 12:00:59 +08:00
|
|
|
|
2020-05-18 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* symbols.c (resolve_symbol_value): Invoke LOCAL_SYMBOL_CHECK
|
|
|
|
|
before looking at add_symbol->sy_flags.
|
|
|
|
|
|
2020-05-09 15:02:50 +08:00
|
|
|
|
2020-05-18 Hongtao Liu <hongtao.liu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c: Not handle lret/iret.
|
|
|
|
|
* testsuite/gas/i386/lfence-ret-a.d: Adjust testcase.
|
|
|
|
|
* testsuite/gas/i386/lfence-ret-b.d: Ditto.
|
|
|
|
|
* testsuite/gas/i386/lfence-ret-c.d: Ditto.
|
|
|
|
|
* testsuite/gas/i386/lfence-ret-d.d: Ditto.
|
|
|
|
|
* testsuite/gas/i386/lfence-ret.s: Ditto.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-ret-a.d: Ditto.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-ret-b.d: Ditto.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-ret-c.d: Ditto.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-ret-d.d: Ditto.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-ret-e.d: Ditto.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-ret.s: Ditto.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-ret.e: Deleted.
|
|
|
|
|
|
2020-05-15 16:36:05 +08:00
|
|
|
|
2020-05-15 Alan Modra <amodra@gmail.com>
|
|
|
|
|
Alex Coplan <alex.coplan@arm.com>
|
|
|
|
|
|
|
|
|
|
* symbols.c (struct local_symbol): Update comment.
|
|
|
|
|
(resolve_symbol_value): For resolved symbols equated to other
|
|
|
|
|
symbols, verify that the referenced symbol is not a local_symbol
|
|
|
|
|
before accessing sy_value. Don't leave symbol loops during
|
|
|
|
|
finalize_syms resolution.
|
|
|
|
|
* testsuite/gas/all/assign-bad-recursive.d: New test.
|
|
|
|
|
* testsuite/gas/all/assign-bad-recursive.l: Error output for test.
|
|
|
|
|
* testsuite/gas/all/assign-bad-recursive.s: Assembly for test.
|
|
|
|
|
* testsuite/gas/all/gas.exp: Run it.
|
|
|
|
|
|
2020-05-14 18:26:26 +08:00
|
|
|
|
2020-05-14 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* po/sv.po: Updated Swedish translation.
|
|
|
|
|
|
2020-05-11 08:19:29 +08:00
|
|
|
|
2020-05-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/scalarquad.d,
|
|
|
|
|
* testsuite/gas/ppc/scalarquad.s: New test.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run it.
|
|
|
|
|
|
2020-05-11 08:18:29 +08:00
|
|
|
|
2020-05-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/rightmost.d,
|
|
|
|
|
* testsuite/gas/ppc/rightmost.s: New test.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run it.
|
|
|
|
|
|
2020-05-11 08:17:38 +08:00
|
|
|
|
2020-05-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/xvtlsbb.d,
|
|
|
|
|
* testsuite/gas/ppc/xvtlsbb.s: New test.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run it.
|
|
|
|
|
|
Power10 string operations
opcodes/
* ppc-opc.c (powerpc_opcodes): Add vstribl, vstribr, vstrihl, vstrihr,
vclrlb, vclrrb, vstribl., vstribr., vstrihl., vstrihr..
gas/
* testsuite/gas/ppc/stringop.d,
* testsuite/gas/ppc/stringop.s: New test.
* testsuite/gas/ppc/ppc.exp: Run it.
2020-05-11 08:16:45 +08:00
|
|
|
|
2020-05-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/stringop.d,
|
|
|
|
|
* testsuite/gas/ppc/stringop.s: New test.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run it.
|
|
|
|
|
|
2020-05-11 08:15:42 +08:00
|
|
|
|
2020-05-11 Peter Bergner <bergner@linux.ibm.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/set_bool.d,
|
|
|
|
|
* testsuite/gas/ppc/set_bool.s: New test.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run it.
|
|
|
|
|
|
Power10 bit manipulation operations
opcodes/
* ppc-opc.c (UIM8, P_U8XX4_MASK): Define.
(powerpc_opcodes): Add vgnb, vcfuged, vpextd, vpdepd, vclzdm,
vctzdm, cntlzdm, pdepd, pextd, cfuged, cnttzdm.
(prefix_opcodes): Add xxeval.
gas/
* testsuite/gas/ppc/bitmanip.d,
* testsuite/gas/ppc/bitmanip.s: New test.
* testsuite/gas/ppc/ppc.exp: Run it.
2020-05-11 08:14:25 +08:00
|
|
|
|
2020-05-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/bitmanip.d,
|
|
|
|
|
* testsuite/gas/ppc/bitmanip.s: New test.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run it.
|
|
|
|
|
|
2020-05-11 08:13:15 +08:00
|
|
|
|
2020-05-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/genpcv.d,
|
|
|
|
|
* testsuite/gas/ppc/genpcv.s: New test.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run it.
|
|
|
|
|
|
Power10 VSX Mask Manipulation Operations
opcodes/
* ppc-opc.c (MP, VXVAM_MASK): Define.
(VXVAPS_MASK): Use VXVA_MASK.
(powerpc_opcodes): Add mtvsrbmi, vexpandbm, vexpandhm, vexpandwm,
vexpanddm, vexpandqm, vextractbm, vextracthm, vextractwm,
vextractdm, vextractqm, mtvsrbm, mtvsrhm, mtvsrwm, mtvsrdm, mtvsrqm,
vcntmbb, vcntmbh, vcntmbw, vcntmbd.
gas/
* testsuite/gas/ppc/maskmanip.d,
* testsuite/gas/ppc/maskmanip.s: New test.
* testsuite/gas/ppc/ppc.exp: Run it.
2020-05-11 08:11:57 +08:00
|
|
|
|
2020-05-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/maskmanip.d,
|
|
|
|
|
* testsuite/gas/ppc/maskmanip.s: New test.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run it.
|
|
|
|
|
|
Power10 Reduced precision outer product operations
include/
* opcode/ppc.h (PPC_OPERAND_ACC): Define. Renumber following
PPC_OPERAND defines.
opcodes/
* ppc-opc.c (insert_xa6a, extract_xa6a, insert_xb6a, extract_xb6a):
New functions.
(powerpc_operands): Define ACC, PMSK8, PMSK4, PMSK2, XMSK, YMSK,
YMSK2, XA6a, XA6ap, XB6a entries.
(PMMIRR, P_X_MASK, P_XX1_MASK, P_GER_MASK): Define
(P_GER2_MASK, P_GER4_MASK, P_GER8_MASK, P_GER64_MASK): Define.
(PPCVSX4): Define.
(powerpc_opcodes): Add xxmfacc, xxmtacc, xxsetaccz,
xvi8ger4pp, xvi8ger4, xvf16ger2pp, xvf16ger2, xvf32gerpp, xvf32ger,
xvi4ger8pp, xvi4ger8, xvi16ger2spp, xvi16ger2s, xvbf16ger2pp,
xvbf16ger2, xvf64gerpp, xvf64ger, xvi16ger2, xvf16ger2np,
xvf32gernp, xvi8ger4spp, xvi16ger2pp, xvbf16ger2np, xvf64gernp,
xvf16ger2pn, xvf32gerpn, xvbf16ger2pn, xvf64gerpn, xvf16ger2nn,
xvf32gernn, xvbf16ger2nn, xvf64gernn, xvcvbf16sp, xvcvspbf16.
(prefix_opcodes): Add pmxvi8ger4pp, pmxvi8ger4, pmxvf16ger2pp,
pmxvf16ger2, pmxvf32gerpp, pmxvf32ger, pmxvi4ger8pp, pmxvi4ger8,
pmxvi16ger2spp, pmxvi16ger2s, pmxvbf16ger2pp, pmxvbf16ger2,
pmxvf64gerpp, pmxvf64ger, pmxvi16ger2, pmxvf16ger2np, pmxvf32gernp,
pmxvi8ger4spp, pmxvi16ger2pp, pmxvbf16ger2np, pmxvf64gernp,
pmxvf16ger2pn, pmxvf32gerpn, pmxvbf16ger2pn, pmxvf64gerpn,
pmxvf16ger2nn, pmxvf32gernn, pmxvbf16ger2nn, pmxvf64gernn.
gas/
* config/tc-ppc.c (pre_defined_registers): Add accumulators.
(md_assemble): Check acc specified in correct operand.
* testsuite/gas/ppc/outerprod.d,
* testsuite/gas/ppc/outerprod.s,
* testsuite/gas/ppc/vsx4.d,
* testsuite/gas/ppc/vsx4.s: New tests.
* testsuite/gas/ppc/ppc.exp: Run them.
2020-05-11 08:10:42 +08:00
|
|
|
|
2020-05-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
Peter Bergner <bergner@linux.ibm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-ppc.c (pre_defined_registers): Add accumulators.
|
|
|
|
|
(md_assemble): Check acc specified in correct operand.
|
|
|
|
|
* testsuite/gas/ppc/outerprod.d,
|
|
|
|
|
* testsuite/gas/ppc/outerprod.s,
|
|
|
|
|
* testsuite/gas/ppc/vsx4.d,
|
|
|
|
|
* testsuite/gas/ppc/vsx4.s: New tests.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run them.
|
|
|
|
|
|
Power10 SIMD permute class operations
opcodes/
* ppc-opc.c (insert_imm32, extract_imm32): New functions.
(insert_xts, extract_xts): New functions.
(IMM32, UIM3, IX, UIM5, SH3, XTS, P8RR): Define.
(P_XX4_MASK, P_UXX4_MASK, VSOP, P_VS_MASK, P_VSI_MASK): Define.
(VXRC_MASK, VXSH_MASK): Define.
(powerpc_opcodes): Add vinsbvlx, vsldbi, vextdubvlx, vextdubvrx,
vextduhvlx, vextduhvrx, vextduwvlx, vextduwvrx, vextddvlx,
vextddvrx, vinshvlx, vinswvlx, vinsw, vinsbvrx, vinshvrx,
vinswvrx, vinsd, vinsblx, vsrdbi, vinshlx, vinswlx, vinsdlx,
vinsbrx, vinshrx, vinswrx, vinsdrx, lxvkq.
(prefix_opcodes): Add xxsplti32dx, xxspltidp, xxspltiw, xxblendvb,
xxblendvh, xxblendvw, xxblendvd, xxpermx.
gas/
* testsuite/gas/ppc/simd_perm.d,
* testsuite/gas/ppc/simd_perm.s: New test.
* testsuite/gas/ppc/ppc.exp: Run it.
2020-05-11 08:07:14 +08:00
|
|
|
|
2020-05-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/simd_perm.d,
|
|
|
|
|
* testsuite/gas/ppc/simd_perm.s: New test.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run it.
|
|
|
|
|
|
Power10 128-bit binary integer operations
opcodes/
* ppc-opc.c (powerpc_opcodes): Add vrlq, vdivuq, vmsumcud, vrlqmi,
vmuloud, vcmpuq, vslq, vdivsq, vcmpsq, vrlqnm, vcmpequq, vmulosd,
vsrq, vdiveuq, vcmpgtuq, vmuleud, vsraq, vdivesq, vcmpgtsq, vmulesd,
vcmpequq., vextsd2q, vmoduq, vcmpgtuq., vmodsq, vcmpgtsq., xscvqpuqz,
xscvuqqp, xscvqpsqz, xscvsqqp, dcffixqq, dctfixqq.
gas/
* testsuite/gas/ppc/int128.d,
* testsuite/gas/ppc/int128.s: New test.
* testsuite/gas/ppc/ppc.exp: Run it.
2020-05-11 08:06:11 +08:00
|
|
|
|
2020-05-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/int128.d,
|
|
|
|
|
* testsuite/gas/ppc/int128.s: New test.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run it.
|
|
|
|
|
|
2020-05-11 08:04:49 +08:00
|
|
|
|
2020-05-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/vsx_32byte.d,
|
|
|
|
|
* testsuite/gas/ppc/vsx_32byte.s: New test.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run it.
|
|
|
|
|
|
Power10 vector integer multiply, divide, modulo insns
opcodes/
* ppc-opc.c (powerpc_opcodes): Add vdivuw, vdivud, vdivsw, vmulld,
vdivsd, vmulhuw, vdiveuw, vmulhud, vdiveud, vmulhsw, vdivesw,
vmulhsd, vdivesd, vmoduw, vmodud, vmodsw, vmodsd.
gas/
* testsuite/gas/ppc/vec_mul.s,
* testsuite/gas/ppc/vec_mul.d: New test.
* testsuite/gas/ppc/ppc.exp: Run it.
2020-05-11 08:02:56 +08:00
|
|
|
|
2020-05-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/vec_mul.s,
|
|
|
|
|
* testsuite/gas/ppc/vec_mul.d: New test.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run it.
|
|
|
|
|
|
2020-05-11 08:01:40 +08:00
|
|
|
|
2020-05-11 Peter Bergner <bergner@linux.ibm.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/byte_rev.d,
|
|
|
|
|
* testsuite/gas/ppc/byte_rev.s: New test.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run it.
|
|
|
|
|
|
2020-05-11 08:00:19 +08:00
|
|
|
|
2020-05-11 Peter Bergner <bergner@linux.ibm.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/power10.d: Add paste. tests.
|
|
|
|
|
* testsuite/gas/ppc/power10.s: Likewise.
|
|
|
|
|
|
2020-05-11 07:57:48 +08:00
|
|
|
|
2020-05-11 Peter Bergner <bergner@linux.ibm.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/ppc/power10.s: New test.
|
|
|
|
|
* testsuite/gas/ppc/power10.d: Likewise.
|
|
|
|
|
* testsuite/gas/ppc/ppc.exp: Run it.
|
|
|
|
|
|
2020-05-11 07:54:14 +08:00
|
|
|
|
2020-05-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-ppc.c (md_assemble): Update for PPC_OPCODE_POWER10
|
|
|
|
|
renaming.
|
|
|
|
|
* testsuite/gas/ppc/prefix-align.d: Use -mpower10/-Mpower10 in
|
|
|
|
|
place of -mfuture/-Mfuture.
|
|
|
|
|
* testsuite/gas/ppc/prefix-pcrel.d: Likewise.
|
|
|
|
|
* testsuite/gas/ppc/prefix-reloc.d: Likewise.
|
|
|
|
|
|
2020-05-06 21:17:36 +08:00
|
|
|
|
2020-05-06 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* po/sv.po: Updated Swedish translation.
|
|
|
|
|
|
2020-05-06 20:21:02 +08:00
|
|
|
|
2020-05-06 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 25927
|
|
|
|
|
* doc/as.texi (Preprocessing): Replace cross reference to not
|
|
|
|
|
existant document with a URL to the equivalent page in the GCC
|
|
|
|
|
manual.
|
|
|
|
|
|
2020-05-05 23:16:03 +08:00
|
|
|
|
2020-05-05 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* dwarf2dbg.c (out_dir_and_file_list): Add comments describing the
|
|
|
|
|
construction of a DWARF-5 directory name table.
|
|
|
|
|
* testsuite/gas/elf/pr25917.d: Update expected output.
|
|
|
|
|
|
2020-05-05 17:19:41 +08:00
|
|
|
|
2020-05-05 Gunther Nikl <gnikl@justmail.de>
|
|
|
|
|
|
|
|
|
|
* config/tc-rx.c (elf_flags): Initialize for non-linux targets.
|
|
|
|
|
(md_parse_option): Remove initialization of elf_flags.
|
2020-05-04 20:50:05 +08:00
|
|
|
|
|
2020-05-04 20:05:42 +08:00
|
|
|
|
2020-05-04 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
|
|
|
|
|
|
|
|
|
PR gas/25863
|
|
|
|
|
* config/tc-arm.c (do_mve_vmull): Fix scalar and NEON parsing of vmul.
|
|
|
|
|
* testsuite/gas/arm/mve-scalar-vmult-it.d: New test.
|
|
|
|
|
* testsuite/gas/arm/mve-scalar-vmult-it.s: New test.
|
|
|
|
|
|
2020-05-04 17:19:38 +08:00
|
|
|
|
2020-05-04 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 25917
|
|
|
|
|
* dwarf2dbg.c (out_dir_and_file_list): Check for the directory
|
|
|
|
|
table's existence before looking at its entries.
|
2020-05-04 20:50:05 +08:00
|
|
|
|
Also do not emit a default directory entry if there are no
|
|
|
|
|
directories in use.
|
|
|
|
|
|
2020-05-04 17:19:38 +08:00
|
|
|
|
* testsuite/gas/elf/pr25917.s: New test source file.
|
|
|
|
|
* testsuite/gas/elf/pr25917.d: New test driver.
|
|
|
|
|
* testsuite/gas/elf/elf.exp (run_elf_list_test): Run the new test.
|
|
|
|
|
|
2020-04-30 22:47:30 +08:00
|
|
|
|
2020-04-30 Alex Coplan <alex.coplan@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-aarch64.c (fix_insn): Implement for
|
|
|
|
|
AARCH64_OPND_UNDEFINED.
|
|
|
|
|
(parse_operands): Implement for AARCH64_OPND_UNDEFINED.
|
|
|
|
|
* testsuite/gas/aarch64/udf.s: New.
|
|
|
|
|
* testsuite/gas/aarch64/udf.d: New.
|
|
|
|
|
* testsuite/gas/aarch64/udf-invalid.s: New.
|
|
|
|
|
* testsuite/gas/aarch64/udf-invalid.l: New.
|
|
|
|
|
* testsuite/gas/aarch64/udf-invalid.d: New.
|
|
|
|
|
|
2020-04-30 20:35:37 +08:00
|
|
|
|
2020-04-30 Yoshinori Sato <ysato@users.sourceforge.jp>
|
|
|
|
|
|
|
|
|
|
* config/tc-rx.c (elf_flags): Reset default value.
|
|
|
|
|
(md_parse_option): For rx-elf Initialize elf_flags with RX_ABI.
|
|
|
|
|
|
2020-04-28 19:15:05 +08:00
|
|
|
|
2020-04-29 Max Filippov <jcmvbkbc@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-xtensa.c (XTENSA_MARCH_EARLIEST): Define macro as 0
|
|
|
|
|
if it's not defined.
|
|
|
|
|
(microarch_earliest): New static variable.
|
|
|
|
|
(xg_translate_idioms): Translate "simcall" to "simcall 0" when
|
|
|
|
|
simcall opcode has mandatory parameter.
|
|
|
|
|
(xg_init_global_config): Initialize microarch_earliest.
|
|
|
|
|
|
2020-04-29 20:13:55 +08:00
|
|
|
|
2020-04-29 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 22699
|
|
|
|
|
* config/tc-sh.c (build_Mytes): Change operand type IMM0_8 to
|
|
|
|
|
IMM0_8S and add support for IMM0_8U.
|
|
|
|
|
* testsuite/gas/sh/sh4a.s: Add test of a logical insn using an
|
|
|
|
|
unsigned 8-bit immediate.
|
|
|
|
|
* testsuite/gas/sh/sh4a.d: Extended expected disassembly.
|
2020-04-30 00:18:56 +08:00
|
|
|
|
* testsuite/gas/sh/sh4al-dsp.d: Update expected disassembly.
|
2020-04-29 20:13:55 +08:00
|
|
|
|
|
2020-04-28 00:39:31 +08:00
|
|
|
|
2020-04-27 Tamar Christina <tamar.christina@arm.com>
|
|
|
|
|
|
|
|
|
|
* NEWS: Add news entry for big-obj.
|
|
|
|
|
* config/tc-i386.c (i386_target_format): Support new format.
|
|
|
|
|
* doc/c-i386.texi: Add i386 support.
|
|
|
|
|
* testsuite/gas/pe/big-obj.d: Rename test to not be x64 specific.
|
|
|
|
|
* testsuite/gas/pe/pe.exp (big-obj): Make test run on i386 as well.
|
|
|
|
|
|
2020-04-27 18:35:25 +08:00
|
|
|
|
2020-04-27 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 25878
|
|
|
|
|
* dwarf2dbg.c (struct file_entry): Add auto_assigned field.
|
|
|
|
|
(assign_file_to_slot): New function. Fills in an entry in the
|
|
|
|
|
files table.
|
|
|
|
|
(allocate_filenum): Use new function.
|
|
|
|
|
(allocate_filename_to_slot): Use new function. If the specified
|
|
|
|
|
slot entry is already in use, but was chosen automatically then
|
|
|
|
|
reassign the automatic entry.
|
|
|
|
|
|
2020-03-16 11:03:12 +08:00
|
|
|
|
2020-04-26 Hongtao Liu <hongtao.liu@intel.com
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (lfence_before_ret_shl): New member.
|
|
|
|
|
(load_insn_p): implict load for POP/POPA/POPF/XLATB, no load
|
|
|
|
|
for Anysize insns.
|
|
|
|
|
(insert_after_load): Issue warning for REP CMPS/SCAS.
|
|
|
|
|
(insert_before_before): Handle iret, Handle
|
|
|
|
|
-mlfence-before-ret=shl, Adjust operand size of or/not/shl to ret's,
|
|
|
|
|
(md_parse_option): Change -mlfence-before-ret=[none|not|or] to
|
|
|
|
|
-mlfence-before-ret=[none/not/or/shl/yes].
|
|
|
|
|
Enable -mlfence-before-ret=shl when
|
|
|
|
|
-mlfence-beofre-indirect-branch=all and no explict -mlfence-before-ret option.
|
|
|
|
|
(md_show_usage): Ditto.
|
|
|
|
|
* doc/c-i386.texi: Ditto.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Add new testcases.
|
|
|
|
|
* testsuite/gas/i386/lfence-load-b.d: New.
|
|
|
|
|
* testsuite/gas/i386/lfence-load-b.e: New.
|
|
|
|
|
* testsuite/gas/i386/lfence-load.d: Modified.
|
|
|
|
|
* testsuite/gas/i386/lfence-load.e: New.
|
|
|
|
|
* testsuite/gas/i386/lfence-load.s: Modified.
|
|
|
|
|
* testsuite/gas/i386/lfence-ret-a.d: Modified.
|
|
|
|
|
* testsuite/gas/i386/lfence-ret-b.d: Modified.
|
|
|
|
|
* testsuite/gas/i386/lfence-ret-c.d: New.
|
|
|
|
|
* testsuite/gas/i386/lfence-ret-d.d: New.
|
|
|
|
|
* testsuite/gas/i386/lfence-ret.s: Modified.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-load-b.d: New.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-load.d: Modified.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-load.s: Modified.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-ret-a.d: Modified.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-ret-b.d: Modified.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-ret-c.d: New.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-ret-d.d: New
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-ret-e.d: New.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-ret.e: New.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-ret.s: New.
|
|
|
|
|
|
xtensa: fix PR ld/25861
Introduce new relaxations XTENSA_PDIFF{8,16,32} for positive differences
(subtracted symbol precedes diminished symbol) and XTENSA_NDIFF{8,16,32}
for negative differences (subtracted symbol follows diminished symbol).
Don't generate XTENSA_DIFF relocations in the assembler, generate
XTENSA_PDIFF or XTENSA_NDIFF based on relative symbol position.
Handle XTENSA_DIFF in BFD for compatibility with old object files.
Handle XTENSA_PDIFF and XTENSA_NDIFF in BFD, treating difference value
as unsigned.
2020-04-22 Max Filippov <jcmvbkbc@gmail.com>
bfd/
* bfd-in2.h: Regenerated.
* elf32-xtensa.c (elf_howto_table): New entries for
R_XTENSA_PDIFF{8,16,32} and R_XTENSA_NDIFF{8,16,32}.
(elf_xtensa_reloc_type_lookup, elf_xtensa_do_reloc)
(relax_section): Add cases for R_XTENSA_PDIFF{8,16,32} and
R_XTENSA_NDIFF{8,16,32}.
* libbfd.h (bfd_reloc_code_real_names): Add names for
BFD_RELOC_XTENSA_PDIFF{8,16,32} and
BFD_RELOC_XTENSA_NDIFF{8,16,32}.
* reloc.c: Add documentation for BFD_RELOC_XTENSA_PDIFF{8,16,32}
and BFD_RELOC_XTENSA_NDIFF{8,16,32}.
binutils/
* readelf.c (is_none_reloc): Recognize
BFD_RELOC_XTENSA_PDIFF{8,16,32} and
BFD_RELOC_XTENSA_NDIFF{8,16,32}.
gas/
* config/tc-xtensa.c (md_apply_fix): Replace
BFD_RELOC_XTENSA_DIFF{8,16,32} generation with
BFD_RELOC_XTENSA_PDIFF{8,16,32} and
BFD_RELOC_XTENSA_NDIFF{8,16,32} generation.
* testsuite/gas/xtensa/loc.d: Replace BFD_RELOC_XTENSA_DIFF16
with BFD_RELOC_XTENSA_PDIFF16 in the expected output.
include/
* elf/xtensa.h (elf_xtensa_reloc_type): New entries for
R_XTENSA_PDIFF{8,16,32} and R_XTENSA_NDIFF{8,16,32}.
ld/
* testsuite/ld-xtensa/relax-loc.d: New test definition.
* testsuite/ld-xtensa/relax-loc.s: New test source.
* testsuite/ld-xtensa/xtensa.exp (relax-loc): New test.
2020-04-20 10:04:41 +08:00
|
|
|
|
2020-04-22 Max Filippov <jcmvbkbc@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR ld/25861
|
|
|
|
|
* config/tc-xtensa.c (md_apply_fix): Replace
|
|
|
|
|
BFD_RELOC_XTENSA_DIFF{8,16,32} generation with
|
|
|
|
|
BFD_RELOC_XTENSA_PDIFF{8,16,32} and
|
|
|
|
|
BFD_RELOC_XTENSA_NDIFF{8,16,32} generation.
|
|
|
|
|
* testsuite/gas/xtensa/loc.d: Replace BFD_RELOC_XTENSA_DIFF16
|
|
|
|
|
with BFD_RELOC_XTENSA_PDIFF16 in the expected output.
|
|
|
|
|
|
2020-04-22 10:22:13 +08:00
|
|
|
|
2020-04-22 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/obj-elf.c (elf_frob_symbol): Unconditionally remove
|
|
|
|
|
symbol for ".symver .. remove".
|
|
|
|
|
* doc/as.texi (.symver): Update.
|
|
|
|
|
* testsuite/gas/symver/symver11.s: Make foo weak.
|
|
|
|
|
* testsuite/gas/symver/symver11.d: Expect an error.
|
|
|
|
|
* testsuite/gas/symver/symver7.d: Allow other random symbols.
|
|
|
|
|
|
2020-04-22 09:21:56 +08:00
|
|
|
|
2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/symver/symver11.s: Add ".balign 8".
|
|
|
|
|
|
2020-04-18 20:32:39 +08:00
|
|
|
|
2020-04-21 Andreas Schwab <schwab@linux-m68k.org>
|
|
|
|
|
|
|
|
|
|
PR 25848
|
|
|
|
|
* testsuite/gas/m68k/operands.s: Add tests for cmpi.
|
|
|
|
|
* testsuite/gas/m68k/operands.d: Update.
|
|
|
|
|
* testsuite/gas/m68k/op68000.d: Update for new error messages.
|
|
|
|
|
|
2020-04-21 22:16:21 +08:00
|
|
|
|
2020-04-21 Tamar Christina <tamar.christina@arm.com>
|
|
|
|
|
|
|
|
|
|
PR binutils/24753
|
|
|
|
|
* testsuite/gas/arm/pr24753.d: New test.
|
|
|
|
|
* testsuite/gas/arm/pr24753.s: New test.
|
|
|
|
|
|
gas: Extend .symver directive
Extend .symver directive to update visibility of the original symbol and
assign one original symbol to different versioned symbols:
.symver foo, foo@VERS_1, local # Change foo to a local symbol.
.symver foo, foo@VERS_2, hidden # Change foo to a hidden symbol.
.symver foo, foo@@VERS_3, remove # Remove foo from symbol table.
.symver foo, bar@V1 # Assign foo to bar@V1 and baz@V2.
.symver foo, baz@V2
PR gas/23840
PR gas/25295
* NEWS: Mention .symver extension.
* config/obj-elf.c (obj_elf_find_and_add_versioned_name): New
function.
(obj_elf_symver): Call obj_elf_find_and_add_versioned_name to
add a version name. Add local, hidden and remove visibility
support.
(elf_frob_symbol): Handle the list of version names. Update the
original symbol to local, hidden or remove it from the symbol
table.
(elf_frob_file_before_adjust): Handle the list of version names.
* config/obj-elf.h (elf_visibility): New.
(elf_versioned_name_list): Likewise.
(elf_obj_sy): Change local to bitfield. Add rename, bad_version
and visibility. Change versioned_name pointer to struct
elf_versioned_name_list.
* doc/as.texi: Update .symver directive.
* testsuite/gas/symver/symver.exp: Run all *.d tests. Add more
error checking tests.
* testsuite/gas/symver/symver6.d: New file.
* testsuite/gas/symver/symver7.d: Likewise.
* testsuite/gas/symver/symver7.s: Likewise.
* testsuite/gas/symver/symver8.d: Likewise.
* testsuite/gas/symver/symver8.s: Likewise.
* testsuite/gas/symver/symver9.s: Likewise.
* testsuite/gas/symver/symver9a.d: Likewise.
* testsuite/gas/symver/symver9b.d: Likewise.
* testsuite/gas/symver/symver10.s: Likewise.
* testsuite/gas/symver/symver10a.d: Likewise.
* testsuite/gas/symver/symver10b.d: Likewise.
* testsuite/gas/symver/symver11.d: Likewise.
* testsuite/gas/symver/symver11.s: Likewise.
* testsuite/gas/symver/symver12.d: Likewise.
* testsuite/gas/symver/symver12.s: Likewise.
* testsuite/gas/symver/symver13.d: Likewise.
* testsuite/gas/symver/symver13.s: Likewise.
* testsuite/gas/symver/symver14.d: Likewise.
* testsuite/gas/symver/symver14.l: Likewise.
* testsuite/gas/symver/symver15.d: Likewise.
* testsuite/gas/symver/symver15.l: Likewise.
* testsuite/gas/symver/symver6.l: Removed.
* testsuite/gas/symver/symver6.s: Updated.
2020-04-21 20:33:04 +08:00
|
|
|
|
2020-04-21 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/23840
|
|
|
|
|
PR gas/25295
|
|
|
|
|
* NEWS: Mention .symver extension.
|
|
|
|
|
* config/obj-elf.c (obj_elf_find_and_add_versioned_name): New
|
|
|
|
|
function.
|
|
|
|
|
(obj_elf_symver): Call obj_elf_find_and_add_versioned_name to
|
|
|
|
|
add a version name. Add local, hidden and remove visibility
|
|
|
|
|
support.
|
|
|
|
|
(elf_frob_symbol): Handle the list of version names. Update the
|
|
|
|
|
original symbol to local, hidden or remove it from the symbol
|
|
|
|
|
table.
|
|
|
|
|
(elf_frob_file_before_adjust): Handle the list of version names.
|
|
|
|
|
* config/obj-elf.h (elf_visibility): New.
|
|
|
|
|
(elf_versioned_name_list): Likewise.
|
|
|
|
|
(elf_obj_sy): Change local to bitfield. Add rename, bad_version
|
|
|
|
|
and visibility. Change versioned_name pointer to struct
|
|
|
|
|
elf_versioned_name_list.
|
|
|
|
|
* doc/as.texi: Update .symver directive.
|
|
|
|
|
* testsuite/gas/symver/symver.exp: Run all *.d tests. Add more
|
|
|
|
|
error checking tests.
|
|
|
|
|
* testsuite/gas/symver/symver6.d: New file.
|
|
|
|
|
* testsuite/gas/symver/symver7.d: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver7.s: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver8.d: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver8.s: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver9.s: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver9a.d: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver9b.d: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver10.s: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver10a.d: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver10b.d: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver11.d: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver11.s: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver12.d: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver12.s: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver13.d: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver13.s: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver14.d: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver14.l: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver15.d: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver15.l: Likewise.
|
|
|
|
|
* testsuite/gas/symver/symver6.l: Removed.
|
|
|
|
|
* testsuite/gas/symver/symver6.s: Updated.
|
|
|
|
|
|
2020-04-20 17:58:16 +08:00
|
|
|
|
2020-04-20 Sudakshina Das <sudi.das@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-aarch64.c (parse_barrier_psb): Update error messages
|
|
|
|
|
to include TSB.
|
|
|
|
|
* testsuite/gas/aarch64/system-2.d: Update -march and new tsb tests.
|
|
|
|
|
* testsuite/gas/aarch64/system-2.s: Add new tsb tests.
|
|
|
|
|
* testsuite/gas/aarch64/system.d: Update.
|
|
|
|
|
|
[AArch64, Binutils] Make hint space instructions valid for Armv8-a
There are a few instruction in AArch64 that are in the HINT space. Any of
these instructions should be accepted by the assembler/disassembler at any
architecture version. This patch fixes the existing instructions that are
not behaving accordingly.
I have used all of the instructions mentioned in the following to make the
changes:
https://developer.arm.com/docs/ddi0596/f/base-instructions-alphabetic-order/
hint-hint-instruction
gas/ChangeLog:
2020-04-20 Sudakshina Das <sudi.das@arm.com>
* testsuite/gas/aarch64/bti.d: Update -march option.
* testsuite/gas/aarch64/illegal-bti.d: Remove.
* testsuite/gas/aarch64/illegal-bti.l: Remove.
* testsuite/gas/aarch64/illegal-ras-1.l: Remove esb.
* testsuite/gas/aarch64/illegal-ras-1.s: Remove esb.
opcodes/ChangeLog:
2020-04-20 Sudakshina Das <sudi.das@arm.com>
* aarch64-tbl.h (aarch64_feature_bti, BTI, BTI_INSN): Remove.
(aarch64_feature_ras, RAS): Likewise.
(aarch64_feature_stat_profile, STAT_PROFILE): Likewise.
(aarch64_opcode_table): Update bti, xpaclri, pacia1716, pacib1716,
autia1716, autib1716, esb, psb, dgh, paciaz, paciasp, pacibz, pacibsp,
autiaz, autiasp, autibz, autibsp to be CORE_INSN.
* aarch64-asm-2.c: Regenerated.
* aarch64-dis-2.c: Regenerated.
* aarch64-opc-2.c: Regenerated.
2020-04-20 17:50:52 +08:00
|
|
|
|
2020-04-20 Sudakshina Das <sudi.das@arm.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/aarch64/bti.d: Update -march option.
|
|
|
|
|
* testsuite/gas/aarch64/illegal-bti.d: Remove.
|
|
|
|
|
* testsuite/gas/aarch64/illegal-bti.l: Remove.
|
|
|
|
|
* testsuite/gas/aarch64/illegal-ras-1.l: Remove esb.
|
|
|
|
|
* testsuite/gas/aarch64/illegal-ras-1.s: Remove esb.
|
|
|
|
|
|
2020-04-17 11:08:19 +08:00
|
|
|
|
2020-04-17 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-bfin.h (TC_EQUAL_IN_INSN): Allow assignment to dot.
|
|
|
|
|
|
2020-04-17 01:02:10 +08:00
|
|
|
|
2020-04-16 Gagan Singh Sidhu <broly@mac.com>
|
|
|
|
|
Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 25803
|
|
|
|
|
* config/obj-elf.c (obj_elf_type): Reject ifunc symbols on MIPS
|
|
|
|
|
targets.
|
|
|
|
|
* testsuite/gas/elf/elf.exp: Add MIPS targets to the list to skip
|
|
|
|
|
for the type-2 test.
|
|
|
|
|
* testsuite/gas/elf/type-noifunc.e: Update to allow for MIPS
|
|
|
|
|
targets running this test.
|
|
|
|
|
|
2020-04-16 15:52:57 +08:00
|
|
|
|
2020-02-16 David Faust <david.faust@oracle.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/bpf/bpf.exp: Run jump32 tests.
|
|
|
|
|
* testsuite/gas/bpf/jump32.s: New file.
|
|
|
|
|
* testsuite/gas/bpf/jump32.d: Likewise.
|
|
|
|
|
|
2020-04-09 10:31:45 +08:00
|
|
|
|
2020-04-08 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* doc/c-i386.texi: Correct -mlfence-before-indirect-branch=
|
|
|
|
|
documentation.
|
|
|
|
|
|
2020-04-08 18:11:43 +08:00
|
|
|
|
2020-04-08 Gunther Nikl <gnikl@justmail.de>
|
|
|
|
|
|
|
|
|
|
* config/tc-moxie.h (MD_PCREL_FROM_SECTION): Delete define.
|
|
|
|
|
(md_pcrel_from): Remove prototytpe.
|
2020-04-08 18:15:28 +08:00
|
|
|
|
* config/tc-m32c.h (MD_PCREL_FROM_SECTION): Delete duplicate
|
|
|
|
|
define.
|
|
|
|
|
(md_pcrel_from_section): Remove duplicate prototype.
|
2020-04-08 19:28:10 +08:00
|
|
|
|
* tc.h (md_pcrel_from_section): Add prototype.
|
|
|
|
|
* config/tc-aarch64.h (md_pcrel_from_section): Remove prototype.
|
|
|
|
|
* config/tc-arc.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-arm.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-avr.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-bfin.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-bpf.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-csky.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-d10v.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-d30v.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-epiphany.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-fr30.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-frv.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-iq2000.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-lm32.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-m32c.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-m32r.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-mcore.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-mep.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-metag.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-microblaze.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-mmix.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-moxie.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-msp430.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-mt.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-or1k.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-ppc.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-rl78.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-rx.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-s390.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-sh.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-xc16x.h (md_pcrel_from_section): Likewise.
|
|
|
|
|
* config/tc-xstormy16.h (md_pcrel_from_section): Likewise.
|
[PATCH 1/4]: microblaze: remove duplicate prototypes
The microblaze target header duplicates prototypes already provided by tc.h.
* config/tc-microblaze.h (md_begin, md_assemble, md_undefined_symbol,
md_show_usage, md_convert_frag, md_operand, md_number_to_chars,
md_estimate_size_before_relax, md_section_align, tc_gen_reloc,
md_apply_fix3): Delete prototypes.
2020-04-08 19:33:16 +08:00
|
|
|
|
* config/tc-microblaze.h (md_begin, md_assemble, md_undefined_symbol,
|
|
|
|
|
md_show_usage, md_convert_frag, md_operand, md_number_to_chars,
|
|
|
|
|
md_estimate_size_before_relax, md_section_align, tc_gen_reloc,
|
|
|
|
|
md_apply_fix3): Delete prototypes.
|
2020-04-08 18:11:43 +08:00
|
|
|
|
|
2020-04-07 19:43:49 +08:00
|
|
|
|
2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* NEWS: Mention support for Intel SERIALIZE and TSXLDTRK
|
|
|
|
|
instructions.
|
|
|
|
|
|
gas/doc/c-z80.texi: Fix @xref warnings
Fix
gas/doc/c-z80.texi:244: warning: `.' or `,' must follow @xref, not )
gas/doc/c-z80.texi:278: warning: `.' or `,' must follow @xref, not )
gas/doc/c-z80.texi:284: warning: `.' or `,' must follow @xref, not )
gas/doc/c-z80.texi:291: warning: `.' or `,' must follow @xref, not )
gas/doc/c-z80.texi:295: warning: `.' or `,' must follow @xref, not )
* doc/c-z80.texi: Fix @xref warnings.
2020-04-07 19:17:01 +08:00
|
|
|
|
2020-04-07 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* doc/c-z80.texi: Fix @xref warnings.
|
|
|
|
|
|
2020-04-07 13:59:50 +08:00
|
|
|
|
2020-04-07 Lili Cui <lili.cui@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (cpu_arch): Add .TSXLDTRK.
|
|
|
|
|
(cpu_noarch): Likewise.
|
|
|
|
|
* doc/c-i386.texi: Document TSXLDTRK.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run TSXLDTRK tests.
|
|
|
|
|
* testsuite/gas/i386/tsxldtrk.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/tsxldtrk.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-tsxldtrk.d: Likewise.
|
|
|
|
|
|
2020-03-06 14:38:15 +08:00
|
|
|
|
2020-04-02 Lili Cui <lili.cui@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (cpu_arch): Add .serialize.
|
|
|
|
|
(cpu_noarch): Likewise.
|
|
|
|
|
* doc/c-i386.texi: Document serialize.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run serialize tests
|
|
|
|
|
* testsuite/gas/i386/serialize.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-serialize.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/serialize.s: Likewise.
|
|
|
|
|
|
ld: Disable ifunc tests on Solaris
A couple of ld ifunc tests currently FAIL on 64-bit Solaris/x86:
FAIL: ld-ifunc/ifunc-10-x86-64
FAIL: ld-ifunc/ifunc-11-x86-64
FAIL: ld-ifunc/ifunc-12-x86-64
FAIL: ld-ifunc/ifunc-13-x86-64
FAIL: ld-ifunc/ifunc-14a-x86-64
FAIL: ld-ifunc/ifunc-14b-x86-64
FAIL: ld-ifunc/ifunc-14c-x86-64
FAIL: ld-ifunc/ifunc-14d-x86-64
FAIL: ld-ifunc/ifunc-14e-x86-64
FAIL: ld-ifunc/ifunc-14f-x86-64
FAIL: ld-ifunc/ifunc-15-x86-64
FAIL: ld-ifunc/ifunc-17a-x86-64
FAIL: ld-ifunc/ifunc-17b-x86-64
FAIL: ld-ifunc/ifunc-2-local-x86-64-now
FAIL: ld-ifunc/ifunc-2-local-x86-64
FAIL: ld-ifunc/ifunc-2-x86-64-now
FAIL: ld-ifunc/ifunc-2-x86-64
FAIL: ld-ifunc/ifunc-20-x86-64
FAIL: ld-ifunc/pr17154-x86-64-now
FAIL: ld-ifunc/pr17154-x86-64
For one, the actual error is weird:
./ld-new: target elf64-x86-64 not found
failed with: <./ld-new: target elf64-x86-64 not found>, no expected output
FAIL: ld-ifunc/ifunc-10-x86-64
although ld -V does report the elf_x86_64 emulation as supported:
$ ./ld/ld-new -V
GNU ld (GNU Binutils) 2.34.50.20200328
Supported emulations:
elf_x86_64_sol2
elf_x86_64
[...]
When using ld -m elf_x86_64_sol2 instead, one of the testcases links
successfully.
However, there's no point in pursuing this: Solaris does not support
ifunc, as can be seen in <sys/elf.h>:
/*
* GNU/Linux specific symbol type not used by Solaris
*/
#define STT_GNU_IFUNC 10
and never will, given that it has symbol capabilities as solution to
effectively the same problem:
http://www.linker-aliens.org/blogs/rie/entry/symbol_capabilitie/
Therefore this patch disables ifunc testing on Solaris completely by
removing Solaris from binutils/testsuite/lib/binutils-common.exp
(supports_gnu_osabi). The ifunc part is justified above. SHF_GNU_MBIND is
in the OS-specific range and conflicts with
#define SHF_SUNW_REALLOC 0x01000000 /* internal: krtld realloc */
While the comment suggests this might be relocatable without too much
problems, the description of mbind (no formal spec AFAICS, just the
comment in the binutils patch submission) strongly suggests that this
isn't relevant to Solaris at all.
Indirectly, clearing supports_gnu_osabi on Solaris disables
supports_gnu_unique. Again, Solaris <sys/elf.h> has
/*
* GNU/Linux specific binding not used by Solaris
*/
#define STB_GNU_UNIQUE 10
so this seems the right thing to do.
Afterwards, one can remove the explicit mentions of *-*-solaris2* in
quite a number of (but not all) the ld-ifunc dump file notarget lists.
There's one fallout, though: two gas tests now XPASS because they are
xfail'ed for !supports_gnu_osabi:
XPASS: mbind sections 12
XPASS: mbind section contents 16
XPASS: mbind sections 16
XPASS: mbind section contents 16
To fix that, I've changed
#xfail: ![supports_gnu_osabi]
to notarget.
Tested on x86_64-pc-solaris2.11, i386-pc-solaris2.11,
x86_64-pc-linux-gnu, and i686-pc-linux-gnu.
ld:
* testsuite/ld-ifunc/ifunc-10-i386.d: Remove *-*-solaris2* from
notarget.
* ifunc-11-i386.d: Likewise.
* ifunc-12-i386.d: Likewise.
* ifunc-13-i386.d: Likewise.
* ifunc-14a-i386.d: Likewise.
* ifunc-14b-i386.d: Likewise.
* ifunc-14c-i386.d: Likewise.
* ifunc-14d-i386.d: Likewise.
* ifunc-14e-i386.d: Likewise.
* ifunc-14f-i386.d: Likewise.
* ifunc-15-i386.d: Likewise.
* ifunc-16-i386-now.d: Likewise.
* ifunc-16-i386.d: Likewise.
* ifunc-17a-i386.d: Likewise.
* ifunc-17b-i386.d: Likewise.
* ifunc-18a-i386.d: Likewise.
* ifunc-18b-i386.d: Likewise.
* ifunc-19a-i386.d: Likewise.
* ifunc-19b-i386.d: Likewise.
* ifunc-2-i386-now.d: Likewise.
* ifunc-2-i386.d: Likewise.
* ifunc-2-local-i386-now.d: Likewise.
* ifunc-2-local-i386.d: Likewise.
* ifunc-20-i386.d: Likewise.
* ifunc-21-i386.d: Likewise.
* ifunc-22-i386.d: Likewise.
* ifunc-5a-i386.d: Likewise.
* ifunc-5a-local-i386.d: Likewise.
* ifunc-5b-i386.d: Likewise.
* ifunc-5b-local-i386.d: Likewise.
* ifunc-5r-local-i386.d: Likewise.
* ifunc-6a-i386.d: Likewise.
* ifunc-6b-i386.d: Likewise.
* ifunc-7a-i386.d: Likewise.
* ifunc-7b-i386.d: Likewise.
* ifunc-8-i386.d: Likewise.
* ifunc-9-i386.d: Likewise.
* pr17154-i386-now.d: Likewise.
* pr17154-i386.d: Likewise.
* ifunc-23a-x86.d: Remove notarget.
* ifunc-24a-x86.d: Likewise.
* ifunc-25a-x86.d: Likewise.
gas:
* testsuite/gas/elf/section12a.d: Use notarget instead of xfail.
* testsuite/gas/elf/section12b.d: Likewise.
* testsuite/gas/elf/section16a.d: Likewise.
* testsuite/gas/elf/section16b.d: Likewise.
binutils:
* testsuite/lib/binutils-common.exp (supports_gnu_osabi): Don't
enable on *-*-solaris*.
2020-04-02 16:52:57 +08:00
|
|
|
|
2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/elf/section12a.d: Use notarget instead of xfail.
|
|
|
|
|
* testsuite/gas/elf/section12b.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section16a.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section16b.d: Likewise.
|
|
|
|
|
|
2020-04-02 15:57:45 +08:00
|
|
|
|
2020-04-02 Gunther Nikl <gnikl@justmail.de>
|
|
|
|
|
|
|
|
|
|
* config/tc-m68k.c (m68k_ip): Fix range check for index register
|
|
|
|
|
with a suppressed address register.
|
|
|
|
|
|
2020-04-01 20:40:45 +08:00
|
|
|
|
2020-04-01 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/25756
|
|
|
|
|
* config/tc-i386.h (TC_FORCE_RELOCATION_ABS): New.
|
|
|
|
|
* testsuite/gas/i386/localpic.s: Add a test for relocation
|
|
|
|
|
against local absolute symbol.
|
|
|
|
|
* testsuite/gas/i386/x86-64-localpic.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/localpic.d: Updated.
|
|
|
|
|
* testsuite/gas/i386/x86-64-localpic.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/ilp32/x86-64-localpic.d: Likewise.
|
|
|
|
|
|
2020-04-01 20:10:34 +08:00
|
|
|
|
2020-04-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
|
|
|
|
|
|
|
|
|
PR gas/25732
|
|
|
|
|
* testsuite/gas/i386/solaris/x86-64-branch-2.d: New file.
|
|
|
|
|
* testsuite/gas/i386/solaris/x86-64-branch-3.d: New file.
|
|
|
|
|
* testsuite/gas/i386/solaris/x86-64-jump.d: Incorporate changes to
|
|
|
|
|
testsuite/gas/i386/x86-64-jump.d.
|
|
|
|
|
* gas/testsuite/gas/i386/solaris/x86-64-mpx-branch-1.d:
|
|
|
|
|
Incorporate changes to
|
|
|
|
|
gas/testsuite/gas/i386/x86-64-mpx-branch-1.d.
|
|
|
|
|
* testsuite/gas/i386/solaris/x86-64-mpx-branch-2.d : Incorporate
|
|
|
|
|
changes to testsuite/gas/i386/x86-64-mpx-branch-2.d.
|
|
|
|
|
* testsuite/gas/i386/x86-64-branch-2.d: Skip on *-*-solaris*.
|
|
|
|
|
* testsuite/gas/i386/x86-64-branch-3.d: Likewise.
|
|
|
|
|
|
2020-04-01 06:01:36 +08:00
|
|
|
|
2020-03-31 Maciej W. Rozycki <macro@linux-mips.org>
|
|
|
|
|
|
|
|
|
|
PR 25611
|
|
|
|
|
PR 25614
|
|
|
|
|
* dwarf2dbg.c: Do not include "bignum.h".
|
|
|
|
|
|
2020-03-12 17:48:39 +08:00
|
|
|
|
2020-03-30 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/riscv/alias-csr.d: Move this to priv-reg-pseudo.
|
|
|
|
|
* testsuite/gas/riscv/alias-csr.s: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/no-aliases-csr.d: Move this
|
|
|
|
|
to priv-reg-pseudo-noalias.
|
|
|
|
|
* testsuite/gas/riscv/bad-csr.d: Rename to priv-reg-fail-nonexistent.
|
|
|
|
|
* testsuite/gas/riscv/bad-csr.l: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/bad-csr.s: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/satp.d: Removed. Already included in priv-reg.
|
|
|
|
|
* testsuite/gas/riscv/satp.s: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-pseudo.d: New testcase for all pseudo
|
|
|
|
|
csr instruction, including alias-csr testcase.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-pseudo.s: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-pseudo-noalias.d: New testcase for all
|
|
|
|
|
pseudo instruction with objdump -Mno-aliases.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-nonexistent.d: New testcase.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-nonexistent.l: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-nonexistent.s: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg.d: Update CSR to 1.11.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg.s: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/csr-dw-regnums.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/csr-dw-regnums.s: Likewise.
|
|
|
|
|
|
2020-03-25 19:52:07 +08:00
|
|
|
|
2020-03-25 J.W. Jagersma <jwjagersma@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/obj-coff.c (obj_coff_section): Set the bss flag on
|
|
|
|
|
sections with the "b" attribute.
|
|
|
|
|
|
s12z disassembler tidy
Don't ignore buffer memory read failure, or malloc failure. Lots of
functions get a return status to pass these failures up the chain in
this patch.
opcodes/
* s12z-dis.c (abstract_read_memory): Don't print error on EOI.
* s12z-opc.c: Formatting.
(operands_f): Return an int.
(opr_n_bytes_p1): Return -1 on reaching buffer memory limit.
(opr_n_bytes2, bfextins_n_bytes, mul_n_bytes, bm_n_bytes),
(shift_n_bytes, mov_imm_opr_n_bytes, loop_prim_n_bytes),
(exg_sex_discrim): Likewise.
(create_immediate_operand, create_bitfield_operand),
(create_register_operand_with_size, create_register_all_operand),
(create_register_all16_operand, create_simple_memory_operand),
(create_memory_operand, create_memory_auto_operand): Don't
segfault on malloc failure.
(z_ext24_decode): Return an int status, negative on fail, zero
on success.
(x_imm1, imm1_decode, trap_decode, z_opr_decode, z_opr_decode2),
(imm1234, reg_s_imm, reg_s_opr, z_imm1234_8base, z_imm1234_0base),
(z_tfr, z_reg, reg_xy, lea_reg_xys_opr, lea_reg_xys, rel_15_7),
(decode_rel_15_7, cmp_xy, sub_d6_x_y, sub_d6_y_x),
(ld_18bit_decode, mul_decode, bm_decode, bm_rel_decode),
(mov_imm_opr, ld_18bit_decode, exg_sex_decode),
(loop_primitive_decode, shift_decode, psh_pul_decode),
(bit_field_decode): Similarly.
(z_decode_signed_value, decode_signed_value): Similarly. Add arg
to return value, update callers.
(x_opr_decode_with_size): Check all reads, returning NULL on fail.
Don't segfault on NULL operand.
(decode_operation): Return OP_INVALID on first fail.
(decode_s12z): Check all reads, returning -1 on fail.
gas/
* testsuite/gas/s12z/truncated.d: Update expected output.
2020-03-22 12:32:27 +08:00
|
|
|
|
2020-03-22 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/s12z/truncated.d: Update expected output.
|
|
|
|
|
|
2020-03-20 21:53:02 +08:00
|
|
|
|
2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 25690
|
|
|
|
|
* config/tc-z80.c (md_pseudo_table): Add xdef anf xref pseudo ops.
|
|
|
|
|
* doc/c-z80.texi: Update documentation.
|
|
|
|
|
|
2020-03-18 01:02:15 +08:00
|
|
|
|
2020-03-17 Sergey Belyashov <sergey.belyashov@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 25641
|
|
|
|
|
PR 25668
|
|
|
|
|
PR 25633
|
|
|
|
|
Fix disassembling ED+A4/AC/B4/BC opcodes.
|
|
|
|
|
Fix assembling lines containing colonless label and instruction
|
|
|
|
|
with first operand inside parentheses.
|
|
|
|
|
Fix registration of unsupported by target CPU registers.
|
|
|
|
|
* config/tc-z80.c: See above.
|
|
|
|
|
* config/tc-z80.h: See above.
|
|
|
|
|
* testsuite/gas/z80/colonless.d: Update test.
|
|
|
|
|
* testsuite/gas/z80/colonless.s: Likewise.
|
|
|
|
|
* testsuite/gas/z80/ez80_adl_all.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/ez80_unsup_regs.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/ez80_z80_all.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/gbz80_unsup_regs.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/r800_unsup_regs.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/unsup_regs.s: Likewise.
|
|
|
|
|
* testsuite/gas/z80/z180_unsup_regs.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/z80.exp: Likewise.
|
|
|
|
|
* testsuite/gas/z80/z80_strict_unsup_regs.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/z80_unsup_regs.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/z80n_unsup_regs.d: Likewise.
|
|
|
|
|
|
2020-03-13 21:31:56 +08:00
|
|
|
|
2020-03-13 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
|
|
|
|
|
|
|
|
|
PR 25660
|
|
|
|
|
* config/tc-arm.c (operand_parse_code): Add OP_RNSDMQR and OP_oRNSDMQ.
|
|
|
|
|
(parse_operands): Handle new operand codes.
|
|
|
|
|
(do_neon_dyadic_long): Make shape check accept the scalar variants.
|
|
|
|
|
(asm_opcode_insns): Fix operand codes for vaddl and vsubl.
|
|
|
|
|
* testsuite/gas/arm/mve-vaddsub-it.s: New test.
|
|
|
|
|
* testsuite/gas/arm/mve-vaddsub-it.d: New test.
|
|
|
|
|
* testsuite/gas/arm/mve-vaddsub-it-bad.s: New test.
|
|
|
|
|
* testsuite/gas/arm/mve-vaddsub-it-bad.l: New test.
|
|
|
|
|
* testsuite/gas/arm/mve-vaddsub-it-bad.d: New test.
|
|
|
|
|
* testsuite/gas/arm/nomve-vaddsub-it.d: New test.
|
|
|
|
|
|
2020-03-12 00:56:17 +08:00
|
|
|
|
2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* NEWS: Mention x86 assembler options for CVE-2020-0551.
|
|
|
|
|
|
2020-03-12 00:46:19 +08:00
|
|
|
|
2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new tests.
|
|
|
|
|
* testsuite/gas/i386/lfence-byte.d: New file.
|
|
|
|
|
* testsuite/gas/i386/lfence-byte.e: Likewise.
|
|
|
|
|
* testsuite/gas/i386/lfence-byte.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/lfence-indbr-a.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/lfence-indbr-b.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/lfence-indbr-c.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/lfence-indbr.e: Likewise.
|
|
|
|
|
* testsuite/gas/i386/lfence-indbr.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/lfence-load.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/lfence-load.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/lfence-ret-a.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/lfence-ret-b.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/lfence-ret.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-byte.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-byte.e: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-byte.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-indbr-a.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-indbr-b.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-indbr-c.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-indbr.e: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-indbr.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-load.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-load.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-ret-a.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-lfence-ret-b.d: Likewise.
|
|
|
|
|
|
2020-03-12 00:46:19 +08:00
|
|
|
|
2020-03-11 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (lfence_after_load): New.
|
|
|
|
|
(lfence_before_indirect_branch_kind): New.
|
|
|
|
|
(lfence_before_indirect_branch): New.
|
|
|
|
|
(lfence_before_ret_kind): New.
|
|
|
|
|
(lfence_before_ret): New.
|
|
|
|
|
(last_insn): New.
|
|
|
|
|
(load_insn_p): New.
|
|
|
|
|
(insert_lfence_after): New.
|
|
|
|
|
(insert_lfence_before): New.
|
|
|
|
|
(md_assemble): Call insert_lfence_before and insert_lfence_after.
|
|
|
|
|
Set last_insn.
|
|
|
|
|
(OPTION_MLFENCE_AFTER_LOAD): New.
|
|
|
|
|
(OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New.
|
|
|
|
|
(OPTION_MLFENCE_BEFORE_RET): New.
|
|
|
|
|
(md_longopts): Add -mlfence-after-load=,
|
|
|
|
|
-mlfence-before-indirect-branch= and -mlfence-before-ret=.
|
|
|
|
|
(md_parse_option): Handle -mlfence-after-load=,
|
|
|
|
|
-mlfence-before-indirect-branch= and -mlfence-before-ret=.
|
|
|
|
|
(md_show_usage): Display -mlfence-after-load=,
|
|
|
|
|
-mlfence-before-indirect-branch= and -mlfence-before-ret=.
|
|
|
|
|
(i386_cons_align): New.
|
|
|
|
|
* config/tc-i386.h (i386_cons_align): New.
|
|
|
|
|
(md_cons_align): New.
|
|
|
|
|
* doc/c-i386.texi: Document -mlfence-after-load=,
|
|
|
|
|
-mlfence-before-indirect-branch= and -mlfence-before-ret=.
|
|
|
|
|
|
2020-03-11 18:17:14 +08:00
|
|
|
|
2020-03-11 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 25611
|
|
|
|
|
PR 25614
|
|
|
|
|
* dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1.
|
|
|
|
|
(DWARF2_FILE_SIZE_NAME): Default to -1.
|
|
|
|
|
(DWARF2_LINE_VERSION): Default to the current dwarf level or 3,
|
|
|
|
|
whichever is higher.
|
|
|
|
|
(DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1.
|
|
|
|
|
(NUM_MD5_BYTES): Define.
|
|
|
|
|
(struct file entry): Add md5 field.
|
|
|
|
|
(get_filenum): Delete and replace with...
|
|
|
|
|
(get_basename): New function.
|
|
|
|
|
(get_directory_table_entry): New function.
|
|
|
|
|
(allocate_filenum): New function.
|
|
|
|
|
(allocate_filename_to_slot): New function.
|
|
|
|
|
(dwarf2_where): Use new functions.
|
|
|
|
|
(dwarf2_directive_filename): Add support for extended .file
|
|
|
|
|
pseudo-op.
|
|
|
|
|
(dwarf2_directive_loc): Allow the use of file number zero with
|
|
|
|
|
DWARF 5 or higher.
|
|
|
|
|
(out_file_list): Rename to...
|
|
|
|
|
(out_dir_and_file_list): Add DWARF 5 support.
|
|
|
|
|
(out_debug_line): Emit extra values into the section header for
|
|
|
|
|
DWARF 5.
|
|
|
|
|
(out_debug_str): Allow for file 0 to be used with DWARF 5.
|
|
|
|
|
* doc/as.texi (.file): Update the description of this pseudo-op.
|
|
|
|
|
* testsuite/gas/elf-dwarf-5-file0.s: Add more lines.
|
|
|
|
|
* testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output.
|
|
|
|
|
* testsuite/gas/lns/lns-diag-1.l: Update expected error message.
|
|
|
|
|
* NEWS: Mention the new feature.
|
|
|
|
|
|
2020-03-10 19:22:50 +08:00
|
|
|
|
2020-03-10 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-csky.c (get_operand_value): Rewrite 1 << 31 expressions
|
|
|
|
|
to avoid signed overflow.
|
|
|
|
|
* config/tc-mcore.c (md_assemble): Likewise.
|
|
|
|
|
* config/tc-mips.c (gpr_read_mask, gpr_write_mask): Likewise.
|
|
|
|
|
* config/tc-nds32.c (SET_ADDEND): Likewise.
|
|
|
|
|
* config/tc-nios2.c (nios2_assemble_arg_R): Likewise.
|
|
|
|
|
|
2020-03-09 17:13:43 +08:00
|
|
|
|
2020-03-09 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/avx.s: Add long-form VCMP[PS][SD] pseudos.
|
|
|
|
|
* testsuite/gas/i386/avx.d, testsuite/gas/i386/avx-16bit.d,
|
|
|
|
|
testsuite/gas/i386/avx-intel.d: Adjust expectations.
|
|
|
|
|
|
2020-03-07 17:39:57 +08:00
|
|
|
|
2020-03-07 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/elf/dwarf-5-file0.s: Don't start directives in
|
|
|
|
|
first column.
|
|
|
|
|
|
2020-03-07 01:13:22 +08:00
|
|
|
|
2020-03-06 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 25614
|
|
|
|
|
* dwarf2dbg.c (dwarf2_directive_filename): Allow a file number of
|
|
|
|
|
0 if the dwarf_level is 5 or more. Complain if a filename follows
|
|
|
|
|
a file 0.
|
|
|
|
|
* testsuite/gas/elf/dwarf-5-file0.s: New test.
|
|
|
|
|
* testsuite/gas/elf/dwarf-5-file0.d: New test driver.
|
|
|
|
|
* testsuite/gas/elf/elf.exp: Run the new test.
|
|
|
|
|
|
|
|
|
|
PR 25612
|
|
|
|
|
* config/tc-ia64.h (DWARF2_VERISION): Fix typo.
|
|
|
|
|
* doc/as.texi: Fix another typo.
|
|
|
|
|
|
2020-03-06 22:52:14 +08:00
|
|
|
|
2020-03-06 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 25612
|
|
|
|
|
* as.c (dwarf_level): Define.
|
|
|
|
|
(show_usage): Add --gdwarf-3, --gdwarf-4 and --gdwarf-5.
|
|
|
|
|
(parse_args): Add support for the new options.
|
|
|
|
|
as.h (dwarf_level): Prototype.
|
|
|
|
|
* dwarf2dbg.c (DWARF2_VERSION): Use dwarf_level as default version
|
|
|
|
|
value.
|
|
|
|
|
* config/tc-ia64.h (DWARF2_VERISION): Update definition.
|
|
|
|
|
(DWARF2_LINE_VERSION): Remove definition.
|
|
|
|
|
* doc/as.texi: Document the new options.
|
|
|
|
|
|
2020-03-06 18:44:12 +08:00
|
|
|
|
2020-03-06 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 25572
|
|
|
|
|
* as.c (main): Allow matching input and outputs when they are
|
|
|
|
|
not regular files.
|
|
|
|
|
|
2020-03-06 15:56:47 +08:00
|
|
|
|
2020-03-06 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (match_mem_size): Generalize broadcast special
|
|
|
|
|
casing.
|
|
|
|
|
(check_VecOperands): Zap xmmword/ymmword/zmmword when more than
|
|
|
|
|
one of byte/word/dword/qword is set alongside a SIMD register in
|
|
|
|
|
a template's operand.
|
|
|
|
|
|
x86: drop/replace IgnoreSize
Even after commit dc2be329b950 ("i386: Only check suffix in instruction
mnemonic"), by which many of its uses have become unnecessary (some were
unnecessary even before), IgnoreSize is still used for various slightly
different purposes:
- to suppress emission of an operand size prefix,
- in Intel syntax mode to zap "derived" suffixes in certain cases and to
skip certain checks of remaining "derived" suffixes,
- to suppress ambiguous operand size / missing suffix diagnostics,
- for prefixes to suppress the "stand-alone ... prefix" warning.
Drop entirely unnecessary ones and where possible also replace instances
by the more focused (because of having just a single purpose) NoRex64.
To further restrict when IgnoreSize is needed, also generalize the logic
when to skip a template because of a present or derived L or Q suffix,
by skipping immediate operands. Additionally consider mask registers and
VecSIB there.
Note that for the time being the attribute needs to be kept in place on
MMX/SSE/etc insns (but not on VEX/EVEX encoded ones unless an operand
template of them allows for only non-SIMD-register actuals) allowing for
Dword operands - the logic when to emit a data size prefix would need
further adjustment first.
Note also that the memory forms of {,v}pinsrw get their permission for
an L or Q suffix dropped. I can only assume that it being this way was a
cut-and-paste mistake from the register forms, as the latter
specifically have NoRex64 set, and the {,v}pextrw counterparts don't
allow these suffixes either.
Convert VexW= again to their respective VexW* on lines touched anyway.
2020-03-06 15:55:52 +08:00
|
|
|
|
2020-03-06 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (match_template): Extend code in logic
|
|
|
|
|
rejecting certain suffixes in certain modes to also cover mask
|
|
|
|
|
register use and VecSIB. Drop special casing of broadcast. Skip
|
|
|
|
|
immediates in the check.
|
|
|
|
|
|
2020-03-06 15:55:03 +08:00
|
|
|
|
2020-03-06 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (match_template): Fold duplicate code in
|
|
|
|
|
logic rejecting certain suffixes in certain modes. Drop
|
|
|
|
|
pointless "else".
|
|
|
|
|
|
2020-03-06 15:53:18 +08:00
|
|
|
|
2020-03-06 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (process_suffix): Exlucde !vexw insns
|
|
|
|
|
alongside !norex64 ones.
|
|
|
|
|
* testsuite/gas/i386/x86-64-avx512bw.s: Test VPEXTR* and VPINSR*
|
|
|
|
|
with both 32- and 64-bit GPR operands.
|
|
|
|
|
* testsuite/gas/i386/x86-64-avx512f.s: Test VEXTRACTPS with both
|
|
|
|
|
32- and 64-bit GPR operands.
|
|
|
|
|
* testsuite/gas/i386/x86-64-avx512bw-intel.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-avx512bw.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-avx512f-intel.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-avx512f.d: Adjust expectations.
|
|
|
|
|
|
2020-03-06 15:52:12 +08:00
|
|
|
|
2020-03-06 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (md_assemble): Drop use of rex64.
|
|
|
|
|
(process_suffix): For REX.W for 64-bit CRC32.
|
|
|
|
|
|
2020-03-06 15:50:56 +08:00
|
|
|
|
2020-03-06 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (i386_addressing_mode): For 32-bit
|
|
|
|
|
addressing for MPX insns without base/index.
|
|
|
|
|
* testsuite/gas/i386/mpx-16bit.s,
|
|
|
|
|
* testsuite/gas/i386/mpx-16bit.d: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new test.
|
|
|
|
|
|
2020-03-06 15:49:45 +08:00
|
|
|
|
2020-03-06 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/adx.s, testsuite/gas/i386/cet.s,
|
|
|
|
|
testsuite/gas/i386/ept.s, testsuite/gas/i386/fsgs.s,
|
|
|
|
|
testsuite/gas/i386/invpcid.s, testsuite/gas/i386/movdir.s,
|
|
|
|
|
testsuite/gas/i386/ptwrite.s, testsuite/gas/i386/vmx.s,
|
|
|
|
|
* testsuite/gas/i386/code16.s: Add CR, DR, and TR access cases
|
|
|
|
|
as well as a BSWAP one.
|
|
|
|
|
* testsuite/gas/i386/rdpid.s: Add 16-bit case.
|
|
|
|
|
* testsuite/gas/i386/sse2-16bit.s: Cover more insns.
|
|
|
|
|
* testsuite/gas/i386/adx-intel.d, testsuite/gas/i386/adx.d,
|
|
|
|
|
testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d,
|
|
|
|
|
testsuite/gas/i386/code16.d, testsuite/gas/i386/ept-intel.d,
|
|
|
|
|
testsuite/gas/i386/ept.d, testsuite/gas/i386/fsgs-intel.d,
|
|
|
|
|
testsuite/gas/i386/fsgs.d, testsuite/gas/i386/invpcid-intel.d,
|
|
|
|
|
testsuite/gas/i386/invpcid.d, testsuite/gas/i386/movdir-intel.d,
|
|
|
|
|
testsuite/gas/i386/movdir.d, testsuite/gas/i386/ptwrite-intel.d,
|
|
|
|
|
testsuite/gas/i386/ptwrite.d, testsuite/gas/i386/rdpid-intel.d,
|
|
|
|
|
testsuite/gas/i386/rdpid.d, testsuite/gas/i386/sse2-16bit.d,
|
|
|
|
|
testsuite/gas/i386/vmx.d: Adjust expectations.
|
|
|
|
|
|
2020-03-06 15:48:48 +08:00
|
|
|
|
2020-03-06 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (md_assemble): Also exclude tpause and umwait
|
|
|
|
|
from having their operands swapped.
|
|
|
|
|
* testsuite/gas/i386/waitpkg.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait
|
|
|
|
|
3-operand cases as well as testing of 16-bit code generation.
|
|
|
|
|
* testsuite/gas/i386/waitpkg.d,
|
|
|
|
|
testsuite/gas/i386/waitpkg-intel.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-waitpkg.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations.
|
|
|
|
|
|
2020-03-04 13:08:04 +08:00
|
|
|
|
2020-03-04 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
2020-03-04 13:08:05 +08:00
|
|
|
|
* config/tc-riscv.c (percent_op_utype): Support the modifier
|
|
|
|
|
%got_pcrel_hi.
|
|
|
|
|
* doc/c-riscv.texi: Add documentation.
|
|
|
|
|
* testsuite/gas/riscv/no-relax-reloc.d: Add test case for the new
|
|
|
|
|
modifier %got_pcrel_hi.
|
|
|
|
|
* testsuite/gas/riscv/no-relax-reloc.s: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/relax-reloc.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/relax-reloc.s: Likewise.
|
|
|
|
|
|
2020-03-04 13:08:04 +08:00
|
|
|
|
* doc/c-riscv.texi (relocation modifiers): Add documentation.
|
|
|
|
|
(RISC-V-Formats): Update the section name from "Instruction Formats"
|
|
|
|
|
to "RISC-V Instruction Formats".
|
|
|
|
|
|
2020-03-05 01:28:46 +08:00
|
|
|
|
2020-03-04 Alexandre Oliva <oliva@adacore.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (md_apply_fix): Warn if a PC-relative load is
|
|
|
|
|
detected in a section which does not have at least 4 byte
|
|
|
|
|
alignment.
|
|
|
|
|
* testsuite/gas/arm/armv8-ar-it-bad.s: Add alignment directive.
|
|
|
|
|
* testsuite/gas/arm/ldr-t.s: Likewise.
|
|
|
|
|
* testsuite/gas/arm/sp-pc-usage-t.s: Likewise.
|
|
|
|
|
* testsuite/gas/arm/sp-pc-usage-t.d: Finish test at end of
|
|
|
|
|
disassembly, ignoring any NOPs that may have been inserted because
|
|
|
|
|
of section alignment.
|
|
|
|
|
* testsuite/gas/arm/ldr-t.d: Likewise.
|
|
|
|
|
|
2020-03-04 15:58:13 +08:00
|
|
|
|
2020-03-04 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (cpu_arch): Add .sev_es entry.
|
|
|
|
|
* doc/c-i386.texi: Mention sev_es.
|
|
|
|
|
* testsuite/gas/i386/arch-13.s: Add SEV-ES case.
|
|
|
|
|
* testsuite/gas/i386/arch-13.d: Extend -march=. Adjust
|
|
|
|
|
expectations.
|
|
|
|
|
* testsuite/gas/i386/arch-13-znver1.d,
|
|
|
|
|
testsuite/gas/i386/arch-13-znver2.d: Extend -march=.
|
|
|
|
|
|
2020-03-04 03:24:16 +08:00
|
|
|
|
2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (match_template): Replace ignoresize and
|
|
|
|
|
defaultsize with mnemonicsize.
|
|
|
|
|
(process_suffix): Likewise.
|
|
|
|
|
|
2020-03-04 00:31:42 +08:00
|
|
|
|
2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 25627
|
|
|
|
|
* config/tc-z80.c (emit_ld_rr_m): Fix invalid compilation of
|
|
|
|
|
instruction LD IY,(HL).
|
|
|
|
|
* testsuite/gas/z80/ez80_adl_all.d: Update expected disassembly.
|
|
|
|
|
* testsuite/gas/z80/ez80_adl_all.s: Add tests of the instruction.
|
|
|
|
|
* testsuite/gas/z80/ez80_z80_all.d: Update expected disassembly.
|
|
|
|
|
* testsuite/gas/z80/ez80_z80_all.s: Add tests of the instruction.
|
|
|
|
|
|
x86: Allow integer conversion without suffix in AT&T syntax
According to gas manual, suffix in instruction mnemonics isn't always
required:
When there is no sizing suffix and no (suitable) register operands to
deduce the size of memory operands, with a few exceptions and where long
operand size is possible in the first place, operand size will default
to long in 32- and 64-bit modes.
This includes cvtsi2sd, cvtsi2ss, vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and
vcvtusi2ss. Since they are used in GCC 8 and older GCC releases, they
must be allowed without suffix in AT&T syntax.
gas/
PR gas/25622
* testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and
x86-64-default-suffix-avx.
* testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss,
vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries.
* testsuite/gas/i386/noreg64.d: Updated.
* testsuite/gas/i386/noreg64.l: Likewise.
* testsuite/gas/i386/x86-64-default-suffix-avx.d: New file.
* testsuite/gas/i386/x86-64-default-suffix.d: Likewise.
* testsuite/gas/i386/x86-64-default-suffix.s: Likewise.
opcodes/
PR gas/25622
* i386-opc.tbl: Add IgnoreSize to cvtsi2sd, cvtsi2ss, vcvtsi2sd,
vcvtsi2ss, vcvtusi2sd and vcvtusi2ss for AT&T syntax.
* i386-tbl.h: Regenerated.
2020-03-03 23:39:18 +08:00
|
|
|
|
2020-03-03 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/25622
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run x86-64-default-suffix and
|
|
|
|
|
x86-64-default-suffix-avx.
|
|
|
|
|
* testsuite/gas/i386/noreg64.s: Remove cvtsi2sd, cvtsi2ss,
|
|
|
|
|
vcvtsi2sd, vcvtsi2ss, vcvtusi2sd and vcvtusi2ss entries.
|
|
|
|
|
* testsuite/gas/i386/noreg64.d: Updated.
|
|
|
|
|
* testsuite/gas/i386/noreg64.l: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-default-suffix-avx.d: New file.
|
|
|
|
|
* testsuite/gas/i386/x86-64-default-suffix.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-default-suffix.s: Likewise.
|
|
|
|
|
|
2020-03-03 21:09:19 +08:00
|
|
|
|
2020-03-03 Sergey Belyashov <sergey.belyashov@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 25604
|
|
|
|
|
* config/tc-z80.c (contains_register): Prevent an illegal memory
|
|
|
|
|
access when checking an expression for a register name.
|
|
|
|
|
|
2020-03-03 06:14:26 +08:00
|
|
|
|
2020-03-03 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/obj-coff.h: Remove vestiges of coff-m68k and pe-mips
|
|
|
|
|
support.
|
|
|
|
|
|
2020-03-02 07:47:18 +08:00
|
|
|
|
2020-03-02 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-m32r.c (md_begin): Set SEC_SMALL_DATA on .scommon section.
|
|
|
|
|
* config/tc-mips.c (s_change_sec): Set SEC_SMALL_DATA for .sdata
|
|
|
|
|
and .sbss sections.
|
|
|
|
|
* config/tc-score.c: Delete !BFD_ASSEMBLER code throughout.
|
|
|
|
|
(s3_s_change_sec): Set SEC_SMALL_DATA for .sbss section.
|
|
|
|
|
(s3_s_score_lcomm): Likewise.
|
|
|
|
|
* config/tc-score7.c: Similarly.
|
|
|
|
|
* read.c (bss_alloc): Set SEC_SMALL_DATA for .sbss section.
|
|
|
|
|
|
2020-02-28 15:58:13 +08:00
|
|
|
|
2020-02-28 YunQiang Su <syq@debian.org>
|
|
|
|
|
|
|
|
|
|
PR gas/25539
|
|
|
|
|
* config/tc-mips.c (fix_loongson3_llsc): Compare label value
|
|
|
|
|
to handle multi-labels.
|
|
|
|
|
(has_label_name): New.
|
|
|
|
|
|
2020-02-26 22:23:11 +08:00
|
|
|
|
2020-02-26 Matthew Malcomson <matthew.malcomson@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (enum pred_instruction_type): Remove
|
|
|
|
|
NEUTRAL_IT_NO_VPT_INSN predication type.
|
|
|
|
|
(cxn_handle_predication): Modify to require condition suffixes.
|
|
|
|
|
(handle_pred_state): Remove NEUTRAL_IT_NO_VPT_INSN cases.
|
|
|
|
|
* testsuite/gas/arm/cde-scalar.s: Update test.
|
|
|
|
|
* testsuite/gas/arm/cde-warnings.l: Update test.
|
|
|
|
|
* testsuite/gas/arm/cde-warnings.s: Update test.
|
|
|
|
|
|
2020-02-26 10:27:19 +08:00
|
|
|
|
2020-02-26 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (reg_expected_msgs[REG_TYPE_RNB]): Don't use
|
|
|
|
|
N_() on empty string.
|
|
|
|
|
|
2020-02-26 10:08:11 +08:00
|
|
|
|
2020-02-26 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* read.c (read_a_source_file): Call strncpy with length one
|
|
|
|
|
less than size of original_case_string.
|
|
|
|
|
|
2020-02-25 13:04:46 +08:00
|
|
|
|
2020-02-26 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/obj-elf.c: Indent labels correctly.
|
|
|
|
|
* config/obj-macho.c: Likewise.
|
|
|
|
|
* config/tc-aarch64.c: Likewise.
|
|
|
|
|
* config/tc-alpha.c: Likewise.
|
|
|
|
|
* config/tc-arm.c: Likewise.
|
|
|
|
|
* config/tc-cr16.c: Likewise.
|
|
|
|
|
* config/tc-crx.c: Likewise.
|
|
|
|
|
* config/tc-frv.c: Likewise.
|
|
|
|
|
* config/tc-i386-intel.c: Likewise.
|
|
|
|
|
* config/tc-i386.c: Likewise.
|
|
|
|
|
* config/tc-ia64.c: Likewise.
|
|
|
|
|
* config/tc-mn10200.c: Likewise.
|
|
|
|
|
* config/tc-mn10300.c: Likewise.
|
|
|
|
|
* config/tc-nds32.c: Likewise.
|
|
|
|
|
* config/tc-riscv.c: Likewise.
|
|
|
|
|
* config/tc-s12z.c: Likewise.
|
|
|
|
|
* config/tc-xtensa.c: Likewise.
|
|
|
|
|
* config/tc-z80.c: Likewise.
|
|
|
|
|
* read.c: Likewise.
|
|
|
|
|
* symbols.c: Likewise.
|
|
|
|
|
* write.c: Likewise.
|
|
|
|
|
|
RISC-V: Support the ISA-dependent CSR checking.
According to the riscv privilege spec, some CSR are only valid when rv32 or
the specific extension is set. We extend the DECLARE_CSR and DECLARE_CSR_ALIAS
to record more informaton we need, and then check whether the CSR is valid
according to these information. We report warning message when the CSR is
invalid, so we have a choice between error and warning by --fatal-warnings
option. Also, a --no-warn/-W option is used to turn the warnings off, if
people don't want the warnings.
gas/
* config/tc-riscv.c (enum riscv_csr_class): New enum. Used to decide
whether or not this CSR is legal in the current ISA string.
(struct riscv_csr_extra): New structure to hold all extra information
of CSR.
(riscv_init_csr_hash): New function. According to the DECLARE_CSR and
DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
Call hash_reg_name to insert CSR address into reg_names_hash.
(md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
(reg_csr_lookup_internal, riscv_csr_class_check): New functions.
Decide whether the CSR is valid according to the csr_extra_hash.
(init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
not a boolean. This is same as riscv_init_csr_hash, so keep the
consistent usage.
* testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
* testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
* testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
f-ext CSR are not allowed.
* testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
* testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
source file is `priv-reg.s`, and the ISA is rv64if, so the
rv32-only CSR are not allowed.
* testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
include/
* opcode/riscv-opc.h: Extend DECLARE_CSR and DECLARE_CSR_ALIAS to
record riscv_csr_class.
opcodes/
* riscv-dis.c (print_insn_args): Updated since the DECLARE_CSR is changed.
gdb/
* riscv-tdep.c: Updated since the DECLARE_CSR is changed.
* riscv-tdep.h: Likewise.
* features/riscv/rebuild-csr-xml.sh: Generate the 64bit-csr.xml without
rv32-only CSR.
* features/riscv/64bit-csr.xml: Regernated.
binutils/
* dwarf.c: Updated since the DECLARE_CSR is changed.
2020-02-12 18:18:49 +08:00
|
|
|
|
2020-02-20 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
2020-02-12 18:18:51 +08:00
|
|
|
|
* config/tc-riscv.c (riscv_ip): New boolean insn_with_csr to indicate
|
|
|
|
|
we are assembling instruction with CSR. Call riscv_csr_read_only_check
|
|
|
|
|
after parsing all arguments.
|
|
|
|
|
(enum csr_insn_type): New enum is used to classify the CSR instruction.
|
|
|
|
|
(riscv_csr_insn_type, riscv_csr_read_only_check): New functions. These
|
|
|
|
|
are used to check if we write a read-only CSR by the CSR instruction.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-read-only-01.s: New testcase. Test
|
|
|
|
|
all CSR for the read-only CSR checking.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-read-only-01.l: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-read-only-02.s: New testcase. Test
|
|
|
|
|
all CSR instructions for the read-only CSR checking.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-read-only-02.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-read-only-02.l: Likewise.
|
|
|
|
|
|
2020-02-12 18:18:50 +08:00
|
|
|
|
* config/tc-riscv.c (struct riscv_set_options): New field csr_check.
|
|
|
|
|
(riscv_opts): Initialize it.
|
|
|
|
|
(reg_lookup_internal): Check the `riscv_opts.csr_check`
|
|
|
|
|
before doing the CSR checking.
|
|
|
|
|
(enum options): Add OPTION_CSR_CHECK and OPTION_NO_CSR_CHECK.
|
|
|
|
|
(md_longopts): Add mcsr-check and mno-csr-check.
|
|
|
|
|
(md_parse_option): Handle new enum option values.
|
|
|
|
|
(s_riscv_option): Handle new long options.
|
|
|
|
|
* doc/c-riscv.texi: Add description for the new .option and assembler
|
|
|
|
|
options.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-fext.d: Add `-mcsr-check` to enable
|
|
|
|
|
the CSR checking.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise.
|
|
|
|
|
|
RISC-V: Support the ISA-dependent CSR checking.
According to the riscv privilege spec, some CSR are only valid when rv32 or
the specific extension is set. We extend the DECLARE_CSR and DECLARE_CSR_ALIAS
to record more informaton we need, and then check whether the CSR is valid
according to these information. We report warning message when the CSR is
invalid, so we have a choice between error and warning by --fatal-warnings
option. Also, a --no-warn/-W option is used to turn the warnings off, if
people don't want the warnings.
gas/
* config/tc-riscv.c (enum riscv_csr_class): New enum. Used to decide
whether or not this CSR is legal in the current ISA string.
(struct riscv_csr_extra): New structure to hold all extra information
of CSR.
(riscv_init_csr_hash): New function. According to the DECLARE_CSR and
DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
Call hash_reg_name to insert CSR address into reg_names_hash.
(md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
(reg_csr_lookup_internal, riscv_csr_class_check): New functions.
Decide whether the CSR is valid according to the csr_extra_hash.
(init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
not a boolean. This is same as riscv_init_csr_hash, so keep the
consistent usage.
* testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
* testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
* testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
f-ext CSR are not allowed.
* testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
* testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
source file is `priv-reg.s`, and the ISA is rv64if, so the
rv32-only CSR are not allowed.
* testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
include/
* opcode/riscv-opc.h: Extend DECLARE_CSR and DECLARE_CSR_ALIAS to
record riscv_csr_class.
opcodes/
* riscv-dis.c (print_insn_args): Updated since the DECLARE_CSR is changed.
gdb/
* riscv-tdep.c: Updated since the DECLARE_CSR is changed.
* riscv-tdep.h: Likewise.
* features/riscv/rebuild-csr-xml.sh: Generate the 64bit-csr.xml without
rv32-only CSR.
* features/riscv/64bit-csr.xml: Regernated.
binutils/
* dwarf.c: Updated since the DECLARE_CSR is changed.
2020-02-12 18:18:49 +08:00
|
|
|
|
* config/tc-riscv.c (csr_extra_hash): New.
|
|
|
|
|
(enum riscv_csr_class): New enum. Used to decide
|
|
|
|
|
whether or not this CSR is legal in the current ISA string.
|
|
|
|
|
(struct riscv_csr_extra): New structure to hold all extra information
|
|
|
|
|
of CSR.
|
|
|
|
|
(riscv_init_csr_hashes): New. According to the DECLARE_CSR and
|
|
|
|
|
DECLARE_CSR_ALIAS, insert CSR extra information into csr_extra_hash.
|
|
|
|
|
Call hash_reg_name to insert CSR address into reg_names_hash.
|
|
|
|
|
(reg_csr_lookup_internal, riscv_csr_class_check): New functions.
|
|
|
|
|
Decide whether the CSR is valid according to the csr_extra_hash.
|
|
|
|
|
(reg_lookup_internal): Call reg_csr_lookup_internal for CSRs.
|
|
|
|
|
(init_opcode_hash): Update 'if (hash_error != NULL)' as hash_error is
|
|
|
|
|
not a boolean. This is same as riscv_init_csr_hash, so keep the
|
|
|
|
|
consistent usage.
|
|
|
|
|
(md_begin): Call riscv_init_csr_hashes for each DECLARE_CSR.
|
|
|
|
|
* testsuite/gas/riscv/csr-dw-regnums.d: Add -march=rv32if option.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg.d: Add f-ext by -march option.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-fext.d: New testcase. The source
|
|
|
|
|
file is `priv-reg.s`, and the ISA is rv32i without f-ext, so the
|
|
|
|
|
f-ext CSR are not allowed.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-fext.l: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-rv32-only.d: New testcase. The
|
|
|
|
|
source file is `priv-reg.s`, and the ISA is rv64if, so the
|
|
|
|
|
rv32-only CSR are not allowed.
|
|
|
|
|
* testsuite/gas/riscv/priv-reg-fail-rv32-only.l: Likewise.
|
|
|
|
|
|
2020-02-20 21:05:21 +08:00
|
|
|
|
2020-02-21 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-pdp11.c (md_apply_fix): Handle BFD_RELOC_32.
|
|
|
|
|
(tc_gen_reloc): Only give a BAD_CASE assertion on pcrel relocs.
|
|
|
|
|
|
PR25569, PDP11 ld -s clobbers last data byte
This patch fixes an ancient wart in aout support, in that text and
data section sizes are rounded up for alignment rather that just the
corresponding header sizes. Changing section sizes could conceivably
result in buffer overflows if section contents were held in memory.
Also, keeping the original section sizes allows this PR to be fixed
nicely.
bfd/
PR 25569
* aoutx.h (adjust_o_magic, adjust_z_magic, adjust_n_magic): Use
"text", "data" and "bss" section pointer vars. Don't update
section size, just exec header sizes.
(adjust_sizes_and_vmas): Don't update text section size. Set
initial exec header a_text. Print exec headers sizes.
* pdp11.c (adjust_o_magic, adjust_z_magic, adjust_n_magic),
(adjust_sizes_and_vmas): Similarly. Formatting.
(final_link): Correct final file extension.
gas/
PR 25569
* config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop
on section size adjustment, instead perform another write if
exec header size is larger than section size.
2020-02-20 19:23:44 +08:00
|
|
|
|
2020-02-21 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 25569
|
|
|
|
|
* config/obj-aout.c (obj_aout_frob_file_before_fix): Don't loop
|
|
|
|
|
on section size adjustment, instead perform another write if
|
|
|
|
|
exec header size is larger than section size.
|
|
|
|
|
|
2020-02-06 11:14:21 +08:00
|
|
|
|
2020-02-19 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* doc/c-riscv.texi: Add the doc entries for -march-attr/
|
|
|
|
|
-mno-arch-attr command line options.
|
|
|
|
|
|
2020-02-20 06:51:07 +08:00
|
|
|
|
2020-02-19 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/riscv/c-add-addi.d: New testcase.
|
|
|
|
|
* testsuite/gas/riscv/c-add-addi.s: Likewise.
|
|
|
|
|
|
2020-02-20 01:46:10 +08:00
|
|
|
|
2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 25576
|
|
|
|
|
* config/tc-z80.c (md_parse_option): Do not use an underscore
|
|
|
|
|
prefix for local labels in SDCC compatability mode.
|
|
|
|
|
(z80_start_line_hook): Remove SDCC dollar label support.
|
|
|
|
|
* testsuite/gas/z80/sdcc.d: Update expected disassembly.
|
|
|
|
|
* testsuite/gas/z80/sdcc.s: Likewise.
|
|
|
|
|
|
|
|
|
|
2020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 25517
|
|
|
|
|
* config/tc-z80.c: Add -march option.
|
|
|
|
|
* doc/as.texi: Update Z80 documentation.
|
|
|
|
|
* doc/c-z80.texi: Likewise.
|
|
|
|
|
* testsuite/gas/z80/ez80_adl_all.d: Update command line.
|
|
|
|
|
* testsuite/gas/z80/ez80_adl_suf.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/ez80_pref_dis.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/ez80_z80_all.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/ez80_z80_suf.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/gbz80_all.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/r800_extra.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/r800_ii8.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/r800_z80_doc.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/sdcc.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/z180.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/z180_z80_doc.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/z80_doc.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/z80_ii8.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/z80_in_f_c.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/z80_op_ii_ld.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/z80_out_c_0.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/z80_sli.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/z80n_all.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/z80n_reloc.d: Likewise.
|
|
|
|
|
|
2020-02-19 20:54:45 +08:00
|
|
|
|
2020-02-19 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (output_insn): Mark cvtpi2ps and cvtpi2pd
|
|
|
|
|
with GNU_PROPERTY_X86_FEATURE_2_MMX.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run property-3 and
|
|
|
|
|
x86-64-property-3.
|
|
|
|
|
* testsuite/gas/i386/property-3.d: New file.
|
|
|
|
|
* testsuite/gas/i386/property-3.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-property-3.d: Likewise.
|
|
|
|
|
|
2020-02-17 23:12:10 +08:00
|
|
|
|
2020-02-17 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (cpu_arch): Add .popcnt.
|
|
|
|
|
* doc/c-i386.texi: Remove abm and .abm. Add popcnt and .popcnt.
|
|
|
|
|
Add a tab before @samp{.sse4a}.
|
|
|
|
|
|
2020-02-17 15:59:07 +08:00
|
|
|
|
2020-02-17 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (process_suffix): Don't try to guess a suffix
|
|
|
|
|
for AddrPrefixOpReg templates. Combine the two pieces of
|
|
|
|
|
addrprefixopreg handling. Reject 16-bit address reg in 64-bit
|
|
|
|
|
mode.
|
|
|
|
|
|
2020-02-17 15:57:54 +08:00
|
|
|
|
2020-02-17 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
PR gas/14439
|
|
|
|
|
* config/tc-i386.c (md_assemble): Also suppress operand
|
|
|
|
|
swapping for MONITOR{,X} and MWAIT{,X}.
|
|
|
|
|
* testsuite/gas/i386/sse3.s, testsuite/gas/i386/x86-64-sse3.s:
|
|
|
|
|
Add Intel syntax monitor/mwait tests.
|
|
|
|
|
* testsuite/gas/i386/sse3.d, testsuite/gas/i386/x86-64-sse3.d:
|
|
|
|
|
Adjust expectations.
|
|
|
|
|
*testsuite/gas/i386/sse3-intel.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-sse3-intel.d: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new tests.
|
|
|
|
|
|
2020-02-17 15:56:18 +08:00
|
|
|
|
2020-02-17 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
PR gas/6518
|
|
|
|
|
* config/tc-i386.c (process_suffix): Re-work Intel-syntax
|
|
|
|
|
[XYZ]MMWord memory operand ambiguity recognition logic (largely
|
|
|
|
|
re-indentation).
|
|
|
|
|
* testsuite/gas/i386/avx512dq-inval.s: Add vcvtqq2ps/vcvtuqq2ps
|
|
|
|
|
cases.
|
|
|
|
|
* testsuite/gas/i386/inval-avx512f.s: Also test vcvtneps2bf16.
|
|
|
|
|
* testsuite/gas/i386/avx512dq-inval.l,
|
|
|
|
|
testsuite/gas/i386/inval-avx.l,
|
|
|
|
|
testsuite/gas/i386/inval-avx512f.l: Adjust expectations.
|
|
|
|
|
* testsuite/gas/i386/avx512vl-ambig.s,
|
|
|
|
|
testsuite/gas/i386/avx512vl-ambig.l: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new test.
|
|
|
|
|
|
2020-02-17 00:36:51 +08:00
|
|
|
|
2020-02-16 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (cpu_arch): Add .sse4a and nosse4a. Restore
|
|
|
|
|
nosse4.
|
|
|
|
|
* doc/c-i386.texi: Document sse4a and nosse4a.
|
|
|
|
|
|
2020-02-14 22:09:28 +08:00
|
|
|
|
2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* doc/c-i386.texi: Remove the old movsx and movzx documentation
|
|
|
|
|
for AT&T syntax.
|
|
|
|
|
|
2020-02-14 21:27:28 +08:00
|
|
|
|
2020-02-14 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
PR gas/25438
|
|
|
|
|
* config/tc-i386.c (md_assemble): Move movsx/movzx special
|
|
|
|
|
casing ...
|
|
|
|
|
(process_suffix): ... here. Consider just the first operand
|
|
|
|
|
initially.
|
|
|
|
|
(check_long_reg): Drop opcode 0x63 special case again.
|
|
|
|
|
* testsuite/gas/i386/i386.s, testsuite/gas/i386/iamcu-1.s,
|
|
|
|
|
testsuite/gas/i386/ilp32/x86-64.s, testsuite/gas/i386/x86_64.s:
|
|
|
|
|
Move ambiguous operand size tests ...
|
|
|
|
|
* testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
|
|
|
|
|
testsuite/gas/i386/noreg64.s: ... here.
|
|
|
|
|
* testsuite/gas/i386/i386.d, testsuite/gas/i386/i386-intel.d
|
|
|
|
|
testsuite/gas/i386/iamcu-1.d, testsuite/gas/i386/ilp32/x86-64.d,
|
|
|
|
|
testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
|
|
|
|
|
testsuite/gas/i386/movx16.l, testsuite/gas/i386/movx32.l,
|
|
|
|
|
testsuite/gas/i386/movx64.l, testsuite/gas/i386/noreg16.d,
|
|
|
|
|
testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-movsxd.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-movsxd-intel.d,
|
|
|
|
|
testsuite/gas/i386/x86_64.d, testsuite/gas/i386/x86_64-intel.d:
|
|
|
|
|
Adjust expectations.
|
|
|
|
|
* testsuite/gas/i386/movx16.s, testsuite/gas/i386/movx16.l,
|
|
|
|
|
testsuite/gas/i386/movx32.s, testsuite/gas/i386/movx32.l,
|
|
|
|
|
testsuite/gas/i386/movx64.s, testsuite/gas/i386/movx64.l: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new tests.
|
|
|
|
|
|
2020-02-14 21:04:23 +08:00
|
|
|
|
2020-02-14 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (process_operands): Also skip segment
|
|
|
|
|
override prefix emission if it matches an already present one.
|
|
|
|
|
* testsuite/gas/i386/prefix32.s: Add double segment override
|
|
|
|
|
cases.
|
|
|
|
|
* testsuite/gas/i386/prefix32.l: Adjust expectations.
|
|
|
|
|
|
2020-02-14 21:03:19 +08:00
|
|
|
|
2020-02-14 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (process_operands): Drop ineffectual segment
|
|
|
|
|
overrides when optimizing.
|
|
|
|
|
* testsuite/gas/i386/lea-optimize.d: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new test.
|
|
|
|
|
|
|
|
|
|
2020-02-14 Jan Beulich <jbeulich@suse.com>
|
2020-02-14 21:02:05 +08:00
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (process_operands): Also check insn prefix
|
|
|
|
|
for ineffectual segment override warning. Don't cover possible
|
|
|
|
|
VEX/EVEX encoded insns there.
|
|
|
|
|
* testsuite/gas/i386/lea.s, testsuite/gas/i386/lea.d,
|
|
|
|
|
testsuite/gas/i386/lea.e: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new test.
|
|
|
|
|
|
2020-02-14 20:57:01 +08:00
|
|
|
|
2020-02-14 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/25438
|
|
|
|
|
* doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
|
|
|
|
|
syntax.
|
|
|
|
|
|
2020-02-14 05:44:17 +08:00
|
|
|
|
2020-02-13 Fangrui Song <maskray@google.com>
|
|
|
|
|
H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/25551
|
|
|
|
|
* config/tc-i386.c (tc_i386_fix_adjustable): Don't check
|
|
|
|
|
BFD_RELOC_386_PLT32 nor BFD_RELOC_X86_64_PLT32.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run relax-5 and x86-64-relax-4.
|
|
|
|
|
* testsuite/gas/i386/relax-5.d: New file.
|
|
|
|
|
* testsuite/gas/i386/relax-5.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-relax-4.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-relax-4.s: Likewise.
|
|
|
|
|
|
2020-02-13 17:19:28 +08:00
|
|
|
|
2020-02-13 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (cpu_noarch): Use CPU_ANY_SSE4_FLAGS in
|
|
|
|
|
"nosse4" entry.
|
|
|
|
|
|
2020-02-12 23:20:56 +08:00
|
|
|
|
2020-02-12 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (avx512): New (at file scope), moved from
|
|
|
|
|
(check_VecOperands): ... here.
|
|
|
|
|
(process_suffix): Add [XYZ]MMword operand size handling.
|
|
|
|
|
* testsuite/gas/i386/avx512dq-inval.s: Add VFPCLASS tests.
|
|
|
|
|
* testsuite/gas/i386/noavx512-2.s: Add Intel syntax VFPCLASS
|
|
|
|
|
tests.
|
|
|
|
|
* testsuite/gas/i386/avx512dq-inval.l,
|
|
|
|
|
testsuite/gas/i386/noavx512-2.l: Adjust expectations.
|
|
|
|
|
|
2020-02-12 23:19:03 +08:00
|
|
|
|
2020-02-12 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
PR gas/24546
|
|
|
|
|
* config/tc-i386.c (match_template): Apply AMD64 check to 64-bit
|
|
|
|
|
code only.
|
|
|
|
|
* config/tc-i386-intel.c (i386_intel_operand): Also handle
|
|
|
|
|
CALL/JMP in O_tbyte_ptr case.
|
|
|
|
|
* doc/c-i386.texi: Mention far call and full pointer load ISA
|
|
|
|
|
differences.
|
|
|
|
|
* testsuite/gas/i386/x86-64-branch-3.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-intel64.s: Add 64-bit far call cases.
|
|
|
|
|
* testsuite/gas/i386/x86-64-branch-3.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-intel64.d: Adjust expectations.
|
|
|
|
|
* testsuite/gas/i386/x86-64-branch-5.l,
|
|
|
|
|
testsuite/gas/i386/x86-64-branch-5.s: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new test.
|
|
|
|
|
|
2020-02-12 17:59:32 +08:00
|
|
|
|
2020-02-12 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
PR gas/25438
|
|
|
|
|
* config/tc-i386.c (REGISTER_WARNINGS): Delete.
|
|
|
|
|
(check_byte_reg): Skip only source operand of CRC32. Drop Non-
|
|
|
|
|
64-bit-only warning.
|
|
|
|
|
(check_word_reg): Consistently error on mismatching register
|
|
|
|
|
size and suffix.
|
|
|
|
|
* testsuite/gas/i386/general.s: Replace dword GPR with word one
|
|
|
|
|
for movw. Replace suffix / GPR for orb.
|
|
|
|
|
* testsuite/gas/i386/inval.s: Add tests for movw with dword and
|
|
|
|
|
byte GPRs as well as ones for inb/outb with a word accumulator.
|
|
|
|
|
* testsuite/gas/i386/general.l, testsuite/gas/i386/intelbad.l,
|
|
|
|
|
testsuite/gas/i386/inval.l: Adjust expectations.
|
|
|
|
|
|
2020-02-12 17:58:42 +08:00
|
|
|
|
2020-02-12 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (operand_type_register_match): Also fall
|
|
|
|
|
through initial two if()-s when the template allows for a GPR
|
|
|
|
|
operand. Adjust comment.
|
|
|
|
|
|
2020-02-11 18:20:55 +08:00
|
|
|
|
2020-02-11 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
(struct _i386_insn): New field "short_form".
|
|
|
|
|
(optimize_encoding): Drop setting of shortform field.
|
|
|
|
|
(process_suffix): Set i.short_form. Replace shortform use.
|
|
|
|
|
(process_operands): Replace shortform use.
|
|
|
|
|
|
2020-02-11 18:17:33 +08:00
|
|
|
|
2020-02-11 Matthew Malcomson <matthew.malcomson@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (vcx_handle_register_arguments): Remove `for`
|
|
|
|
|
loop initial declaration.
|
|
|
|
|
|
2020-02-11 00:39:02 +08:00
|
|
|
|
2020-02-10 Matthew Malcomson <matthew.malcomson@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (NEON_MAX_TYPE_ELS): Increment to account for
|
|
|
|
|
instructions that can have 5 arguments.
|
|
|
|
|
(enum operand_parse_code): Add new operands.
|
|
|
|
|
(parse_operands): Account for new operands.
|
|
|
|
|
(S5): New macro.
|
|
|
|
|
(enum neon_shape_el): Introduce P suffixes for coprocessor.
|
|
|
|
|
(neon_select_shape): Account for P suffix.
|
|
|
|
|
(LOW1): Move macro to global position.
|
|
|
|
|
(HI4): Move macro to global position.
|
|
|
|
|
(vcx_assign_vec_d): New.
|
|
|
|
|
(vcx_assign_vec_m): New.
|
|
|
|
|
(vcx_assign_vec_n): New.
|
|
|
|
|
(enum vcx_reg_type): New.
|
|
|
|
|
(vcx_get_reg_type): New.
|
|
|
|
|
(vcx_size_pos): New.
|
|
|
|
|
(vcx_vec_pos): New.
|
|
|
|
|
(vcx_handle_shape): New.
|
|
|
|
|
(vcx_ensure_register_in_range): New.
|
|
|
|
|
(vcx_handle_register_arguments): New.
|
|
|
|
|
(vcx_handle_insn_block): New.
|
|
|
|
|
(vcx_handle_common_checks): New.
|
|
|
|
|
(do_vcx1): New.
|
|
|
|
|
(do_vcx2): New.
|
|
|
|
|
(do_vcx3): New.
|
|
|
|
|
* testsuite/gas/arm/cde-missing-fp.d: New test.
|
|
|
|
|
* testsuite/gas/arm/cde-missing-fp.l: New test.
|
|
|
|
|
* testsuite/gas/arm/cde-missing-mve.d: New test.
|
|
|
|
|
* testsuite/gas/arm/cde-missing-mve.l: New test.
|
|
|
|
|
* testsuite/gas/arm/cde-mve-or-neon.d: New test.
|
|
|
|
|
* testsuite/gas/arm/cde-mve-or-neon.s: New test.
|
|
|
|
|
* testsuite/gas/arm/cde-mve.s: New test.
|
|
|
|
|
* testsuite/gas/arm/cde-warnings.l:
|
|
|
|
|
* testsuite/gas/arm/cde-warnings.s:
|
|
|
|
|
* testsuite/gas/arm/cde.d:
|
|
|
|
|
* testsuite/gas/arm/cde.s:
|
|
|
|
|
|
[binutils][arm] arm support for ARMv8.m Custom Datapath Extension
This patch is part of a series that adds support for the Armv8.m
ARMv8.m Custom Datapath Extension to binutils.
This patch introduces the Custom Instructions Class 1/2/3 (Single/
Dual, Accumulator/Non-accumulator varianats) to the arm backend.
The following Custom Instructions are added: cx1, cx1a,
cx1d, cx1da, cx2, cx2a, cx2d, cx2da, cx3, cx3a, cx3d, cx3da.
Specification can be found at
https://developer.arm.com/docs/ddi0607/latest
This patch distinguishes between enabling CDE for different coprocessor
numbers by defining multiple architecture flags. This means that the
parsing of the architecture extension flags is kept entirely in the
existing code path.
We introduce a new IT block state to indicate the behaviour of these
instructions. This new state allows being used in an IT block or
outside an IT block, but does not allow the instruction to be used
inside a VPT block.
We need this since the CX*A instruction versions can be used in IT
blocks, but they aren't to have the conditional suffixes on them. Hence
we need to mark an instruction as allowed in either position.
We also need a new flag to objdump, in order to determine whether to
disassemble an instruction as CDE related or not.
Successfully regression tested on arm-none-eabi, and arm-wince-pe.
gas/ChangeLog:
2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
Matthew Malcomson <matthew.malcomson@arm.com>
* config/tc-arm.c (arm_ext_cde*): New feature sets for each
CDE coprocessor that can be enabled.
(enum pred_instruction_type): New pred type.
(BAD_NO_VPT): New error message.
(BAD_CDE): New error message.
(BAD_CDE_COPROC): New error message.
(enum operand_parse_code): Add new immediate operands.
(parse_operands): Account for new immediate operands.
(check_cde_operand): New.
(cde_coproc_enabled): New.
(cde_coproc_pos): New.
(cde_handle_coproc): New.
(cxn_handle_predication): New.
(do_custom_instruction_1): New.
(do_custom_instruction_2): New.
(do_custom_instruction_3): New.
(do_cx1): New.
(do_cx1a): New.
(do_cx1d): New.
(do_cx1da): New.
(do_cx2): New.
(do_cx2a): New.
(do_cx2d): New.
(do_cx2da): New.
(do_cx3): New.
(do_cx3a): New.
(do_cx3d): New.
(do_cx3da): New.
(handle_pred_state): Define new IT block behaviour.
(insns): Add newn CX*{,d}{,a} instructions.
(CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table):
Define new cdecp extension strings.
* doc/c-arm.texi: Document new cdecp extension arguments.
* testsuite/gas/arm/cde-scalar.d: New test.
* testsuite/gas/arm/cde-scalar.s: New test.
* testsuite/gas/arm/cde-warnings.d: New test.
* testsuite/gas/arm/cde-warnings.l: New test.
* testsuite/gas/arm/cde-warnings.s: New test.
* testsuite/gas/arm/cde.d: New test.
* testsuite/gas/arm/cde.s: New test.
include/ChangeLog:
2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
Matthew Malcomson <matthew.malcomson@arm.com>
* opcode/arm.h (ARM_EXT2_CDE): New extension macro.
(ARM_EXT2_CDE0): New extension macro.
(ARM_EXT2_CDE1): New extension macro.
(ARM_EXT2_CDE2): New extension macro.
(ARM_EXT2_CDE3): New extension macro.
(ARM_EXT2_CDE4): New extension macro.
(ARM_EXT2_CDE5): New extension macro.
(ARM_EXT2_CDE6): New extension macro.
(ARM_EXT2_CDE7): New extension macro.
opcodes/ChangeLog:
2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
Matthew Malcomson <matthew.malcomson@arm.com>
* arm-dis.c (struct cdeopcode32): New.
(CDE_OPCODE): New macro.
(cde_opcodes): New disassembly table.
(regnames): New option to table.
(cde_coprocs): New global variable.
(print_insn_cde): New
(print_insn_thumb32): Use print_insn_cde.
(parse_arm_disassembler_options): Parse coprocN args.
2020-02-11 00:38:00 +08:00
|
|
|
|
2020-02-10 Stam Markianos-Wright <stam.markianos-wright@arm.com>
|
|
|
|
|
Matthew Malcomson <matthew.malcomson@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (arm_ext_cde*): New feature sets for each
|
|
|
|
|
CDE coprocessor that can be enabled.
|
|
|
|
|
(enum pred_instruction_type): New pred type.
|
|
|
|
|
(BAD_NO_VPT): New error message.
|
|
|
|
|
(BAD_CDE): New error message.
|
|
|
|
|
(BAD_CDE_COPROC): New error message.
|
|
|
|
|
(enum operand_parse_code): Add new immediate operands.
|
|
|
|
|
(parse_operands): Account for new immediate operands.
|
|
|
|
|
(check_cde_operand): New.
|
|
|
|
|
(cde_coproc_enabled): New.
|
|
|
|
|
(cde_coproc_pos): New.
|
|
|
|
|
(cde_handle_coproc): New.
|
|
|
|
|
(cxn_handle_predication): New.
|
|
|
|
|
(do_custom_instruction_1): New.
|
|
|
|
|
(do_custom_instruction_2): New.
|
|
|
|
|
(do_custom_instruction_3): New.
|
|
|
|
|
(do_cx1): New.
|
|
|
|
|
(do_cx1a): New.
|
|
|
|
|
(do_cx1d): New.
|
|
|
|
|
(do_cx1da): New.
|
|
|
|
|
(do_cx2): New.
|
|
|
|
|
(do_cx2a): New.
|
|
|
|
|
(do_cx2d): New.
|
|
|
|
|
(do_cx2da): New.
|
|
|
|
|
(do_cx3): New.
|
|
|
|
|
(do_cx3a): New.
|
|
|
|
|
(do_cx3d): New.
|
|
|
|
|
(do_cx3da): New.
|
|
|
|
|
(handle_pred_state): Define new IT block behaviour.
|
|
|
|
|
(insns): Add newn CX*{,d}{,a} instructions.
|
|
|
|
|
(CDE_EXTENSIONS,armv8m_main_ext_table,armv8_1m_main_ext_table):
|
|
|
|
|
Define new cdecp extension strings.
|
|
|
|
|
* doc/c-arm.texi: Document new cdecp extension arguments.
|
|
|
|
|
* testsuite/gas/arm/cde-scalar.d: New test.
|
|
|
|
|
* testsuite/gas/arm/cde-scalar.s: New test.
|
|
|
|
|
* testsuite/gas/arm/cde-warnings.d: New test.
|
|
|
|
|
* testsuite/gas/arm/cde-warnings.l: New test.
|
|
|
|
|
* testsuite/gas/arm/cde-warnings.s: New test.
|
|
|
|
|
* testsuite/gas/arm/cde.d: New test.
|
|
|
|
|
* testsuite/gas/arm/cde.s: New test.
|
|
|
|
|
|
2020-02-11 00:37:22 +08:00
|
|
|
|
2020-02-10 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/25516
|
|
|
|
|
* config/tc-i386.c (intel64): Renamed to ...
|
|
|
|
|
(isa64): This.
|
|
|
|
|
(match_template): Accept Intel64 only instruction by default.
|
|
|
|
|
(i386_displacement): Updated.
|
|
|
|
|
(md_parse_option): Updated.
|
|
|
|
|
* c-i386.texi: Update -mamd64/-mintel64 documentation.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run x86-64-sysenter. Pass
|
|
|
|
|
-mamd64 to x86-64-sysenter-amd.
|
|
|
|
|
* testsuite/gas/i386/x86-64-sysenter.d: New file.
|
|
|
|
|
|
2020-02-06 22:12:45 +08:00
|
|
|
|
2020-02-10 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/obj-elf.c (obj_elf_change_section): Error for section
|
|
|
|
|
type, attr or entsize changes in assembly.
|
|
|
|
|
* testsuite/gas/elf/elf.exp: Pass -Z to gas for section5 test.
|
|
|
|
|
* testsuite/gas/elf/section5.l: Update.
|
|
|
|
|
|
2020-02-10 08:57:16 +08:00
|
|
|
|
2020-02-10 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* output-file.c (output_file_close): Do a normal close when
|
|
|
|
|
flag_always_generate_output.
|
|
|
|
|
* write.c (write_object_file): Don't stop output when
|
|
|
|
|
flag_always_generate_output.
|
|
|
|
|
|
2020-02-07 22:53:46 +08:00
|
|
|
|
2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 25469
|
|
|
|
|
* config/tc-z80.c: Add -gbz80 command line option to generate code
|
|
|
|
|
for the GameBoy Z80. Add support for generating DWARF.
|
|
|
|
|
* config/tc-z80.h: Add support for DWARF debug information
|
|
|
|
|
generation.
|
|
|
|
|
* doc/c-z80.texi: Document new command line option.
|
|
|
|
|
* testsuite/gas/z80/gbz80_all.d: New file.
|
|
|
|
|
* testsuite/gas/z80/gbz80_all.s: New file.
|
|
|
|
|
* testsuite/gas/z80/z80.exp: Run the new tests.
|
|
|
|
|
* testsuite/gas/z80/z80n_all.d: New file.
|
|
|
|
|
* testsuite/gas/z80/z80n_all.s: New file.
|
|
|
|
|
* testsuite/gas/z80/z80n_reloc.d: New file.
|
|
|
|
|
|
ELF: Support the section flag 'o' in .section directive
As shown in
https://sourceware.org/bugzilla/show_bug.cgi?id=25490
--gc-sections will silently remove __patchable_function_entries section
and generate corrupt result. This patch adds the section flag 'o' to
.section directive:
.section __patchable_function_entries,"awo",@progbits,foo
.section __patchable_function_entries,"awoG",@progbits,foo,foo,comdat
.section __patchable_function_entries,"awo",@progbits,bar,unique,4
.section __patchable_function_entries,"awoG",@progbits,foo,foo,comdat,unique,1
which specifies the symbol name which the section references. Assmebler
will set its elf_linked_to_section to a local section where the symbol
is defined.
Linker is updated to call mark_hook if gc_mark of any of its linked-to
sections is set after all sections, except for backend specific ones,
have been garbage collected.
bfd/
PR gas/25381
* bfd-in2.h: Regenerated.
* elflink.c (_bfd_elf_gc_mark_extra_sections): Call mark_hook
on section if gc_mark of any of its linked-to sections is set
and don't set gc_mark again.
* section.c (asection): Add linked_to_symbol_name to map_head
union.
gas/
PR gas/25381
* config/obj-elf.c (get_section): Also check
linked_to_symbol_name.
(obj_elf_change_section): Also set map_head.linked_to_symbol_name.
(obj_elf_parse_section_letters): Handle the 'o' flag.
(build_group_lists): Renamed to ...
(build_additional_section_info): This. Set elf_linked_to_section
from map_head.linked_to_symbol_name.
(elf_adjust_symtab): Updated.
* config/obj-elf.h (elf_section_match): Add linked_to_symbol_name.
* doc/as.texi: Document the 'o' flag.
* testsuite/gas/elf/elf.exp: Run PR gas/25381 tests.
* testsuite/gas/elf/section18.d: New file.
* testsuite/gas/elf/section18.s: Likewise.
* testsuite/gas/elf/section19.d: Likewise.
* testsuite/gas/elf/section19.s: Likewise.
* testsuite/gas/elf/section20.d: Likewise.
* testsuite/gas/elf/section20.s: Likewise.
* testsuite/gas/elf/section21.d: Likewise.
* testsuite/gas/elf/section21.l: Likewise.
* testsuite/gas/elf/section21.s: Likewise.
ld/
PR ld/24526
PR ld/25021
PR ld/25490
* testsuite/ld-elf/elf.exp: Run PR ld/25490 tests.
* testsuite/ld-elf/pr24526.d: New file.
* testsuite/ld-elf/pr24526.s: Likewise.
* testsuite/ld-elf/pr25021.d: Likewise.
* testsuite/ld-elf/pr25021.s: Likewise.
* testsuite/ld-elf/pr25490-2-16.rd: Likewise.
* testsuite/ld-elf/pr25490-2-32.rd: Likewise.
* testsuite/ld-elf/pr25490-2-64.rd: Likewise.
* testsuite/ld-elf/pr25490-2.s: Likewise.
* testsuite/ld-elf/pr25490-3-16.rd: Likewise.
* testsuite/ld-elf/pr25490-3-32.rd: Likewise.
* testsuite/ld-elf/pr25490-3-64.rd: Likewise.
* testsuite/ld-elf/pr25490-3.s: Likewise.
* testsuite/ld-elf/pr25490-4-16.rd: Likewise.
* testsuite/ld-elf/pr25490-4-32.rd: Likewise.
* testsuite/ld-elf/pr25490-4-64.rd: Likewise.
* testsuite/ld-elf/pr25490-4.s: Likewise.
* testsuite/ld-elf/pr25490-5-16.rd: Likewise.
* testsuite/ld-elf/pr25490-5-32.rd: Likewise.
* testsuite/ld-elf/pr25490-5-64.rd: Likewise.
* testsuite/ld-elf/pr25490-5.s: Likewise.
* testsuite/ld-elf/pr25490-6-16.rd: Likewise.
* testsuite/ld-elf/pr25490-6-32.rd: Likewise.
* testsuite/ld-elf/pr25490-6-64.rd: Likewise.
* testsuite/ld-elf/pr25490-6.s: Likewise.
2020-02-07 10:04:58 +08:00
|
|
|
|
2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/25381
|
|
|
|
|
* config/obj-elf.c (get_section): Also check
|
|
|
|
|
linked_to_symbol_name.
|
|
|
|
|
(obj_elf_change_section): Also set map_head.linked_to_symbol_name.
|
|
|
|
|
(obj_elf_parse_section_letters): Handle the 'o' flag.
|
|
|
|
|
(build_group_lists): Renamed to ...
|
|
|
|
|
(build_additional_section_info): This. Set elf_linked_to_section
|
|
|
|
|
from map_head.linked_to_symbol_name.
|
|
|
|
|
(elf_adjust_symtab): Updated.
|
|
|
|
|
* config/obj-elf.h (elf_section_match): Add linked_to_symbol_name.
|
|
|
|
|
* doc/as.texi: Document the 'o' flag.
|
|
|
|
|
* testsuite/gas/elf/elf.exp: Run PR gas/25381 tests.
|
|
|
|
|
* testsuite/gas/elf/section18.d: New file.
|
|
|
|
|
* testsuite/gas/elf/section18.s: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section19.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section19.s: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section20.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section20.s: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section21.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section21.l: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section21.s: Likewise.
|
|
|
|
|
|
2020-02-06 23:50:16 +08:00
|
|
|
|
2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* NEWS: Mention x86 assembler options to align branches for
|
|
|
|
|
binutils 2.34.
|
|
|
|
|
|
2020-02-06 20:44:39 +08:00
|
|
|
|
2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run unique and x86-64-unique
|
|
|
|
|
only for ELF targets.
|
|
|
|
|
* testsuite/gas/i386/unique.d: Don't xfail.
|
|
|
|
|
* testsuite/gas/i386/x86-64-unique.d: Likewise.
|
|
|
|
|
|
2020-02-06 08:22:29 +08:00
|
|
|
|
2020-02-06 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/unique.d: xfail for non-elf targets.
|
|
|
|
|
* testsuite/gas/i386/x86-64-unique.d: Likewise.
|
|
|
|
|
|
2020-02-05 13:49:17 +08:00
|
|
|
|
2020-02-06 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/elf/section12a.d: Use supports_gnu_osabi in
|
|
|
|
|
xfail, and rename test.
|
|
|
|
|
* testsuite/gas/elf/section12b.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section16a.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section16b.d: Likewise.
|
|
|
|
|
|
ELF: Add support for unique section ID to assembler
Clang's integrated assembler supports multiple section with the same
name:
.section .text,"ax",@progbits,unique,1
nop
.section .text,"ax",@progbits,unique,2
nop
"unique,N" assigns the number, N, as the section ID, to a section. The
valid values of the section ID are between 0 and 4294967295. It can be
used to distinguish different sections with the same section name.
This is useful with -fno-unique-section-names -ffunction-sections.
-ffunction-sections by default generates .text.foo, .text.bar, etc.
Using the same string can save lots of space in .strtab.
This patch adds section_id to bfd_section and reuses the linker
internal bit in BFD section flags, SEC_LINKER_CREATED, for assmebler
internal use to mark valid section_id. It also updates objdump to
compare section pointers if 2 sections comes from the same file since
2 different sections can have the same section name.
bfd/
PR gas/25380
* bfd-in2.h: Regenerated.
* ecoff.c (bfd_debug_section): Add section_id.
* section.c (bfd_section): Add section_id.
(SEC_ASSEMBLER_SECTION_ID): New.
(BFD_FAKE_SECTION): Add section_id.
binutils/
PR gas/25380
* objdump.c (sym_ok): Return FALSE if 2 sections are in the
same file with different section pointers.
gas/
PR gas/25380
* config/obj-elf.c (section_match): Removed.
(get_section): Also match SEC_ASSEMBLER_SECTION_ID and
section_id.
(obj_elf_change_section): Replace info and group_name arguments
with match_p. Also update the section ID and flags from match_p.
(obj_elf_section): Handle "unique,N". Update call to
obj_elf_change_section.
* config/obj-elf.h (elf_section_match): New.
(obj_elf_change_section): Updated.
* config/tc-arm.c (start_unwind_section): Update call to
obj_elf_change_section.
* config/tc-ia64.c (obj_elf_vms_common): Likewise.
* config/tc-microblaze.c (microblaze_s_data): Likewise.
(microblaze_s_sdata): Likewise.
(microblaze_s_rdata): Likewise.
(microblaze_s_bss): Likewise.
* config/tc-mips.c (s_change_section): Likewise.
* config/tc-msp430.c (msp430_profiler): Likewise.
* config/tc-rx.c (parse_rx_section): Likewise.
* config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
* doc/as.texi: Document "unique,N" in .section directive.
* testsuite/gas/elf/elf.exp: Run "unique,N" tests.
* testsuite/gas/elf/section15.d: New file.
* testsuite/gas/elf/section15.s: Likewise.
* testsuite/gas/elf/section16.s: Likewise.
* testsuite/gas/elf/section16a.d: Likewise.
* testsuite/gas/elf/section16b.d: Likewise.
* testsuite/gas/elf/section17.d: Likewise.
* testsuite/gas/elf/section17.l: Likewise.
* testsuite/gas/elf/section17.s: Likewise.
* testsuite/gas/i386/unique.d: Likewise.
* testsuite/gas/i386/unique.s: Likewise.
* testsuite/gas/i386/x86-64-unique.d: Likewise.
* testsuite/gas/i386/i386.exp: Run unique and x86-64-unique.
ld/
PR gas/25380
* testsuite/ld-i386/pr22001-1c.S: Use "unique,N" in .section
directives.
* testsuite/ld-i386/tls-gd1.S: Likewise.
* testsuite/ld-x86-64/pr21481b.S: Likewise.
2020-02-03 09:07:51 +08:00
|
|
|
|
2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/25380
|
|
|
|
|
* config/obj-elf.c (section_match): Removed.
|
|
|
|
|
(get_section): Also match SEC_ASSEMBLER_SECTION_ID and
|
|
|
|
|
section_id.
|
|
|
|
|
(obj_elf_change_section): Replace info and group_name arguments
|
|
|
|
|
with match_p. Also update the section ID and flags from match_p.
|
|
|
|
|
(obj_elf_section): Handle "unique,N". Update call to
|
|
|
|
|
obj_elf_change_section.
|
|
|
|
|
* config/obj-elf.h (elf_section_match): New.
|
|
|
|
|
(obj_elf_change_section): Updated.
|
|
|
|
|
* config/tc-arm.c (start_unwind_section): Update call to
|
|
|
|
|
obj_elf_change_section.
|
|
|
|
|
* config/tc-ia64.c (obj_elf_vms_common): Likewise.
|
|
|
|
|
* config/tc-microblaze.c (microblaze_s_data): Likewise.
|
|
|
|
|
(microblaze_s_sdata): Likewise.
|
|
|
|
|
(microblaze_s_rdata): Likewise.
|
|
|
|
|
(microblaze_s_bss): Likewise.
|
|
|
|
|
* config/tc-mips.c (s_change_section): Likewise.
|
|
|
|
|
* config/tc-msp430.c (msp430_profiler): Likewise.
|
|
|
|
|
* config/tc-rx.c (parse_rx_section): Likewise.
|
|
|
|
|
* config/tc-tic6x.c (tic6x_start_unwind_section): Likewise.
|
|
|
|
|
* doc/as.texi: Document "unique,N" in .section directive.
|
|
|
|
|
* testsuite/gas/elf/elf.exp: Run "unique,N" tests.
|
|
|
|
|
* testsuite/gas/elf/section15.d: New file.
|
|
|
|
|
* testsuite/gas/elf/section15.s: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section16.s: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section16a.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section16b.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section17.d: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section17.l: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section17.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/unique.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/unique.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-unique.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run unique and x86-64-unique.
|
|
|
|
|
|
2020-02-03 00:20:18 +08:00
|
|
|
|
2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/elf/section13.s: Replace @nobits with %nobits.
|
|
|
|
|
|
2020-02-02 09:59:19 +08:00
|
|
|
|
2020-02-01 Anthony Green <green@moxielogic.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-moxie.c (md_begin): Don't force big-endian mode.
|
|
|
|
|
|
2020-02-01 02:32:48 +08:00
|
|
|
|
2020-01-31 Sandra Loosemore <sandra@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-nios2.c (nios2_cons): Handle %gotoff as well as
|
|
|
|
|
%tls_ldo.
|
|
|
|
|
|
2020-02-01 01:13:18 +08:00
|
|
|
|
2020-01-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
|
|
|
|
|
|
|
|
|
PR gas/25472
|
|
|
|
|
* config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding.
|
|
|
|
|
(armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for
|
|
|
|
|
+mve.
|
|
|
|
|
* testsuite/gas/arm/mve_dsp.d: New test.
|
|
|
|
|
|
2020-02-01 00:43:57 +08:00
|
|
|
|
2020-01-31 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE
|
|
|
|
|
rather than BFD_RELOC_NONE.
|
|
|
|
|
|
2020-02-01 00:16:19 +08:00
|
|
|
|
2020-01-31 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2"
|
|
|
|
|
to support VLDMIA instruction for MVE.
|
|
|
|
|
(fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB
|
|
|
|
|
instruction for MVE.
|
|
|
|
|
(fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA
|
|
|
|
|
instruction for MVE.
|
|
|
|
|
(fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB
|
|
|
|
|
instruction for MVE.
|
|
|
|
|
* testsuite/gas/arm/mve-ldst.d: New test.
|
|
|
|
|
* testsuite/gas/arm/mve-ldst.s: Likewise.
|
|
|
|
|
|
2020-01-31 22:45:51 +08:00
|
|
|
|
2020-01-31 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* po/fr.po: Updated French translation.
|
|
|
|
|
* po/ru.po: Updated Russian translation.
|
|
|
|
|
|
2020-01-31 16:03:56 +08:00
|
|
|
|
2020-01-31 Richard Sandiford <richard.sandiford@arm.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than
|
|
|
|
|
.s for the movprfx.
|
|
|
|
|
* testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly.
|
|
|
|
|
* testsuite/gas/aarch64/sve-movprfx_28.d,
|
|
|
|
|
* testsuite/gas/aarch64/sve-movprfx_28.l,
|
|
|
|
|
* testsuite/gas/aarch64/sve-movprfx_28.s: New test.
|
|
|
|
|
|
2020-01-31 00:03:22 +08:00
|
|
|
|
2020-01-30 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (output_disp): Tighten base_opcode check.
|
|
|
|
|
* testsuite/gas/i386/got.s: Add LSL, MOVLPS, and BNDCN cases.
|
|
|
|
|
* testsuite/gas/i386/got-no-relax.d, testsuite/gas/i386/got.d:
|
|
|
|
|
Adjust expectations.
|
|
|
|
|
|
2020-01-30 20:59:04 +08:00
|
|
|
|
2020-01-30 Jose E. Marchesi <jose.marchesi@oracle.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/bpf/alu.d: Update expected opcode for `neg'.
|
|
|
|
|
* testsuite/gas/bpf/alu-be.d: Likewise.
|
|
|
|
|
* testsuite/gas/bpf/alu32.d: Likewise for `neg32'.
|
|
|
|
|
* testsuite/gas/bpf/alu32-be.d: Likewise.
|
|
|
|
|
|
2020-01-30 18:36:33 +08:00
|
|
|
|
2020-01-30 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/x86-64-branch-2.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-branch-4.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-branch.s: Add RETW cases.
|
|
|
|
|
* testsuite/gas/i386/ilp32/x86-64-branch.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-branch-2.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-branch-4.l,
|
|
|
|
|
testsuite/gas/i386/x86-64-branch.d: Adjust expectations.
|
|
|
|
|
|
2020-01-30 18:35:20 +08:00
|
|
|
|
2020-01-30 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (process_suffix): .
|
|
|
|
|
testsuite/gas/i386/noreg64.s: Add IRET and LRET cases.
|
|
|
|
|
testsuite/gas/i386/x86-64-opcode.s: Add suffix to IRET and LRET.
|
|
|
|
|
Add LRETQ case.
|
|
|
|
|
testsuite/gas/i386/x86-64-suffix.s: Drop IRET case without
|
|
|
|
|
suffix.
|
|
|
|
|
testsuite/gas/i386/x86_64.s: Add RETF cases.
|
|
|
|
|
* testsuite/gas/i386/k1om.d, testsuite/gas/i386/l1om.d,
|
|
|
|
|
testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l,
|
|
|
|
|
testsuite/gas/i386/x86-64-opcode.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-suffix-intel.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-suffix.d,
|
|
|
|
|
testsuite/gas/i386/x86_64-intel.d
|
|
|
|
|
testsuite/gas/i386/x86_64.d: Adjust expectations.
|
|
|
|
|
* testsuite/gas/i386/x86-64-suffix.e,
|
|
|
|
|
testsuite/gas/i386/x86_64.e: New.
|
|
|
|
|
|
2020-01-30 18:33:53 +08:00
|
|
|
|
2020-01-30 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (process_suffix): Redo and move FLDENV et al
|
|
|
|
|
special case.
|
|
|
|
|
|
2020-01-27 20:38:10 +08:00
|
|
|
|
2020-01-27 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR binutils/25445
|
|
|
|
|
* config/tc-i386.c (check_long_reg): Also convert to QWORD for
|
|
|
|
|
movsxd.
|
|
|
|
|
* doc/c-i386.texi: Add a node for AMD64 vs. Intel64 ISA
|
|
|
|
|
differences. Document movslq and movsxd.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run PR binutils/25445 tests.
|
|
|
|
|
* testsuite/gas/i386/x86-64-movsxd-intel.d: New file.
|
|
|
|
|
* testsuite/gas/i386/x86-64-movsxd-intel64-intel.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-movsxd-intel64-inval.l: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-movsxd-intel64-inval.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-movsxd-intel64.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-movsxd-intel64.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-movsxd-inval.l: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-movsxd-inval.s: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-movsxd.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-movsxd.s: Likewise.
|
|
|
|
|
|
2020-01-27 08:21:52 +08:00
|
|
|
|
2020-01-27 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/all/gas.exp: Replace case statements with switch
|
|
|
|
|
statements.
|
|
|
|
|
* testsuite/gas/elf/elf.exp: Likewise.
|
|
|
|
|
* testsuite/gas/macros/macros.exp: Likewise.
|
|
|
|
|
* testsuite/lib/gas-defs.exp: Likewise.
|
|
|
|
|
|
2020-01-27 18:40:02 +08:00
|
|
|
|
2020-01-27 Tamar Christina <tamar.christina@arm.com>
|
|
|
|
|
|
|
|
|
|
PR 25403
|
|
|
|
|
* testsuite/gas/aarch64/armv8_4-a.d: Add cfinv.
|
|
|
|
|
* testsuite/gas/aarch64/armv8_4-a.s: Likewise.
|
|
|
|
|
|
2020-01-23 08:45:04 +08:00
|
|
|
|
2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/riscv/march-ok-s.d: sx is no longer valid and
|
|
|
|
|
s exts must be known, so rename *ok* to *fail*.
|
|
|
|
|
* testsuite/gas/riscv/march-ok-sx.d: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/march-ok-s-with-version: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/march-fail-s.l: Expected error messages for
|
|
|
|
|
above change.
|
|
|
|
|
* testsuite/gas/riscv/march-fail-sx.l: Likewise.
|
|
|
|
|
* testsuite/gas/riscv/march-fail-sx-with-version.l: Likewise.
|
|
|
|
|
|
2020-01-23 01:24:14 +08:00
|
|
|
|
2020-01-22 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR gas/25438
|
|
|
|
|
* config/tc-i386.c (check_long_reg): Always disallow double word
|
|
|
|
|
suffix in mnemonic with word general register.
|
|
|
|
|
* testsuite/gas/i386/general.s: Replace word general register
|
|
|
|
|
with double word general register for movl.
|
|
|
|
|
* testsuite/gas/i386/inval.s: Add tests for movl with word general
|
|
|
|
|
register.
|
|
|
|
|
* testsuite/gas/i386/general.l: Updated.
|
|
|
|
|
* testsuite/gas/i386/inval.l: Likewise.
|
|
|
|
|
|
PowerPC64 __tls_get_addr_desc
This implements register saving and restoring in the __tls_get_addr
call stub, so that when glibc supports the optimized tls call stub gcc
can generate code that assumes only r0, r12 and of course r3 are
changed on a __tls_get_addr call. When gcc expects __tls_get_addr
calls to preserve registers the call will be to __tls_get_addr_desc,
which will be translated by the linker to a call to __tls_get_addr_opt.
bfd/
* elf64-ppc.h (struct ppc64_elf_params): Add no_tls_get_addr_regsave.
* elf64-ppc.c (struct ppc_link_hash_table): Add tga_desc and
tga_desc_fd.
(is_tls_get_addr): Match tga_desc and tga_desc_df too.
(STDU_R1_0R1, ADDI_R1_R1): Define.
(tls_get_addr_prologue, tls_get_addr_epilogue): New functions.
(ppc64_elf_tls_setup): Set up tga_desc and tga_desc_fd. Indirect
tga_desc_fd to opt_fd, and tga_desc to opt. Set
no_tls_get_addr_regsave.
(branch_reloc_hash_match): Add hash3 and hash4.
(ppc64_elf_tls_optimize): Handle tga_desc_fd and tga_desc too.
(ppc64_elf_size_dynamic_sections): Likewise.
(ppc64_elf_relocate_section): Likewise.
(plt_stub_size, build_plt_stub): Likewise. Size regsave
__tls_get_addr stub.
(build_tls_get_addr_stub): Build regsave __tls_get_addr stub and
eh_frame.
(ppc_size_one_stub): Handle tga_desc_fd and tga_desc too. Size
eh_frame for regsave __tls_get_addr.
gas/
* config/tc-ppc.c (parse_tls_arg): Handle tls arg for
__tls_get_addr_desc and __tls_get_addr_opt.
ld/
* emultempl/ppc64elf.em (ppc64_opt, PARSE_AND_LIST_LONGOPTS),
(PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Support
--tls-get-addr-regsave and --no-tls-get-addr-regsave.
(params): Init new field.
* ld.texi (--tls-get-addr-regsave, --no-tls-get-addr-regsave):
Document.
* testsuite/ld-powerpc/tlsdesc.s,
* testsuite/ld-powerpc/tlsdesc.d,
* testsuite/ld-powerpc/tlsdesc.wf,
* testsuite/ld-powerpc/tlsdesc2.d,
* testsuite/ld-powerpc/tlsdesc2.wf,
* testsuite/ld-powerpc/tlsexenors.d,
* testsuite/ld-powerpc/tlsexenors.r,
* testsuite/ld-powerpc/tlsexers.d,
* testsuite/ld-powerpc/tlsexers.r,
* testsuite/ld-powerpc/tlsexetocnors.d,
* testsuite/ld-powerpc/tlsexetocrs.d,
* testsuite/ld-powerpc/tlsexetocrs.r,
* testsuite/ld-powerpc/tlsopt6.d,
* testsuite/ld-powerpc/tlsopt6.wf: New.
* testsuite/ld-powerpc/powerpc.exp: Run new tests.
2020-01-20 10:08:00 +08:00
|
|
|
|
2020-01-22 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-ppc.c (parse_tls_arg): Handle tls arg for
|
|
|
|
|
__tls_get_addr_desc and __tls_get_addr_opt.
|
|
|
|
|
|
2020-01-21 21:41:05 +08:00
|
|
|
|
2020-01-21 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/inval-crc32.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-inval-crc32.s: Add alignment directive.
|
|
|
|
|
* testsuite/gas/i386/inval-crc32.l,
|
|
|
|
|
testsuite/gas/i386/x86-64-inval-crc32.l: Adjust expectations.
|
|
|
|
|
|
2020-01-21 15:30:05 +08:00
|
|
|
|
2020-01-21 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (process_suffix): Merge CRC32 handling into
|
|
|
|
|
generic code path. Deal with No_lSuf being set in a template.
|
|
|
|
|
* testsuite/gas/i386/inval-crc32.l,
|
|
|
|
|
testsuite/gas/i386/x86-64-inval-crc32.l: Expect warning(s)
|
|
|
|
|
instead of error(s) when operand size is ambiguous.
|
|
|
|
|
* testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
|
|
|
|
|
testsuite/gas/i386/noreg64.s: Add CRC32 tests.
|
|
|
|
|
* testsuite/gas/i386/noreg16.d, testsuite/gas/i386/noreg16.l,
|
|
|
|
|
testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg32.l,
|
|
|
|
|
testsuite/gas/i386/noreg64.d, testsuite/gas/i386/noreg64.l:
|
|
|
|
|
Adjust expectations.
|
|
|
|
|
|
x86: improve handling of insns with ambiguous operand sizes
Commit b76bc5d54e ("x86: don't default variable shift count insns to
8-bit operand size") pointed out a very bad case, but the underlying
problem is, as mentioned on various occasions, much larger: Silently
selecting a (nowhere documented afaict) certain default operand size
when there's no "sizing" suffix and no suitable register operand(s) is
simply dangerous (for the programmer to make mistakes).
While in Intel syntax mode such mistakes already lead to an error (which
is going to remain that way), AT&T syntax mode now gains warnings in
such cases by default, which can be suppressed or promoted to an error
if so desired by the programmer. Furthermore at least general purpose
insns now consistently have a default applied (alongside the warning
emission), rather than accepting some and refusing others.
No warnings are (as before) to be generated for "DefaultSize" insns as
well as ones acting on selector and other fixed-width values. For
SYSRET, however, the DefaultSize needs to be dropped - it had been
wrongly put there in the first place, as it's unrelated to .code16gcc
(no stack accesses involved).
As set forth as a prereq when I first mentioned this intended change a
few years back, Linux as well as gcc have meanwhile been patched to
avoid (emission of) ambiguous operands (and hence triggering of the new
warning).
Note that I think that in 64-bit mode IRET and far RET would better get
a diagnostic too, as it's reasonably likely that a suffix-less instance
really is meant to be a 64-bit one. But I guess I better make this a
separate follow-on patch.
Note further that floating point operations with integer operands are an
exception for now: They continue to use short (16-bit) operands by
default even in 32- and 64-bit modes.
Finally note that while {,V}PCMPESTR{I,M} would, strictly speaking, also
need to be diagnosed, with their 64-bit forms not being very useful I
think it is better to continue to avoid warning about them (by way of
them carrying IgnoreSize attributes).
2020-01-21 15:28:25 +08:00
|
|
|
|
2020-01-21 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (process_suffix): Drop SYSRET special case
|
|
|
|
|
and an intel_syntax check. Re-write lack-of-suffix processing
|
|
|
|
|
logic.
|
|
|
|
|
* doc/c-i386.texi: Document operand size defaults for suffix-
|
|
|
|
|
less AT&T syntax insns.
|
|
|
|
|
* testsuite/gas/i386/bundle.s, testsuite/gas/i386/lock-1.s,
|
|
|
|
|
testsuite/gas/i386/opcode.s, testsuite/gas/i386/sse3.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-avx-scalar.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-avx.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-bundle.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-intel64.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-lock-1.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-opcode.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-sse2avx.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-sse3.s: Add missing suffixes.
|
|
|
|
|
* testsuite/gas/i386/nops.s, testsuite/gas/i386/sse-noavx.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-nops.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-ptwrite.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-simd.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-sse-noavx.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-suffix.s: Drop bogus suffix-less
|
|
|
|
|
insns.
|
|
|
|
|
* testsuite/gas/i386/noreg16.s, testsuite/gas/i386/noreg32.s,
|
|
|
|
|
testsuite/gas/i386/noreg64.s: Add further tests.
|
|
|
|
|
* testsuite/gas/i386/ilp32/x86-64-nops.d,
|
|
|
|
|
testsuite/gas/i386/nops.d, testsuite/gas/i386/noreg16.d,
|
|
|
|
|
testsuite/gas/i386/noreg32.d, testsuite/gas/i386/noreg64.d,
|
|
|
|
|
testsuite/gas/i386/sse-noavx.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-intel64.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-nops.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-opcode.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-ptwrite-intel.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-ptwrite.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-simd-intel.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-simd-suffix.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-simd.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-sse-noavx.d
|
|
|
|
|
testsuite/gas/i386/x86-64-suffix.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-suffix-intel.d: Adjust expectations.
|
|
|
|
|
* testsuite/gas/i386/noreg16.l, testsuite/gas/i386/noreg32.l,
|
|
|
|
|
testsuite/gas/i386/noreg64.l: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new tests.
|
|
|
|
|
|
2020-01-21 15:25:31 +08:00
|
|
|
|
2020-01-21 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/avx512_bf16_vl.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-avx512_bf16_vl.s: Add broadcast forms
|
|
|
|
|
of VCVTNEPS2BF16{X,Y}. Add operand-size less Intel syntax
|
|
|
|
|
broadcast forms of VCVTNEPS2BF16.
|
|
|
|
|
* testsuite/gas/i386/avx512_bf16_vl.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-avx512_bf16_vl.d: Adjust expectations.
|
|
|
|
|
|
2020-01-20 23:10:23 +08:00
|
|
|
|
2020-01-20 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* po/uk.po: Updated Ukranian translation.
|
|
|
|
|
|
x86-64: Fix TLSDESC relaxation for x32
For x32, we must encode "lea x@TLSDESC(%rip), %reg" with a REX prefix
even if it isn't required. Otherwise linker can’t safely perform
GDesc -> IE/LE optimization. X32 TLSDESC sequences can be:
40 8d 05 00 00 00 00 rex lea x@TLSDESC(%rip), %reg
...
67 ff 10 call *x@TLSCALL(%eax)
or the same sequence as LP64:
48 8d 05 00 00 00 00 lea foo@TLSDESC(%rip), %reg
...
ff 10 call *foo@TLSCALL(%rax)
We need to support both sequences for x32. For both GDesc -> IE/LE
transitions,
67 ff 10 call *x@TLSCALL(%eax)
should relaxed to
0f 1f 00 nopl (%rax)
For GDesc -> LE transition,
40 8d 05 00 00 00 00 rex lea x@TLSDESC(%rip), %reg
should relaxed to
40 c7 c0 fc ff ff ff rex movl $x@tpoff, %reg
For GDesc -> IE transition,
40 8d 05 00 00 00 00 rex lea x@TLSDESC(%rip), %reg
should relaxed to
40 8b 05 00 00 00 00 rex movl x@gottpoff(%rip), %eax
bfd/
PR ld/25416
* elf64-x86-64.c (elf_x86_64_check_tls_transition): Support
"rex leal x@tlsdesc(%rip), %reg" and "call *x@tlsdesc(%eax)" in
X32 mode.
(elf_x86_64_relocate_section): In x32 mode, for GDesc -> LE
transition, relax "rex leal x@tlsdesc(%rip), %reg" to
"rex movl $x@tpoff, %reg", for GDesc -> IE transition, relax
"rex leal x@tlsdesc(%rip), %reg" to
"rex movl x@gottpoff(%rip), %eax". For both transitions, relax
"call *(%eax)" to "nopl (%rax)".
gas/
PR ld/25416
* config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix
for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating
x32 object.
* testsuite/gas/i386/ilp32/x32-tls.d: Updated.
* testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with
R_X86_64_GOTPC32_TLSDESC relocation.
ld/
PR ld/25416
* testsuite/ld-x86-64/pr25416-1.s: New file
* testsuite/ld-x86-64/pr25416-1a.d: Likewise.
* testsuite/ld-x86-64/pr25416-1b.d: Likewise.
* testsuite/ld-x86-64/pr25416-1.s: Likewise.
* testsuite/ld-x86-64/pr25416-2.s: Likewise.
* testsuite/ld-x86-64/pr25416-2a.d: Likewise.
* testsuite/ld-x86-64/pr25416-2b.d: Likewise.
* testsuite/ld-x86-64/pr25416-3.d: Likewise.
* testsuite/ld-x86-64/pr25416-3.s: Likewise.
* testsuite/ld-x86-64/pr25416-4.d: Likewise.
* testsuite/ld-x86-64/pr25416-4.s: Likewise.
* testsuite/ld-x86-64/pr25416-5a.c: Likewise.
* testsuite/ld-x86-64/pr25416-5b.s: Likewise.
* testsuite/ld-x86-64/pr25416-5c.s: Likewise.
* testsuite/ld-x86-64/pr25416-5d.s: Likewise.
* testsuite/ld-x86-64/pr25416-5e.s: Likewise.
* testsuite/ld-x86-64/x86-64.exp: Run PR ld/25416 tests.
2020-01-20 22:58:51 +08:00
|
|
|
|
2020-01-20 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/25416
|
|
|
|
|
* config/tc-i386.c (output_insn): Add a dummy REX_OPCODE prefix
|
|
|
|
|
for lea with R_X86_64_GOTPC32_TLSDESC relocation when generating
|
|
|
|
|
x32 object.
|
|
|
|
|
* testsuite/gas/i386/ilp32/x32-tls.d: Updated.
|
|
|
|
|
* testsuite/gas/i386/ilp32/x32-tls.s: Add tests for lea with
|
|
|
|
|
R_X86_64_GOTPC32_TLSDESC relocation.
|
|
|
|
|
|
2020-01-18 22:12:07 +08:00
|
|
|
|
2020-01-18 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* po/gas.pot: Regenerate.
|
|
|
|
|
|
2020-01-18 21:50:25 +08:00
|
|
|
|
2020-01-18 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
Binutils 2.34 branch created.
|
|
|
|
|
|
2020-01-17 23:07:55 +08:00
|
|
|
|
2020-01-17 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2
|
|
|
|
|
with vex_encoding_vex.
|
|
|
|
|
(parse_insn): Likewise.
|
|
|
|
|
* doc/c-i386.texi: Replace {vex2} with {vex}. Update {vex}
|
|
|
|
|
and {vex3} documentation.
|
|
|
|
|
* testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with
|
|
|
|
|
{vex}.
|
|
|
|
|
* testsuite/gas/i386/x86-64-pseudos.s: Likewise.
|
|
|
|
|
|
2020-01-16 21:50:52 +08:00
|
|
|
|
2020-01-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
|
|
|
|
|
|
|
|
|
|
PR 25376
|
|
|
|
|
* config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH.
|
|
|
|
|
(armv8_1m_main_ext_table): Use CORE_HIGH for mve.
|
|
|
|
|
* testsuite/arm/armv8_1-m-fpu-mve-1.s: New.
|
|
|
|
|
* testsuite/arm/armv8_1-m-fpu-mve-1.d: New.
|
|
|
|
|
* testsuite/arm/armv8_1-m-fpu-mve-2.s: New.
|
|
|
|
|
* testsuite/arm/armv8_1-m-fpu-mve-2.d: New.
|
|
|
|
|
|
2020-01-16 17:07:36 +08:00
|
|
|
|
2020-01-16 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (match_template): Drop found_cpu_match local
|
|
|
|
|
variable.
|
|
|
|
|
|
2020-01-16 17:05:35 +08:00
|
|
|
|
2020-01-16 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/avx512dq-inval.l,
|
|
|
|
|
testsuite/gas/i386/avx512dq-inval.s: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new test.
|
|
|
|
|
|
2020-01-15 21:17:27 +08:00
|
|
|
|
2020-01-15 Jozef Lawrynowicz <jozef.l@mittosystems.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X
|
|
|
|
|
relocations when the target is 430X, except when extracting part of an
|
|
|
|
|
expression.
|
|
|
|
|
(msp430_srcoperand): Adjust comment.
|
|
|
|
|
Initialize the expp member of the msp430_operand_s struct as
|
|
|
|
|
appropriate.
|
|
|
|
|
(msp430_dstoperand): Likewise.
|
|
|
|
|
* testsuite/gas/msp430/msp430.exp: Run new test.
|
|
|
|
|
* testsuite/gas/msp430/reloc-lo-430x.d: New test.
|
|
|
|
|
* testsuite/gas/msp430/reloc-lo-430x.s: New test.
|
|
|
|
|
|
2020-01-15 13:45:43 +08:00
|
|
|
|
2020-01-15 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* configure.tgt: Add sparc-*-freebsd case.
|
|
|
|
|
|
2020-01-15 00:59:37 +08:00
|
|
|
|
2020-01-14 Lili Cui <lili.cui@intel.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/align-branch-1a.d: Updated for Darwin.
|
|
|
|
|
* testsuite/gas/i386/align-branch-1b.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/align-branch-1c.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/align-branch-1d.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/align-branch-1e.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/align-branch-1f.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/align-branch-1g.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/align-branch-1h.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/align-branch-1i.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/align-branch-5.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-align-branch-1a.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-align-branch-1b.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-align-branch-1c.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-align-branch-1d.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-align-branch-1e.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-align-branch-1f.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-align-branch-1g.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-align-branch-1h.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-align-branch-1i.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/x86-64-align-branch-5.d: Likewise.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Skip x86-64-align-branch-2a,
|
|
|
|
|
x86-64-align-branch-2b and x86-64-align-branch-2c on Darwin.
|
|
|
|
|
|
2020-01-14 21:13:57 +08:00
|
|
|
|
2020-01-14 Sergey Belyashov <sergey.belyashov@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 25377
|
|
|
|
|
* config/tc-z80.c: Add support for half precision, single
|
|
|
|
|
precision and double precision floating point values.
|
|
|
|
|
* config/tc-z80.h b/gas/config/tc-z80.h: Disable string escapes.
|
|
|
|
|
* doc/as.texi: Add new z80 command line options.
|
|
|
|
|
* doc/c-z80.texi: Document new z80 command line options.
|
|
|
|
|
* testsuite/gas/z80/ez80_pref_dis.s: New test.
|
|
|
|
|
* testsuite/gas/z80/ez80_pref_dis.d: New test driver.
|
|
|
|
|
* testsuite/gas/z80/z80.exp: Run the new test.
|
|
|
|
|
* testsuite/gas/z80/fp_math48.d: Use correct command line option.
|
|
|
|
|
* testsuite/gas/z80/fp_zeda32.d: Likewise.
|
|
|
|
|
* testsuite/gas/z80/strings.d: Update expected output.
|
|
|
|
|
|
2020-01-13 23:31:39 +08:00
|
|
|
|
2020-01-13 Matthew Malcomson <matthew.malcomson@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-aarch64.c (f64mm, f32mm): Add sve as a feature
|
|
|
|
|
dependency.
|
|
|
|
|
|
2020-01-13 17:16:47 +08:00
|
|
|
|
2020-01-13 Claudiu Zissulescu <claziss@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arc.c (arc_select_cpu): Re-init the bfd if we change
|
|
|
|
|
the CPU.
|
|
|
|
|
* config/tc-arc.h: Add header if/defs.
|
|
|
|
|
* testsuite/gas/arc/pseudos.d: Improve matching pattern.
|
|
|
|
|
|
2020-01-13 11:57:19 +08:00
|
|
|
|
2020-01-13 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/wasm32/allinsn.d: Update expected output.
|
|
|
|
|
|
2020-01-12 17:46:22 +08:00
|
|
|
|
2020-01-13 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-tic4x.c (tic4x_operands_match): Correct tic3x trap
|
|
|
|
|
insertion.
|
|
|
|
|
|
2020-01-10 14:59:59 +08:00
|
|
|
|
2020-01-10 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/elf/pr14891.s: Don't start directives in first column.
|
|
|
|
|
* testsuite/gas/elf/pr21661.d: Don't run on hpux.
|
|
|
|
|
|
2020-01-09 19:47:44 +08:00
|
|
|
|
2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 25224
|
|
|
|
|
* config/tc-z80.c (emit_ld_m_rr): Use integer types when checking
|
|
|
|
|
opcode byte values.
|
|
|
|
|
(emit_ld_r_r): Likewise.
|
|
|
|
|
(emit_ld_rr_m): Likewise.
|
|
|
|
|
(emit_ld_rr_nn): Likewise.
|
|
|
|
|
|
2020-01-09 18:40:04 +08:00
|
|
|
|
2020-01-09 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (optimize_encoding): Add
|
|
|
|
|
is_any_vex_encoding() invocations. Drop respective
|
|
|
|
|
i.tm.extension_opcode == None checks.
|
|
|
|
|
|
2020-01-09 18:39:33 +08:00
|
|
|
|
2020-01-09 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (md_assemble): Check RegRex is clear during
|
|
|
|
|
REX transformations. Correct comment indentation.
|
|
|
|
|
|
2020-01-09 18:38:59 +08:00
|
|
|
|
2020-01-09 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-i386.c (optimize_encoding): Generalize register
|
|
|
|
|
transformation for TEST optimization.
|
|
|
|
|
|
2020-01-09 18:38:01 +08:00
|
|
|
|
2020-01-09 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/i386/x86-64-sysenter-amd.s,
|
|
|
|
|
testsuite/gas/i386/x86-64-sysenter-amd.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-sysenter-amd.l,
|
|
|
|
|
testsuite/gas/i386/x86-64-sysenter-intel.d,
|
|
|
|
|
testsuite/gas/i386/x86-64-sysenter-mixed.d: New.
|
|
|
|
|
* testsuite/gas/i386/i386.exp: Run new tests.
|
|
|
|
|
|
2020-01-09 01:00:54 +08:00
|
|
|
|
2020-01-08 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 25284
|
|
|
|
|
* doc/as.texi (Align): Document the fact that all arguments can be
|
|
|
|
|
omitted.
|
|
|
|
|
(Balign): Likewise.
|
|
|
|
|
(P2align): Likewise.
|
|
|
|
|
|
2020-01-09 00:30:20 +08:00
|
|
|
|
2020-01-08 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 14891
|
|
|
|
|
* config/obj-elf.c (obj_elf_section): Fail if the section name is
|
|
|
|
|
already defined as a different symbol type.
|
|
|
|
|
* testsuite/gas/elf/pr14891.s: New test source file.
|
|
|
|
|
* testsuite/gas/elf/pr14891.d: New test driver.
|
|
|
|
|
* testsuite/gas/elf/pr14891.s: New test expected error output.
|
|
|
|
|
* testsuite/gas/elf/elf.exp: Run the new test.
|
|
|
|
|
|
2020-01-08 09:12:36 +08:00
|
|
|
|
2020-01-08 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-z8k.c (md_begin): Make idx unsigned.
|
|
|
|
|
(get_specific): Likewise for this_index.
|
|
|
|
|
|
2020-01-07 21:29:16 +08:00
|
|
|
|
2020-01-07 Claudiu Zissulescu <claziss@synopsys.com>
|
|
|
|
|
|
|
|
|
|
* onfig/tc-arc.c (parse_reloc_symbol): New function.
|
|
|
|
|
(tokenize_arguments): Clean up, use parse_reloc_symbol function.
|
|
|
|
|
(md_operand): Set X_md to absent.
|
|
|
|
|
(arc_parse_name): Check for X_md.
|
|
|
|
|
|
2020-01-04 00:23:19 +08:00
|
|
|
|
2020-01-03 Sergey Belyashov <sergey.belyashov@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 25311
|
|
|
|
|
* as.h (TC_STRING_ESCAPES): Provide a default definition.
|
|
|
|
|
* app.c (do_scrub_chars): Use TC_STRING_ESCAPES instead of
|
|
|
|
|
NO_STRING_ESCAPES.
|
|
|
|
|
* read.c (next_char_of_string): Likewise.
|
|
|
|
|
* config/tc-ppc.h (TC_STRING_ESCAPES): Define.
|
|
|
|
|
* config/tc-z80.h (TC_STRING_ESCAPES): Define.
|
|
|
|
|
|
2020-01-03 20:59:54 +08:00
|
|
|
|
2020-01-03 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* po/sv.po: Updated Swedish translation.
|
|
|
|
|
|
2020-01-03 17:16:44 +08:00
|
|
|
|
2020-01-03 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/aarch64/f64mm.s: Scale index of LD1RO{H,W,D}.
|
|
|
|
|
* testsuite/gas/aarch64/f64mm.d: Adjust expectations.
|
|
|
|
|
|
2020-01-03 17:14:16 +08:00
|
|
|
|
2020-01-03 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/aarch64/i8mm.s: Add 128-bit form tests for
|
|
|
|
|
by-element usdot. Add 64-bit form tests for by-element sudot.
|
|
|
|
|
* testsuite/gas/aarch64/i8mm.d: Adjust expectations.
|
|
|
|
|
|
2020-01-03 17:13:31 +08:00
|
|
|
|
2020-01-03 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/aarch64/f64mm.s: Drop 'i' from uzip<n>.
|
|
|
|
|
* testsuite/gas/aarch64/f64mm.d: Adjust expectations.
|
|
|
|
|
|
2020-01-03 17:12:49 +08:00
|
|
|
|
2020-01-03 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/gas/aarch64/f64mm.d,
|
|
|
|
|
testsuite/gas/aarch64/sve-movprfx-mm.d: Adjust expectations.
|
|
|
|
|
|
2020-01-02 22:10:40 +08:00
|
|
|
|
2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-z80.c: Add new architectures: Z180 and eZ80. Add
|
|
|
|
|
support for assembler code generated by SDCC. Add new relocation
|
|
|
|
|
types. Add z80-elf target support.
|
|
|
|
|
* config/tc-z80.h: Add z80-elf target support. Enable dollar local
|
|
|
|
|
labels. Local labels starts from ".L".
|
|
|
|
|
* NEWS: Mention the new support.
|
|
|
|
|
* testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict.
|
|
|
|
|
* testsuite/gas/all/fwdexp.s: Likewise.
|
|
|
|
|
* testsuite/gas/all/cond.l: Likewise.
|
|
|
|
|
* testsuite/gas/all/cond.s: Likewise.
|
|
|
|
|
* testsuite/gas/all/fwdexp.d: Likewise.
|
|
|
|
|
* testsuite/gas/all/fwdexp.s: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section2.e-mips: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section2.l: Likewise.
|
|
|
|
|
* testsuite/gas/elf/section2.s: Likewise.
|
|
|
|
|
* testsuite/gas/macros/app1.d: Likewise.
|
|
|
|
|
* testsuite/gas/macros/app1.s: Likewise.
|
|
|
|
|
* testsuite/gas/macros/app2.d: Likewise.
|
|
|
|
|
* testsuite/gas/macros/app2.s: Likewise.
|
|
|
|
|
* testsuite/gas/macros/app3.d: Likewise.
|
|
|
|
|
* testsuite/gas/macros/app3.s: Likewise.
|
|
|
|
|
* testsuite/gas/macros/app4.d: Likewise.
|
|
|
|
|
* testsuite/gas/macros/app4.s: Likewise.
|
|
|
|
|
* testsuite/gas/macros/app4b.s: Likewise.
|
|
|
|
|
* testsuite/gas/z80/suffix.d: Fix failure on ELF target.
|
|
|
|
|
* testsuite/gas/z80/z80.exp: Add new tests
|
|
|
|
|
* testsuite/gas/z80/dollar.d: New file.
|
|
|
|
|
* testsuite/gas/z80/dollar.s: New file.
|
|
|
|
|
* testsuite/gas/z80/ez80_adl_all.d: New file.
|
|
|
|
|
* testsuite/gas/z80/ez80_adl_all.s: New file.
|
|
|
|
|
* testsuite/gas/z80/ez80_adl_suf.d: New file.
|
|
|
|
|
* testsuite/gas/z80/ez80_isuf.s: New file.
|
|
|
|
|
* testsuite/gas/z80/ez80_z80_all.d: New file.
|
|
|
|
|
* testsuite/gas/z80/ez80_z80_all.s: New file.
|
|
|
|
|
* testsuite/gas/z80/ez80_z80_suf.d: New file.
|
|
|
|
|
* testsuite/gas/z80/r800_extra.d: New file.
|
|
|
|
|
* testsuite/gas/z80/r800_extra.s: New file.
|
|
|
|
|
* testsuite/gas/z80/r800_ii8.d: New file.
|
|
|
|
|
* testsuite/gas/z80/r800_z80_doc.d: New file.
|
|
|
|
|
* testsuite/gas/z80/z180.d: New file.
|
|
|
|
|
* testsuite/gas/z80/z180.s: New file.
|
|
|
|
|
* testsuite/gas/z80/z180_z80_doc.d: New file.
|
|
|
|
|
* testsuite/gas/z80/z80_doc.d: New file.
|
|
|
|
|
* testsuite/gas/z80/z80_doc.s: New file.
|
|
|
|
|
* testsuite/gas/z80/z80_ii8.d: New file.
|
|
|
|
|
* testsuite/gas/z80/z80_ii8.s: New file.
|
|
|
|
|
* testsuite/gas/z80/z80_in_f_c.d: New file.
|
|
|
|
|
* testsuite/gas/z80/z80_in_f_c.s: New file.
|
|
|
|
|
* testsuite/gas/z80/z80_op_ii_ld.d: New file.
|
|
|
|
|
* testsuite/gas/z80/z80_op_ii_ld.s: New file.
|
|
|
|
|
* testsuite/gas/z80/z80_out_c_0.d: New file.
|
|
|
|
|
* testsuite/gas/z80/z80_out_c_0.s: New file.
|
|
|
|
|
* testsuite/gas/z80/z80_reloc.d: New file.
|
|
|
|
|
* testsuite/gas/z80/z80_reloc.s: New file.
|
|
|
|
|
* testsuite/gas/z80/z80_sli.d: New file.
|
|
|
|
|
* testsuite/gas/z80/z80_sli.s: New file.
|
|
|
|
|
|
2019-10-21 23:59:11 +08:00
|
|
|
|
2020-01-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
|
|
|
|
|
|
|
|
|
|
* config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of
|
|
|
|
|
REGLIST_RN.
|
|
|
|
|
|
2020-01-01 16:22:19 +08:00
|
|
|
|
2020-01-01 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
Update year range in copyright notice of all files.
|
|
|
|
|
|
2020-01-01 15:37:11 +08:00
|
|
|
|
For older changes see ChangeLog-2019
|
2016-01-01 18:44:31 +08:00
|
|
|
|
|
2020-01-01 15:37:11 +08:00
|
|
|
|
Copyright (C) 2020 Free Software Foundation, Inc.
|
2016-01-01 18:44:31 +08: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.
|
|
|
|
|
|
|
|
|
|
Local Variables:
|
|
|
|
|
mode: change-log
|
|
|
|
|
left-margin: 8
|
|
|
|
|
fill-column: 74
|
|
|
|
|
version-control: never
|
|
|
|
|
End:
|