[PATCH] D71974: [Attributor][WIP] Connect AAIsDead with AAUndefinedBehavior

Stefanos Baziotis via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Dec 30 06:48:14 PST 2019


baziotis updated this revision to Diff 235596.
baziotis added a comment.

- Query AAUB in `identifyAliveSuccessors()` for `BranchInst`.

This is essentially a proposed PoC on how to use AAUB in `AAIsDeadFunction::updateImpl()`. The `TODO` there says  "look for (assumed) UB to backwards propagate "deadness"".
In my understanding that seems kind of unorthodox since the whole process is moving forwards (with an "artificial" recursion so it's not easy to "go back" since we never actually return back). Because of that, I thought it may be better instead of that to just "not go forwards" on successors (and BBs) that have UB (not going forwards into them means they're not put in `AssumedLiveBlocks`, effectively keeping them dead).

- Passed the attributor in `isAssumedDead()` etc. (that resulted in changes all over the place, I hope that's ok).


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

https://reviews.llvm.org/D71974

Files:
  llvm/include/llvm/Transforms/IPO/Attributor.h
  llvm/lib/Transforms/IPO/Attributor.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D71974.235596.patch
Type: text/x-patch
Size: 11524 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191230/cafbe6b3/attachment.bin>


More information about the llvm-commits mailing list