OSDN Git Service

* expmed.c (store_bit_field): Don't require MEM_IN_STRUCT_P.
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 7 Aug 2000 08:27:54 +0000 (08:27 +0000)
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 7 Aug 2000 08:27:54 +0000 (08:27 +0000)
        * expr.c (emit_group_store): Don't set it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@35546 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/expmed.c
gcc/expr.c

index ae8c6e0..43ca295 100644 (file)
@@ -1,3 +1,8 @@
+2000-08-07  Richard Henderson  <rth@cygnus.com>
+
+       * expmed.c (store_bit_field): Don't require MEM_IN_STRUCT_P.
+       * expr.c (emit_group_store): Don't set it.
+
 2000-08-07  Kazu Hirata  <kazu@hxi.com>
 
        * invoke.texi (Options for Debugging Your Program or GCC): Remove
index 778e990..e9210a6 100644 (file)
@@ -245,9 +245,6 @@ store_bit_field (str_rtx, bitsize, bitnum, fieldmode, value, align, total_size)
   insv_bitsize = GET_MODE_BITSIZE (op_mode);
 #endif
 
-  if (GET_CODE (str_rtx) == MEM && ! MEM_IN_STRUCT_P (str_rtx))
-    abort ();
-
   /* Discount the part of the structure before the desired byte.
      We need to know how many bytes are safe to reference after it.  */
   if (total_size >= 0)
index 02a27ba..0c609c2 100644 (file)
@@ -2066,14 +2066,6 @@ emit_group_store (orig_dst, src, ssize, align)
       /* Make life a bit easier for combine.  */
       emit_move_insn (dst, const0_rtx);
     }
-  else if (! MEM_IN_STRUCT_P (dst))
-    {
-      /* store_bit_field requires that memory operations have
-        mem_in_struct_p set; we might not.  */
-
-      dst = copy_rtx (orig_dst);
-      MEM_SET_IN_STRUCT_P (dst, 1);
-    }
 
   /* Process the pieces.  */
   for (i = start; i < XVECLEN (src, 0); i++)