From 35a53991ae5b9c730b6cd31a725c2a3d26ae11a7 Mon Sep 17 00:00:00 2001 From: Jeffrey A Law Date: Wed, 28 Nov 2001 22:34:07 +0000 Subject: [PATCH] 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 --- gcc/ChangeLog | 6 ++++++ gcc/expr.c | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fd9e43de19f..8c5947917f1 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 * config/cris/cris.c: Remove whitespace at end of line. diff --git a/gcc/expr.c b/gcc/expr.c index 240fb8b6032..eb7f2d317ea 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) -- 2.30.2