This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [AArch64][3/6] DWARF unwinder support for signed return address


On 10/08/17 12:08, Pedro Alves wrote:
On 08/09/2017 01:17 PM, Jiong Wang wrote:
+
+  /* Only DW_CFA_GNU_window_save is expected on AArch64.  */
+  if (op != DW_CFA_GNU_window_save)
+    return false;
+
Was there any progress in giving this an Aarch64-specific name
to avoid confusion?  FYI, I was confused by this again for a couple
minutes when I read it, until I remembered the previous discussions.

Hi Pedro,

  Yes, We can add DW_CFA_AARCH64_negate_ra_state to dwarf2.def, with the same
  number of DW_CFA_GNU_window_save, then need to introduce a new DW_CFA_DUP
  to avoid duplicated case value trouble when auto-generate switch/case for
  returning CFA name.  Will post patch to GCC then can be synced to binutils-gdb
  onced approved.


+/* Implement the execute_dwarf_cfa_vendor_op method.  */
+
+static bool
+aarch64_execute_dwarf_cfa_vendor_op (struct gdbarch *gdbarch, gdb_byte op,
+				     struct dwarf2_frame_state *fs)
+{
+  struct dwarf2_frame_state_reg *ra_state_column;
+  static unsigned char exp_0 = 0x30; /* DW_OP_lit0.  */
+  static unsigned char exp_1 = 0x31; /* DW_OP_lit1.  */
Can these be static const?  (likewise elsewhere in the patch.)

Also, gdb_byte.

Will fix in the next update.


Thanks.

Regards,
Jiong


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]