mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-20 03:23:01 +02:00
[PM] BDCE: Fix caching of analyses.
Another chapter in the story. GlobalsAA should be preserved, as well as the CFG. llvm-svn: 271307
This commit is contained in:
parent
8d2c8c8209
commit
e4d7b4b122
@ -71,9 +71,14 @@ static bool bitTrackingDCE(Function &F, DemandedBits &DB) {
|
||||
|
||||
PreservedAnalyses BDCEPass::run(Function &F, FunctionAnalysisManager &AM) {
|
||||
auto &DB = AM.getResult<DemandedBitsAnalysis>(F);
|
||||
if (bitTrackingDCE(F, DB))
|
||||
return PreservedAnalyses::none();
|
||||
return PreservedAnalyses::all();
|
||||
if (!bitTrackingDCE(F, DB))
|
||||
return PreservedAnalyses::all();
|
||||
|
||||
// FIXME: BDCE should also 'preserve the CFG'.
|
||||
// The new pass manager has currently no way to do it.
|
||||
auto PA = PreservedAnalyses();
|
||||
PA.preserve<GlobalsAA>();
|
||||
return PA;
|
||||
}
|
||||
|
||||
namespace {
|
||||
|
Loading…
Reference in New Issue
Block a user