Rework of the new interface for shrink wrapping
authorKit Barton <kbarton@ca.ibm.com>
Mon, 31 Aug 2015 18:26:45 +0000 (18:26 +0000)
committerKit Barton <kbarton@ca.ibm.com>
Mon, 31 Aug 2015 18:26:45 +0000 (18:26 +0000)
commit21b967e3e18a60f119d13c4b8e99b993cef48cbe
tree9825940f97ee8e3b7c456ee6e1799091a0741f0f
parent5c084f66bc8bf3100ecf534d8bf597048ec8395c
Rework of the new interface for shrink wrapping

Based on comments from Hal
(http://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20150810/292978.html),
I've changed the interface to add a callback mechanism to the
TargetFrameLowering class to query whether the specific target
supports shrink wrapping.  By default, shrink wrapping is disabled by
default. Each target can override the default behaviour using the
TargetFrameLowering::targetSupportsShrinkWrapping() method. Shrink
wrapping can still be explicitly enabled or disabled from the command
line, using the existing -enable-shrink-wrap=<true|false> option.

Phabricator: http://reviews.llvm.org/D12293

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@246463 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/CodeGen/Passes.h
include/llvm/Target/TargetFrameLowering.h
lib/CodeGen/Passes.cpp
lib/CodeGen/ShrinkWrap.cpp