gdb: remove COMPUNIT_EPILOGUE_UNWIND_VALID macro, add getter/setter

Add a getter and a setter for a compunit_symtab's epilogue unwind valid flag.
Remove the corresponding macro and adjust all callers.

Change-Id: If3b68629d987767da9be7041a95d96dc34367a9a
This commit is contained in:
Simon Marchi 2021-11-19 22:41:10 -05:00 committed by Simon Marchi
parent b0fc0e82d5
commit 3908b699f8
4 changed files with 14 additions and 5 deletions

View File

@ -2901,7 +2901,7 @@ amd64_stack_frame_destroyed_p (struct gdbarch *gdbarch, CORE_ADDR pc)
struct compunit_symtab *cust;
cust = find_pc_compunit_symtab (pc);
if (cust != NULL && COMPUNIT_EPILOGUE_UNWIND_VALID (cust))
if (cust != NULL && cust->epilogue_unwind_valid ())
return 0;
if (target_read_memory (pc, &insn, 1))

View File

@ -9496,7 +9496,7 @@ process_full_comp_unit (dwarf2_cu *cu, enum language pretend_language)
cust->set_locations_valid (true);
if (gcc_4_minor >= 5)
cust->epilogue_unwind_valid = 1;
cust->set_epilogue_unwind_valid (true);
cust->set_call_site_htab (cu->call_site_htab);
}

View File

@ -2222,7 +2222,7 @@ i386_stack_frame_destroyed_p (struct gdbarch *gdbarch, CORE_ADDR pc)
struct compunit_symtab *cust;
cust = find_pc_compunit_symtab (pc);
if (cust != NULL && COMPUNIT_EPILOGUE_UNWIND_VALID (cust))
if (cust != NULL && cust->epilogue_unwind_valid ())
return 0;
if (target_read_memory (pc, &insn, 1))

View File

@ -1541,6 +1541,16 @@ struct compunit_symtab
m_locations_valid = locations_valid;
}
bool epilogue_unwind_valid () const
{
return m_epilogue_unwind_valid;
}
void set_epilogue_unwind_valid (bool epilogue_unwind_valid)
{
m_epilogue_unwind_valid = epilogue_unwind_valid;
}
/* Make PRIMARY_FILETAB the primary filetab of this compunit symtab.
PRIMARY_FILETAB must already be a filetab of this compunit symtab. */
@ -1607,7 +1617,7 @@ struct compunit_symtab
/* DWARF unwinder for this CU is valid even for epilogues (PC at the return
instruction). This is supported by GCC since 4.5.0. */
unsigned int epilogue_unwind_valid : 1;
unsigned int m_epilogue_unwind_valid : 1;
/* struct call_site entries for this compilation unit or NULL. */
htab_t m_call_site_htab;
@ -1636,7 +1646,6 @@ struct compunit_symtab
using compunit_symtab_range = next_range<compunit_symtab>;
#define COMPUNIT_EPILOGUE_UNWIND_VALID(cust) ((cust)->epilogue_unwind_valid)
#define COMPUNIT_MACRO_TABLE(cust) ((cust)->macro_table)
/* Return the language of CUST. */