[llvm-dev] ScalarEvolution invariants around wrapping flags
Tim Northover via llvm-dev
llvm-dev at lists.llvm.org
Thu Sep 26 06:19:46 PDT 2019
Thanks for the information everyone, it's clarified my thinking
significantly. With that better understanding I've tracked the problem
I'm seeing down to r366419 (https://reviews.llvm.org/D64868), which
got committed in July.
To me it looks like the patch is invalid because isAddRecNeverPoison
is a loop-relative computation. To add the flags to the increment we'd
need to know that the loop is guaranteed to execute at least once,
which doesn't really have a query available.
Does that sound right? And if so should we revert it or try to
incorporate a loop-executed check? I probably tend towards revert.
Cheers.
Tim.
More information about the llvm-dev
mailing list