aboutsummaryrefslogtreecommitdiff
path: root/lib/Transforms/NaCl/RewritePNaClLibraryCalls.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Transforms/NaCl/RewritePNaClLibraryCalls.cpp')
-rw-r--r--lib/Transforms/NaCl/RewritePNaClLibraryCalls.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/Transforms/NaCl/RewritePNaClLibraryCalls.cpp b/lib/Transforms/NaCl/RewritePNaClLibraryCalls.cpp
index 2373343f59..ea50457070 100644
--- a/lib/Transforms/NaCl/RewritePNaClLibraryCalls.cpp
+++ b/lib/Transforms/NaCl/RewritePNaClLibraryCalls.cpp
@@ -86,6 +86,7 @@ bool RewritePNaClLibraryCalls::runOnModule(Module &M) {
report_fatal_error("Taking the address of setjmp is invalid");
}
}
+ SetjmpFunc->eraseFromParent();
}
// For longjmp things are a little more complicated, since longjmp's address
@@ -109,7 +110,9 @@ bool RewritePNaClLibraryCalls::runOnModule(Module &M) {
}
// If additional uses remain, these aren't calls; populate the wrapper.
- if (!LongjmpFunc->use_empty()) {
+ if (LongjmpFunc->use_empty()) {
+ LongjmpFunc->eraseFromParent();
+ } else {
populateLongjmpWrapper(LongjmpFunc);
Changed = true;
}