[PATCH] D102240: [analyzer][solver] Prevent use of a null state

Artem Dergachev via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu May 13 10:51:06 PDT 2021


NoQ added a comment.

Thx for the fix!

In D102240#2757223 <https://reviews.llvm.org/D102240#2757223>, @steakhal wrote:

> In D102240#2756967 <https://reviews.llvm.org/D102240#2756967>, @vsavchenko wrote:
>
>> I couldn't transform `c == b` into a condition, so it crashes.
>
> Well, that's interesting. It might worth investigating. @NoQ ?
> Regardless, it's an improvement, let's land it :D

At a glance it looks like this has something to do with liveness. When `c == b` is surrounded by an if-statement, the CFG starts having more blocks and live variables analysis becomes more fine-grained and constraints for 'b' get cleaned up more quickly. Which is bad because this means that we're cleaning up constraints that are still useful.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D102240/new/

https://reviews.llvm.org/D102240



More information about the cfe-commits mailing list