[PATCH] D38494: [ScalarEvolution] Handling for ICmp occuring in the evolution chain.
Hal Finkel via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Oct 3 19:58:40 PDT 2017
hfinkel added a comment.
In https://reviews.llvm.org/D38494#887847, @junryoungju wrote:
> no, If there has no latch will not execute evoluateForICmp in LoopDeletion(if I think correct)
> getBackedgeTakenInfo will return SCEVUnkown correctly if there is no latch.
Whether or not there's a latch is a static property of the
In https://reviews.llvm.org/D38494#887853, @junryoungju wrote:
> int values[11];
> int i = 0;
> do {
>
> values[i] = i != 10;
> } while (i++ != 10);
>
>
> will be removed. from LoopDeletion.
>
> int values[11];
> int i = 0;
> do {
>
> values[i] = i != 10;
> } while (i++ != 10);
>
>
> print(values[10]);
>
>
> will not be even optimized.
> (this is what I thought)
Whether or not any current transformation performs the simplification is not relevant. It would be trivial to write a transformation that replace instructions whose SCEVs are constants with those constants. SCEV needs to be semantically sound on its own.
https://reviews.llvm.org/D38494
More information about the llvm-commits
mailing list