aboutsummaryrefslogtreecommitdiff
path: root/gdb/tm-sparc.h
diff options
context:
space:
mode:
authorStu Grossman <grossman@cygnus>1992-09-25 22:59:27 +0000
committerStu Grossman <grossman@cygnus>1992-09-25 22:59:27 +0000
commit1aed676612501c4cc93bdb9c58dddcbde128636d (patch)
treecb5fe1f5aa91e57dc1fb45c2458fa9d36c86fbe4 /gdb/tm-sparc.h
parentb869d3f47fa723f7371f8ec9b62a45ff84bf68d2 (diff)
downloadgdb-1aed676612501c4cc93bdb9c58dddcbde128636d.zip
gdb-1aed676612501c4cc93bdb9c58dddcbde128636d.tar.gz
gdb-1aed676612501c4cc93bdb9c58dddcbde128636d.tar.bz2
* tm-sparc.h, dbxread.c (read_ofile_symtab): Install Jim Wilson's
fix to differentiate between gcc1 & gcc2 compiled files so that we can debug calls that pass structs as args correctly. * symmisc.c (dump_symtab): If block was compiled with gcc, say so, and what version.
Diffstat (limited to 'gdb/tm-sparc.h')
-rw-r--r--gdb/tm-sparc.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/gdb/tm-sparc.h b/gdb/tm-sparc.h
index 8e06165..25fc6d3 100644
--- a/gdb/tm-sparc.h
+++ b/gdb/tm-sparc.h
@@ -30,13 +30,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
(a lie, and a serious one since we don't know which register to
use), and a LOC_REGISTER saying that the struct is in a register
(sort of a lie, but fixable with REG_STRUCT_HAS_ADDR). Gcc version
- two (as of 1.92) behaves like sun cc, but I don't know how we can
- distinguish between gcc version 1 and gcc version 2.
+ two (as of 1.92) behaves like sun cc. REG_STRUCT_HAS_ADDR is smart
+ enough to distinguish between Sun cc, gcc version 1 and gcc version 2.
This still doesn't work if the argument is not one passed in a
register (i.e. it's the 7th or later argument). */
-#define REG_STRUCT_HAS_ADDR(gcc_p) (!(gcc_p))
-#define STRUCT_ARG_SYM_GARBAGE(gcc_p) (!(gcc_p))
+#define REG_STRUCT_HAS_ADDR(gcc_p) (gcc_p != 1)
+#define STRUCT_ARG_SYM_GARBAGE(gcc_p) (gcc_p != 1)
/* If Pcc says that a parameter is a short, it's a short. This is
because the parameter does get passed in in a register as an int,