mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-19 02:52:53 +02:00
Update new pass managers to use PassManagerAnalysisHelper API.
llvm-svn: 31526
This commit is contained in:
parent
283833c127
commit
47de6ddc07
@ -69,8 +69,13 @@ BasicBlockPassManager_New::addPass (Pass *P) {
|
||||
if (!BP)
|
||||
return false;
|
||||
|
||||
// TODO: Check if it suitable to manage P using this BasicBlockPassManager
|
||||
// or we need another instance of BasicBlockPassManager
|
||||
// If this pass does not preserve anlysis that is used by other passes
|
||||
// managed by this manager than it is not a suiable pass for this manager.
|
||||
if (!manageablePass (P))
|
||||
return false;
|
||||
|
||||
// Take a note of analysis required by this pass.
|
||||
noteDownRequiredAnalysis(P);
|
||||
|
||||
// Add pass
|
||||
PassVector.push_back(BP);
|
||||
@ -124,8 +129,13 @@ FunctionPassManager_New::addPass (Pass *P) {
|
||||
if (!FP)
|
||||
return false;
|
||||
|
||||
// TODO: Check if it suitable to manage P using this FunctionPassManager
|
||||
// or we need another instance of FunctionPassManager
|
||||
// If this pass does not preserve anlysis that is used by other passes
|
||||
// managed by this manager than it is not a suiable pass for this manager.
|
||||
if (!manageablePass (P))
|
||||
return false;
|
||||
|
||||
// Take a note of analysis required by this pass.
|
||||
noteDownRequiredAnalysis(P);
|
||||
|
||||
PassVector.push_back(FP);
|
||||
activeBBPassManager = NULL;
|
||||
@ -179,8 +189,13 @@ ModulePassManager_New::addPass (Pass *P) {
|
||||
if (!MP)
|
||||
return false;
|
||||
|
||||
// TODO: Check if it suitable to manage P using this ModulePassManager
|
||||
// or we need another instance of ModulePassManager
|
||||
// If this pass does not preserve anlysis that is used by other passes
|
||||
// managed by this manager than it is not a suiable pass for this manager.
|
||||
if (!manageablePass (P))
|
||||
return false;
|
||||
|
||||
// Take a note of analysis required by this pass.
|
||||
noteDownRequiredAnalysis(P);
|
||||
|
||||
PassVector.push_back(MP);
|
||||
activeFunctionPassManager = NULL;
|
||||
|
Loading…
Reference in New Issue
Block a user