152284Sobrien/* Definitions needed when using stabs embedded in ELF sections.
2169689Skan   Copyright (C) 1999, 2004 Free Software Foundation, Inc.
352284Sobrien
4132718SkanThis file is part of GCC.
552284Sobrien
6132718SkanGCC is free software; you can redistribute it and/or modify
752284Sobrienit under the terms of the GNU General Public License as published by
852284Sobrienthe Free Software Foundation; either version 2, or (at your option)
952284Sobrienany later version.
1052284Sobrien
11132718SkanGCC is distributed in the hope that it will be useful,
1252284Sobrienbut WITHOUT ANY WARRANTY; without even the implied warranty of
1352284SobrienMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1452284SobrienGNU General Public License for more details.
1552284Sobrien
1652284SobrienYou should have received a copy of the GNU General Public License
17132718Skanalong with GCC; see the file COPYING.  If not, write to
18169689Skanthe Free Software Foundation, 51 Franklin Street, Fifth Floor,
19169689SkanBoston, MA 02110-1301, USA.  */
2052284Sobrien
2152284Sobrien/* This file may be included by any ELF target which wishes to
2252284Sobrien   support -gstabs generating stabs in sections, as produced by gas
2352284Sobrien   and understood by gdb.  */
2452284Sobrien
2590075Sobrien#ifndef GCC_DBX_ELF_H
2690075Sobrien#define GCC_DBX_ELF_H
2752284Sobrien
2852284Sobrien/* Output DBX (stabs) debugging information if doing -gstabs.  */
2952284Sobrien
30117395Skan#define DBX_DEBUGGING_INFO 1
3152284Sobrien
3252284Sobrien/* Make LBRAC and RBRAC addresses relative to the start of the
3352284Sobrien   function.  The native Solaris stabs debugging format works this
3452284Sobrien   way, gdb expects it, and it reduces the number of relocation
3552284Sobrien   entries...  */
3652284Sobrien
3752284Sobrien#define DBX_BLOCKS_FUNCTION_RELATIVE 1
3852284Sobrien
3952284Sobrien/* ... but, to make this work, functions must appear prior to line info.  */
4052284Sobrien
4152284Sobrien#define DBX_FUNCTION_FIRST
4252284Sobrien
4352284Sobrien/* When generating stabs debugging, use N_BINCL entries.  */
4452284Sobrien
4552284Sobrien#define DBX_USE_BINCL
4652284Sobrien
4752284Sobrien/* There is no limit to the length of stabs strings.  */
4852284Sobrien
4952284Sobrien#ifndef DBX_CONTIN_LENGTH
5052284Sobrien#define DBX_CONTIN_LENGTH 0
5152284Sobrien#endif
5252284Sobrien
5352284Sobrien/* Like block addresses, stabs line numbers are relative to the
5452284Sobrien   current function.  */
5552284Sobrien
56169689Skan#define DBX_LINES_FUNCTION_RELATIVE 1
5752284Sobrien
5852284Sobrien/* Generate a blank trailing N_SO to mark the end of the .o file, since
5952284Sobrien   we can't depend upon the linker to mark .o file boundaries with
6052284Sobrien   embedded stabs.  */
6152284Sobrien
62169689Skan#define DBX_OUTPUT_NULL_N_SO_AT_MAIN_SOURCE_FILE_END
6352284Sobrien
6490075Sobrien#endif /* ! GCC_DBX_ELF_H */
65