From 588de28a67e74a367c511e02b832cb82e9d1d025 Mon Sep 17 00:00:00 2001 From: Simon Marchi Date: Tue, 31 Mar 2020 21:09:04 -0400 Subject: [PATCH] gdb: rename displaced_step_closure to displaced_step_copy_insn_closure Since we're going to introduce other "displaced step" functions, make it clear that it's the return type of the displaced_step_copy_insn family of functions. --- gdb/aarch64-tdep.c | 18 ++--- gdb/aarch64-tdep.h | 6 +- gdb/amd64-tdep.c | 20 ++--- gdb/amd64-tdep.h | 4 +- gdb/arch-utils.c | 2 +- gdb/arch-utils.h | 2 +- gdb/arm-linux-tdep.c | 16 ++-- gdb/arm-tdep.c | 174 +++++++++++++++++++++--------------------- gdb/arm-tdep.h | 16 ++-- gdb/gdbarch.c | 6 +- gdb/gdbarch.h | 12 +-- gdb/gdbarch.sh | 6 +- gdb/i386-linux-tdep.c | 12 +-- gdb/i386-tdep.c | 14 ++-- gdb/i386-tdep.h | 6 +- gdb/infrun.c | 10 +-- gdb/infrun.h | 17 +++-- gdb/rs6000-tdep.c | 16 ++-- gdb/s390-tdep.c | 18 ++--- 19 files changed, 188 insertions(+), 187 deletions(-) diff --git a/gdb/aarch64-tdep.c b/gdb/aarch64-tdep.c index 91ea562248..ae145abce2 100644 --- a/gdb/aarch64-tdep.c +++ b/gdb/aarch64-tdep.c @@ -2764,7 +2764,7 @@ aarch64_software_single_step (struct regcache *regcache) return next_pcs; } -struct aarch64_displaced_step_closure : public displaced_step_closure +struct aarch64_displaced_step_copy_insn_closure : public displaced_step_copy_insn_closure { /* It is true when condition instruction, such as B.CON, TBZ, etc, is being displaced stepping. */ @@ -2790,7 +2790,7 @@ struct aarch64_displaced_step_data /* Registers when doing displaced stepping. */ struct regcache *regs; - aarch64_displaced_step_closure *dsc; + aarch64_displaced_step_copy_insn_closure *dsc; }; /* Implementation of aarch64_insn_visitor method "b". */ @@ -2999,7 +2999,7 @@ static const struct aarch64_insn_visitor visitor = /* Implement the "displaced_step_copy_insn" gdbarch method. */ -displaced_step_closure_up +displaced_step_copy_insn_closure_up aarch64_displaced_step_copy_insn (struct gdbarch *gdbarch, CORE_ADDR from, CORE_ADDR to, struct regcache *regs) @@ -3019,8 +3019,8 @@ aarch64_displaced_step_copy_insn (struct gdbarch *gdbarch, return NULL; } - std::unique_ptr dsc - (new aarch64_displaced_step_closure); + std::unique_ptr dsc + (new aarch64_displaced_step_copy_insn_closure); dsd.base.insn_addr = from; dsd.new_addr = to; dsd.regs = regs; @@ -3054,18 +3054,18 @@ aarch64_displaced_step_copy_insn (struct gdbarch *gdbarch, } /* This is a work around for a problem with g++ 4.8. */ - return displaced_step_closure_up (dsc.release ()); + return displaced_step_copy_insn_closure_up (dsc.release ()); } /* Implement the "displaced_step_fixup" gdbarch method. */ void aarch64_displaced_step_fixup (struct gdbarch *gdbarch, - struct displaced_step_closure *dsc_, + struct displaced_step_copy_insn_closure *dsc_, CORE_ADDR from, CORE_ADDR to, struct regcache *regs) { - aarch64_displaced_step_closure *dsc = (aarch64_displaced_step_closure *) dsc_; + aarch64_displaced_step_copy_insn_closure *dsc = (aarch64_displaced_step_copy_insn_closure *) dsc_; ULONGEST pc; @@ -3132,7 +3132,7 @@ aarch64_displaced_step_fixup (struct gdbarch *gdbarch, int aarch64_displaced_step_hw_singlestep (struct gdbarch *gdbarch, - struct displaced_step_closure *closure) + struct displaced_step_copy_insn_closure *closure) { return 1; } diff --git a/gdb/aarch64-tdep.h b/gdb/aarch64-tdep.h index f6ebabeaeb..9ca00e006f 100644 --- a/gdb/aarch64-tdep.h +++ b/gdb/aarch64-tdep.h @@ -107,17 +107,17 @@ const target_desc *aarch64_read_description (uint64_t vq, bool pauth_p); extern int aarch64_process_record (struct gdbarch *gdbarch, struct regcache *regcache, CORE_ADDR addr); -displaced_step_closure_up +displaced_step_copy_insn_closure_up aarch64_displaced_step_copy_insn (struct gdbarch *gdbarch, CORE_ADDR from, CORE_ADDR to, struct regcache *regs); void aarch64_displaced_step_fixup (struct gdbarch *gdbarch, - struct displaced_step_closure *dsc, + struct displaced_step_copy_insn_closure *dsc, CORE_ADDR from, CORE_ADDR to, struct regcache *regs); int aarch64_displaced_step_hw_singlestep (struct gdbarch *gdbarch, - struct displaced_step_closure *closure); + struct displaced_step_copy_insn_closure *closure); #endif /* aarch64-tdep.h */ diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c index f96a986825..b28756dbb3 100644 --- a/gdb/amd64-tdep.c +++ b/gdb/amd64-tdep.c @@ -1102,9 +1102,9 @@ struct amd64_insn gdb_byte *raw_insn; }; -struct amd64_displaced_step_closure : public displaced_step_closure +struct amd64_displaced_step_copy_insn_closure : public displaced_step_copy_insn_closure { - amd64_displaced_step_closure (int insn_buf_len) + amd64_displaced_step_copy_insn_closure (int insn_buf_len) : insn_buf (insn_buf_len, 0) {} @@ -1385,7 +1385,7 @@ amd64_get_insn_details (gdb_byte *insn, struct amd64_insn *details) We set base = pc + insn_length so we can leave disp unchanged. */ static void -fixup_riprel (struct gdbarch *gdbarch, amd64_displaced_step_closure *dsc, +fixup_riprel (struct gdbarch *gdbarch, amd64_displaced_step_copy_insn_closure *dsc, CORE_ADDR from, CORE_ADDR to, struct regcache *regs) { const struct amd64_insn *insn_details = &dsc->insn_details; @@ -1447,7 +1447,7 @@ fixup_riprel (struct gdbarch *gdbarch, amd64_displaced_step_closure *dsc, static void fixup_displaced_copy (struct gdbarch *gdbarch, - amd64_displaced_step_closure *dsc, + amd64_displaced_step_copy_insn_closure *dsc, CORE_ADDR from, CORE_ADDR to, struct regcache *regs) { const struct amd64_insn *details = &dsc->insn_details; @@ -1465,7 +1465,7 @@ fixup_displaced_copy (struct gdbarch *gdbarch, } } -displaced_step_closure_up +displaced_step_copy_insn_closure_up amd64_displaced_step_copy_insn (struct gdbarch *gdbarch, CORE_ADDR from, CORE_ADDR to, struct regcache *regs) @@ -1474,8 +1474,8 @@ amd64_displaced_step_copy_insn (struct gdbarch *gdbarch, /* Extra space for sentinels so fixup_{riprel,displaced_copy} don't have to continually watch for running off the end of the buffer. */ int fixup_sentinel_space = len; - std::unique_ptr dsc - (new amd64_displaced_step_closure (len + fixup_sentinel_space)); + std::unique_ptr dsc + (new amd64_displaced_step_copy_insn_closure (len + fixup_sentinel_space)); gdb_byte *buf = &dsc->insn_buf[0]; struct amd64_insn *details = &dsc->insn_details; @@ -1512,7 +1512,7 @@ amd64_displaced_step_copy_insn (struct gdbarch *gdbarch, } /* This is a work around for a problem with g++ 4.8. */ - return displaced_step_closure_up (dsc.release ()); + return displaced_step_copy_insn_closure_up (dsc.release ()); } static int @@ -1674,11 +1674,11 @@ amd64_insn_is_jump (struct gdbarch *gdbarch, CORE_ADDR addr) void amd64_displaced_step_fixup (struct gdbarch *gdbarch, - struct displaced_step_closure *dsc_, + struct displaced_step_copy_insn_closure *dsc_, CORE_ADDR from, CORE_ADDR to, struct regcache *regs) { - amd64_displaced_step_closure *dsc = (amd64_displaced_step_closure *) dsc_; + amd64_displaced_step_copy_insn_closure *dsc = (amd64_displaced_step_copy_insn_closure *) dsc_; enum bfd_endian byte_order = gdbarch_byte_order (gdbarch); /* The offset we applied to the instruction's address. */ ULONGEST insn_offset = to - from; diff --git a/gdb/amd64-tdep.h b/gdb/amd64-tdep.h index 44c1250cb9..c218a50e1e 100644 --- a/gdb/amd64-tdep.h +++ b/gdb/amd64-tdep.h @@ -88,11 +88,11 @@ enum amd64_regnum #define AMD64_NUM_REGS (AMD64_GSBASE_REGNUM + 1) -extern displaced_step_closure_up amd64_displaced_step_copy_insn +extern displaced_step_copy_insn_closure_up amd64_displaced_step_copy_insn (struct gdbarch *gdbarch, CORE_ADDR from, CORE_ADDR to, struct regcache *regs); extern void amd64_displaced_step_fixup (struct gdbarch *gdbarch, - struct displaced_step_closure *closure, + struct displaced_step_copy_insn_closure *closure, CORE_ADDR from, CORE_ADDR to, struct regcache *regs); diff --git a/gdb/arch-utils.c b/gdb/arch-utils.c index 04955ea847..9f278dbff3 100644 --- a/gdb/arch-utils.c +++ b/gdb/arch-utils.c @@ -40,7 +40,7 @@ int default_displaced_step_hw_singlestep (struct gdbarch *gdbarch, - struct displaced_step_closure *closure) + struct displaced_step_copy_insn_closure *closure) { return !gdbarch_software_single_step_p (gdbarch); } diff --git a/gdb/arch-utils.h b/gdb/arch-utils.h index 43d64b1f4f..c1607d3fd9 100644 --- a/gdb/arch-utils.h +++ b/gdb/arch-utils.h @@ -77,7 +77,7 @@ struct bp_manipulation_endian /* Default implementation of gdbarch_displaced_hw_singlestep. */ extern int default_displaced_step_hw_singlestep (struct gdbarch *, - struct displaced_step_closure *); + struct displaced_step_copy_insn_closure *); /* Possible value for gdbarch_displaced_step_location: Place displaced instructions at the program's entry point, diff --git a/gdb/arm-linux-tdep.c b/gdb/arm-linux-tdep.c index f60cb51763..9b69f8ad3d 100644 --- a/gdb/arm-linux-tdep.c +++ b/gdb/arm-linux-tdep.c @@ -946,7 +946,7 @@ arm_linux_software_single_step (struct regcache *regcache) static void arm_linux_cleanup_svc (struct gdbarch *gdbarch, struct regcache *regs, - arm_displaced_step_closure *dsc) + arm_displaced_step_copy_insn_closure *dsc) { ULONGEST apparent_pc; int within_scratch; @@ -974,7 +974,7 @@ arm_linux_cleanup_svc (struct gdbarch *gdbarch, static int arm_linux_copy_svc (struct gdbarch *gdbarch, struct regcache *regs, - arm_displaced_step_closure *dsc) + arm_displaced_step_copy_insn_closure *dsc) { CORE_ADDR return_to = 0; @@ -1065,7 +1065,7 @@ arm_linux_copy_svc (struct gdbarch *gdbarch, struct regcache *regs, static void cleanup_kernel_helper_return (struct gdbarch *gdbarch, struct regcache *regs, - arm_displaced_step_closure *dsc) + arm_displaced_step_copy_insn_closure *dsc) { displaced_write_reg (regs, dsc, ARM_LR_REGNUM, dsc->tmp[0], CANNOT_WRITE_PC); displaced_write_reg (regs, dsc, ARM_PC_REGNUM, dsc->tmp[0], BRANCH_WRITE_PC); @@ -1074,7 +1074,7 @@ cleanup_kernel_helper_return (struct gdbarch *gdbarch, static void arm_catch_kernel_helper_return (struct gdbarch *gdbarch, CORE_ADDR from, CORE_ADDR to, struct regcache *regs, - arm_displaced_step_closure *dsc) + arm_displaced_step_copy_insn_closure *dsc) { enum bfd_endian byte_order = gdbarch_byte_order (gdbarch); @@ -1103,13 +1103,13 @@ arm_catch_kernel_helper_return (struct gdbarch *gdbarch, CORE_ADDR from, the program has stepped into a Linux kernel helper routine (which must be handled as a special case). */ -static displaced_step_closure_up +static displaced_step_copy_insn_closure_up arm_linux_displaced_step_copy_insn (struct gdbarch *gdbarch, CORE_ADDR from, CORE_ADDR to, struct regcache *regs) { - std::unique_ptr dsc - (new arm_displaced_step_closure); + std::unique_ptr dsc + (new arm_displaced_step_copy_insn_closure); /* Detect when we enter an (inaccessible by GDB) Linux kernel helper, and stop at the return location. */ @@ -1132,7 +1132,7 @@ arm_linux_displaced_step_copy_insn (struct gdbarch *gdbarch, arm_displaced_init_closure (gdbarch, from, to, dsc.get ()); /* This is a work around for a problem with g++ 4.8. */ - return displaced_step_closure_up (dsc.release ()); + return displaced_step_copy_insn_closure_up (dsc.release ()); } /* Implementation of `gdbarch_stap_is_single_operand', as defined in diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c index 5c5efe52e6..9f16f1784e 100644 --- a/gdb/arm-tdep.c +++ b/gdb/arm-tdep.c @@ -408,9 +408,9 @@ arm_pc_is_thumb (struct gdbarch *gdbarch, CORE_ADDR memaddr) { struct bound_minimal_symbol sym; char type; - arm_displaced_step_closure *dsc - = ((arm_displaced_step_closure * ) - get_displaced_step_closure_by_addr (memaddr)); + arm_displaced_step_copy_insn_closure *dsc + = ((arm_displaced_step_copy_insn_closure * ) + get_displaced_step_copy_insn_closure_by_addr (memaddr)); /* If checking the mode of displaced instruction in copy area, the mode should be determined by instruction on the original address. */ @@ -4327,7 +4327,7 @@ arm_adjust_breakpoint_address (struct gdbarch *gdbarch, CORE_ADDR bpaddr) location. */ ULONGEST -displaced_read_reg (struct regcache *regs, arm_displaced_step_closure *dsc, +displaced_read_reg (struct regcache *regs, arm_displaced_step_copy_insn_closure *dsc, int regno) { ULONGEST ret; @@ -4375,7 +4375,7 @@ displaced_in_arm_mode (struct regcache *regs) /* Write to the PC as from a branch instruction. */ static void -branch_write_pc (struct regcache *regs, arm_displaced_step_closure *dsc, +branch_write_pc (struct regcache *regs, arm_displaced_step_copy_insn_closure *dsc, ULONGEST val) { if (!dsc->is_thumb) @@ -4421,7 +4421,7 @@ bx_write_pc (struct regcache *regs, ULONGEST val) /* Write to the PC as if from a load instruction. */ static void -load_write_pc (struct regcache *regs, arm_displaced_step_closure *dsc, +load_write_pc (struct regcache *regs, arm_displaced_step_copy_insn_closure *dsc, ULONGEST val) { if (DISPLACED_STEPPING_ARCH_VERSION >= 5) @@ -4433,7 +4433,7 @@ load_write_pc (struct regcache *regs, arm_displaced_step_closure *dsc, /* Write to the PC as if from an ALU instruction. */ static void -alu_write_pc (struct regcache *regs, arm_displaced_step_closure *dsc, +alu_write_pc (struct regcache *regs, arm_displaced_step_copy_insn_closure *dsc, ULONGEST val) { if (DISPLACED_STEPPING_ARCH_VERSION >= 7 && !dsc->is_thumb) @@ -4447,7 +4447,7 @@ alu_write_pc (struct regcache *regs, arm_displaced_step_closure *dsc, this is controlled by the WRITE_PC argument. */ void -displaced_write_reg (struct regcache *regs, arm_displaced_step_closure *dsc, +displaced_write_reg (struct regcache *regs, arm_displaced_step_copy_insn_closure *dsc, int regno, ULONGEST val, enum pc_write_style write_pc) { if (regno == ARM_PC_REGNUM) @@ -4531,7 +4531,7 @@ insn_references_pc (uint32_t insn, uint32_t bitmask) static int arm_copy_unmodified (struct gdbarch *gdbarch, uint32_t insn, - const char *iname, arm_displaced_step_closure *dsc) + const char *iname, arm_displaced_step_copy_insn_closure *dsc) { if (debug_displaced) fprintf_unfiltered (gdb_stdlog, "displaced: copying insn %.8lx, " @@ -4546,7 +4546,7 @@ arm_copy_unmodified (struct gdbarch *gdbarch, uint32_t insn, static int thumb_copy_unmodified_32bit (struct gdbarch *gdbarch, uint16_t insn1, uint16_t insn2, const char *iname, - arm_displaced_step_closure *dsc) + arm_displaced_step_copy_insn_closure *dsc) { if (debug_displaced) fprintf_unfiltered (gdb_stdlog, "displaced: copying insn %.4x %.4x, " @@ -4565,7 +4565,7 @@ thumb_copy_unmodified_32bit (struct gdbarch *gdbarch, uint16_t insn1, static int thumb_copy_unmodified_16bit (struct gdbarch *gdbarch, uint16_t insn, const char *iname, - arm_displaced_step_closure *dsc) + arm_displaced_step_copy_insn_closure *dsc) { if (debug_displaced) fprintf_unfiltered (gdb_stdlog, "displaced: copying insn %.4x, " @@ -4581,7 +4581,7 @@ thumb_copy_unmodified_16bit (struct gdbarch *gdbarch, uint16_t insn, static void cleanup_preload (struct gdbarch *gdbarch, - struct regcache *regs, arm_displaced_step_closure *dsc) + struct regcache *regs, arm_displaced_step_copy_insn_closure *dsc) { displaced_write_reg (regs, dsc, 0, dsc->tmp[0], CANNOT_WRITE_PC); if (!dsc->u.preload.immed) @@ -4590,7 +4590,7 @@ cleanup_preload (struct gdbarch *gdbarch, static void install_preload (struct gdbarch *gdbarch, struct regcache *regs, - arm_displaced_step_closure *dsc, unsigned int rn) + arm_displaced_step_copy_insn_closure *dsc, unsigned int rn) { ULONGEST rn_val; /* Preload instructions: @@ -4609,7 +4609,7 @@ install_preload (struct gdbarch *gdbarch, struct regcache *regs, static int arm_copy_preload (struct gdbarch *gdbarch, uint32_t insn, struct regcache *regs, - arm_displaced_step_closure *dsc) + arm_displaced_step_copy_insn_closure *dsc) { unsigned int rn = bits (insn, 16, 19); @@ -4629,7 +4629,7 @@ arm_copy_preload (struct gdbarch *gdbarch, uint32_t insn, struct regcache *regs, static int thumb2_copy_preload (struct gdbarch *gdbarch, uint16_t insn1, uint16_t insn2, - struct regcache *regs, arm_displaced_step_closure *dsc) + struct regcache *regs, arm_displaced_step_copy_insn_closure *dsc) { unsigned int rn = bits (insn1, 0, 3); unsigned int u_bit = bit (insn1, 7); @@ -4679,7 +4679,7 @@ thumb2_copy_preload (struct gdbarch *gdbarch, uint16_t insn1, uint16_t insn2, static void install_preload_reg(struct gdbarch *gdbarch, struct regcache *regs, - arm_displaced_step_closure *dsc, unsigned int rn, + arm_displaced_step_copy_insn_closure *dsc, unsigned int rn, unsigned int rm) { ULONGEST rn_val, rm_val; @@ -4704,7 +4704,7 @@ install_preload_reg(struct gdbarch *gdbarch, struct regcache *regs, static int arm_copy_preload_reg (struct gdbarch *gdbarch, uint32_t insn, struct regcache *regs, - arm_displaced_step_closure *dsc) + arm_displaced_step_copy_insn_closure *dsc) { unsigned int rn = bits (insn, 16, 19); unsigned int rm = bits (insn, 0, 3); @@ -4728,7 +4728,7 @@ arm_copy_preload_reg (struct gdbarch *gdbarch, uint32_t insn, static void cleanup_copro_load_store (struct gdbarch *gdbarch, struct regcache *regs, - arm_displaced_step_closure *dsc) + arm_displaced_step_copy_insn_closure *dsc) { ULONGEST rn_val = displaced_read_reg (regs, dsc, 0); @@ -4740,7 +4740,7 @@ cleanup_copro_load_store (struct gdbarch *gdbarch, static void install_copro_load_store (struct gdbarch *gdbarch, struct regcache *regs, - arm_displaced_step_closure *dsc, + arm_displaced_step_copy_insn_closure *dsc, int writeback, unsigned int rn) { ULONGEST rn_val; @@ -4768,7 +4768,7 @@ install_copro_load_store (struct gdbarch *gdbarch, struct regcache *regs, static int arm_copy_copro_load_store (struct gdbarch *gdbarch, uint32_t insn, struct regcache *regs, - arm_displaced_step_closure *dsc) + arm_displaced_step_copy_insn_closure *dsc) { unsigned int rn = bits (insn, 16, 19); @@ -4789,7 +4789,7 @@ arm_copy_copro_load_store (struct gdbarch *gdbarch, uint32_t insn, static int thumb2_copy_copro_load_store (struct gdbarch *gdbarch, uint16_t insn1, uint16_t insn2, struct regcache *regs, - arm_displaced_step_closure *dsc) + arm_displaced_step_copy_insn_closure *dsc) { unsigned int rn = bits (insn1, 0, 3); @@ -4817,7 +4817,7 @@ thumb2_copy_copro_load_store (struct gdbarch *gdbarch, uint16_t insn1, static void cleanup_branch (struct gdbarch *gdbarch, struct regcache *regs, - arm_displaced_step_closure *dsc) + arm_displaced_step_copy_insn_closure *dsc) { uint32_t status = displaced_read_reg (regs, dsc, ARM_PS_REGNUM); int branch_taken = condition_true (dsc->u.branch.cond, status); @@ -4848,7 +4848,7 @@ cleanup_branch (struct gdbarch *gdbarch, struct regcache *regs, static void install_b_bl_blx (struct gdbarch *gdbarch, struct regcache *regs, - arm_displaced_step_closure *dsc, + arm_displaced_step_copy_insn_closure *dsc, unsigned int cond, int exchange, int link, long offset) { /* Implement "BL