Fix bootstrap failure.
authorGraham Stott <graham.stott@btinternet.com>
Sat, 25 Oct 2003 23:14:14 +0000 (23:14 +0000)
committerGraham Stott <grahams@gcc.gnu.org>
Sat, 25 Oct 2003 23:14:14 +0000 (23:14 +0000)
       * expmed.c (store_bit_field): Don't compare bitsize against
       modes with zero bit-size.

       (extract_bit_field): Likewise

From-SVN: r72937

gcc/ChangeLog
gcc/expmed.c

index 156fd02..5aaa633 100644 (file)
@@ -1,3 +1,11 @@
+2003-10-26  Graham Stott  <graham.stott@btinternet.com>
+
+       Fix bootstrap failure.
+       * expmed.c (store_bit_field): Don't compare bitsize against
+       modes with zero bit-size.
+
+       (extract_bit_field): Likewise
+
 2003-10-25  Jan Hubicka  <jh@suse.cz>
 
        * dwarf2out.c (dw_cfi_oprnd_struct): Offset is HOST_WIDE_INT.
index da631c9..cb30ff3 100644 (file)
@@ -335,6 +335,7 @@ store_bit_field (rtx str_rtx, unsigned HOST_WIDE_INT bitsize,
                 + (offset * UNITS_PER_WORD);
 
   if (bitpos == 0
+      && GET_MODE_BITSIZE (fieldmode) != 0
       && bitsize >= GET_MODE_BITSIZE (fieldmode)
       && (GET_CODE (op0) != MEM
          ? ((GET_MODE_SIZE (fieldmode) >= UNITS_PER_WORD
@@ -1032,6 +1033,7 @@ extract_bit_field (rtx str_rtx, unsigned HOST_WIDE_INT bitsize,
   if (GET_CODE (op0) == REG
       && mode == GET_MODE (op0)
       && bitnum == 0
+      && GET_MODE_BITSIZE (GET_MODE (op0)) != 0
       && bitsize >= GET_MODE_BITSIZE (GET_MODE (op0)))
     {
       /* We're trying to extract a full register from itself.