Better encoding of CHAR_TYPE and BOOLEAN_TYPE.
authorPer Bothner <bothner@gcc.gnu.org>
Fri, 17 Sep 1993 20:06:27 +0000 (13:06 -0700)
committerPer Bothner <bothner@gcc.gnu.org>
Fri, 17 Sep 1993 20:06:27 +0000 (13:06 -0700)
From-SVN: r5344

gcc/dbxout.c

index 94f6d4460b26aa612cafac058ee24ad3f137b360..8b53958cc8319b6535b232b8c44180100cc8847c 100644 (file)
@@ -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;