[PartialInliner] Skip call sites where inlining fails.
authorFlorian Hahn <florian.hahn@arm.com>
Fri, 3 Nov 2017 11:29:00 +0000 (11:29 +0000)
committerFlorian Hahn <florian.hahn@arm.com>
Fri, 3 Nov 2017 11:29:00 +0000 (11:29 +0000)
commit41e32bfd6880ee74b68436772bf16aad05272e0f
treec649cd54556894742f675889f2290056c78db200
parentd1b618177a7e0beb832a29cb4aa7b9663276696d
[PartialInliner] Skip call sites where inlining fails.

Summary:
InlineFunction can fail, for example when trying to inline vararg
fuctions. In those cases, we do not want to bump partial inlining
counters or set AnyInlined to true, because this could leave an unused
function hanging around.

Reviewers: davidxl, davide, gyiu

Reviewed By: davide

Subscribers: llvm-commits, eraman

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

llvm-svn: 317314
llvm/lib/Transforms/IPO/PartialInlining.cpp
llvm/test/Transforms/CodeExtractor/PartialInlineNoInline.ll [new file with mode: 0644]