[all-commits] [llvm/llvm-project] 5699d0: [Attributor] Use knowledge retained in llvm.assume...
Johannes Doerfert via All-commits
all-commits at lists.llvm.org
Tue Mar 24 13:34:45 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 5699d08b79afdaed167fb202a4e22d73d6f1bf48
https://github.com/llvm/llvm-project/commit/5699d08b79afdaed167fb202a4e22d73d6f1bf48
Author: Johannes Doerfert <johannes at jdoerfert.de>
Date: 2020-03-24 (Tue, 24 Mar 2020)
Changed paths:
M llvm/include/llvm/IR/KnowledgeRetention.h
M llvm/include/llvm/Transforms/IPO/Attributor.h
M llvm/lib/IR/KnowledgeRetention.cpp
M llvm/lib/Transforms/IPO/Attributor.cpp
M llvm/test/Transforms/Attributor/dereferenceable-1.ll
M llvm/test/Transforms/Attributor/nofree.ll
M llvm/test/Transforms/Attributor/nonnull.ll
M llvm/unittests/IR/KnowledgeRetentionTest.cpp
Log Message:
-----------
[Attributor] Use knowledge retained in llvm.assume (operand bundles)
This patch integrates operand bundle llvm.assumes [0] with the
Attributor. Most IRAttributes will now look at uses of the associated
value and if there are llvm.assume operand bundle uses with the right
tag we will check if they are in the must-be-executed-context (around
the context instruction). Droppable users, which is currently only
llvm::assume, are handled special in some places now as well.
[0] http://lists.llvm.org/pipermail/llvm-dev/2019-December/137632.html
Reviewed By: uenoku
Differential Revision: https://reviews.llvm.org/D74888
More information about the All-commits
mailing list