1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2025-01-31 20:51:52 +01:00

37 Commits

Author SHA1 Message Date
Chris Lattner
8966ce8f41 If the block extractor fails, actually emit the bc file that failed to extract
llvm-svn: 15675
2004-08-12 02:36:50 +00:00
Brian Gaeke
f18cdca667 These files don't need to include <iostream> since they include "Support/Debug.h".
llvm-svn: 15089
2004-07-21 20:50:33 +00:00
Reid Spencer
6d8b0985d1 Add #include <iostream> since Value.h does not include it any more.
llvm-svn: 14623
2004-07-04 12:20:55 +00:00
Chris Lattner
bc83892156 Implement basic block extraction for the miscompilation debugger. This still needs
two things: the FIXME in ExtractBlocks needs to be implemented, and the basic block
extractor itself needs to have enough bugs fixed for this to be more or less
useful.

Until the time that this is generally useful, it is hidden behind the new bugpoint
-enable-block-extraction option.  I hope to get the FIXME done tonight.

Also of note, this patch adds a -extract-bbs option to bugpoint which can be used
to debug the block extractor.  (hint hint Misha :)

llvm-svn: 13471
2004-05-11 21:54:13 +00:00
Chris Lattner
b9a26ff8fc Minor speedup
llvm-svn: 12612
2004-04-02 16:28:32 +00:00
Chris Lattner
54aa691a5c Fix a fairly nasty bug that prevented bugpoint from working quite right when
hacking on programs with two functions that have the same name.

llvm-svn: 12604
2004-04-02 06:30:33 +00:00
Chris Lattner
e2b4b9ca3f Fix an inverted condition that causes us to think that loop extraction
accomplished something when it really did not.  This does not fix the bigger problem tho.

llvm-svn: 12469
2004-03-17 17:37:18 +00:00
Chris Lattner
4ef444f59b After reducing a miscompiled program down to the functions which are being
miscompiled, try to use the loop extractor to reduce the program down to a
loop nest that is being miscompiled.  In practice, the loop extractor appears
to have too many bugs for this to be useful, but hopefully they will be fixed
soon...

llvm-svn: 12398
2004-03-14 22:08:00 +00:00
Chris Lattner
d4b06def93 Refactor to use a new method
llvm-svn: 12395
2004-03-14 21:17:22 +00:00
Chris Lattner
491f3054b8 Refactor and clean up a bunch more code. No major functionality changes.
* Make several methods of bugdriver global functions (ParseInputFile, PrintFunctionList)
 * Make PrintFunctionList truncate the output after 10 entries, like the crash debugger
   did.  This allows code sharing.
 * Add a couple of methods to BugDriver that allows us to eliminate some friends
 * Improve comments in ExtractFunction.cpp
 * Make classes that used to be friends up bugdriver now live in anon namespaces
 * Rip a bunch of functionality in the miscompilation tester into a new
   TestMergedProgram function for future code sharing.
 * Fix a bug in the miscompilation tester induced in my last checkin

llvm-svn: 12393
2004-03-14 20:50:42 +00:00
Chris Lattner
07b9a2c117 Add a method to extract a loop
llvm-svn: 12391
2004-03-14 20:02:07 +00:00
Chris Lattner
da20cdaaf2 add a fixme
llvm-svn: 12388
2004-03-14 19:31:00 +00:00
Chris Lattner
36e8168af5 Refactor all of the "splitting a module into two pieces" code to avoid
code duplication.  Also, don't use ReduceMiscompilingFunctions::TestFuncs
to print out the final message.

llvm-svn: 12387
2004-03-14 19:27:19 +00:00
Chris Lattner
a2f653d0cc Fix the "infinite looping unless you disable adce" bug
Also remove an option to disable adce :)

llvm-svn: 12359
2004-03-13 19:35:54 +00:00
Chris Lattner
6e7c1e5c5c Make more stuff public. Make the instruction argument to
deleteInstructionFromProgram be const

llvm-svn: 11606
2004-02-18 21:50:26 +00:00
Chris Lattner
d7b71dadf5 Do not leave a bunch of crud lying around
llvm-svn: 10307
2003-12-07 02:31:03 +00:00
Chris Lattner
fe396111ee Do not DESTROY programs by default. No wonder bugpoint was not being useful all this time!
llvm-svn: 10175
2003-11-23 04:51:05 +00:00
Brian Gaeke
d25f86d683 Put all LLVM code into the llvm namespace, as per bug 109.
llvm-svn: 9903
2003-11-11 22:41:34 +00:00
Chris Lattner
62b495bd5c I hate it when bugpoint is all ready to give me a bytecode file, then crashes
in final cleanups.  Then you had to run the whole mess again with
-disable-final-cleanups.

This makes bugpoint run the cleanups in a protected environment so that if
they crash, bugpoint itself doesn't crash.  This makes things much happier,
implements a FIXME, and gets rid of YABPO (yet another bugpoint option).

llvm-svn: 9743
2003-11-05 21:45:35 +00:00
Chris Lattner
c26574d777 Simplify the performFinalCleanups interface
llvm-svn: 9740
2003-11-05 21:15:19 +00:00
Chris Lattner
e4da5a79fc Fix an assertion failure in Bugpoint
llvm-svn: 9406
2003-10-23 15:42:55 +00:00
Chris Lattner
656ad51b9d fix file headers
llvm-svn: 9293
2003-10-20 17:57:13 +00:00
John Criswell
d06dc1136b Added copyright header to all C++ source files.
llvm-svn: 9291
2003-10-20 17:47:21 +00:00
Brian Gaeke
069e2d385a Check in the fix I meant to apply here, but mistakenly applied to
tools/extract instead..... heh

llvm-svn: 8464
2003-09-10 21:11:42 +00:00
Misha Brukman
6cb08f34b6 Re-grouped and alphabetized headers for easier reading and cleaner style.
llvm-svn: 7689
2003-08-07 21:19:30 +00:00
Chris Lattner
cd4179f054 If we're debugging the SimplifyCFG pass, we _REALLY_ don't want to use it for
narrowing, no matter what.

llvm-svn: 7596
2003-08-05 15:51:05 +00:00
Chris Lattner
ef04e86804 Parameterize the performFinalCleanups a bit
llvm-svn: 7477
2003-08-01 16:13:49 +00:00
Chris Lattner
bc15c235dd Run dead arg elimination, and tell it that it's ok to hack up non-internal functions
llvm-svn: 6896
2003-06-25 04:13:36 +00:00
Chris Lattner
4875906a69 Allow disabling final cleanups
llvm-svn: 6271
2003-05-21 20:38:59 +00:00
Chris Lattner
5a8e740420 Increase odds that this won't bork things
llvm-svn: 6267
2003-05-21 19:41:31 +00:00
Chris Lattner
e05ccb1be2 Add options to disable simplification with passes, in case one of them crashes
llvm-svn: 5950
2003-04-25 22:08:12 +00:00
Chris Lattner
dcae180f95 When cleaning up the final bytecode file, make sure to run DTE as well
llvm-svn: 5917
2003-04-25 00:52:30 +00:00
Chris Lattner
0df20905d4 Remove dead functions
llvm-svn: 5913
2003-04-24 22:53:24 +00:00
Chris Lattner
03df18f1c2 Make sure that intermediate code is verifier clean to avoid wierd problems.
llvm-svn: 5723
2003-03-07 18:17:13 +00:00
Chris Lattner
b58da8ab04 * Reduce the number of useless bytecode files produced by bugpoint.
- This also speeds it up as the bytecode writer isn't terribly fast.
* Add a new cleanup pass after everything else to run -funcresolve -globaldce

llvm-svn: 5668
2003-02-28 16:13:20 +00:00
Chris Lattner
e6f7b214de Make bugpoint *much* more powerful, giving it the capability to delete instructions
out of a large function to reduce it.

llvm-svn: 5408
2003-01-23 02:48:33 +00:00
Chris Lattner
ceba1ddf2f Initial checkin of bugpoint
llvm-svn: 4789
2002-11-20 22:28:10 +00:00