aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeffrey A Law <law@cygnus.com>2001-11-28 22:34:07 +0000
committerJeff Law <law@gcc.gnu.org>2001-11-28 15:34:07 -0700
commit35a53991ae5b9c730b6cd31a725c2a3d26ae11a7 (patch)
tree60f3424f7466dd69f1fa806b184fd4f3552f641d
parentd4d73d4c5a64592706d9d58936291922e788a6d0 (diff)
downloadgcc-35a53991ae5b9c730b6cd31a725c2a3d26ae11a7.zip
gcc-35a53991ae5b9c730b6cd31a725c2a3d26ae11a7.tar.gz
gcc-35a53991ae5b9c730b6cd31a725c2a3d26ae11a7.tar.bz2
expr.c (store_expr): When copying a string constant into an array...
* expr.c (store_expr): When copying a string constant into an array, reset the known alignment of the MEM for the section to be cleared to BITS_PER_UNIT. From-SVN: r47432
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/expr.c6
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index fd9e43d..8c59479 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+Wed Nov 28 15:36:13 2001 Jeffrey A Law (law@cygnus.com)
+
+ * expr.c (store_expr): When copying a string constant into an
+ array, reset the known alignment of the MEM for the section to
+ be cleared to BITS_PER_UNIT.
+
2001-11-28 Hans-Peter Nilsson <hp@axis.com>
* config/cris/cris.c: Remove whitespace at end of line.
diff --git a/gcc/expr.c b/gcc/expr.c
index 240fb8b..eb7f2d3 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -4293,6 +4293,12 @@ store_expr (exp, target, want_value)
MEM_COPY_ATTRIBUTES (dest, target);
+ /* The residual likely does not have the same alignment
+ as the original target. While we could compute the
+ alignment of the residual, it hardely seems worth
+ the effort. */
+ set_mem_align (dest, BITS_PER_UNIT);
+
/* Be sure we can write on ADDR. */
in_check_memory_usage = 1;
if (current_function_check_memory_usage)