aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tools/llc/llc.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/tools/llc/llc.cpp b/tools/llc/llc.cpp
index 04ae468686..a072de309e 100644
--- a/tools/llc/llc.cpp
+++ b/tools/llc/llc.cpp
@@ -190,8 +190,11 @@ int main(int argc, char **argv) {
Passes.push_back(new EmitAssembly(Target, Out, Out != &cout));
}
- // Run our queue of passes all at once now, efficiently.
- return Pass::runAllPassesAndFree(M.get(), Passes);
+ // Run our queue of passes all at once now, efficiently. This form of
+ // runAllPasses frees the Pass objects after runAllPasses completes.
+ Pass::runAllPassesAndFree(M.get(), Passes);
+
+ return 0;
}