dwarf2out.c (subrange_type_die): Define new variable "subtype" to hold the subtype...
authorJoel Brobecker <brobecker@gnat.com>
Wed, 17 Mar 2004 08:06:33 +0000 (08:06 +0000)
committerJoel Brobecker <brobecke@gcc.gnu.org>
Wed, 17 Mar 2004 08:06:33 +0000 (08:06 +0000)
        * dwarf2out.c (subrange_type_die): Define new variable "subtype"
        to hold the subtype tree instead of recomputing it several times.

From-SVN: r79577

gcc/ChangeLog
gcc/dwarf2out.c

index bdba02a436bb03988edc70322a8d8759f5972f98..99ebb821c39a097a3a3b7b22339335e157d09791 100644 (file)
@@ -1,3 +1,8 @@
+2004-03-17  Joel Brobecker  <brobecker@gnat.com>
+
+       * dwarf2out.c (subrange_type_die): Define new variable "subtype"
+       to hold the subtype tree instead of recomputing it several times.
+
 2004-03-17  Kazu Hirata  <kazu@cs.umass.edu>
 
        * config/mn10300/mn10300.c (notice_update_cc): Don't handle
index 2fcc150b9312e096f22618a8959307e33fc19e30..cb28ffc815a417400fabc75e1c19678b1afa3d07 100644 (file)
@@ -8021,14 +8021,15 @@ subrange_type_die (tree type, dw_die_ref context_die)
   dw_die_ref subrange_die;
   tree name = TYPE_NAME (type);
   const HOST_WIDE_INT size_in_bytes = int_size_in_bytes (type);
+  tree subtype = TREE_TYPE (type);
 
   if (context_die == NULL)
     context_die = comp_unit_die;
 
-  if (TREE_CODE (TREE_TYPE (type)) == ENUMERAL_TYPE)
-    subtype_die = gen_enumeration_type_die (TREE_TYPE (type), context_die);
+  if (TREE_CODE (subtype) == ENUMERAL_TYPE)
+    subtype_die = gen_enumeration_type_die (subtype, context_die);
   else
-    subtype_die = base_type_die (TREE_TYPE (type));
+    subtype_die = base_type_die (subtype);
 
   subrange_die = new_die (DW_TAG_subrange_type, context_die, type);
 
@@ -8039,7 +8040,7 @@ subrange_type_die (tree type, dw_die_ref context_die)
       add_name_attribute (subrange_die, IDENTIFIER_POINTER (name));
     }
 
-  if (int_size_in_bytes (TREE_TYPE (type)) != size_in_bytes)
+  if (int_size_in_bytes (subtype) != size_in_bytes)
     {
       /* The size of the subrange type and its base type do not match,
          so we need to generate a size attribute for the subrange type.  */