[PATCH] D78503: RFC: [ValueTracking] Let analyses assume a value cannot be partially poison

Juneyoung Lee via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 22 01:03:12 PDT 2020


aqjune marked 2 inline comments as done.
aqjune added inline comments.


================
Comment at: llvm/lib/Transforms/Instrumentation/PoisonChecking.cpp:347
    - and/or - It would seem reasonable for poison to propagate from both
-     arguments, but LangRef doesn't state and propagatesFullPoison doesn't
-     include these two.
+     arguments, but LangRef doesn't state.
    - all binary ops w/vector operands - The likely interpretation would be that
----------------
aqjune wrote:
> jdoerfert wrote:
> > Is this true? I mean, don't you check for binary operands above?
> It was my misunderstanding about the code, updated.
BTW, what do you think about making this explicit in LangRef? I can make a patch for this.
If and/or blocks poison propagation, removal of trivial and/ors becomes invalid, because it makes the resulting program more poisonous.




Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D78503





More information about the llvm-commits mailing list