gccint: All Debuggers

1 
1 18.21.1 Macros Affecting All Debugging Formats
1 ----------------------------------------------
1 
1 These macros affect all debugging formats.
1 
1  -- Macro: DBX_REGISTER_NUMBER (REGNO)
1      A C expression that returns the DBX register number for the
1      compiler register number REGNO.  In the default macro provided, the
1      value of this expression will be REGNO itself.  But sometimes there
1      are some registers that the compiler knows about and DBX does not,
1      or vice versa.  In such cases, some register may need to have one
1      number in the compiler and another for DBX.
1 
1      If two registers have consecutive numbers inside GCC, and they can
1      be used as a pair to hold a multiword value, then they _must_ have
1      consecutive numbers after renumbering with 'DBX_REGISTER_NUMBER'.
1      Otherwise, debuggers will be unable to access such a pair, because
1      they expect register pairs to be consecutive in their own numbering
1      scheme.
1 
1      If you find yourself defining 'DBX_REGISTER_NUMBER' in way that
1      does not preserve register pairs, then what you must do instead is
1      redefine the actual register numbering scheme.
1 
1  -- Macro: DEBUGGER_AUTO_OFFSET (X)
1      A C expression that returns the integer offset value for an
1      automatic variable having address X (an RTL expression).  The
1      default computation assumes that X is based on the frame-pointer
1      and gives the offset from the frame-pointer.  This is required for
1      targets that produce debugging output for DBX and allow the
1      frame-pointer to be eliminated when the '-g' option is used.
1 
1  -- Macro: DEBUGGER_ARG_OFFSET (OFFSET, X)
1      A C expression that returns the integer offset value for an
1      argument having address X (an RTL expression).  The nominal offset
1      is OFFSET.
1 
1  -- Macro: PREFERRED_DEBUGGING_TYPE
1      A C expression that returns the type of debugging output GCC should
1      produce when the user specifies just '-g'.  Define this if you have
1      arranged for GCC to support more than one format of debugging
1      output.  Currently, the allowable values are 'DBX_DEBUG',
1      'DWARF2_DEBUG', 'XCOFF_DEBUG', 'VMS_DEBUG', and
1      'VMS_AND_DWARF2_DEBUG'.
1 
1      When the user specifies '-ggdb', GCC normally also uses the value
1      of this macro to select the debugging output format, but with two
1      exceptions.  If 'DWARF2_DEBUGGING_INFO' is defined, GCC uses the
1      value 'DWARF2_DEBUG'.  Otherwise, if 'DBX_DEBUGGING_INFO' is
1      defined, GCC uses 'DBX_DEBUG'.
1 
1      The value of this macro only affects the default debugging output;
1      the user can always get a specific type of output by using
1      '-gstabs', '-gdwarf-2', '-gxcoff', or '-gvms'.
1