summaryrefslogtreecommitdiff
path: root/gas/dwarf2dbg.h
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>1999-06-03 02:51:53 +0000
committerRichard Henderson <rth@redhat.com>1999-06-03 02:51:53 +0000
commit54e240a3dc9c3e5842f618f50c677a043eaa74ab (patch)
tree3089eccc8fcbe90dc07f5ac4b7977e9a7a7537c4 /gas/dwarf2dbg.h
parent2152e7a8d083ddd337674f5aac95a2a8ec0ae55b (diff)
downloadbinutils-redhat-54e240a3dc9c3e5842f618f50c677a043eaa74ab.tar.gz
* as.c (parse_args): Add option -gdwarf2 to allow requesting
DWARF2 debug info (line information only, at this point). * as.h: Update comment about supported debug formats. * dwarf2dbg.c, dwarf2dbg.h: New files. * Makefile.am (GAS_CFILES, HFILES, GENERIC_OBJS): Add them.
Diffstat (limited to 'gas/dwarf2dbg.h')
-rw-r--r--gas/dwarf2dbg.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/gas/dwarf2dbg.h b/gas/dwarf2dbg.h
new file mode 100644
index 0000000000..dda8ab279a
--- /dev/null
+++ b/gas/dwarf2dbg.h
@@ -0,0 +1,48 @@
+#ifndef AS_DWARF2DBG_H
+#define AS_DWARF2DBG_H
+
+#include "as.h"
+
+#define DWARF2_FLAG_BEGIN_STMT (1 << 0) /* beginning of statement */
+#define DWARF2_FLAG_BEGIN_BLOCK (1 << 1) /* beginning of basic block */
+
+struct dwarf2_line_info
+ {
+ char *filename;
+ unsigned int filenum;
+ unsigned int line;
+ unsigned int column;
+ unsigned int flags;
+ };
+
+/* Implements the .file FILENO "FILENAME" directive. FILENO can be 0
+ to indicate that no file number has been assigned. All real file
+ number must be >0. */
+extern void dwarf2_directive_file (int dummy);
+
+/* Implements the .loc FILENO LINENO [COLUMN] directive. FILENO is
+ the file number, LINENO the line number and the (optional) COLUMN
+ the column of the source code that the following instruction
+ corresponds to. FILENO can be 0 to indicate that the filename
+ specified by the textually most recent .file directive should be
+ used. */
+extern void dwarf2_directive_loc (int dummy);
+
+/* Returns the current source information. If .file directives have
+ been encountered, the info for the corresponding source file is
+ returned. Otherwise, the info for the assembly source file is
+ returned. */
+extern void dwarf2_where (struct dwarf2_line_info *l);
+
+/* This function generates .debug_line info based on the address and
+ source information passed in the arguments. ADDR should be the
+ frag-relative offset of the instruction the information is for and
+ L is the source information that should be associated with that
+ address. */
+extern void dwarf2_gen_line_info (bfd_vma addr, struct dwarf2_line_info *l);
+
+/* Must be called after all other input is processed to finish up the
+ .debug_line section. */
+extern void dwarf2_finish (void);
+
+#endif /* AS_DWARF2DBG_H */