summaryrefslogtreecommitdiff
path: root/include
Commit message (Collapse)AuthorAge
* Generic graph iterator to enumerate the SCCs of a graphVikram S. Adve2002-11-04
| | | | | | | in linear time using Tarjan's DFS algorithm. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4531 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement methods needed to print out call graphChris Lattner2002-11-04
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4522 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow the call graph to be called from analyze naturally with print implementedChris Lattner2002-11-04
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4517 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename ValueMap to ScalarMapChris Lattner2002-11-03
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4516 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename NewNode flag to HeapNodeChris Lattner2002-11-03
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4515 91177308-0d34-0410-b5e6-96231b3b80d8
* Check in header file that was missing, thus broke the buildChris Lattner2002-11-03
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4513 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed comment on top of DSNode.h, added note to DSSupport.h as to whyMisha Brukman2002-11-02
| | | | | | | functions were split out from DSNode class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4509 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement the "unknown flag" which mainly consists of aligning printing codeChris Lattner2002-11-02
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4490 91177308-0d34-0410-b5e6-96231b3b80d8
* * Eliminate Scalar node type (renumber other node types)Chris Lattner2002-11-02
| | | | | | | * Allow DSNodeHandle::mergeWith to work if a node handle isn't pointing to a node yet git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4487 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate some unneccesary #includes and forward declsChris Lattner2002-10-31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4475 91177308-0d34-0410-b5e6-96231b3b80d8
* Refactored DSGraph.h:Misha Brukman2002-10-31
| | | | | | | | | * DSGraph.h contains DSGraph * DSNode.h contains DSNode (soon UDSNode and MDSNode) * DSSupport.h contains DSCallsite, DSTypeRec, and DSNodeHandler git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4466 91177308-0d34-0410-b5e6-96231b3b80d8
* This fixes all kinds of problems with array handling. There are still bugs toChris Lattner2002-10-31
| | | | | | | | | | | | | | | | | be fixed, but we are getting much closer now. * Make DSNode::TypeRec a full fledged DSTypeRec type. * Add methods used to update and access the typerecords elements * Add methods to query if and to cause a node to be completely folded * DSGraph construction doesn't use the allocation type for anything at all, now nodes get their type information based on how they are used. * Fixed a bug with global value handling introduced in the last checkin * GEP support is now much better, arrays are handled correctly. The array flag is now updated in type records. There are still cases that are not handled yet (we do not detect pessimizations), but getting much closer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4465 91177308-0d34-0410-b5e6-96231b3b80d8
* New isAssociative/isCommutative inspection methods, graciously contributed byChris Lattner2002-10-31
| | | | | | | Casey Carter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4459 91177308-0d34-0410-b5e6-96231b3b80d8
* Statistic class should return const reference to *this, not a reference toChris Lattner2002-10-31
| | | | | | | the data type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4458 91177308-0d34-0410-b5e6-96231b3b80d8
* Add interface to update domfrontier info, thanks to Casey Carter for implChris Lattner2002-10-31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4456 91177308-0d34-0410-b5e6-96231b3b80d8
* Bug fix: need to initialize new CallArgsDescriptor pointer.Vikram S. Adve2002-10-30
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4453 91177308-0d34-0410-b5e6-96231b3b80d8
* Bug fix in setting an implicit ref.Vikram S. Adve2002-10-30
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4452 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow BuildMI that helps automate construction of SSA informationChris Lattner2002-10-30
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4443 91177308-0d34-0410-b5e6-96231b3b80d8
* * Add new "Target Specific Flags" field to instruction descriptorChris Lattner2002-10-30
| | | | | | | * Rename iclass to Flags git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4439 91177308-0d34-0410-b5e6-96231b3b80d8
* Add new optional getRegisterInfo to TargetMachineChris Lattner2002-10-30
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4436 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for structured printingChris Lattner2002-10-30
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4432 91177308-0d34-0410-b5e6-96231b3b80d8
* Improve comments, add methods for structured printingChris Lattner2002-10-30
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4431 91177308-0d34-0410-b5e6-96231b3b80d8
* Add methodChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4428 91177308-0d34-0410-b5e6-96231b3b80d8
* Add capability to have machine instruction autoinsert when it is createdChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4424 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed spelling of `propagation'.Misha Brukman2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4422 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate virtual methods that are sparc specificChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4419 91177308-0d34-0410-b5e6-96231b3b80d8
* * Privatize the TargetNameChris Lattner2002-10-29
| | | | | | | | * Move optSizeForSubWordData to TargetData * Remove unused fields git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4417 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow TargetMachine to refuse static code genChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4415 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename Sparc.h to TargetMachineImpls.h. Add hook for X86 targetChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4412 91177308-0d34-0410-b5e6-96231b3b80d8
* Add hook for JIT compilerChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4411 91177308-0d34-0410-b5e6-96231b3b80d8
* Move to TargetMachineImpls.hChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4405 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge with sparc backendChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4403 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge to MachineInstrInfo.hChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4402 91177308-0d34-0410-b5e6-96231b3b80d8
* X86 merge complete, eliminate dead codeChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4401 91177308-0d34-0410-b5e6-96231b3b80d8
* X86 merge is complete, eliminate unused codeChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4400 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove separate vector of implicit refs from MachineInstr, andVikram S. Adve2002-10-29
| | | | | | | | | instead record them as extra operands in the operands[] vector. Also, move CallArgsDescriptor into this class instead of making it an annotation on the machine instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4399 91177308-0d34-0410-b5e6-96231b3b80d8
* Move CallArgsDescriptor into this class instead of making it anVikram S. Adve2002-10-29
| | | | | | | annotation on the machine instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4398 91177308-0d34-0410-b5e6-96231b3b80d8
* Move TargetInstrDescriptors extern to the one .cpp file that refers to it:Chris Lattner2002-10-29
| | | | | | | MachineInstr.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4392 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename opCodeString to Name, add new getName() methodChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4388 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename MachineInstrInfo::getDescriptor to MachineInstrInfo::getChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4387 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove old entrypointChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4385 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unneeded #includeChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4384 91177308-0d34-0410-b5e6-96231b3b80d8
* De-inline methodsChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4379 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unneeded #includeChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4377 91177308-0d34-0410-b5e6-96231b3b80d8
* Make assertIGNode be private to the InterferenceGraph.cpp fileChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4375 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unneccesary #includeChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4374 91177308-0d34-0410-b5e6-96231b3b80d8
* Delete unused header fileChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4373 91177308-0d34-0410-b5e6-96231b3b80d8
* MachineInstrInfo doesn't need a TargetMachine memberChris Lattner2002-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4371 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor cleanups, remove noncopyable so dot doesn't cluster unrelated stuffChris Lattner2002-10-28
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4365 91177308-0d34-0410-b5e6-96231b3b80d8
* Strip a bunch of #includes from the file, move some virtual functions toChris Lattner2002-10-28
| | | | | | | .cpp file git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4364 91177308-0d34-0410-b5e6-96231b3b80d8