[PATCH] D47011: SafepointIRVerifier is made unreachable block tolerant

Daniil Suchkov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu May 17 10:42:18 PDT 2018


DaniilSuchkov added a comment.

Without this patch following code leads to a crash

  entry:
  ptr = getPtr()
  br exit
  
  unreachable_bb:
  ptr2 = getPtr()
  br exit
  
  exit:
  p = phi [ptr, entry], [ptr2, unreachable_bb]
  v = load p
  ret v

But with your patch it's a false-positive. Verifier will report invalid use of poisoned value `p` here (since `unreachable_bb` isn't processed and thus `ptr2` isn't in its AvailableOut set).
Could you please leave a FIXME about it?


https://reviews.llvm.org/D47011





More information about the llvm-commits mailing list