aboutsummaryrefslogtreecommitdiff
path: root/gcc/dwarf2.h
diff options
context:
space:
mode:
authorJeffrey A Law <law@cygnus.com>1997-09-27 03:58:57 +0000
committerJeffrey A Law <law@cygnus.com>1997-09-27 03:58:57 +0000
commitfc6d9fae906dacae9bdce9986c6e5c716617b700 (patch)
tree2e41168654f1c6b85b43e081f1c15f4530c90758 /gcc/dwarf2.h
parent1bb3725fbab96d04c986cc800bbe8427e7239b67 (diff)
* frame.c: Include gansidecl.h for PROTO.
* dwarf2out.c: Move inclusion of dwarf2.h down so that PROTO is defined. Don't declare dwarf2out_cfi_label here. * dwarf2.h: Add declarations of DWARF2 unwind info support functions. * m68k.c: Include dwarf2.h. (output_function_prologue): Add dwarf2 support. * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM): New macros. (INCOMING_FRAME_SP_OFFSET): Likewise. Update m68k patch from Andreas. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@15740 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/dwarf2.h')
-rw-r--r--gcc/dwarf2.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/gcc/dwarf2.h b/gcc/dwarf2.h
index 4340344c868..993dea774ee 100644
--- a/gcc/dwarf2.h
+++ b/gcc/dwarf2.h
@@ -543,3 +543,49 @@ enum dwarf_macinfo_record_type
DW_MACINFO_end_file = 4,
DW_MACINFO_vendor_ext = 255
};
+
+/* Interface of the DWARF2 unwind info support. */
+
+/* Decide whether we want to emit frame unwind information for the current
+ translation unit. */
+
+extern int dwarf2out_do_frame PROTO((void));
+
+/* Generate a new label for the CFI info to refer to. */
+
+extern char *dwarf2out_cfi_label PROTO((void));
+
+/* Entry point to update the canonical frame address (CFA). */
+
+extern void dwarf2out_def_cfa PROTO((char *, unsigned, long));
+
+/* Add the CFI for saving a register window. */
+
+extern void dwarf2out_window_save PROTO((char *));
+
+/* Add a CFI to update the running total of the size of arguments pushed
+ onto the stack. */
+
+extern void dwarf2out_args_size PROTO((char *, long));
+
+/* Entry point for saving a register to the stack. */
+
+extern void dwarf2out_reg_save PROTO((char *, unsigned, long));
+
+/* Entry point for saving the return address in the stack. */
+
+extern void dwarf2out_return_save PROTO((char *, long));
+
+/* Entry point for saving the return address in a register. */
+
+extern void dwarf2out_return_reg PROTO((char *, unsigned));
+
+/* Output a marker (i.e. a label) for the beginning of a function, before
+ the prologue. */
+
+extern void dwarf2out_begin_prologue PROTO((void));
+
+/* Output a marker (i.e. a label) for the absolute end of the generated
+ code for a function definition. */
+
+extern void dwarf2out_end_epilogue PROTO((void));