diff options
author | wilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4> | 1995-02-24 22:33:14 +0000 |
---|---|---|
committer | wilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4> | 1995-02-24 22:33:14 +0000 |
commit | 84f564ccb7e7b1edae3ab63e0322caee9f17bb9e (patch) | |
tree | 9db219b4b0995f23af5cb8363c67011c9e9af472 /gcc/dbxout.c | |
parent | 1504eb7eedcb42049581192594df6d32ed28cf18 (diff) | |
download | gcc-84f564ccb7e7b1edae3ab63e0322caee9f17bb9e.tar.gz |
(GDB_INV_REF_REGPARM_STABS_LETTER): New macro.
(dbxout_parms): For gdb, output use GDB_INV_REF_REGPARM_STABS_LETTER
for parameters passed by invisible reference in registers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@9063 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/dbxout.c')
-rw-r--r-- | gcc/dbxout.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/gcc/dbxout.c b/gcc/dbxout.c index 8cdf96f44de..7363b6fcce8 100644 --- a/gcc/dbxout.c +++ b/gcc/dbxout.c @@ -112,6 +112,11 @@ extern int errno; #define DBX_REGPARM_STABS_LETTER 'P' #endif +/* This is used for parameters passed by invisible reference in a register. */ +#ifndef GDB_INV_REF_REGPARM_STABS_LETTER +#define GDB_INV_REF_REGPARM_STABS_LETTER 'a' +#endif + #ifndef DBX_MEMPARM_STABS_LETTER #define DBX_MEMPARM_STABS_LETTER 'p' #endif @@ -2200,7 +2205,10 @@ dbxout_parms (parms) /* Parm passed in registers and lives in registers or nowhere. */ current_sym_code = DBX_REGPARM_STABS_CODE; - regparm_letter = DBX_REGPARM_STABS_LETTER; + if (use_gnu_debug_info_extensions) + regparm_letter = GDB_INV_REF_REGPARM_STABS_LETTER; + else + regparm_letter = DBX_REGPARM_STABS_LETTER; /* DECL_RTL looks like (MEM (REG...). Get the register number. If it is an unallocated pseudo-reg, then use the register where @@ -2220,13 +2228,13 @@ dbxout_parms (parms) fprintf (asmfile, "%s \"%s:%c", ASM_STABS_OP, IDENTIFIER_POINTER (DECL_NAME (parms)), - DBX_REGPARM_STABS_LETTER); + regparm_letter); } else { current_sym_nchars = 8; fprintf (asmfile, "%s \"(anon):%c", ASM_STABS_OP, - DBX_REGPARM_STABS_LETTER); + regparm_letter); } dbxout_type (TREE_TYPE (parms), 0, 0); |