diff options
author | Richard Stallman <rms@gnu.org> | 1993-03-04 18:47:42 +0000 |
---|---|---|
committer | Richard Stallman <rms@gnu.org> | 1993-03-04 18:47:42 +0000 |
commit | 47cc012b655f52985c4d8b52d1ba7732606e57c8 (patch) | |
tree | 225d6c6a14daa6c9f3df6a27ef1af496f3064f8a /gcc | |
parent | 122026c09fea424fc605dfe5e55261c9f7d64cbb (diff) | |
download | gcc-47cc012b655f52985c4d8b52d1ba7732606e57c8.zip gcc-47cc012b655f52985c4d8b52d1ba7732606e57c8.tar.gz gcc-47cc012b655f52985c4d8b52d1ba7732606e57c8.tar.bz2 |
(dbxout_type): Handle complex integer types.
From-SVN: r3634
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/dbxout.c | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/gcc/dbxout.c b/gcc/dbxout.c index 8a902b8..506701a 100644 --- a/gcc/dbxout.c +++ b/gcc/dbxout.c @@ -1044,8 +1044,27 @@ dbxout_type (type, full, show_arg_types) TYPE_SYMTAB_ADDRESS (type), TREE_INT_CST_LOW (size_in_bytes (TREE_TYPE (type)))); CHARS (15); /* The number is probably incorrect here. */ - } else - abort (); /* What to do with CSImode complex? */ + } + else + { + /* Output a complex integer type as a structure, + pending some other way to do it. */ + fprintf (asmfile, "s%d", TREE_INT_CST_LOW (size_in_bytes (type))); + + fprintf (asmfile, "real:"); + CHARS (10); + dbxout_type (TREE_TYPE (type), 0, 0); + fprintf (asmfile, ",%d,%d;", + 0, TYPE_PRECISION (TREE_TYPE (type))); + CHARS (8); + fprintf (asmfile, "imag:"); + CHARS (5); + dbxout_type (TREE_TYPE (type), 0, 0); + fprintf (asmfile, ",%d,%d;;", + TYPE_PRECISION (TREE_TYPE (type)), + TYPE_PRECISION (TREE_TYPE (type))); + CHARS (9); + } break; case SET_TYPE: |