[PATCH] D54899: [LoopStrengthReduce] ComplexityLimit as an option
Sam Parker via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 29 03:52:40 PST 2018
samparker added a comment.
@qcolombet maybe you could suggest the areas in LSR which will enable to help produce these post inc loads? What we have with the default complexity is:
loop:
%index = phi i32
load %base, index
load %base, index + 1
load %base, index + 2
load %base, index + 3
Increasing the complexity replaces the i32 phi with pointers, and the entry value is base-2. What I would like to see is base-1 on entry, then:
%base = %base.orig - 1
loop:
%base.iv = [ %base, %base.iv.next ]
load %base.iv, 1
load %base.iv, 2
load %base.iv, 3
load %base1.iv, 4
base.iv.next = gep base.iv, 4
With this form, the first three loads can be base + immediate offset, while the last can perform the post increment to create %base.iv.next. What do you think?
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D54899/new/
https://reviews.llvm.org/D54899
More information about the llvm-commits
mailing list