[PATCH] D64215: Add a transform pass to make the executable semantics of poison explicit in the IR
Sanjoy Das via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 4 13:03:18 PDT 2019
sanjoy added a comment.
I think this is an excellent idea!!
I personally won't have time to carefully review this & following patches anytime soon (I'm happy to have high level discussions though), but I'm hoping the other reviewers you and I added will have time.
================
Comment at: lib/Transforms/Instrumentation/PoisonChecking.cpp:1
+//===- PoisonChecking.cpp - -----------------------------------------------===//
+//
----------------
Maybe just call this PoisonSanitizer?
================
Comment at: lib/Transforms/Instrumentation/PoisonChecking.cpp:41
+// are well defined on the specific input used.
+// - Finding/confirming poison specific miscompiles by checking the poison
+// status of an input/IR pair is the same before and after an optimization
----------------
This will have false positives as long as `undef` is a thing right? Unless the instrumentation added by this pass will produce poison if *any* value of `undef` produces poison (naively it seems this would require calling into a SAT solver at runtime)?
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D64215/new/
https://reviews.llvm.org/D64215
More information about the llvm-commits
mailing list