aboutsummaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* Move sparc-specific code into lib/Target/SparcChris Lattner2004-01-095-688/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10734 91177308-0d34-0410-b5e6-96231b3b80d8
* Move sparc-specific livevar code into lib/Target/SparcChris Lattner2004-01-093-6/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10733 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix more incestuous #includage.Chris Lattner2004-01-092-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10732 91177308-0d34-0410-b5e6-96231b3b80d8
* Finegrainify namespacification.Chris Lattner2004-01-091-9/+4
| | | | | | | | | This should get hunked over to the Sparc backend, along with MachineCodeForInstruction and a bunch of files in include/llvm/Codegen, but those battles will have to wait for a later time. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10731 91177308-0d34-0410-b5e6-96231b3b80d8
* Move InstrSelection into lib/Target/Sparc, as it's sparc specificChris Lattner2004-01-095-1038/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10730 91177308-0d34-0410-b5e6-96231b3b80d8
* Move InstrSelection into lib/Target/Sparc, as it's sparc specific. ThisChris Lattner2004-01-093-5/+4
| | | | | | | | makes the incestuous #include'ing of sparc internal headers much less disturbing. :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10729 91177308-0d34-0410-b5e6-96231b3b80d8
* Move lib/Codegen/RegAlloc into lib/Target/Sparc, as it is sparc specificChris Lattner2004-01-0917-3355/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10728 91177308-0d34-0410-b5e6-96231b3b80d8
* Finegrainify namespacificationChris Lattner2004-01-0917-103/+57
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10727 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove dependence on structure index type. s/MT/FTChris Lattner2004-01-091-6/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10726 91177308-0d34-0410-b5e6-96231b3b80d8
* Finegrainify namespacificationChris Lattner2004-01-0914-80/+37
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10725 91177308-0d34-0410-b5e6-96231b3b80d8
* Finegrainify namespacificationChris Lattner2004-01-093-13/+23
| | | | | | | add flags for PR82 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10724 91177308-0d34-0410-b5e6-96231b3b80d8
* Inching towards fixing PR82Chris Lattner2004-01-091-1/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10722 91177308-0d34-0410-b5e6-96231b3b80d8
* Inching our way towards fixing PR82Chris Lattner2004-01-091-1/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10721 91177308-0d34-0410-b5e6-96231b3b80d8
* Improve encapsulation in the Loop and LoopInfo classes by eliminating theChris Lattner2004-01-084-28/+26
| | | | | | | | getSubLoops/getTopLevelLoops methods, replacing them with iterator-based accessors. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10714 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a separate list of fixed intervals. This improves the running timeAlkis Evlogimenos2004-01-071-64/+111
| | | | | | | | | | | | | | | | | | | of the register allocator as follows: before after mesa 2.3790 1.5994 vpr 2.6008 1.2078 gcc 1.9840 0.5273 mcf 0.2569 0.0470 eon 1.8468 1.4359 twolf 0.9475 0.2004 burg 1.6807 1.3300 lambda 1.2191 0.3764 Speedups range anyware from 30% to over 400% :-) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10712 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor cleanups.Alkis Evlogimenos2004-01-071-29/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10711 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove declared but undefined method.Alkis Evlogimenos2004-01-071-5/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10710 91177308-0d34-0410-b5e6-96231b3b80d8
* Change implementation of LiveIntervals::overlap(). This results in aAlkis Evlogimenos2004-01-071-10/+22
| | | | | | | 30-50% decrease in running time of the linear scan register allocator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10707 91177308-0d34-0410-b5e6-96231b3b80d8
* Pass std::string to constructor as const reference to avoid multipleAlkis Evlogimenos2004-01-061-1/+1
| | | | | | | copies. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10705 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for new intrinsicChris Lattner2004-01-062-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10701 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix some typos and copy-and-paste-os in comments, and doxygenify.Brian Gaeke2004-01-051-5/+9
| | | | | | | Add <csignal> so that this file compiles on Solaris. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10697 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove simple coalescing.Alkis Evlogimenos2004-01-052-26/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10695 91177308-0d34-0410-b5e6-96231b3b80d8
* /me slaps foreheadChris Lattner2004-01-051-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10693 91177308-0d34-0410-b5e6-96231b3b80d8
* fix warningChris Lattner2004-01-051-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10692 91177308-0d34-0410-b5e6-96231b3b80d8
* Add VMCore and code generator support for debugging intrinsics. By defaultChris Lattner2004-01-054-0/+27
| | | | | | | code generators completely ignore them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10691 91177308-0d34-0410-b5e6-96231b3b80d8
* Add new dirChris Lattner2004-01-051-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10686 91177308-0d34-0410-b5e6-96231b3b80d8
* Initial checkin of the LLVM source-level debugger. This is still not finished,Chris Lattner2004-01-0511-0/+1983
| | | | | | | by any stretch of the imagination, but it is pretty cool and works :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10685 91177308-0d34-0410-b5e6-96231b3b80d8
* Currently we cannot handle two-address instructions of the form:Alkis Evlogimenos2004-01-051-0/+9
| | | | | | | | A = B op C where A == C, but this cannot really occur in practice because of SSA form. Add an assert to check that just to be safe. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10682 91177308-0d34-0410-b5e6-96231b3b80d8
* Update description.Alkis Evlogimenos2004-01-041-5/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10681 91177308-0d34-0410-b5e6-96231b3b80d8
* Not all platforms supports sighandler_t, so I changed it to use the olderJohn Criswell2004-01-011-1/+1
| | | | | | | | | return value from signal() (which should be the same type; it's just not typedef'd). This fixes the build on Solaris. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10675 91177308-0d34-0410-b5e6-96231b3b80d8
* Add new ExecutionEngine::getGlobalValueAtAddress method, which can efficientlyChris Lattner2003-12-311-5/+21
| | | | | | | | | | | turn a memory address back into the LLVM global object that starts at that address. Note that this won't cause any additional datastructures to be built for clients of the EE that don't need this information. Also modified some code to not access the GlobalAddress map directly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10674 91177308-0d34-0410-b5e6-96231b3b80d8
* * Add a new helper progress methodChris Lattner2003-12-311-4/+11
| | | | | | | | * Make sure that the user sees the 100% mark * Don't bother printing out X.0%, just print out X% git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10672 91177308-0d34-0410-b5e6-96231b3b80d8
* Add some comments, add new getGlobalVariable methodChris Lattner2003-12-311-1/+43
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10671 91177308-0d34-0410-b5e6-96231b3b80d8
* Add missing #includeChris Lattner2003-12-311-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10669 91177308-0d34-0410-b5e6-96231b3b80d8
* * Make Module::getTypeName constChris Lattner2003-12-311-16/+23
| | | | | | | | * Add new Module::getTypeByName method * Group methods in Module.cpp better git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10668 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the lookup method const.Chris Lattner2003-12-311-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10667 91177308-0d34-0410-b5e6-96231b3b80d8
* Add new functionChris Lattner2003-12-311-0/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10664 91177308-0d34-0410-b5e6-96231b3b80d8
* New class, useful for command-line interactive programs.Chris Lattner2003-12-311-0/+94
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10662 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR198Chris Lattner2003-12-311-8/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10659 91177308-0d34-0410-b5e6-96231b3b80d8
* Add commentsChris Lattner2003-12-311-2/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10658 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor code cleanups. The only bugfix is to the UR_DEBUG stuff which didn'tChris Lattner2003-12-311-15/+20
| | | | | | | compile when enabled. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10657 91177308-0d34-0410-b5e6-96231b3b80d8
* remove some useless #includesChris Lattner2003-12-301-9/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10654 91177308-0d34-0410-b5e6-96231b3b80d8
* Use new getFileSize function instead of sys/stat.h directly.Chris Lattner2003-12-304-28/+19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10650 91177308-0d34-0410-b5e6-96231b3b80d8
* Add new methodChris Lattner2003-12-301-0/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10649 91177308-0d34-0410-b5e6-96231b3b80d8
* Further revisions of the FDHandle idea. In this version we use ownershipChris Lattner2003-12-301-8/+0
| | | | | | | | semantics that are the same as those used by std::auto_ptr. This allows copying of FDHandle's, but copying transfers ownership. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10646 91177308-0d34-0410-b5e6-96231b3b80d8
* Add trivial exception specs to produce better code since the methods cannotChris Lattner2003-12-291-3/+3
| | | | | | | be inlined. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10643 91177308-0d34-0410-b5e6-96231b3b80d8
* Factor FDHandle out of the bytecode reader into the FileUtilities.h supportChris Lattner2003-12-292-16/+27
| | | | | | | routines. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10642 91177308-0d34-0410-b5e6-96231b3b80d8
* implement new getToken functionChris Lattner2003-12-291-0/+43
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10639 91177308-0d34-0410-b5e6-96231b3b80d8
* Clean up a lot of the code I added yesterday by exposing the IntrinsicLoweringChris Lattner2003-12-2817-92/+59
| | | | | | | implementation from the TargetMachine directly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10636 91177308-0d34-0410-b5e6-96231b3b80d8
* Reserve ECX and EDI instead of EBX and EDI. Since EBX is a calleeAlkis Evlogimenos2003-12-281-8/+8
| | | | | | | | | saved register it has a longer free range than ECX (which is defined every time there is a fnuction call) which makes ECX a better register to reserve. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10635 91177308-0d34-0410-b5e6-96231b3b80d8