diff options
author | rupp <rupp@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-06-16 19:40:46 +0000 |
---|---|---|
committer | rupp <rupp@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-06-16 19:40:46 +0000 |
commit | cfe7b52eced8dbc42940b298ea57d7ad5eeaa74a (patch) | |
tree | eef98f370a10307f3f44fbf4305711f9f3f71b89 /gcc/dbxout.c | |
parent | 0c662fd1ac476eee2317b326aba254a4557a2f0f (diff) | |
download | gcc-cfe7b52eced8dbc42940b298ea57d7ad5eeaa74a.tar.gz |
This patch adds the end prologue and begin epilogue markers in Dwarf2
that are needed by the VMS debugger on I64.
* config/ia64/vms.h (ASM_OUTPUT_DWARF_DELTA_UNITS): Remove.
(ASM_OUTPUT_DWARF_VMS_DELTA: Define new macro.
* dbxout.c (gcc_debug_hooks): New entry begin_epilogue.
* debug.c: Likewise.
* sdbout.c: Likewise.
* vmsdbgout.c: Likewise.
* debug.h: Likewise. (dwarf2out_vms_{begin,end}_prologue): Declare.
* doc/tm.texi (ASM_OUTPUT_DWARF_VMS_DELTA): Document.
* dwarf2asm.c (dw2_asm_output_vms_delta): New function.
(ASM_OUTPUT_DWARF_VMS_DELTA): Call it.
* dwarf2asm.h (dw2_asm_output_vms_delta): Declare.
* dwarf2out.c (dw_fde_struct): New fields
dw_fde_vms_{end,begin}_prologue.
(PROLOGUE_END_LABEL, EPILOGUE_BEGIN_LABEL): New macros.
(dwarf2out_begin_prologue): Set dw_fde_struct defaults for above.
(dwarf2out_vms_end_prologue): New function.
(dwarf2out_vms_begin_epilogue): New function.
(dw_val_struct): New value dw_val_class_vms_delta.
(gcc_debug_hooks): New entry begin_epilogue. Set end_prologue,
begin_epilogue for VMS.
(AT_vms_delta1, AT_vms_delta2, add_AT_vms_delta): Declare
new static functions.
(dwarf_attr_name): New cases DW_AT_HP_{prologue,epilogue}.
(AT_vms_delta1, AT_vms_delta2, add_AT_vms_delta): New
static functions.
(print_die): New case dw_val_class_vms_delta.
(attr_checksum): Likewise.
(same_dw_val_p: Likewise.
(size_of_die): Likewise.
(value_format): Likewise.
(output_die): Likewise.
(gen_subprogram_die): Call add_AT_vms_delta on VMS.
(dwarf2out_begin_epilogue): Rename to dwarf2out_cfi_begin_epilogue
* dwarf2out.h (dwarf2out_begin_epilogue): Rename to
dwarf2out_cfi_begin_epilogue
* final.c (final_scan_insn): Likewise. Call begin_epilogue.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160858 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/dbxout.c')
-rw-r--r-- | gcc/dbxout.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/dbxout.c b/gcc/dbxout.c index be1e6fdcd0d..066e91f191a 100644 --- a/gcc/dbxout.c +++ b/gcc/dbxout.c @@ -1,6 +1,6 @@ /* Output dbx-format symbol table information from GNU compiler. Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. This file is part of GCC. @@ -357,6 +357,7 @@ const struct gcc_debug_hooks dbx_debug_hooks = dbxout_source_line, /* source_line */ dbxout_begin_prologue, /* begin_prologue */ debug_nothing_int_charstar, /* end_prologue */ + debug_nothing_int_charstar, /* begin_epilogue */ debug_nothing_int_charstar, /* end_epilogue */ #ifdef DBX_FUNCTION_FIRST dbxout_begin_function, @@ -399,6 +400,7 @@ const struct gcc_debug_hooks xcoff_debug_hooks = xcoffout_source_line, xcoffout_begin_prologue, /* begin_prologue */ debug_nothing_int_charstar, /* end_prologue */ + debug_nothing_int_charstar, /* begin_epilogue */ xcoffout_end_epilogue, debug_nothing_tree, /* begin_function */ xcoffout_end_function, |