summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMisha Brukman <brukman+llvm@gmail.com>2004-04-22 23:00:51 +0000
committerMisha Brukman <brukman+llvm@gmail.com>2004-04-22 23:00:51 +0000
commit7d248397a738c31bbe6e22bfe93a17cc560efdf7 (patch)
tree4c38f9a57c73b52434b780f9f12b63b5f1628b26
parent79906c9825d4ff18e3f1fff54eef8162257b72a9 (diff)
downloadllvm-7d248397a738c31bbe6e22bfe93a17cc560efdf7.tar.gz
llvm-7d248397a738c31bbe6e22bfe93a17cc560efdf7.tar.bz2
llvm-7d248397a738c31bbe6e22bfe93a17cc560efdf7.tar.xz
Clarify the logic: the flag is renamed to `deleteFn' to signify it will delete
the function instead of isolating it. This also means the condition is reversed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13112 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/Transforms/IPO.h8
-rw-r--r--lib/Transforms/IPO/ExtractFunction.cpp22
2 files changed, 15 insertions, 15 deletions
diff --git a/include/llvm/Transforms/IPO.h b/include/llvm/Transforms/IPO.h
index 7db8302515..2f7ac0cd2c 100644
--- a/include/llvm/Transforms/IPO.h
+++ b/include/llvm/Transforms/IPO.h
@@ -66,11 +66,11 @@ Pass *createGlobalDCEPass();
//===----------------------------------------------------------------------===//
-/// createFunctionExtractionPass - If isolateFn is true, this pass deletes as
-/// much of the module as possible, except for the function specified.
-/// Otherwise, it deletes the given function, leaving everything else intact.
+/// createFunctionExtractionPass - If deleteFn is true, this pass deletes as
+/// the specified function. Otherwise, it deletes as much of the module as
+/// possible, except for the function specified.
///
-Pass *createFunctionExtractionPass(Function *F, bool isolateFn = true);
+Pass *createFunctionExtractionPass(Function *F, bool deleteFn = false);
//===----------------------------------------------------------------------===//
diff --git a/lib/Transforms/IPO/ExtractFunction.cpp b/lib/Transforms/IPO/ExtractFunction.cpp
index 052742689f..41b796035b 100644
--- a/lib/Transforms/IPO/ExtractFunction.cpp
+++ b/lib/Transforms/IPO/ExtractFunction.cpp
@@ -19,14 +19,14 @@ using namespace llvm;
namespace {
class FunctionExtractorPass : public Pass {
Function *Named;
- bool isolateFunc;
+ bool deleteFunc;
public:
- /// FunctionExtractorPass - ctor for the pass. If isolateFn is true, then
- /// the named function is the only thing left in the Module (default
- /// behavior), otherwise the function is the thing deleted.
+ /// FunctionExtractorPass - If deleteFn is true, this pass deletes as the
+ /// specified function. Otherwise, it deletes as much of the module as
+ /// possible, except for the function specified.
///
- FunctionExtractorPass(Function *F = 0, bool isolateFn = true)
- : Named(F), isolateFunc(isolateFn) {}
+ FunctionExtractorPass(Function *F = 0, bool deleteFn = true)
+ : Named(F), deleteFunc(deleteFn) {}
bool run(Module &M) {
if (Named == 0) {
@@ -34,10 +34,10 @@ namespace {
if (Named == 0) return false; // No function to extract
}
- if (isolateFunc)
- return isolateFunction(M);
- else
+ if (deleteFunc)
return deleteFunction();
+ else
+ return isolateFunction(M);
}
bool deleteFunction() {
@@ -112,6 +112,6 @@ namespace {
RegisterPass<FunctionExtractorPass> X("extract", "Function Extractor");
}
-Pass *llvm::createFunctionExtractionPass(Function *F, bool isolateFn) {
- return new FunctionExtractorPass(F, isolateFn);
+Pass *llvm::createFunctionExtractionPass(Function *F, bool deleteFn) {
+ return new FunctionExtractorPass(F, deleteFn);
}