aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-loop-ivopts.c
diff options
context:
space:
mode:
authorBin Cheng <bin.cheng@arm.com>2017-10-18 16:04:16 +0000
committerBin Cheng <amker@gcc.gnu.org>2017-10-18 16:04:16 +0000
commit957f0d8faf41d64fa4ba548411e6d4dd95a083bf (patch)
tree131565bc95410d1201c4c1be486f24340fcb7924 /gcc/tree-ssa-loop-ivopts.c
parent85aa9ed64bf871b2e620211609855804e1775864 (diff)
downloadgcc-957f0d8faf41d64fa4ba548411e6d4dd95a083bf.zip
gcc-957f0d8faf41d64fa4ba548411e6d4dd95a083bf.tar.gz
gcc-957f0d8faf41d64fa4ba548411e6d4dd95a083bf.tar.bz2
tree-loop-distribution.c (INCLUDE_ALGORITHM): New header file.
* tree-loop-distribution.c (INCLUDE_ALGORITHM): New header file. (tree-ssa-loop-ivopts.h): New header file. (struct builtin_info): New fields. (classify_builtin_1): Compute and record base and offset parts for memset builtin partition by calling strip_offset. (offset_cmp, fuse_memset_builtins): New functions. (finalize_partitions): Fuse adjacent memset partitions by calling above function. * tree-ssa-loop-ivopts.c (strip_offset): Delete static declaration. Expose the interface. * tree-ssa-loop-ivopts.h (strip_offset): New declaration. * gcc.dg/tree-ssa/ldist-17.c: Adjust test string. * gcc.dg/tree-ssa/ldist-32.c: New test. * gcc.dg/tree-ssa/ldist-35.c: New test. * gcc.dg/tree-ssa/ldist-36.c: New test. From-SVN: r253859
Diffstat (limited to 'gcc/tree-ssa-loop-ivopts.c')
-rw-r--r--gcc/tree-ssa-loop-ivopts.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/gcc/tree-ssa-loop-ivopts.c b/gcc/tree-ssa-loop-ivopts.c
index 737e393..793e66f 100644
--- a/gcc/tree-ssa-loop-ivopts.c
+++ b/gcc/tree-ssa-loop-ivopts.c
@@ -1550,9 +1550,6 @@ record_invariant (struct ivopts_data *data, tree op, bool nonlinear_use)
bitmap_set_bit (data->relevant, SSA_NAME_VERSION (op));
}
-static tree
-strip_offset (tree expr, unsigned HOST_WIDE_INT *offset);
-
/* Record a group of TYPE. */
static struct iv_group *
@@ -2863,7 +2860,7 @@ strip_offset_1 (tree expr, bool inside_addr, bool top_compref,
/* Strips constant offsets from EXPR and stores them to OFFSET. */
-static tree
+tree
strip_offset (tree expr, unsigned HOST_WIDE_INT *offset)
{
HOST_WIDE_INT off;