Commit Graph

879 Commits

Author SHA1 Message Date
Chris Lattner
d3a533d94d When loop extraction succeeds, make sure to map the function pointers over
to avoid dangling references.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12470 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-17 17:42:09 +00:00
Chris Lattner
7fa44fca30 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12469 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-17 17:37:18 +00:00
Chris Lattner
9d5968dd51 Fix an iterator invalidation problem in a "buggy" pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12468 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-17 17:29:08 +00:00
Brian Gaeke
e40eae7370 Add a better head-of-file comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12447 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-16 21:47:20 +00:00
Chris Lattner
002dbddccd Fix thinko, and PR292
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12426 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-16 01:51:54 +00:00
Chris Lattner
a1cf1c8c87 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...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12398 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-14 22:08:00 +00:00
Chris Lattner
44a64bccac Fix a minor bug in runPassesOn
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12397 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-14 21:37:41 +00:00
Chris Lattner
0a00256900 Add a new "AutoDebugCrashes" option
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12396 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-14 21:21:57 +00:00
Chris Lattner
a75766a6c1 Refactor to use a new method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12395 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-14 21:17:22 +00:00
Chris Lattner
3b6441e105 Add new method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12394 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-14 21:17:03 +00:00
Chris Lattner
efdc0b5057 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


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12393 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-14 20:50:42 +00:00
Chris Lattner
7546c3884a Add a method to extract a loop
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12391 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-14 20:02:07 +00:00
Chris Lattner
5eda1f2f65 add a fixme
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12388 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-14 19:31:00 +00:00
Chris Lattner
be21ca54e0 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12387 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-14 19:27:19 +00:00
Chris Lattner
2c7b430bc0 Turn on argument promotion in gccas. This can give us substantially better
code in cases where the file has lots of static functions or anon namespaces.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12361 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-13 21:38:35 +00:00
Chris Lattner
b2c180f04e Fix the "infinite looping unless you disable adce" bug
Also remove an option to disable adce :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12359 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-13 19:35:54 +00:00
Brian Gaeke
744b5fb93f Revise comment and error message for the Bug 38 situation. Also, make it
print out the name of the function being used.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12347 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-12 21:37:46 +00:00
Misha Brukman
094158a133 SparcV8 removed until it grows up becomes a mature backend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12288 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-11 18:16:33 +00:00
Chris Lattner
8c2730e347 Annotate functions with edge counts as well, if they are available.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12233 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 20:04:32 +00:00
Chris Lattner
f8338c4375 Run the new pass in gccld now that it passes all tests
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12196 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-07 22:12:40 +00:00
Chris Lattner
d62276a66e Add a hook to run with the V8 target, though it doesn't currently work. Also
mark the PPC backend as experimental


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11962 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-28 19:55:16 +00:00
Chris Lattner
f74a401f61 We have this snazzy link-time optimizer. How about we start using it? This
removes some cruft from 255.vortex, cleaning up after DAE and IPCP, which
do horrible, beautiful, things to vortex.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11861 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-26 03:34:30 +00:00
Chris Lattner
dd429c6de9 Add a new pass, run internalize first
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11839 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-25 21:35:13 +00:00
Chris Lattner
a93d19fff7 Add a new pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11838 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-25 21:35:02 +00:00
Brian Gaeke
150666fd82 Great renaming part II: Sparc --> SparcV9 (also includes command-line options and Makefiles)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11827 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-25 19:08:12 +00:00
Alkis Evlogimenos
c38aa6dd79 Include Config/config.h for SHLIBEXT.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11779 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-23 22:42:51 +00:00
Chris Lattner
5110bed0a0 If bugpoint can't match the reference output, at LEAST provide the output
we can get.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11653 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-20 06:12:58 +00:00
Chris Lattner
bdc9784613 Wild and passionate uncontrolled goose chases are amusing to watch, but not
very helpful.  Let bugpoint favor being helpful instead of determined.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11652 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-20 05:58:58 +00:00
Chris Lattner
47dd2766f2 Format a bit more nicely
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11651 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-20 05:56:48 +00:00
Chris Lattner
3733f3be73 Make sure to print a stack trace whenever an error signal is delivered
to the tool.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11634 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-19 20:33:00 +00:00
Chris Lattner
364d1203e7 Make sure to print a stack trace whenever an error signal is delivered to
the tool.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11633 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-19 20:32:39 +00:00
Chris Lattner
f73b4ca7f9 Make sure to print a stack trace whenever an error signal is delivered to the
tool.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11632 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-19 20:32:12 +00:00
Chris Lattner
7c955fdb44 Be a bit more robust. Explicitly check for a code generator crash.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11624 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-19 17:03:49 +00:00
Alkis Evlogimenos
1d29a6d6c7 Make ToolExecutionError inherit std::exception and implement its
interface: getMessage() is gone, use what() instead.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11621 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-19 07:39:26 +00:00
Chris Lattner
f66d9069cf Fix the "horribly N^2'd" problem when deleting individual instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11617 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 23:59:11 +00:00
Chris Lattner
8b189277bd * Predicate the optimizer crash debugger on a function.
* Implement a new code generator crash debugger which uses this predicate


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11614 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 23:26:28 +00:00
Chris Lattner
ea9212ca96 Add a new method for use by the code generator crash debugger.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11613 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 23:25:22 +00:00
Chris Lattner
ca00512008 Don't crash if there are no passes in the PassesToRun list
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11612 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 23:24:56 +00:00
Chris Lattner
9cbbee332f Add support for just running the code generator
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11611 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 23:24:41 +00:00
Chris Lattner
f03715c6a8 Add support for just compiling a program
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11610 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 23:24:29 +00:00
Chris Lattner
9709272675 Make the executeProgram method exception safe, not leaving around bytecode
files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11607 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 22:01:21 +00:00
Chris Lattner
0cc8807029 Make more stuff public. Make the instruction argument to
deleteInstructionFromProgram be const


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11606 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 21:50:26 +00:00
Chris Lattner
a36ec88203 make a bunch of methods public
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11605 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 21:35:28 +00:00
Chris Lattner
f913f40be8 A couple of minor cleanups: don't forward declare private classes, put private
classes in an anon namespace


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11604 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 21:29:46 +00:00
Chris Lattner
06905db7d2 Cleanup and simplify manipulation of the program, eliminate the need for so
many 'friends' of bugdriver.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11603 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 21:24:48 +00:00
Chris Lattner
025262692a Add a stub for debugging code generator crashes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11602 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 21:02:04 +00:00
Chris Lattner
a3de11783f indent correctly
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11601 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 20:58:00 +00:00
Chris Lattner
722ca71285 Don't yell. BUGPOINT should yell, not the tool runner :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11600 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 20:57:38 +00:00
Chris Lattner
7bb11547e4 Update comments, if we are running with the CBE, make sure the Interpreter
variable and the CBE variable are pointer equal.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11599 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 20:52:02 +00:00
Chris Lattner
c8580b2aee Byebye method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11598 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-18 20:38:12 +00:00