diff options
author | Chris Lattner <sabre@nondot.org> | 2005-02-23 06:12:11 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2005-02-23 06:12:11 +0000 |
commit | 9b5b1905dbad19de374e7617f615ba522ffe0468 (patch) | |
tree | 3b46c617c4af9f72a61958ba9e918e355152f3c3 /tools/bugpoint | |
parent | 572dd08204008d810c0f939e85e73f3cbba00e35 (diff) | |
download | llvm-9b5b1905dbad19de374e7617f615ba522ffe0468.tar.gz llvm-9b5b1905dbad19de374e7617f615ba522ffe0468.tar.bz2 llvm-9b5b1905dbad19de374e7617f615ba522ffe0468.tar.xz |
Fix a bugpoint crash that JeffC noticed, looking like this:
*** Attempting to perform final cleanups: Final cleanups failed. Sorry. :( Ple
ase report a bug!
<llc>llc.exe: bytecode didn't read correctly.
llc.exe: bytecode didn't read correctly.
<crash>
Assertion failed: M && "You can't write a null module!!", file c:\llvm\lib\bytec
ode\writer\writer.cpp, line 1094
The fact that llc bombed (in this case) is ok, but bugpoint shouldn't crash after this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20285 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/bugpoint')
-rw-r--r-- | tools/bugpoint/ExtractFunction.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/tools/bugpoint/ExtractFunction.cpp b/tools/bugpoint/ExtractFunction.cpp index 078c7baf4e..0eecc49efd 100644 --- a/tools/bugpoint/ExtractFunction.cpp +++ b/tools/bugpoint/ExtractFunction.cpp @@ -98,7 +98,7 @@ static const PassInfo *getPI(Pass *P) { /// performFinalCleanups - This method clones the current Program and performs /// a series of cleanups intended to get rid of extra cruft on the module -/// before handing it to the user... +/// before handing it to the user. /// Module *BugDriver::performFinalCleanups(Module *M, bool MayModifySemantics) { // Make all functions external, so GlobalDCE doesn't delete them... @@ -118,6 +118,7 @@ Module *BugDriver::performFinalCleanups(Module *M, bool MayModifySemantics) { Module *New = runPassesOn(M, CleanupPasses); if (New == 0) { std::cerr << "Final cleanups failed. Sorry. :( Please report a bug!\n"; + return M; } delete M; return New; |