aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPer Bothner <bothner@gcc.gnu.org>1993-09-17 13:06:27 -0700
committerPer Bothner <bothner@gcc.gnu.org>1993-09-17 13:06:27 -0700
commit72db60c6d546a436896e5ef500c173ec426f0933 (patch)
tree1b2c7abbf600408a80766b8fa50915ddb47b7e95
parent708c676e5e40451c043ac353d0e6dd219433b7ae (diff)
downloadgcc-72db60c6d546a436896e5ef500c173ec426f0933.zip
gcc-72db60c6d546a436896e5ef500c173ec426f0933.tar.gz
gcc-72db60c6d546a436896e5ef500c173ec426f0933.tar.bz2
Better encoding of CHAR_TYPE and BOOLEAN_TYPE.
From-SVN: r5344
-rw-r--r--gcc/dbxout.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/gcc/dbxout.c b/gcc/dbxout.c
index 94f6d44..8b53958 100644
--- a/gcc/dbxout.c
+++ b/gcc/dbxout.c
@@ -1021,6 +1021,10 @@ dbxout_type (type, full, show_arg_types)
break;
case CHAR_TYPE:
+ if (use_gnu_debug_info_extensions)
+ fprintf (asmfile, "@s%d;-20;",
+ BITS_PER_UNIT * int_size_in_bytes (type));
+ else
/* Output the type `char' as a subrange of itself.
That is what pcc seems to do. */
fprintf (asmfile, "r%d;0;%d;", TYPE_SYMTAB_ADDRESS (char_type_node),
@@ -1028,8 +1032,12 @@ dbxout_type (type, full, show_arg_types)
CHARS (9);
break;
- case BOOLEAN_TYPE: /* Define as enumeral type (False, True) */
- fprintf (asmfile, "eFalse:0,True:1,;");
+ case BOOLEAN_TYPE:
+ if (use_gnu_debug_info_extensions)
+ fprintf (asmfile, "@s%d;-16;",
+ BITS_PER_UNIT * int_size_in_bytes (type));
+ else /* Define as enumeral type (False, True) */
+ fprintf (asmfile, "eFalse:0,True:1,;");
CHARS (17);
break;