diff options
author | Cary Coutant <ccoutant@google.com> | 2009-10-29 18:13:27 +0000 |
---|---|---|
committer | Cary Coutant <ccoutant@gcc.gnu.org> | 2009-10-29 11:13:27 -0700 |
commit | d0539838389f4febb4582217a93e90141a642745 (patch) | |
tree | 7087fae8b2855105cb47e6bdcf53fef7dda8d854 /gcc/debug.h | |
parent | c376dbfba163068f1caeb1b7749bb74366a5efad (diff) | |
download | gcc-d0539838389f4febb4582217a93e90141a642745.tar.gz |
re PR debug/41700 (g++.dg/debug/dwarf2/icf.C)
gcc/ChangeLog:
PR debug/41700
* dwarf2out.c (dwarf2_debug_hooks): Add entries for new hook (two
locations in the source).
(store_vcall_insn): New function.
(lookup_vcall_insn): New function.
(dwarf2out_virtual_call_token): Use store_vcall_insn.
(dwarf2out_copy_call_info): New function.
(dwarf2out_virtual_call): Use lookup_vcall_insn.
* emit-rtl.c (try_split): Call copy_call_info debug hook.
* debug.h (struct gcc_debug_hooks): Add copy_call_info hook.
* debug.c (do_nothing_debug_hooks): Add dummy entry for new hook.
(debug_nothing_rtx_rtx): New dummy hook.
* dbxout.c (dbx_debug_hooks): Add dummy entry for new hook.
(xcoff_debug_hooks): Likewise.
* sdbout.c (sdb_debug_hooks): Likewise.
* vmsdbgout.c (vmsdbg_debug_hooks): Likewise.
From-SVN: r153719
Diffstat (limited to 'gcc/debug.h')
-rw-r--r-- | gcc/debug.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/debug.h b/gcc/debug.h index ef611d43572..079ecb623ad 100644 --- a/gcc/debug.h +++ b/gcc/debug.h @@ -143,6 +143,12 @@ struct gcc_debug_hooks point. */ void (* virtual_call_token) (tree addr, int insn_uid); + /* Copies the OBJ_TYPE_REF_TOKEN for a virtual call from OLD_INSN to + NEW_INSN. Called from emit-rtl.c:try_split when a CALL_INSN is + split, so that the vtable slot index remains associated with the + new CALL_INSN. */ + void (* copy_call_info) (rtx old_insn, rtx new_insn); + /* Records a virtual call given INSN_UID, which is the UID of the call instruction. The UID is then mapped to the vtable slot index noted during the lowering phase. Called from final_scan_insn when ICF @@ -174,6 +180,7 @@ extern void debug_nothing_tree_int (tree, int); extern void debug_nothing_tree_tree_tree_bool (tree, tree, tree, bool); extern bool debug_true_const_tree (const_tree); extern void debug_nothing_rtx (rtx); +extern void debug_nothing_rtx_rtx (rtx, rtx); extern void debug_nothing_uid (int); /* Hooks for various debug formats. */ |