[PATCH] D130270: [clang][dataflow] Use a dedicated bool to encode which branch was taken
Yitzhak Mandelbaum via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Sep 9 10:19:35 PDT 2022
ymandel requested changes to this revision.
ymandel added a comment.
This revision now requires changes to proceed.
It turns out that this change wasn't necessary. I've deleted the relevant FIXME in https://reviews.llvm.org/rGabc16c7a5b0a63d14172262153608b3d24de957f.
AFAICT, the reason that the new test `JoinBackedge` fails at HEAD is because we discard the results of analyzing the function body, so the update `Foo = false` is simply ignored. This hypothesis rests on observing that each block is visited only once during analysis of the test. It's also consistent with the known (broken) behavior of our comparison operator. Interestingly, this is a nicely stark illustration of the unsoundness of our current approach. :( So, this test will be useful in the future when add proper widening.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D130270/new/
https://reviews.llvm.org/D130270
More information about the cfe-commits
mailing list