aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* New testcase, do not emit a call to __builtin_sqrt, emit a call to sqrt instead!Chris Lattner2004-02-201-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11668 91177308-0d34-0410-b5e6-96231b3b80d8
* Bug fixedChris Lattner2004-02-201-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11662 91177308-0d34-0410-b5e6-96231b3b80d8
* PR244: [llvm-gcc] miscompilation when a function is re-declared as staticChris Lattner2004-02-201-0/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11661 91177308-0d34-0410-b5e6-96231b3b80d8
* Add checks for <execinfo.h> and backtrace().Brian Gaeke2004-02-201-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11660 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix crash in debug output.Alkis Evlogimenos2004-02-201-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11659 91177308-0d34-0410-b5e6-96231b3b80d8
* Use backtrace() and include execinfo.h, if they were detected by autoconf.Brian Gaeke2004-02-201-5/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11658 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerated using autoheader-2.57.Brian Gaeke2004-02-202-0/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11657 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerated using autoconf-2.57.Brian Gaeke2004-02-201-2/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11656 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix instruction numbering in debug output.Alkis Evlogimenos2004-02-201-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11655 91177308-0d34-0410-b5e6-96231b3b80d8
* Too many changes in one commit:Alkis Evlogimenos2004-02-205-170/+324
| | | | | | | | | | | | | | | | | | | | | | | | | | | 1. LiveIntervals now implement a 4 slot per instruction model. Load, Use, Def and a Store slot. This is required in order to correctly represent caller saved register clobbering on function calls, register reuse in the same instruction (def resues last use) and also spill code added later by the allocator. The previous representation (2 slots per instruction) was insufficient and as a result was causing subtle bugs. 2. Fixes in spill code generation. This was the major cause of failures in the test suite. 3. Linear scan now has core support for folding memory operands. This is untested and not enabled (the live interval update function does not attempt to fold loads/stores in instructions). 4. Lots of improvements in the debugging output of both live intervals and linear scan. Give it a try... it is beautiful :-) In summary the above fixes all the issues with the recent reserved register elimination changes and get the allocator very close to the next big step: folding memory operands. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11654 91177308-0d34-0410-b5e6-96231b3b80d8
* If bugpoint can't match the reference output, at LEAST provide the outputChris Lattner2004-02-201-3/+7
| | | | | | | we can get. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11653 91177308-0d34-0410-b5e6-96231b3b80d8
* Wild and passionate uncontrolled goose chases are amusing to watch, but notChris Lattner2004-02-201-1/+8
| | | | | | | 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
* Format a bit more nicelyChris Lattner2004-02-201-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11651 91177308-0d34-0410-b5e6-96231b3b80d8
* It is totally unacceptable to print out (literally) millions of zeros whenChris Lattner2004-02-202-4/+26
| | | | | | | compiling 129.compress... so don't! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11649 91177308-0d34-0410-b5e6-96231b3b80d8
* Add strndupChris Lattner2004-02-191-3/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11638 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a method useful for updating DSAChris Lattner2004-02-192-0/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11636 91177308-0d34-0410-b5e6-96231b3b80d8
* Disable the stack trace thing until we can get an autoconf test for it. ThisChris Lattner2004-02-191-3/+3
| | | | | | | call breaks on sparcs git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11635 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure to print a stack trace whenever an error signal is deliveredChris Lattner2004-02-192-0/+4
| | | | | | | to the tool. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11634 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure to print a stack trace whenever an error signal is delivered toChris Lattner2004-02-196-1/+10
| | | | | | | the tool. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11633 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure to print a stack trace whenever an error signal is delivered to theChris Lattner2004-02-198-2/+15
| | | | | | | tool. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11632 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement new functionChris Lattner2004-02-191-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11631 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a new functionChris Lattner2004-02-192-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11630 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix RA::verifyAssignment()Alkis Evlogimenos2004-02-191-4/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11629 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix problem fusing spill code into instructions: we didn't update the liveChris Lattner2004-02-191-0/+3
| | | | | | | | variable information to take into account the change of instruction address. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11628 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix an iterator invalidation problem. :(Chris Lattner2004-02-191-2/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11627 91177308-0d34-0410-b5e6-96231b3b80d8
* ADd a method for when an instruction movesChris Lattner2004-02-191-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11626 91177308-0d34-0410-b5e6-96231b3b80d8
* Add method to update livevar when an instruction movesChris Lattner2004-02-191-0/+34
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11625 91177308-0d34-0410-b5e6-96231b3b80d8
* Be a bit more robust. Explicitly check for a code generator crash.Chris Lattner2004-02-191-1/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11624 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a __LONG__ term annoyance of mine: symbolic registers weren't being printedChris Lattner2004-02-191-6/+16
| | | | | | | | by operator<< on MachineInstr's, and looking up what register "24" is all of the time was greatly annoying. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11623 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a MachineBasicBlock::getParent() methodChris Lattner2004-02-192-6/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11622 91177308-0d34-0410-b5e6-96231b3b80d8
* Make ToolExecutionError inherit std::exception and implement itsAlkis Evlogimenos2004-02-196-9/+17
| | | | | | | interface: getMessage() is gone, use what() instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11621 91177308-0d34-0410-b5e6-96231b3b80d8
* Print stacktrace in STDERR before dying on a fatal signal. CurrentlyAlkis Evlogimenos2004-02-191-1/+7
| | | | | | | the symbols are not demangled. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11620 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename reloads/spills to loads/stores.Alkis Evlogimenos2004-02-193-14/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11619 91177308-0d34-0410-b5e6-96231b3b80d8
* This is needed by assignment verification in linear-scan.Alkis Evlogimenos2004-02-191-0/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11618 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix the "horribly N^2'd" problem when deleting individual instructions.Chris Lattner2004-02-181-18/+29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11617 91177308-0d34-0410-b5e6-96231b3b80d8
* Document the code generator debugger.Chris Lattner2004-02-181-25/+25
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11616 91177308-0d34-0410-b5e6-96231b3b80d8
* document the -march=c optionChris Lattner2004-02-181-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11615 91177308-0d34-0410-b5e6-96231b3b80d8
* * Predicate the optimizer crash debugger on a function.Chris Lattner2004-02-181-64/+90
| | | | | | | * 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
* Add a new method for use by the code generator crash debugger.Chris Lattner2004-02-182-0/+26
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11613 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't crash if there are no passes in the PassesToRun listChris Lattner2004-02-181-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11612 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for just running the code generatorChris Lattner2004-02-182-0/+24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11611 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for just compiling a programChris Lattner2004-02-182-0/+38
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11610 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement assignment correctness verification.Alkis Evlogimenos2004-02-181-0/+15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11609 91177308-0d34-0410-b5e6-96231b3b80d8
* Move unused typedefs in private section. Add method to return intervalAlkis Evlogimenos2004-02-183-6/+18
| | | | | | | given a register. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11608 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the executeProgram method exception safe, not leaving around bytecodeChris Lattner2004-02-181-3/+3
| | | | | | | files. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11607 91177308-0d34-0410-b5e6-96231b3b80d8
* Make more stuff public. Make the instruction argument toChris Lattner2004-02-182-30/+31
| | | | | | | deleteInstructionFromProgram be const git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11606 91177308-0d34-0410-b5e6-96231b3b80d8
* make a bunch of methods publicChris Lattner2004-02-181-26/+25
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11605 91177308-0d34-0410-b5e6-96231b3b80d8
* A couple of minor cleanups: don't forward declare private classes, put privateChris Lattner2004-02-183-6/+4
| | | | | | | classes in an anon namespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11604 91177308-0d34-0410-b5e6-96231b3b80d8
* Cleanup and simplify manipulation of the program, eliminate the need for soChris Lattner2004-02-183-40/+57
| | | | | | | many 'friends' of bugdriver. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11603 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a stub for debugging code generator crashesChris Lattner2004-02-184-18/+49
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11602 91177308-0d34-0410-b5e6-96231b3b80d8