1/* Definitions needed when using stabs embedded in ELF sections.
2 Copyright (C) 1999-2017 Free Software Foundation, Inc.
3
4This file is part of GCC.
5
6GCC is free software; you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation; either version 3, or (at your option)
9any later version.
10
11GCC is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16Under Section 7 of GPL version 3, you are granted additional
17permissions described in the GCC Runtime Library Exception, version
183.1, as published by the Free Software Foundation.
19
20You should have received a copy of the GNU General Public License and
21a copy of the GCC Runtime Library Exception along with this program;
22see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
23<http://www.gnu.org/licenses/>. */
24
25/* This file may be included by any ELF target which wishes to
26 support -gstabs generating stabs in sections, as produced by gas
27 and understood by gdb. */
28
29#ifndef GCC_DBX_ELF_H
30#define GCC_DBX_ELF_H
31
32/* Output DBX (stabs) debugging information if doing -gstabs. */
33
34#define DBX_DEBUGGING_INFO 1
35
36/* Make LBRAC and RBRAC addresses relative to the start of the
37 function. The native Solaris stabs debugging format works this
38 way, gdb expects it, and it reduces the number of relocation
39 entries... */
40
41#define DBX_BLOCKS_FUNCTION_RELATIVE 1
42
43/* ... but, to make this work, functions must appear prior to line info. */
44
45#define DBX_FUNCTION_FIRST
46
47/* When generating stabs debugging, use N_BINCL entries. */
48
49#define DBX_USE_BINCL
50
51/* There is no limit to the length of stabs strings. */
52
53#ifndef DBX_CONTIN_LENGTH
54#define DBX_CONTIN_LENGTH 0
55#endif
56
57/* Like block addresses, stabs line numbers are relative to the
58 current function. */
59
60#define DBX_LINES_FUNCTION_RELATIVE 1
61
62/* Generate a blank trailing N_SO to mark the end of the .o file, since
63 we can't depend upon the linker to mark .o file boundaries with
64 embedded stabs. */
65
66#define DBX_OUTPUT_NULL_N_SO_AT_MAIN_SOURCE_FILE_END
67
68#endif /* ! GCC_DBX_ELF_H */
69