aboutsummaryrefslogtreecommitdiff
path: root/opcodes/ChangeLog
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2020-03-22 15:02:27 +1030
committerAlan Modra <amodra@gmail.com>2020-03-22 23:20:15 +1030
commitd1023b5d1e4483e5fa3bdab97bc041e1b1c05c5d (patch)
treee56983195a13ceeaeda818485bdcbfd1e6c11387 /opcodes/ChangeLog
parentda2efc2050edf4641a22462beeb4c6b9a1a827f2 (diff)
downloadgdb-d1023b5d1e4483e5fa3bdab97bc041e1b1c05c5d.zip
gdb-d1023b5d1e4483e5fa3bdab97bc041e1b1c05c5d.tar.gz
gdb-d1023b5d1e4483e5fa3bdab97bc041e1b1c05c5d.tar.bz2
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.
Diffstat (limited to 'opcodes/ChangeLog')
-rw-r--r--opcodes/ChangeLog31
1 files changed, 31 insertions, 0 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 5f92296..7ca7a64 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,34 @@
+2020-03-22 Alan Modra <amodra@gmail.com>
+
+ * 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.
+
2020-03-20 Alan Modra <amodra@gmail.com>
* metag-dis.c (print_insn_metag): Don't ignore status from