Fix nightly testing mips64-elf build failure.
authorJim Wilson <wilson@cygnus.com>
Wed, 5 Nov 1997 00:50:18 +0000 (00:50 +0000)
committerJim Wilson <wilson@gcc.gnu.org>
Wed, 5 Nov 1997 00:50:18 +0000 (16:50 -0800)
* dwarf2out.c (expand_builtin_dwarf_reg_size): New variable mode.
Convert CCmode to word_mode before calling GET_MODE_SIZE.

From-SVN: r16326

gcc/ChangeLog
gcc/dwarf2out.c

index 3a1c4d7cbf7f395c7f1a24cf098400697d59de87..2f981e9df7489e913cb7aa58785349344ebb367a 100644 (file)
@@ -1,5 +1,8 @@
 Tue Nov  4 12:30:28 1997  Jim Wilson  <wilson@cygnus.com>
 
+       * dwarf2out.c (expand_builtin_dwarf_reg_size): New variable mode.
+       Convert CCmode to word_mode before calling GET_MODE_SIZE.
+
        * acconfig.h (HAVE_INTTYPES_H): Undef.
        * configure.in (inttypes.h): Check for conflicts between sys/types.h
        and inttypes.h, and verify that intmax_t is defined.
index c8a6c74431b8ef3f352f086d1dce444212f404db..d37bbca4a1c5246b89c410fa386dd0208a496bfa 100644 (file)
@@ -520,6 +520,7 @@ expand_builtin_dwarf_reg_size (reg_tree, target)
      tree reg_tree;
      rtx target;
 {
+  enum machine_mode mode;
   int size;
   struct reg_size_range ranges[5];
   tree t, t2;
@@ -535,7 +536,15 @@ expand_builtin_dwarf_reg_size (reg_tree, target)
       if (DWARF_FRAME_REGNUM (i) == DWARF_FRAME_RETURN_COLUMN)
        continue;
 
-      size = GET_MODE_SIZE (reg_raw_mode[i]);
+      mode = reg_raw_mode[i];
+      /* CCmode is arbitrarily given a size of 4 bytes.  It is more useful
+        to use the same size as word_mode, since that reduces the number
+        of ranges we need.  It should not matter, since the result should
+        never be used for a condition code register anyways.  */
+      if (mode == CCmode)
+       mode = word_mode;
+      size = GET_MODE_SIZE (mode);
+
       if (size != last_size)
        {
          ranges[n_ranges].beg = i;