aboutsummaryrefslogtreecommitdiff
path: root/gcc/sdbout.c
diff options
context:
space:
mode:
authorJim Wilson <wilson@cygnus.com>1996-06-08 00:12:38 +0000
committerJim Wilson <wilson@cygnus.com>1996-06-08 00:12:38 +0000
commiteb40d5532ee1f04ffa4063f0921575a33230b14c (patch)
treead8ee9efba77d1b3de60dbe3d8af86dc6dde9c35 /gcc/sdbout.c
parentada1cb05741f5d383f85a8cf2b9c4376eb908d29 (diff)
(gsyms.h): Include if CROSS_COMPILE is defined.
(plain_type_1): Use TYPE_PRECISION instead of TYPE_SIZE. Add check for LONG_DOUBLE_TYPE_SIZE if EXTENDED_SDB_BASIC_TYPES. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@12223 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/sdbout.c')
-rw-r--r--gcc/sdbout.c22
1 files changed, 14 insertions, 8 deletions
diff --git a/gcc/sdbout.c b/gcc/sdbout.c
index ac651a43dc5..0b53fe55324 100644
--- a/gcc/sdbout.c
+++ b/gcc/sdbout.c
@@ -52,17 +52,19 @@ AT&T C compiler. From the example below I would conclude the following:
#include "insn-config.h"
#include "reload.h"
-/* Mips systems use the SDB functions to dump out symbols, but
- do not supply usable syms.h include files. */
-#if defined(USG) && !defined(MIPS) && !defined (hpux) && !defined(_WIN32) && !defined(__linux__)
+/* Mips systems use the SDB functions to dump out symbols, but do not
+ supply usable syms.h include files. Which syms.h file to use is a
+ target parameter so don't use the native one if we're cross compiling. */
+
+#if defined(USG) && !defined(MIPS) && !defined (hpux) && !defined(_WIN32) && !defined(__linux__) && !defined(CROSS_COMPILE)
#include <syms.h>
/* Use T_INT if we don't have T_VOID. */
#ifndef T_VOID
#define T_VOID T_INT
#endif
-#else /* not USG, or MIPS */
+#else
#include "gsyms.h"
-#endif /* not USG, or MIPS */
+#endif
/* #include <storclass.h> used to be this instead of syms.h. */
@@ -521,11 +523,15 @@ plain_type_1 (type, level)
case REAL_TYPE:
{
- int size = int_size_in_bytes (type) * BITS_PER_UNIT;
- if (size == FLOAT_TYPE_SIZE)
+ int precision = TYPE_PRECISION (type);
+ if (precision == FLOAT_TYPE_SIZE)
return T_FLOAT;
- if (size == DOUBLE_TYPE_SIZE)
+ if (precision == DOUBLE_TYPE_SIZE)
return T_DOUBLE;
+#ifdef EXTENDED_SDB_BASIC_TYPES
+ if (precision == LONG_DOUBLE_TYPE_SIZE)
+ return T_LNGDBL;
+#endif
return 0;
}