summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Adding the initial implementation of the SlotTable class. This class isReid Spencer2004-05-253-0/+424
| | | | | | | | | | | | | the Abstract Data Type that holds slot number values and associates them with Type* and Value*. The SlotTable is simply the holder of the slot numbers and provides a controlled interface for building the table. It does not enforce any particular idiom or functionality for manipulating the slot numbers. This is part of bug_122. The SlotCalculator and SlotMachine classes will follow. llvm-svn: 13764
* Remove this file as well as it is no longer needed nor it compilesAlkis Evlogimenos2004-05-251-25/+0
| | | | llvm-svn: 13762
* Document a couple functions.Reid Spencer2004-05-251-0/+5
| | | | llvm-svn: 13761
* Changed to use SymbolTable's new iteration interfaces.Reid Spencer2004-05-251-6/+18
| | | | llvm-svn: 13759
* Changed to use SymbolTable's new lookup interface.Reid Spencer2004-05-251-2/+2
| | | | llvm-svn: 13758
* Made it illegal to pass a Type* through one of the Value* interfaces. TheReid Spencer2004-05-251-0/+4
| | | | | | | SymbolTable will now assert if this is done. This didn't find any incorrect usage of SymbolTable but will prevent future mistakes until Type != Value. llvm-svn: 13755
* Convert to SymbolTable's new iteration interface.Reid Spencer2004-05-256-95/+120
| | | | llvm-svn: 13754
* Convert to SymbolTable's new iteration interface. Remove tabs.Reid Spencer2004-05-251-14/+27
| | | | llvm-svn: 13753
* Completely rewrote the class. SymbolTable now separates Type* from Value* in ↵Reid Spencer2004-05-251-108/+240
| | | | | | | | | | | | preparation\ for making Type not derive from Value. There are now separate interfaces \ for looking up, finding, and inserting Types and Values. There are also \ three separate iterator interfaces, one for type planes, one for the types \ (type type plane), and one for values within a type plane. See the \ documentation in the Header file. llvm-svn: 13752
* Convert to SymbolTable's new lookup and iteration interfaces.Reid Spencer2004-05-252-30/+29
| | | | llvm-svn: 13751
* Remove unused header file.Reid Spencer2004-05-251-1/+0
| | | | llvm-svn: 13750
* Make this pass simply invoke SymbolTable::strip().Reid Spencer2004-05-251-31/+2
| | | | llvm-svn: 13749
* Remove use of Type::TypeTy from an assert. It will go away soon.Reid Spencer2004-05-251-1/+0
| | | | llvm-svn: 13748
* Get rid of a wart: useless getFILE function is now a cast macro.Reid Spencer2004-05-251-42/+2
| | | | llvm-svn: 13747
* Recognize memalign and friends, and handle them specially.Vikram S. Adve2004-05-251-1/+2
| | | | llvm-svn: 13741
* Implement InstCombine:shift.ll:test16, which turns (X >> C1) & C2 != C3Chris Lattner2004-05-251-0/+35
| | | | | | | | | | into (X & (C2 << C1)) != (C3 << C1), where the shift may be either left or right and the compare may be any one. This triggers 1546 times in 176.gcc alone, as it is a common pattern that occurs for bitfield accesses. llvm-svn: 13740
* Implement some helpersChris Lattner2004-05-251-0/+10
| | | | llvm-svn: 13738
* Implement instcombine/cast.ll:test16:Chris Lattner2004-05-251-0/+5
| | | | | | Canonicalize cast X to bool into a setne instruction llvm-svn: 13736
* Moved MachineBasicBlock deconstructor to cpp file and removed it from ↵Tanya Lattner2004-05-242-5/+11
| | | | | | LeakDetector to fix memory leak bug. llvm-svn: 13718
* Fix a bug in my previous checkinChris Lattner2004-05-241-0/+1
| | | | llvm-svn: 13717
* Added MachineFunction parent* to MachineBasicBlock. Customized ilist templateTanya Lattner2004-05-242-14/+34
| | | | | | to set the parent when a MachineBasicBlock is added to a MachineFunction. llvm-svn: 13716
* Eliminate an explicit use of the LLVM basic block, using getParent instead,Chris Lattner2004-05-241-1/+1
| | | | | | which simplifies the code llvm-svn: 13707
* Changed clone to be const.Tanya Lattner2004-05-241-1/+7
| | | | | | Changed copy constructor to set parent, prev, and next pointers to null. llvm-svn: 13706
* Spelling people's names right is kinda importantChris Lattner2004-05-231-1/+1
| | | | llvm-svn: 13702
* Add support for accurate garbage collection to the LLVM code generatorsChris Lattner2004-05-233-0/+12
| | | | llvm-svn: 13696
* Add some notes to myself, no functional changesChris Lattner2004-05-231-7/+19
| | | | llvm-svn: 13695
* minor wording changeChris Lattner2004-05-231-1/+1
| | | | llvm-svn: 13694
* Fix cases where we missed inlining some more obvious candidates because theChris Lattner2004-05-231-79/+108
| | | | | | caller was in an SCC. llvm-svn: 13693
* Simplify the interface and remove an unneeded #includeChris Lattner2004-05-231-9/+1
| | | | llvm-svn: 13692
* Fairly substantial changes to update the alias analysis we are querying asChris Lattner2004-05-231-39/+92
| | | | | | | we make the transformation. This allows us to use interprocedural alias analyses successfully. llvm-svn: 13691
* Adjust to the changes in the AliasSetTracker interfaceChris Lattner2004-05-231-16/+14
| | | | llvm-svn: 13690
* Add support for replacement of formal arguments with simpler expressions.Chris Lattner2004-05-231-2/+23
| | | | llvm-svn: 13689
* Implement the -lowergc pass which is used by code generators (like the CBE)Chris Lattner2004-05-231-0/+326
| | | | | | that do not have builtin support for garbage collection. llvm-svn: 13688
* Recognize and verify the new GC intrinsics.Chris Lattner2004-05-232-6/+21
| | | | llvm-svn: 13687
* Changes to work with the changes to the AliasAnalysis interface. The -no-aaChris Lattner2004-05-231-28/+67
| | | | | | class is now in the BasicAliasAnalysis.cpp file llvm-svn: 13684
* Move the -no-aa AA implementation into this file since both of theseChris Lattner2004-05-231-8/+46
| | | | | | | alias analysis implementations are special: they do not autoforward to a chained implementation of alias analysis llvm-svn: 13683
* Updates to work with the new auto-forwarding AA interface changesChris Lattner2004-05-231-9/+3
| | | | llvm-svn: 13682
* Fix a really nasty bug with the -disable-ds-field-sensitivity optionChris Lattner2004-05-231-0/+3
| | | | llvm-svn: 13681
* Update to match the autochaining interface that the AA interface usesChris Lattner2004-05-231-6/+1
| | | | llvm-svn: 13680
* Implement the interfaces to update value numbering information. Add anChris Lattner2004-05-231-2/+24
| | | | | | assert. llvm-svn: 13679
* Rename a methodChris Lattner2004-05-231-2/+2
| | | | llvm-svn: 13676
* Add a simple implementation of Andersen's interprocedural pointer analysisChris Lattner2004-05-231-0/+1029
| | | | llvm-svn: 13666
* Fixed up my changes to add support for cloning Machine Instructions.Tanya Lattner2004-05-231-2/+3
| | | | llvm-svn: 13665
* Adding support to clone MachineInstrTanya Lattner2004-05-231-0/+19
| | | | llvm-svn: 13661
* Inline both direct and indirect callees in the CBU phase becauseVikram S. Adve2004-05-231-34/+34
| | | | | | a direct callee may have indirect callees and so may have changed. llvm-svn: 13649
* Fix a typo in a comment.Brian Gaeke2004-05-231-1/+1
| | | | llvm-svn: 13643
* Fix for PR340: Verifier misses malformed switch instructionChris Lattner2004-05-211-0/+12
| | | | llvm-svn: 13618
* Fix to make the CBE always emit comparisons inline. Hopefully this willChris Lattner2004-05-201-0/+4
| | | | | | fix the really bad code we're getting on PPC. llvm-svn: 13609
* Fix a bug in outputting branches to constant PCs. Since the PC is supplied asBrian Gaeke2004-05-201-2/+3
| | | | | | | a full 64-bit address, it must be adjusted to fit in the branch instruction's immediate field. (This is only used in the reoptimizer, for now.) llvm-svn: 13608
* Minor simplification: eliminate a dyn_cast.Brian Gaeke2004-05-191-9/+4
| | | | | | Fix a typo in a debug message. llvm-svn: 13607
OpenPOWER on IntegriCloud