[Attributor] Deduce "willreturn" function attribute
authorHideto Ueno <uenoku.tokotoko@gmail.com>
Wed, 17 Jul 2019 15:15:43 +0000 (15:15 +0000)
committerHideto Ueno <uenoku.tokotoko@gmail.com>
Wed, 17 Jul 2019 15:15:43 +0000 (15:15 +0000)
commit11d3710c1cd25adf23a4690076e12d6ece267731
treeed74b460e55bfb9685fd813358aa526f8fbbd06c
parent629273ec09825b870ce53e6419296d73519b1e24
[Attributor] Deduce "willreturn" function attribute

Summary:
Deduce the "willreturn" attribute for functions.

For now, intrinsics are not willreturn. More annotation will be done in another patch.

Reviewers: jdoerfert

Subscribers: jvesely, nhaehnle, nicholas, hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D63046

llvm-svn: 366335
llvm/include/llvm/IR/Intrinsics.td
llvm/include/llvm/Transforms/IPO/Attributor.h
llvm/lib/Transforms/IPO/Attributor.cpp
llvm/test/Transforms/FunctionAttrs/arg_returned.ll
llvm/test/Transforms/FunctionAttrs/willreturn.ll
llvm/utils/TableGen/CodeGenIntrinsics.h
llvm/utils/TableGen/CodeGenTarget.cpp
llvm/utils/TableGen/IntrinsicEmitter.cpp