[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