aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/expmed.c3
-rw-r--r--gcc/expr.c8
3 files changed, 5 insertions, 11 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ae8c6e0..43ca295 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -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
diff --git a/gcc/expmed.c b/gcc/expmed.c
index 778e990..e9210a6 100644
--- a/gcc/expmed.c
+++ b/gcc/expmed.c
@@ -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)
diff --git a/gcc/expr.c b/gcc/expr.c
index 02a27ba..0c609c2 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -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++)