diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-07-09 20:43:06 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-07-09 20:43:06 +0000 |
commit | 53a3f6d18300d08b60ecb045f845cd42f1b6e425 (patch) | |
tree | fe412d2bc3a742d749bc063bc62d8d6a13b4dc76 /gcc/defaults.h | |
parent | 6ca363a7410bcbd5e2458e5ec326a3cb5f874562 (diff) | |
download | gcc-53a3f6d18300d08b60ecb045f845cd42f1b6e425.tar.gz |
dwarf2: Reduce some redundant definitions.
Move some definitions to defaults.h; some simply aren't needed
anymore in the respective dwarf2{cfi,out}.c files.
* defaults.h (DWARF_CIE_DATA_ALIGNMENT, DWARF_FRAME_RETURN_COLUMN,
DWARF_FRAME_REGNUM, DWARF2_FRAME_REG_OUT): Move from ...
* dwarf2cfi.c: ... here.
(PTR_SIZE, DWARF_OFFSET_SIZE, DWARF_INITIAL_LENGTH_SIZE): Remove.
(DWARF_ROUND, DWARF_CIE_ID): Remove.
* dwarf2out.c (INCOMING_RETURN_ADDR_RTX): Remove.
(DWARF2_FRAME_REG_OUT, DWARF_CIE_DATA_ALIGNMENT): Remove.
(DWARF_FRAME_RETURN_COLUMN, DWARF_FRAME_REGNUM): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176102 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/defaults.h')
-rw-r--r-- | gcc/defaults.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/gcc/defaults.h b/gcc/defaults.h index 118cb1c2565..6bacb3c0139 100644 --- a/gcc/defaults.h +++ b/gcc/defaults.h @@ -413,6 +413,26 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see #define DWARF_FRAME_REGISTERS FIRST_PSEUDO_REGISTER #endif +/* Offsets recorded in opcodes are a multiple of this alignment factor. */ +#ifndef DWARF_CIE_DATA_ALIGNMENT +#ifdef STACK_GROWS_DOWNWARD +#define DWARF_CIE_DATA_ALIGNMENT (-((int) UNITS_PER_WORD)) +#else +#define DWARF_CIE_DATA_ALIGNMENT ((int) UNITS_PER_WORD) +#endif +#endif + +/* The DWARF 2 CFA column which tracks the return address. Normally this + is the column for PC, or the first column after all of the hard + registers. */ +#ifndef DWARF_FRAME_RETURN_COLUMN +#ifdef PC_REGNUM +#define DWARF_FRAME_RETURN_COLUMN DWARF_FRAME_REGNUM (PC_REGNUM) +#else +#define DWARF_FRAME_RETURN_COLUMN DWARF_FRAME_REGISTERS +#endif +#endif + /* How to renumber registers for dbx and gdb. If not defined, assume no renumbering is necessary. */ @@ -420,6 +440,19 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see #define DBX_REGISTER_NUMBER(REGNO) (REGNO) #endif +/* The mapping from gcc register number to DWARF 2 CFA column number. + By default, we just provide columns for all registers. */ +#ifndef DWARF_FRAME_REGNUM +#define DWARF_FRAME_REGNUM(REG) DBX_REGISTER_NUMBER (REG) +#endif + +/* Map register numbers held in the call frame info that gcc has + collected using DWARF_FRAME_REGNUM to those that should be output in + .debug_frame and .eh_frame. */ +#ifndef DWARF2_FRAME_REG_OUT +#define DWARF2_FRAME_REG_OUT(REGNO, FOR_EH) (REGNO) +#endif + /* Default sizes for base C types. If the sizes are different for your target, you should override these values by defining the appropriate symbols in your tm.h file. */ |