Handle `select` in programUndefinedIfPoison.
authorJustin Lebar <justin.lebar@gmail.com>
Fri, 28 Apr 2023 06:31:26 +0000 (23:31 -0700)
committerJustin Lebar <justin.lebar@gmail.com>
Fri, 28 Apr 2023 16:09:31 +0000 (09:09 -0700)
commit6f01cb91d763f740339683e1bde029e9f9f3bdf4
treee9c5486373f855e1e3d1a9e63dbf34797bfbfafa
parent8df5913250d55883feb8fa46a838c93a77c2e291
Handle `select` in programUndefinedIfPoison.

If both the true and false operands of a `select` are poison, then the `select`
is poison.

Differential Revision: https://reviews.llvm.org/D149427
llvm/lib/Analysis/ValueTracking.cpp
llvm/unittests/Analysis/ValueTrackingTest.cpp