[patch 4/4 v4] Allow loop prefetch code to speculatively prefetch non constant steps
Andreas Krebbel
krebbel@linux.vnet.ibm.com
Wed May 19 10:57:00 GMT 2010
On 05/07/2010 10:04 PM, Christian Borntraeger wrote:
> 2010-05-07 Christian Borntraeger<borntraeger@de.ibm.com>
>
> * tree-ssa-loop-prefetch.c (mem_ref_group): Change step to tree.
> * tree-ssa-loop-prefetch.c (ar_data): Change step to tree.
> * tree-ssa-loop-prefetch.c (dump_mem_ref): Adopt debug code to
> handle a tree as step. This also checks for a constant int vs.
> non-constant but loop-invariant steps.
> * tree-ssa-loop-prefetch.c (find_or_create_group): Change the sort
> algorithm to only consider steps that are constant ints.
> * tree-ssa-loop-prefetch.c (idx_analyze_ref): Adopt code to handle
> a tree instead of a HOST_WIDE_INT for step.
> * tree-ssa-loop-prefetch.c (gather_memory_references_ref): Handle
> tree instead of int and be prepared to see a NULL_TREE.
> * tree-ssa-loop-prefetch.c (prune_ref_by_self_reuse): Do not prune
> prefetches if the step cannot be calculated at compile time.
> * tree-ssa-loop-prefetch.c (prune_ref_by_group_reuse): Do not prune
> prefetches if the step cannot be calculated at compile time.
> * tree-ssa-loop-prefetch.c (issue_prefetch_ref): Issue prefetches
> for non-constant but loop-invariant steps.
Applied to mainline. Thanks!
-Andreas-
More information about the Gcc-patches
mailing list