llvm.guard(false) always bails out of the current compilation unit, so
we can prune any control flow following it.
Note: earlier I had submitted an incorrect version of this change as
D19188.
Paths
| Differential D19245
[SimplifyCFG] Fold `llvm.guard(false)` to unreachable ClosedPublic Authored by sanjoy on Apr 18 2016, 3:54 PM.
Details Summary llvm.guard(false) always bails out of the current compilation unit, so Note: earlier I had submitted an incorrect version of this change as
Diff Detail Event Timelinesanjoy updated this object. reames added inline comments. sanjoy marked 2 inline comments as done. Comment Actions
majnemer added inline comments.
Comment Actions LGTM w/remaining comments from David and my own addressed.
This revision is now accepted and ready to land.Apr 20 2016, 8:58 PM Closed by commit rL266955: [SimplifyCFG] Fold `llvm.guard(false)` to unreachable (authored by sanjoy). · Explain WhyApr 20 2016, 10:15 PM This revision was automatically updated to reflect the committed changes. sanjoy marked 3 inline comments as done.
Revision Contents
Diff 54402 include/llvm/Transforms/Utils/Local.h
lib/Transforms/Utils/Local.cpp
test/Transforms/SimplifyCFG/guards.ll
|
Why can't you just use the API immediately above?