forked from OSchip/llvm-project
Document that PassManager::add() may delete the pass right away.
Also remove redundant documentation: - doxygen will copy documentation to overriden methods. - Use \copydoc on PIMPL classes instead of replicating the text. llvm-svn: 224089
This commit is contained in:
parent
93f6d6904f
commit
0880c6098f
|
@ -37,9 +37,10 @@ class PassManagerBase {
|
|||
public:
|
||||
virtual ~PassManagerBase();
|
||||
|
||||
/// add - Add a pass to the queue of passes to run. This passes ownership of
|
||||
/// Add a pass to the queue of passes to run. This passes ownership of
|
||||
/// the Pass to the PassManager. When the PassManager is destroyed, the pass
|
||||
/// will be destroyed as well, so there is no need to delete the pass. This
|
||||
/// may even destroy the pass right away if it is found to be redundant. This
|
||||
/// implies that all passes MUST be allocated with 'new'.
|
||||
virtual void add(Pass *P) = 0;
|
||||
};
|
||||
|
@ -51,10 +52,6 @@ public:
|
|||
PassManager();
|
||||
~PassManager();
|
||||
|
||||
/// add - Add a pass to the queue of passes to run. This passes ownership of
|
||||
/// the Pass to the PassManager. When the PassManager is destroyed, the pass
|
||||
/// will be destroyed as well, so there is no need to delete the pass. This
|
||||
/// implies that all passes MUST be allocated with 'new'.
|
||||
void add(Pass *P) override;
|
||||
|
||||
/// run - Execute all of the passes scheduled for execution. Keep track of
|
||||
|
@ -75,11 +72,6 @@ public:
|
|||
explicit FunctionPassManager(Module *M);
|
||||
~FunctionPassManager();
|
||||
|
||||
/// add - Add a pass to the queue of passes to run. This passes
|
||||
/// ownership of the Pass to the PassManager. When the
|
||||
/// PassManager_X is destroyed, the pass will be destroyed as well, so
|
||||
/// there is no need to delete the pass.
|
||||
/// This implies that all passes MUST be allocated with 'new'.
|
||||
void add(Pass *P) override;
|
||||
|
||||
/// run - Execute all of the passes scheduled for execution. Keep
|
||||
|
|
|
@ -227,10 +227,7 @@ public:
|
|||
Pass(PT_PassManager, ID), PMDataManager(),
|
||||
PMTopLevelManager(new FPPassManager()), wasRun(false) {}
|
||||
|
||||
/// add - Add a pass to the queue of passes to run. This passes ownership of
|
||||
/// the Pass to the PassManager. When the PassManager is destroyed, the pass
|
||||
/// will be destroyed as well, so there is no need to delete the pass. This
|
||||
/// implies that all passes MUST be allocated with 'new'.
|
||||
/// \copydoc FunctionPassManager::add()
|
||||
void add(Pass *P) {
|
||||
schedulePass(P);
|
||||
}
|
||||
|
@ -398,10 +395,7 @@ public:
|
|||
Pass(PT_PassManager, ID), PMDataManager(),
|
||||
PMTopLevelManager(new MPPassManager()) {}
|
||||
|
||||
/// add - Add a pass to the queue of passes to run. This passes ownership of
|
||||
/// the Pass to the PassManager. When the PassManager is destroyed, the pass
|
||||
/// will be destroyed as well, so there is no need to delete the pass. This
|
||||
/// implies that all passes MUST be allocated with 'new'.
|
||||
/// \copydoc PassManager::add()
|
||||
void add(Pass *P) {
|
||||
schedulePass(P);
|
||||
}
|
||||
|
@ -1389,11 +1383,6 @@ FunctionPassManager::~FunctionPassManager() {
|
|||
delete FPM;
|
||||
}
|
||||
|
||||
/// add - Add a pass to the queue of passes to run. This passes
|
||||
/// ownership of the Pass to the PassManager. When the
|
||||
/// PassManager_X is destroyed, the pass will be destroyed as well, so
|
||||
/// there is no need to delete the pass. (TODO delete passes.)
|
||||
/// This implies that all passes MUST be allocated with 'new'.
|
||||
void FunctionPassManager::add(Pass *P) {
|
||||
FPM->add(P);
|
||||
}
|
||||
|
@ -1749,10 +1738,6 @@ PassManager::~PassManager() {
|
|||
delete PM;
|
||||
}
|
||||
|
||||
/// add - Add a pass to the queue of passes to run. This passes ownership of
|
||||
/// the Pass to the PassManager. When the PassManager is destroyed, the pass
|
||||
/// will be destroyed as well, so there is no need to delete the pass. This
|
||||
/// implies that all passes MUST be allocated with 'new'.
|
||||
void PassManager::add(Pass *P) {
|
||||
PM->add(P);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue