aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorUros Bizjak <uros@gcc.gnu.org>2015-10-09 18:53:37 +0200
committerUros Bizjak <uros@gcc.gnu.org>2015-10-09 18:53:37 +0200
commitb867c7ca88776d062e3e62c212fb0a59b6d688c9 (patch)
tree77cf1720a2447828ca9bb5250e1aead280c6612d /gcc
parent7532abf27b205c73ffc29ea7b724b40ff3bce461 (diff)
downloadgcc-b867c7ca88776d062e3e62c212fb0a59b6d688c9.zip
gcc-b867c7ca88776d062e3e62c212fb0a59b6d688c9.tar.gz
gcc-b867c7ca88776d062e3e62c212fb0a59b6d688c9.tar.bz2
* config/i386/i386.c
(expand_set_or_movmem_prologue_epilogue_by_misaligned_moves): Use ROUND_DOWN where applicable. From-SVN: r228665
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/config/i386/i386.c8
2 files changed, 12 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 07195e5..f7b9e9f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2015-10-09 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.c
+ (expand_set_or_movmem_prologue_epilogue_by_misaligned_moves): Use
+ ROUND_DOWN where applicable.
+
2015-10-09 Jeff Law <law@redhat.com>
* tree-vect-stmts.c (free_stmt_vec_info): Free the LHS of the
@@ -224,7 +230,7 @@
* tree-ssa-dom.c (optimize_stmt): Don't set LOOPS_NEED_FIXUP here.
* tree-ssa-threadupdate.c (remove_ctrl_stmt_and_useless_edges): Do it
- here instead. Tighten test to avoid setting LOOPS_NEED_FIXUP
+ here instead. Tighten test to avoid setting LOOPS_NEED_FIXUP
unnecessarily.
2015-10-07 Aditya Kumar <aditya.k7@samsung.com>
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 4806a7c..419966d 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -25564,7 +25564,8 @@ expand_set_or_movmem_prologue_epilogue_by_misaligned_moves (rtx destmem, rtx src
saveddest, *count, 1, OPTAB_DIRECT);
/* We copied at most size + prolog_size. */
if (*min_size > (unsigned HOST_WIDE_INT)(size + prolog_size))
- *min_size = (*min_size - size) & ~(unsigned HOST_WIDE_INT)(size - 1);
+ *min_size
+ = ROUND_DOWN (*min_size - size, (unsigned HOST_WIDE_INT)size);
else
*min_size = 0;
@@ -25582,9 +25583,10 @@ expand_set_or_movmem_prologue_epilogue_by_misaligned_moves (rtx destmem, rtx src
*count = expand_simple_binop (GET_MODE (*count), PLUS, *count,
constm1_rtx, *count, 1, OPTAB_DIRECT);
else
- *count = GEN_INT ((UINTVAL (*count) - 1) & ~(unsigned HOST_WIDE_INT)(size - 1));
+ *count = GEN_INT (ROUND_DOWN (UINTVAL (*count) - 1,
+ (unsigned HOST_WIDE_INT)size));
if (*min_size)
- *min_size = (*min_size - 1) & ~(unsigned HOST_WIDE_INT)(size - 1);
+ *min_size = ROUND_DOWN (*min_size - 1, (unsigned HOST_WIDE_INT)size);
}
}