aboutsummaryrefslogtreecommitdiffstats
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
* - Eliminated the deferred symbol table stuff in Module & Function, it reallyChris Lattner2002-11-202-19/+6
| | | | | | | wasn't an optimization and it was causing lots of bugs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4779 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate the concept of a deferred symbol table. The optimization really ↵Chris Lattner2002-11-201-13/+3
| | | | | | | | | isn't, and it causes obscure bugs to show up in passes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4777 91177308-0d34-0410-b5e6-96231b3b80d8
* SSARegMap -- the mapping between SSARegisters and their RegisterClasses, whichMisha Brukman2002-11-202-0/+53
| | | | | | | | imply types of SSA Registers. This is on a per-function basis, so the MachineFunction contains the SSARegMap, and has accessor functions to it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4774 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor changes to cloning interfaceChris Lattner2002-11-191-1/+24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4770 91177308-0d34-0410-b5e6-96231b3b80d8
* Extend function cloning interface to support inliningChris Lattner2002-11-191-2/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4767 91177308-0d34-0410-b5e6-96231b3b80d8
* This file is supersumed by Utils/Cloning.hChris Lattner2002-11-192-40/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4765 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge cloning and inlining utilitiesChris Lattner2002-11-191-0/+41
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4763 91177308-0d34-0410-b5e6-96231b3b80d8
* Move inlining pass to IPO.hChris Lattner2002-11-192-4/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4761 91177308-0d34-0410-b5e6-96231b3b80d8
* Move the function extractor pass from tools/extract into lib/Xform/IPOChris Lattner2002-11-191-0/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4759 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a new Module::getNamedFunction methodChris Lattner2002-11-191-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4758 91177308-0d34-0410-b5e6-96231b3b80d8
* Ignore options that are ""Chris Lattner2002-11-191-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4757 91177308-0d34-0410-b5e6-96231b3b80d8
* Add facility to compute peak memory usageChris Lattner2002-11-182-0/+22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4752 91177308-0d34-0410-b5e6-96231b3b80d8
* Inline DSTypeRec stuff into DSNodeChris Lattner2002-11-182-24/+36
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4751 91177308-0d34-0410-b5e6-96231b3b80d8
* Inline DSTypeRec into DSNodeChris Lattner2002-11-182-30/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4750 91177308-0d34-0410-b5e6-96231b3b80d8
* Templatize graph traits and iterator to work with const and non-const clientsChris Lattner2002-11-182-14/+54
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4746 91177308-0d34-0410-b5e6-96231b3b80d8
* Add helper methodChris Lattner2002-11-181-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4744 91177308-0d34-0410-b5e6-96231b3b80d8
* Print is const!Chris Lattner2002-11-171-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4737 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure that print gets a targetmachineChris Lattner2002-11-172-2/+4
| | | | | | | CVS: ---------------------------------------------------------------------- git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4735 91177308-0d34-0410-b5e6-96231b3b80d8
* Omit the indirect node when printing call graphsChris Lattner2002-11-171-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4733 91177308-0d34-0410-b5e6-96231b3b80d8
* Add machine independant printer interfaceChris Lattner2002-11-172-0/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4729 91177308-0d34-0410-b5e6-96231b3b80d8
* Finish enumating codeChris Lattner2002-11-171-3/+22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4726 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unused methodsChris Lattner2002-11-171-2/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4720 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert to use an enum to access def/use/use&def information. These makeChris Lattner2002-11-172-22/+54
| | | | | | | | reading code much easier than just seeing "true, false" especially when default parameters default one but not both arguments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4717 91177308-0d34-0410-b5e6-96231b3b80d8
* Return const refefrences to enable default constructionChris Lattner2002-11-171-7/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4713 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix warningChris Lattner2002-11-152-6/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4708 91177308-0d34-0410-b5e6-96231b3b80d8
* include/llvm/CodeGen/MachineInstrBuilder.h: Add addClobber() inlineBrian Gaeke2002-11-141-1/+10
| | | | | | | | | | | | | | | | | | | convenience method. Fix typo in comment. lib/Target/X86/InstSelectSimple.cpp: Explicitly specify some implicit uses. Use MOVZX/MOVSX instead of MOV instructions with sign extend instructions. Take out LEAVE instructions. 32-bit IDIV and DIV use CDQ, not CWQ (CWQ is a typo). Fix typo in comment and remove some FIXME comments. lib/Target/X86/Printer.cpp: Include X86InstrInfo.h and llvm/Function.h. Add some simple code to Printer::runOnFunction to iterate over MachineBasicBlocks and call X86InstrInfo::print(). lib/Target/X86/X86InstrInfo.def: Make some more instructions with implicit defs "Void". Add more sign/zero extending "move" insns (movsx, movzx). lib/Target/X86/X86RegisterInfo.def: Add EFLAGS as a register. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4707 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove dead method, add new methodChris Lattner2002-11-122-14/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4700 91177308-0d34-0410-b5e6-96231b3b80d8
* Almost complete rewrite of BU closure codeChris Lattner2002-11-112-2/+30
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4693 91177308-0d34-0410-b5e6-96231b3b80d8
* add methodChris Lattner2002-11-102-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4686 91177308-0d34-0410-b5e6-96231b3b80d8
* Add code to be able to merge two call sitesChris Lattner2002-11-102-0/+22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4685 91177308-0d34-0410-b5e6-96231b3b80d8
* Add tarj_end() methodChris Lattner2002-11-102-0/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4684 91177308-0d34-0410-b5e6-96231b3b80d8
* Add hasGraph() methods to all of the passes for the printerChris Lattner2002-11-102-2/+26
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4676 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement swappingChris Lattner2002-11-102-0/+30
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4674 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement support for swapping. Callsites now sort by calleeChris Lattner2002-11-102-4/+32
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4673 91177308-0d34-0410-b5e6-96231b3b80d8
* Add capability to set a preference of what call vector is printed to dot filesChris Lattner2002-11-102-0/+22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4672 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a problem where bad graphs could be generatedChris Lattner2002-11-102-2/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4671 91177308-0d34-0410-b5e6-96231b3b80d8
* eliminate the ability to remove global nodes from deadNodeElminate... for now.Chris Lattner2002-11-092-4/+4
| | | | | | | | This slows stuff down a bit, but it should get much better before it gets any worse. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4666 91177308-0d34-0410-b5e6-96231b3b80d8
* Add globals graphs to all three passesChris Lattner2002-11-092-2/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4663 91177308-0d34-0410-b5e6-96231b3b80d8
* Move maskNodeTypes from cpp fileChris Lattner2002-11-092-8/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4662 91177308-0d34-0410-b5e6-96231b3b80d8
* Clean up DSGraph::removeDeadNodes interfaceChris Lattner2002-11-092-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4660 91177308-0d34-0410-b5e6-96231b3b80d8
* Make removeTriviallyDeadNodes a private interfaceChris Lattner2002-11-092-36/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4658 91177308-0d34-0410-b5e6-96231b3b80d8
* Add initial support for a globals graphChris Lattner2002-11-094-22/+30
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4656 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unneccesary #includeChris Lattner2002-11-092-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4653 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove GlobalDSGraph delcarationChris Lattner2002-11-092-62/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4652 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix release buildChris Lattner2002-11-092-6/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4647 91177308-0d34-0410-b5e6-96231b3b80d8
* Add new methodsChris Lattner2002-11-082-0/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4646 91177308-0d34-0410-b5e6-96231b3b80d8
* Add another option to cloneGraphChris Lattner2002-11-082-4/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4641 91177308-0d34-0410-b5e6-96231b3b80d8
* - Add support for an "auxillary" call site listChris Lattner2002-11-086-88/+72
| | | | | | | | | | | - Original call sites are now never modified after construction by the local pass. - DSGraph::cloneInto can now optionally not clone the call sites - BUDataStructures no longer has a ton of book-keeping info for a broken implementation of the TD data structures git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4631 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a method "getMainFunction()" that efficiently locates 'main' in a moduleChris Lattner2002-11-081-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4629 91177308-0d34-0410-b5e6-96231b3b80d8
* Include HashExtras.h since it is almost always needed anyway.Vikram S. Adve2002-11-082-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4626 91177308-0d34-0410-b5e6-96231b3b80d8