aboutsummaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* Use the SystemUtils.h file to do our dirty work.Chris Lattner2004-05-281-52/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13868 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for zero length filesChris Lattner2004-05-281-1/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13866 91177308-0d34-0410-b5e6-96231b3b80d8
* Use the new FileUtilities.h API for mapping a file into an addressChris Lattner2004-05-284-60/+30
| | | | | | | space git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13864 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a pair of functions to hide system specific details of mapping a file in ↵Chris Lattner2004-05-281-0/+34
| | | | | | for reading. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13863 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove some more dead code resulting from adding setTypeName().Reid Spencer2004-05-281-5/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13862 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove an assertion that uses Type::TypeTy that is never hit and willReid Spencer2004-05-271-12/+1
| | | | | | | | break when Type::TypeTy goes away. Also remove a dead block of code and dead comments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13861 91177308-0d34-0410-b5e6-96231b3b80d8
* Clean up a comment.Reid Spencer2004-05-271-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13860 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix for bug 348.Reid Spencer2004-05-271-0/+1
| | | | | | | The SymbolTable changes caused this one too. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13859 91177308-0d34-0410-b5e6-96231b3b80d8
* Make comment lines stick out less.Brian Gaeke2004-05-271-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13858 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove long unused #includesChris Lattner2004-05-271-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13857 91177308-0d34-0410-b5e6-96231b3b80d8
* These #includes are long deadChris Lattner2004-05-271-2/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13856 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a bug in the -deadtypeelim pass. The SymbolTable re-write changed itJohn Criswell2004-05-271-1/+1
| | | | | | | to eliminate the wrong type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13855 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix warnings about reaching end of non-void functionChris Lattner2004-05-271-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13852 91177308-0d34-0410-b5e6-96231b3b80d8
* Add DynamicLinker support for systems that provide windows.hChris Lattner2004-05-271-8/+23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13851 91177308-0d34-0410-b5e6-96231b3b80d8
* Use the SymbolTable::isEmpty() method instead of checking for no valueReid Spencer2004-05-271-1/+1
| | | | | | | | | | planes. A SymbolTable could still have types in it! This fixes problems with two regression tests that failed because a symbol table that only contained types was being omitted from bytecode files. Thanks to Chris for the reduced test case that helped find this immediately. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13842 91177308-0d34-0410-b5e6-96231b3b80d8
* This code is a real mess, but at least get the JIT *building* on platformsChris Lattner2004-05-271-0/+8
| | | | | | | | (such as plan 9) without mmap. Of course it won't RUN... but that's another step. :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13839 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for dos-style filesChris Lattner2004-05-271-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13837 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix InstCombine/load.ll & PR347.Chris Lattner2004-05-271-12/+24
| | | | | | | | | | | This code hadn't been updated after the "structs with more than 256 elements" related changes to the GEP instruction. Also it was not handling the ConstantAggregateZero class. Now it does! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13834 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement constant folding of fmod, which is used a lot in povrayChris Lattner2004-05-271-2/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13823 91177308-0d34-0410-b5e6-96231b3b80d8
* Restructure call constant folding code a bit to make it simplerChris Lattner2004-05-271-39/+40
| | | | | | | | | Add support for acos/asin/atan. 188.ammp contains three calls to acos with constant arguments. Constant folding it allows elimination of those 3 calls and three FP divisions of the results. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13821 91177308-0d34-0410-b5e6-96231b3b80d8
* Header file movedChris Lattner2004-05-271-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13813 91177308-0d34-0410-b5e6-96231b3b80d8
* Signals.h header moved. Eventually this should move into a lib/System library,Chris Lattner2004-05-271-1/+1
| | | | | | | but not right now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13811 91177308-0d34-0410-b5e6-96231b3b80d8
* Changes to make libSupport build on systems that don't have the wait syscall.Chris Lattner2004-05-271-30/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13806 91177308-0d34-0410-b5e6-96231b3b80d8
* Add constructors that take a BasicBlock to append to, to the rest ofAlkis Evlogimenos2004-05-273-45/+175
| | | | | | | the llvm::Instruction hierarchy. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13800 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not pass a null pointer if this instruction is not prepended orAlkis Evlogimenos2004-05-261-2/+2
| | | | | | | appended anywhere. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13798 91177308-0d34-0410-b5e6-96231b3b80d8
* Inline trivial constructors.Alkis Evlogimenos2004-05-262-33/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13797 91177308-0d34-0410-b5e6-96231b3b80d8
* Several clean ups suggested by Chris: remove tabs, make SlotMachine do lazyReid Spencer2004-05-261-94/+97
| | | | | | | | | initialization so we don't scan large Modules/Functions needlessly, tighten up restrictions on what can be put in SlotMachine (no Constants that aren't GlobalValues). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13796 91177308-0d34-0410-b5e6-96231b3b80d8
* Provide the correct patch for bug 345. The solution is to add a setTypeNameReid Spencer2004-05-261-7/+68
| | | | | | | | | function to llvmAsmParser.y and then use it in the one place in the grammar that needs it. Also had to make Type::setName public because setTypeName needs it in order to retain compatibility with setValueName. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13795 91177308-0d34-0410-b5e6-96231b3b80d8
* Refactor common initialization code in private init() functions.Alkis Evlogimenos2004-05-266-98/+96
| | | | | | | | This is a first step in supplying append to basic block constructors for all instruction types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13793 91177308-0d34-0410-b5e6-96231b3b80d8
* Use one destination constructor for the unconditional branch.Alkis Evlogimenos2004-05-261-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13792 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR344: the incorrect remove was being used.Chris Lattner2004-05-262-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13790 91177308-0d34-0410-b5e6-96231b3b80d8
* A quick and ugly hack to fix PR345. I used TypeTy specifically to makeChris Lattner2004-05-261-1/+7
| | | | | | | Reid cringe :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13788 91177308-0d34-0410-b5e6-96231b3b80d8
* Part of bug 122:Reid Spencer2004-05-264-133/+101
| | | | | | | | | | | This change removes the BuildBytecodeInfo flag from the SlotCalculator class. This flag was needed to distinguish between the Bytecode/Writer and the AsmWriter. Now that AsmWriter doesn't use SlotCalculator, we can remove this flag and simplify some code. Also, some minor name changes to CachedWriter.h needed to be committed (missed in previous commit). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13785 91177308-0d34-0410-b5e6-96231b3b80d8
* Part of bug 122. Removed dependency of AsmWriter on SlotCalculator byReid Spencer2004-05-261-52/+426
| | | | | | | | | | incorporating a significantly simpler "SlotMachine" into this file. The SlotMachine is tailored for use by only the AsmWriter whose requirements for slot numbers are vastly different than from the Bytecode/Writer. Code change passes all Feature and Regression tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13784 91177308-0d34-0410-b5e6-96231b3b80d8
* Adding scheduling class.Tanya Lattner2004-05-264-0/+492
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13783 91177308-0d34-0410-b5e6-96231b3b80d8
* Updating my cvs versions. THis is still in progress and much will be changed.Tanya Lattner2004-05-268-314/+598
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13782 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a (not very meaningful) default constructor for AllocInfo objects.Brian Gaeke2004-05-251-4/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13773 91177308-0d34-0410-b5e6-96231b3b80d8
* Put SlotTable.h inclusion back at front of list to be coding standardsReid Spencer2004-05-252-2/+2
| | | | | | | compliant. Thanks, Chris. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13771 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the constructor explicit so we can't implicitly convert bool toReid Spencer2004-05-251-1/+1
| | | | | | | SlotTable. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13766 91177308-0d34-0410-b5e6-96231b3b80d8
* Make some improvements suggested by Chris.Reid Spencer2004-05-252-16/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13765 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13764 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove this file as well as it is no longer needed nor it compilesAlkis Evlogimenos2004-05-251-25/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13762 91177308-0d34-0410-b5e6-96231b3b80d8
* Document a couple functions.Reid Spencer2004-05-251-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13761 91177308-0d34-0410-b5e6-96231b3b80d8
* Changed to use SymbolTable's new iteration interfaces.Reid Spencer2004-05-251-6/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13759 91177308-0d34-0410-b5e6-96231b3b80d8
* Changed to use SymbolTable's new lookup interface.Reid Spencer2004-05-251-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13758 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13755 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert to SymbolTable's new iteration interface.Reid Spencer2004-05-258-129/+175
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13754 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert to SymbolTable's new iteration interface. Remove tabs.Reid Spencer2004-05-251-14/+27
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13753 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13752 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert to SymbolTable's new lookup and iteration interfaces.Reid Spencer2004-05-254-76/+75
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13751 91177308-0d34-0410-b5e6-96231b3b80d8