[PATCH] D71960: [Attributor] AAUndefinedBehavior: AAValueSimplify in memory accessing instructions.
Hideto Ueno via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sat Dec 28 08:27:22 PST 2019
uenoku added a comment.
> There's one test case that is worrying: IPConstantProp/PR26044.ll. With this patch, a from undef becomes load from null and I don't see the reason.
I think this is no problem. It is because of on-demand creation. It is the first time to create `AAValueSimplify` to a pointer operand. The deduction is like this:
1. The assumption which claims "`for.cond1` is dead" is rejected because `AAIsDead` doesn't know there is UB.
2. `%e.2` is simplified to `null` because %e.2 can be `null` or `undef`.
3. `%e.2` is replaced with `null` in `manifest`
So once `AAIsDead` can get to interact with `AAUB`, the problem will be solved.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D71960/new/
https://reviews.llvm.org/D71960
More information about the llvm-commits
mailing list