From df003af2e0139872cd9e9d30e7f7f1ca0f5dcc94 Mon Sep 17 00:00:00 2001 From: kenner Date: Sat, 27 Nov 1999 14:55:36 +0000 Subject: [PATCH] * expr.c (store_constructor): Use EXACT_DIV_EXPR when dividend is known to be multiple of divisor. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30677 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 3 +++ gcc/expr.c | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e378c87..c448f0f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,8 @@ Sat Nov 27 08:38:26 1999 Richard Kenner + * expr.c (store_constructor): Use EXACT_DIV_EXPR when dividend is + known to be multiple of divisor. + * expr.c (store_constructor): Don't clobber TARGET if CLEARED. * combine.c (try_combine): Add code to try to merge a set of a diff --git a/gcc/expr.c b/gcc/expr.c index 5fc55e5..4f9f439 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -4185,7 +4185,7 @@ store_constructor (exp, target, align, cleared) offset = build (WITH_RECORD_EXPR, sizetype, offset, make_tree (TREE_TYPE (exp), target)); - offset = size_binop (FLOOR_DIV_EXPR, offset, + offset = size_binop (EXACT_DIV_EXPR, offset, size_int (BITS_PER_UNIT)); offset_rtx = expand_expr (offset, NULL_RTX, VOIDmode, 0); -- 2.7.4