diff options
author | Jessica Paquette <jpaquette@apple.com> | 2018-06-04 21:14:16 +0000 |
---|---|---|
committer | Jessica Paquette <jpaquette@apple.com> | 2018-06-04 21:14:16 +0000 |
commit | aa087327ce56506d2e53cbeec1fb8d57c4250dd0 (patch) | |
tree | 53c9db8141d57aa9b24ce927690b87b2fcf549c6 /llvm/lib/Transforms/Utils/SimplifyCFG.cpp | |
parent | 2f038c4094d25597f01bfcffc3d7d9761f7aa3d4 (diff) | |
download | bcm5719-llvm-aa087327ce56506d2e53cbeec1fb8d57c4250dd0.tar.gz bcm5719-llvm-aa087327ce56506d2e53cbeec1fb8d57c4250dd0.zip |
[MachineOutliner] NFC - Move intermediate data structures to MachineOutliner.h
This is setting up to fix bug 37573 cleanly.
This moves data structures that are technically both used in some way by the
target and the general-purpose outlining algorithm into MachineOutliner.h. In
particular, the `Candidate` class is of importance.
Before, the outliner passed the locations of `Candidates` to the target, which
would then make some decisions about the prospective outlined function. This
change allows us to just pass `Candidates` along to the target. This will allow
the target to discard `Candidates` that would be considered unsafe before cost
calculation. Thus, we will be able to remove the unsafe candidates described in
the bug without resorting to torching the entire prospective function.
Also, as a side-effect, it makes the outliner a bit cleaner.
https://bugs.llvm.org/show_bug.cgi?id=37573
llvm-svn: 333952
Diffstat (limited to 'llvm/lib/Transforms/Utils/SimplifyCFG.cpp')
0 files changed, 0 insertions, 0 deletions