diff options
author | dmick <none@none> | 2005-08-26 17:29:52 -0700 |
---|---|---|
committer | dmick <none@none> | 2005-08-26 17:29:52 -0700 |
commit | 89518a1cfe5021ecf5ad8d04c40f53cf947e95d9 (patch) | |
tree | b859132fde3267cd8363bef3c8e6e1a9b72255b4 /usr/src/tools/ctf | |
parent | 817a6df8b3316f1bd1c398f765f71964d8966da4 (diff) | |
download | illumos-joyent-89518a1cfe5021ecf5ad8d04c40f53cf947e95d9.tar.gz |
6241314 ctfconvert should understand SPARC real types in DWARF
6313293 ctfstabs is confused by gcc's output
6268862 add more gcc support routines to a few places
6272005 gcc and cmd/mdb don't get along
6273966 gcc and common/dis don't get along
--HG--
rename : usr/src/cmd/mdb/intel/ia32/libstand/muldiv.s => deleted_files/usr/src/cmd/mdb/intel/ia32/libstand/muldiv.s
rename : usr/src/cmd/mdb/intel/ia32/libstand/sys/archsalib.h => deleted_files/usr/src/cmd/mdb/intel/ia32/libstand/sys/archsalib.h
Diffstat (limited to 'usr/src/tools/ctf')
-rw-r--r-- | usr/src/tools/ctf/cvt/dwarf.c | 4 | ||||
-rw-r--r-- | usr/src/tools/ctf/stabs/common/genassym.c | 15 |
2 files changed, 17 insertions, 2 deletions
diff --git a/usr/src/tools/ctf/cvt/dwarf.c b/usr/src/tools/ctf/cvt/dwarf.c index 03b8fb498c..5766066929 100644 --- a/usr/src/tools/ctf/cvt/dwarf.c +++ b/usr/src/tools/ctf/cvt/dwarf.c @@ -1285,7 +1285,11 @@ typedef struct fp_size_map { static const fp_size_map_t fp_encodings[] = { { { 4, 4 }, { CTF_FP_SINGLE, CTF_FP_CPLX, CTF_FP_IMAGRY } }, { { 8, 8 }, { CTF_FP_DOUBLE, CTF_FP_DCPLX, CTF_FP_DIMAGRY } }, +#ifdef __sparc + { { 16, 16 }, { CTF_FP_LDOUBLE, CTF_FP_LDCPLX, CTF_FP_LDIMAGRY } }, +#else { { 12, 16 }, { CTF_FP_LDOUBLE, CTF_FP_LDCPLX, CTF_FP_LDIMAGRY } }, +#endif { { 0, 0 } } }; diff --git a/usr/src/tools/ctf/stabs/common/genassym.c b/usr/src/tools/ctf/stabs/common/genassym.c index a7d37f454c..ed10446b00 100644 --- a/usr/src/tools/ctf/stabs/common/genassym.c +++ b/usr/src/tools/ctf/stabs/common/genassym.c @@ -20,7 +20,7 @@ * CDDL HEADER END */ /* - * Copyright 2004 Sun Microsystems, Inc. All rights reserved. + * Copyright 2005 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ @@ -317,10 +317,21 @@ ga_process_line(char *line) (void) fprintf(out, "%s\n", line + 1); } return (1); + } else if (line[0] == '#') { + /* + * This is a comment of some sort; is it a line number + * comment? Those look like '# 53 "filename.c"'. GCC + * sometimes inserts them and removes all other vertical + * whitespace, so they should be treated as a "type + * terminator" like a blank line is. + */ + if (isdigit(line[2])) { + /* line number, terminate type */ + curtype = -1; + } return (1); } - if (curtype == -1) return ((curtype = ga_process_name(line))); else |