[PATCH] D76332: Fix MSan false positive due to select folding.

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 18 13:02:12 PDT 2020


spatel added a comment.

In D76332#1929390 <https://reviews.llvm.org/D76332#1929390>, @aqjune wrote:

> In this example, giving `-disable-undef-input` (which assumes the input is never undef) shows a clearer output: http://volta.cs.utah.edu:8080/z/N5eP_-
>  If `%b` is false, the source program does not have UB where as the optimized program has conditional branch on `%x` which can introduce UB.


I'm catching back up on my poison reading. :)
In the original program with select: if %b is false, then %v becomes poison. Then the select condition is poisoned, so the result must be poison, right? Is there some reason that we didn't make the select semantics for poison explicit in the LangRef?
https://bugs.llvm.org/show_bug.cgi?id=20895
https://lists.llvm.org/pipermail/llvm-dev/2014-September/076634.html


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D76332





More information about the llvm-commits mailing list