Commit Graph

223 Commits

Author SHA1 Message Date
Vikram S. Adve
23ee550765 Header files for the target architecture description and for instruction
selection, and instances of these for the SPARC.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@226 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-21 12:39:03 +00:00
Vikram S. Adve
c4651a91c0 Added support for getting the dependence of an executable on its libs,
using a variable to get the list of libraries on the link path.
BUG: If the library in the same directory as the executable is missing,
BUG: gnumake will build the library but then fail when linking the executable
BUG: saying the library was not found.  Need a better hack.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@225 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-21 12:38:14 +00:00
Vikram S. Adve
a4e6f88fbb Add isIntegral() method to SignedIntType and UnsignedIntType.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@224 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-21 12:32:48 +00:00
Vikram S. Adve
230365abf7 Provide simpler ways to extract the value of an integer constant.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@223 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 21:11:07 +00:00
Vikram S. Adve
d01d99b2a0 Compute and cache information about the storage size and layout
of structures.  This information is machine-dependent.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@222 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 21:09:17 +00:00
Vikram S. Adve
6575a1d134 Provide uniform access to the pointer operand and to the index
operands (if any) for different types of MemAccessInst's.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@221 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 21:07:06 +00:00
Vikram S. Adve
3344615555 Added a representation of the machine instructions generated
for a VM instruction.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@220 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 21:05:02 +00:00
Chris Lattner
369bbeb62c Start of expression analysis support
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@219 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 19:17:55 +00:00
Chris Lattner
ba7cf16dbb Header to raise and lower representation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@218 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 19:17:47 +00:00
Chris Lattner
955f899bcd Add support to call LevelRaise
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@217 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 19:16:47 +00:00
Chris Lattner
1546bff423 Update makefile for more accurate deps
Include support to print out Expression types


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@216 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 19:16:29 +00:00
Chris Lattner
37bf6308ab Implement ensureTypeAvailable
Implement ConstPoolInt class


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@215 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 19:16:02 +00:00
Chris Lattner
b5bcbc3bef Add support for constant propogation of multiplies
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@214 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 19:15:36 +00:00
Chris Lattner
622f740a7d Factor out WriteAsOperand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@213 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 19:15:21 +00:00
Chris Lattner
698b56e690 Add a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@212 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 19:15:08 +00:00
Chris Lattner
a137f87051 Add multiply as a supported constant propogation operation
Include the LevelChange.h header in AllOpts.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 19:14:41 +00:00
Chris Lattner
e3ad3575b0 New function: WriteAsOperand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@210 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 19:14:01 +00:00
Chris Lattner
2ce0cbbbe1 Add new base class ConstPoolInt, useful for dealing with integral constants
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@209 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 19:13:28 +00:00
Chris Lattner
646ffa4919 Add new method, ensureTypeAvailable
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@208 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 19:13:04 +00:00
Chris Lattner
edde66d9e0 Change is*Type to be a casting convertion operator
Add a new isIntegral virtual function


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 19:12:34 +00:00
Chris Lattner
781532e45b Add an function to BinaryOperator to swap the two operands
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@206 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 19:09:33 +00:00
Chris Lattner
94572e0c93 Add short forms of the get*Type methods.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@205 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 19:09:11 +00:00
Chris Lattner
7f6330c743 Fix nasty typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@204 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-20 04:39:07 +00:00
Chris Lattner
a3c8916228 Fix clean target
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-18 23:43:53 +00:00
Chris Lattner
febb11f9af Compile source files in alphabetical order
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@202 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-18 23:43:37 +00:00
Chris Lattner
083735d582 Fixed typo in comment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-16 16:17:18 +00:00
Chris Lattner
bc7135f5c0 Support external methods
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@200 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 21:43:45 +00:00
Chris Lattner
21341d3108 New test case for prototype support
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 21:43:17 +00:00
Vikram S. Adve
416ae8da19 Reordered link line for correct static linking.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@198 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 21:13:29 +00:00
Vikram S. Adve
112a72ce80 Changed default to building library archives instead of shared objects.
Added support for compiling *.c files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@197 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 13:16:47 +00:00
Chris Lattner
739a56d26d Implement forward/external declarations for methods.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 06:35:59 +00:00
Chris Lattner
e181564419 Implement forward/external declarations for methods. Also, emit an error if a method
is defined more than once, instead of crashing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 06:35:53 +00:00
Chris Lattner
52f2750ddb Rename 'isMethodExternal' to 'isExternal'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 06:35:24 +00:00
Chris Lattner
f5a0892324 Add notes on instruction selection pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 00:23:59 +00:00
Chris Lattner
9674104416 New testcase from GCC doing array operations
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 00:18:50 +00:00
Chris Lattner
a59c266d84 Add support for assembly printing fp constants
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 00:18:39 +00:00
Chris Lattner
ff5eccef96 Add support to the bytecode writer to recognize floating point constants
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 00:17:23 +00:00
Chris Lattner
a137530341 Add support to the bytecode reader to recognize floating point constants
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 00:17:18 +00:00
Chris Lattner
3d52b2fdcc Add support to the parser to recognize floating point constants
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 00:17:01 +00:00
Chris Lattner
2e35bedc82 Add a function to convert a double to a string
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 00:16:38 +00:00
Chris Lattner
d2fdd91c66 Add support to write and read a fixed amount of raw data
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 00:16:22 +00:00
Chris Lattner
bb1604c931 Add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15 00:16:02 +00:00
Chris Lattner
a3d3c2b645 * ValueHolder now takes 3 arguments
* Added a few methods to ConstantPool
* ConstPoolVal no longer derives from Value
* Method & Module multiply inherit from SymTabValue & Value now
* Added a GetElementPtrInst::isStructSelector() method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-14 06:13:19 +00:00
Chris Lattner
3b7bfdb201 Add knowledge about the struct form of the GetElementPtr instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-14 06:11:51 +00:00
Chris Lattner
20a155f5ab Remove dependency on the structure of ValueHolder.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-14 06:11:26 +00:00
Chris Lattner
e545981a6a * The parent of a constant pool is a symtabvalue, not a value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-14 06:10:49 +00:00
Chris Lattner
54d56e3a99 The parent of a constant pool is a symtabvalue, not a value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-14 06:10:33 +00:00
Chris Lattner
e98dda6d42 Added some comments, preparing to add global variables and method prototypes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-14 06:10:16 +00:00
Chris Lattner
644dc172f5 * The parent of a constant pool is a SymTabValue, not a value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-14 06:08:51 +00:00
Chris Lattner
dc4c3f2f5f Made the following changes:
* ValueHolder became a 3 argument template.  This allows for BasicBlock to
  use the value holder arg as a typesafe parent pointer.
* SymTabValue no longer inherits from Value
* Method does not inherit from only SymTabValue.  Now it inherits from both
  STV & Value.
* Module does not inherit from only SymTabValue.  Now it inherits from both
  STV & Value.
* Updated the SymTabValue.h file to reference SymTabValue instead of STDef
  in several places
* Added isArraySelector & isStructSelector to GetElementPtr instruction


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-14 06:07:58 +00:00