]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - gas/ChangeLog
Fix memory leak in RiscV assembler.
[thirdparty/binutils-gdb.git] / gas / ChangeLog
index ef87eea33b62990fb8200eb341763fd5ea430186..fef3c248196ef217f25ea564d3037afbb685ba0e 100644 (file)
@@ -1,3 +1,134 @@
+2023-10-02  Nick Clifton  <nickc@redhat.com>
+
+       PR 30861
+       * config/tc-riscv.c (riscv_insert_uleb128_fixes): Release
+       duplicated memory.
+
+2023-09-18  Jacob Navia  <jacob@jacob.remcomp.fr>
+
+       * config/tc-riscv.c (riscv_ip_hardcode): Fully initialise the
+       allocated riscv_opcode structure.
+
+2023-08-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+       * config/tc-bpf.c (check_immediate_overflow): New function.
+       (encode_insn): Use check_immediate_overflow.
+       (md_assemble): Do not relax instructions with
+       constant disp16 fields.
+       * doc/c-bpf.texi (BPF Instructions): Add note about how numerical
+       literal values are interpreted for instruction immediate operands.
+       * testsuite/gas/bpf/disp16-overflow.s: Adapt accordingly.
+       * testsuite/gas/bpf/jump-relax-jump.s: Likewise.
+       * testsuite/gas/bpf/jump-relax-jump.d: Likewise.
+       * testsuite/gas/bpf/jump-relax-jump-be.d: Likewise.
+       * testsuite/gas/bpf/jump-relax-ja.s: Likewise.
+       * testsuite/gas/bpf/jump-relax-ja.d: Likewise.
+       * testsuite/gas/bpf/jump-relax-ja-be.d: Likewise.
+       * testsuite/gas/bpf/disp16-overflow-relax.l: Likewise.
+       * testsuite/gas/bpf/imm32-overflow.s: Likewise.
+       * testsuite/gas/bpf/disp32-overflow.s: Likewise.
+       * testsuite/gas/bpf/disp16-overflow.l: Likewise.
+       * testsuite/gas/bpf/disp32-overflow.l: Likewise.
+       * testsuite/gas/bpf/imm32-overflow.l: Likewise.
+       * testsuite/gas/bpf/offset16-overflow.l: Likewise.
+
+2023-07-30  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+       * config/tc-bpf.h (elf_tc_final_processing): Define.
+       * config/tc-bpf.c (bpf_elf_final_processing): New function.
+
+2023-07-30  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+       * config/tc-bpf.c (signed_overflow): Copy function from
+       tc-aarch64.c.
+       (encode_insn): Check for overflow in constant immediates.
+       (add_relaxed_insn): Pass relax argument to encode_insn.
+       (add_fixed_insn): Likewise.
+       * testsuite/gas/bpf/disp16-overflow.d: New file.
+       * testsuite/gas/bpf/disp16-overflow.s: Likewise.
+       * testsuite/gas/bpf/disp16-overflow.l: Likewise.
+       * testsuite/gas/bpf/disp32-overflow.d: Likewise.
+       * testsuite/gas/bpf/disp32-overflow.s: Likewise.
+       * testsuite/gas/bpf/disp32-overflow.l: Likewise.
+       * testsuite/gas/bpf/imm32-overflow.d: Likewise.
+       * testsuite/gas/bpf/imm32-overflow.s: Likewise.
+       * testsuite/gas/bpf/imm32-overflow.l: Likewise.
+       * testsuite/gas/bpf/offset16-overflow.d: Likewise.
+       * testsuite/gas/bpf/offset16-overflow.s: Likewise.
+       * testsuite/gas/bpf/offset16-overflow.l: Likewise.
+       * testsuite/gas/bpf/disp16-overflow-relax.d: Likewise.
+       * testsuite/gas/bpf/disp16-overflow-relax.l: Likewise.
+       * testsuite/gas/bpf/disp16-overflow-relax.s: Likewise.
+       * testsuite/gas/bpf/jump-relax-jump-be.d: New file.
+       * testsuite/gas/bpf/bpf.exp: Run new tests.
+
+2023-07-28  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+       PR gas/30690
+       * config/tc-bpf.c (struct bpf_insn): Add fields is_relaxable and
+       relaxed_exp.
+       (enum options): Add OPTION_NO_RELAX.
+       (md_longopts): Likewise for -mno-relax.
+       (do_relax): New global.
+       (md_parse_option): Handle OPTION_NO_RELAX.
+       (RELAX_BRANCH_ENCODE): Define.
+       (RELAX_BRANCH_P): Likewise.
+       (RELAX_BRANCH_LENGTH): Likewise.
+       (RELAX_BRANCH_CONST): Likewise.
+       (RELAX_BRANCH_UNCOND): Likewise.
+       (relaxed_branch_length): New function.
+       (md_estimate_size_before_relax): Likewise.
+       (read_insn_word): Likewise.
+       (encode_int16): Likewise.
+       (encode_int32): Likewise.
+       (write_insn_bytes): Likewise.
+       (md_convert_frag): Likewise.
+       (encode_insn): Likewise.
+       (install_insn_fixups): Likewise.
+       (add_fixed_insn): Likewise.
+       (add_relaxed_insn): Likewise.
+       (md_assemble): Move instruction encoding logic to the above
+       new functions.
+       * testsuite/gas/bpf/jump-relax-ja.d: New test.
+       * testsuite/gas/bpf/jump-relax-ja-be.d: Likewise.
+       * testsuite/gas/bpf/jump-relax-ja.s: And corresponding source.
+       * testsuite/gas/bpf/jump-relax-jump.d: New test.
+       * testsuite/gas/bpf/jump-relax-jump-be.d: Likewise.
+       * testsuite/gas/bpf/jump-relax-jump.s: And corresponding source.
+       * testsuite/gas/bpf/bpf.exp: Run new tests.
+       * doc/c-bpf.texi (BPF Options): Document -mno-relax.
+
+2023-07-26  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+       * testsuite/gas/bpf/alu.s: Add test for NEGI and NEG32I.
+       * testsuite/gas/bpf/alu32.s: Likewise.
+       * testsuite/gas/bpf/alu-pseudoc.s: Likewise.
+       * testsuite/gas/bpf/alu32-pseudoc.s: Likewise.
+       * testsuite/gas/bpf/alu.d: Add expected results.
+       * testsuite/gas/bpf/alu-be.d: Likewise.
+       * testsuite/gas/bpf/alu-pseudoc.d: Likewise.
+       * testsuite/gas/bpf/alu-be-pseudoc.d: Likewise.
+       * testsuite/gas/bpf/alu32.d: Likewise.
+       * testsuite/gas/bpf/alu32-be.d: Likewise.
+       * testsuite/gas/bpf/alu32-be-pseudoc.d: Likewise.
+
+2023-07-26  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+       * testsuite/gas/bpf/alu.s: The register neg instruction gets only
+       one argument.
+       * testsuite/gas/bpf/alu32-be-pseudoc.d: Likewise.
+       * testsuite/gas/bpf/alu32-pseudoc.d: Likewise.
+       * testsuite/gas/bpf/alu32-pseudoc.s: Likewise.
+       * testsuite/gas/bpf/alu-pseudoc.d: Likewise.
+       * testsuite/gas/bpf/alu-be-pseudoc.d: Likewise.
+       * testsuite/gas/bpf/alu-pseudoc.s: Likewise.
+       * testsuite/gas/bpf/alu-be.d: Likewise.
+       * testsuite/gas/bpf/alu.d: Likewise.
+       * testsuite/gas/bpf/alu32-be.d: Likewise.
+       * testsuite/gas/bpf/alu32.d: Likewise.
+       * testsuite/gas/bpf/alu32.s: Likewise.
+       * doc/c-bpf.texi (BPF Instructions): Update accordingly.
+
 2023-07-24  Jose E. Marchesi  <jose.marchesi@oracle.com>
 
        * doc/c-bpf.texi (BPF Instructions): Document BSWAP* instructions.