Chris Lattner
34bdf4dda4
* Pull BasicBlock::pred_* and BasicBlock::succ_* out of BasicBlock.h and into
...
llvm/Support/CFG.h
llvm-svn: 1749
2002-02-12 22:35:32 +00:00
Chris Lattner
c88d936415
* Pull BasicBlock::pred_* and BasicBlock::succ_* out of BasicBlock.h and into
...
llvm/Support/CFG.h
* Make pred & succ iterators for intervals global functions
llvm-svn: 1748
2002-02-12 22:35:27 +00:00
Chris Lattner
e0aa81ad1b
Pull BasicBlock::pred_* and BasicBlock::succ_* out of BasicBlock.h and into
...
llvm/Support/CFG.h
llvm-svn: 1747
2002-02-12 22:35:06 +00:00
Chris Lattner
3a1bc64866
Method.h no longer includes BasicBlock.h
...
Method::inst_* is now in llvm/Support/InstIterator.h
llvm-svn: 1745
2002-02-12 21:04:35 +00:00
Chris Lattner
a4bf6af614
* Move BasicBlock and Method graph stuff to new "llvm/Support/CFG.h" file
...
* Move Method::inst_* to new "llvm/Support/InstIterator.h" file
* inst_iterator no longer permits resync'ing
llvm-svn: 1744
2002-02-12 21:02:53 +00:00
Chris Lattner
bde317b67d
* Move BasicBlock and Method graph stuff to new "llvm/Support/CFG.h" file
...
* Move Method::inst_* to new "llvm/Support/InstIterator.h" file
* Method.h no longer #includes BasicBlock.h
llvm-svn: 1743
2002-02-12 21:02:38 +00:00
Chris Lattner
326b548cd4
Initial checkin of new memory -> register promotion pass
...
llvm-svn: 1739
2002-02-12 17:16:22 +00:00
Chris Lattner
3b3ee75819
Convert BBLiveVar to be a BasicBlock annotation, this removes the BB2BBLVMap from MethodLiveVarInfo.
...
llvm-svn: 1721
2002-02-05 06:52:25 +00:00
Chris Lattner
e282c0b592
Convert operand iterator over to work like an STL iterator
...
llvm-svn: 1720
2002-02-05 06:02:59 +00:00
Chris Lattner
5337fbec40
Minor change: Methods that return ValueSet's that are guaranteed to be valid
...
return references instead of pointers.
llvm-svn: 1719
2002-02-05 04:20:12 +00:00
Chris Lattner
c77877fb46
Remove generic routines to Support/SetOperations.h
...
llvm-svn: 1715
2002-02-05 03:35:31 +00:00
Chris Lattner
6c0cbc3009
Remove empty files
...
llvm-svn: 1713
2002-02-05 02:52:53 +00:00
Chris Lattner
dc3aec7a90
* Eliminate the LiveVarSet class, making applyTranferFuncForMInst a static
...
function in the one .cpp file that uses it. Use ValueSet's instead.
* Prepare to delete LiveVarSet.h & LiveVarSet.cpp
* Eliminate the ValueSet class, making all old member functions into global
templates that will eventually be moved to Support.
llvm-svn: 1711
2002-02-05 02:51:01 +00:00
Chris Lattner
a8170f0944
* Code Cleanups
...
* Introduce RAV to allow stream I/O instead of using printValue
llvm-svn: 1710
2002-02-05 01:43:49 +00:00
Chris Lattner
80c1109e8e
Remove empty file
...
llvm-svn: 1708
2002-02-05 00:35:59 +00:00
Chris Lattner
1181768743
* Big cleanups.
...
* Make BBLiveVar.h effectively an internal header file
* Prepare LiveVarMap.h for deletion
llvm-svn: 1705
2002-02-05 00:33:19 +00:00
Chris Lattner
62860d4c3d
Clean up MethodLiveVarInfo
...
llvm-svn: 1703
2002-02-04 20:49:04 +00:00
Chris Lattner
b4e0d0424c
Turn live variable analysis into a real MethodPass.
...
llvm-svn: 1699
2002-02-04 20:00:08 +00:00
Chris Lattner
5726b834cd
Instruction scheduling is a real pass now.
...
llvm-svn: 1698
2002-02-04 19:59:22 +00:00
Chris Lattner
8a76e0e37e
Remove Obsolete LoopDepthCalculator. All users should use LoopInfo directly.
...
llvm-svn: 1697
2002-02-04 17:49:01 +00:00
Chris Lattner
faeb3c85f9
Remvoe big hack that was used by the register allocator
...
llvm-svn: 1692
2002-02-04 17:38:03 +00:00
Chris Lattner
0c04c60975
eliminate the add and remove methods, clients must use insert and erase directly.
...
llvm-svn: 1686
2002-02-04 16:33:18 +00:00
Chris Lattner
140f09f8cc
Remove tons of include pollution
...
Remove frivolous const's
Make use of the -> operator
llvm-svn: 1685
2002-02-04 16:32:40 +00:00
Chris Lattner
c6d2d0f12e
Use generic pointer hashes instead of custom ones.
...
llvm-svn: 1684
2002-02-04 16:31:42 +00:00
Chris Lattner
8bfb48c8d3
Convert RegisterAllocator interface to opaque pass type, so that users do not
...
need to know _anything_ about RegAlloc to use it. Well in the end maybe.
llvm-svn: 1681
2002-02-04 15:54:09 +00:00
Chris Lattner
4f37a90fda
Eliminate ModuleAnalyzer. It's old code that is not going to be used in the near future
...
llvm-svn: 1679
2002-02-04 06:47:17 +00:00
Chris Lattner
65e91cf86a
* Minor cleanups
...
* Reduce number of #includes
* Delete blank lines at end of files
* Remove blatently misleading qualifiers (how do you have an inlined pure virtual function?)
* Remove unnecesary & ignored qualifiers (const int argument vs int argument)
* Remove LARGE chunks of "inline" code out to .cpp file
* s/unsigned int/unsigned/
llvm-svn: 1673
2002-02-04 05:55:10 +00:00
Chris Lattner
009faad8e4
* Minor cleanups
...
* Reduce number of #includes, sometimes drastically (LiveRangeInfo.h lost _7_)
* Move instrIsFeasible() from InstrScheduling.h to SchedPriorities.h
* Delete blank lines at end of files
llvm-svn: 1672
2002-02-04 05:52:08 +00:00
Chris Lattner
45cdd0fb0c
* Move command line parsing debug stuff to InstrScheduling internal header file
...
SchedPriorities.h
llvm-svn: 1669
2002-02-04 02:44:20 +00:00
Chris Lattner
9a8ff2595a
Split RegisterAllocation stuff OUT of Sparc.cpp into a well defined pass
...
that has a very minimal interface (like it should have).
llvm-svn: 1667
2002-02-04 00:33:08 +00:00
Chris Lattner
41ef705b10
Revamp compilation to be pass based instead of being monolithic so that
...
backend's can customize compilation as much as they want
llvm-svn: 1661
2002-02-03 23:40:22 +00:00
Chris Lattner
e1289c8b71
Code pulled out of MAchineInstr.(h|cpp)
...
llvm-svn: 1660
2002-02-03 07:54:50 +00:00
Chris Lattner
703fff6f92
Add methods to TargetMachine to:
...
* Output assembly code a method at a time instead of building it all up then emitting it as a whole module
* Release memory contained in various annotations.
llvm-svn: 1641
2002-02-03 07:24:05 +00:00
Chris Lattner
3284ca6af7
* Trim #includes
...
llvm-svn: 1640
2002-02-03 07:20:47 +00:00
Chris Lattner
71af76aa1d
Remove #include
...
move typedefs here
llvm-svn: 1639
2002-02-03 07:17:37 +00:00
Chris Lattner
4fe48ea510
Remove extranous #include
...
llvm-svn: 1638
2002-02-03 07:15:36 +00:00
Chris Lattner
4ea2b76dee
* Prune many #includes
...
* Remove MachineCodeForVMInstr -> MachineCodeForInstruction.h
* Remove MachineCodeForMethod -> MachineCodeForMethod.h
llvm-svn: 1636
2002-02-03 07:11:59 +00:00
Chris Lattner
e2680a01fd
* Remove TMP_INSTRUCTION_OPCODE silliness
...
* Fix TmpInstruction copy ctor to not read uninitialized memory
* Fix TmpInstruction copy ctor to not copy 2 operands if there is only one
* Inline Initialize method into ctors
llvm-svn: 1635
2002-02-03 07:07:16 +00:00
Chris Lattner
c98336111d
Remove extraneous #includes
...
llvm-svn: 1634
2002-02-03 07:03:13 +00:00
Chris Lattner
fcc2cfec1f
* Inline destructor
...
* Remove MachineCodeForVMInstr support (it's now an annotation)
* Remove dropAllReferences override (just use User's)
llvm-svn: 1633
2002-02-03 06:58:15 +00:00
Chris Lattner
bece6a3041
Remove extraneous #include
...
llvm-svn: 1632
2002-02-03 06:27:39 +00:00
Chris Lattner
10c2ca5cd3
Add constructor for addition to opt program
...
llvm-svn: 1626
2002-02-01 04:53:15 +00:00
Chris Lattner
a494a4981d
Free memory when not in use
...
llvm-svn: 1618
2002-01-31 18:32:49 +00:00
Chris Lattner
71e41586ae
* Make debugging output nicer
...
* Implement pass memory freeing after the pass is unused
* Expose PassManager typedef in Pass.h instead of PassManager.h
llvm-svn: 1617
2002-01-31 18:32:27 +00:00
Chris Lattner
0d3eaa9575
Eliminate SimplifyCFG.h file, pull everything into the UnifyMethodExitNodes class
...
llvm-svn: 1613
2002-01-31 01:12:06 +00:00
Chris Lattner
b678885f4c
Remove this file. Folded into UnifyMethodExitNodes pass
...
llvm-svn: 1612
2002-01-31 01:02:32 +00:00
Chris Lattner
5c1e4c976e
Implement LoopDepth calculation in terms of dominators instead of intervals
...
llvm-svn: 1600
2002-01-31 00:41:01 +00:00
Chris Lattner
9d726159c1
Convert xforms over to use new pass structure
...
llvm-svn: 1596
2002-01-30 23:29:35 +00:00
Chris Lattner
3ce0567bac
Convert analyses over to new Pass framework
...
llvm-svn: 1595
2002-01-30 23:27:55 +00:00
Chris Lattner
3c0dcb01d4
Checkin new pass framework. This one is more useful and automatically
...
creates analysis results for passes that need them. MethodPass's never
have to worry about being invoked on external methods.
llvm-svn: 1594
2002-01-30 23:20:39 +00:00
Chris Lattner
ae0661dc6c
Don't die on call instructions, which reference methods
...
llvm-svn: 1593
2002-01-30 23:00:41 +00:00
Chris Lattner
0fea9f487b
Remove opt namespace
...
llvm-svn: 1587
2002-01-26 22:47:07 +00:00
Chris Lattner
5f1367a247
* Expose new pass DeadInstElimination
...
* Add comments that describe the differences between the DCE passes
llvm-svn: 1553
2002-01-23 05:47:35 +00:00
Chris Lattner
5fa48b460c
Pull run() into Pass.cpp
...
llvm-svn: 1552
2002-01-23 05:46:22 +00:00
Chris Lattner
83056c99ec
Pull RaiseAllocations stuff out of the CleanGCC pass into it's own pass in
...
the ChangeAllocations.h header file.
llvm-svn: 1522
2002-01-22 00:13:51 +00:00
Chris Lattner
250d937680
LowerAllocations is really a BasicBlock pass. Make it so.
...
llvm-svn: 1521
2002-01-21 23:34:02 +00:00
Chris Lattner
4454cdc5c0
Move stuff out of the Optimizations directories into the appropriate Transforms
...
directories. Eliminate the opt namespace.
llvm-svn: 1520
2002-01-21 23:17:48 +00:00
Chris Lattner
0834da8b1f
Fix for problem that caused both HUGE and INVALID latencies to be negative
...
llvm-svn: 1513
2002-01-21 22:42:49 +00:00
Chris Lattner
6fd0215a8b
Include all header files individually instead of this one
...
llvm-svn: 1512
2002-01-21 21:45:44 +00:00
Chris Lattner
c00c670e5f
Pull stuff out of opt namespace
...
llvm-svn: 1511
2002-01-21 21:44:38 +00:00
Chris Lattner
4be3babdba
Moved header
...
llvm-svn: 1509
2002-01-21 07:41:55 +00:00
Chris Lattner
2521ae1011
Implement a more powerful, simpler, pass system. This pass system can figure
...
out how to run a collection of passes optimially given their behaviors and
charactaristics.
Convert code to use it.
llvm-svn: 1507
2002-01-21 07:31:50 +00:00
Chris Lattner
e4f3ba8d4c
Implement a more powerful, simpler, pass system. This pass system can figure
...
out how to run a collection of passes optimially given their behaviors and
charactaristics.
llvm-svn: 1506
2002-01-21 07:31:00 +00:00
Chris Lattner
3dc9a2a61f
Changes to build successfully with GCC 3.02
...
llvm-svn: 1503
2002-01-20 22:54:45 +00:00
Ruchira Sasanka
4b78c45328
Added more comments
...
llvm-svn: 1495
2002-01-07 19:57:37 +00:00
Ruchira Sasanka
0b15dd8a88
MachineRegInfo: Added a method to get the size of a register pushed on to stack.
...
llvm-svn: 1492
2002-01-07 19:17:41 +00:00
Ruchira Sasanka
3d5efa3be1
Added comments, destructors where necessary.
...
llvm-svn: 1491
2002-01-07 19:16:26 +00:00
Vikram S. Adve
b61dccd269
Eliminate function getIndicesBROKEN().
...
llvm-svn: 1486
2001-12-15 00:37:12 +00:00
Vikram S. Adve
0607fbbf01
Eliminate all uses of memInst->getIndicesBROKEN().
...
llvm-svn: 1485
2001-12-15 00:36:32 +00:00
Vikram S. Adve
1d755bccee
getIndexedOffset() shd take vector of Values, not of Constants!
...
llvm-svn: 1484
2001-12-15 00:35:48 +00:00
Chris Lattner
882bc0e5ab
Initial checkin of instcombine
...
llvm-svn: 1479
2001-12-14 16:52:09 +00:00
Chris Lattner
df8324304d
Refactor trace values to work as a proper pass. Before it used to add
...
methods while the pass was running which was a no no. Now it adds the
printf method at pass initialization
llvm-svn: 1456
2001-12-14 16:23:53 +00:00
Chris Lattner
44cede05ee
* Remove support for unsized arrays.
...
* Free instruction does not accept a name
* MemAccessInst can now be used with cast/isa/dyn_cast/...
llvm-svn: 1455
2001-12-14 16:22:56 +00:00
Chris Lattner
b2e8f44166
PointerType and ArrayType now subclass Sequential type, which contains addressability logic for indexing. Unsized arrays have been removed.
...
llvm-svn: 1454
2001-12-14 16:20:21 +00:00
Chris Lattner
9a7dd44f2c
Swap operands now preserves the semantics of the binary operator by changing
...
the opcode of the instruction if possible.
llvm-svn: 1444
2001-12-13 00:43:03 +00:00
Chris Lattner
9cad2a10b4
Implement some nice functions useful for looking at types
...
llvm-svn: 1442
2001-12-13 00:40:16 +00:00
Chris Lattner
fee8f19bbe
Implement proper iterator tags
...
llvm-svn: 1441
2001-12-13 00:39:49 +00:00
Chris Lattner
b2e2570645
Subclasses can change the opcode of an instruction
...
llvm-svn: 1440
2001-12-13 00:39:33 +00:00
Chris Lattner
c717d96290
Constants KNOW they are of a derived type
...
llvm-svn: 1439
2001-12-13 00:38:57 +00:00
Ruchira Sasanka
9d26f00cfb
Added comments are more documentation info
...
llvm-svn: 1434
2001-12-08 21:04:22 +00:00
Chris Lattner
c4a5815033
Renamed inst_const_iterator -> const_inst_iterator
...
Renamed op_const_iterator -> const_op_iterator
Renamed PointerType::getValueType() -> PointerType::getElementType()
llvm-svn: 1408
2001-12-04 00:03:30 +00:00
Chris Lattner
f6b7da2bb5
Rename ConstPoolVal -> Constant
...
Rename ConstPool* -> Constant*
Rename ConstPoolVals.h -> ConstantVals.h
llvm-svn: 1407
2001-12-03 22:26:30 +00:00
Chris Lattner
81a79684b5
Simplify induction variables pass
...
llvm-svn: 1406
2001-12-03 18:05:13 +00:00
Chris Lattner
bcf2df7058
Split the PHINode class out from the iOther.h file into the iPHINode.h file
...
llvm-svn: 1405
2001-12-03 18:02:31 +00:00
Chris Lattner
a302c202ab
Induction variables must be phi nodes
...
llvm-svn: 1402
2001-12-03 17:27:42 +00:00
Chris Lattner
f90b19a71c
Move support directory
...
llvm-svn: 1401
2001-11-29 16:32:16 +00:00
Chris Lattner
463cc31132
Create a new #include "Support/..." directory structure to move things
...
from "llvm/Support/..." that are not llvm dependant.
Move files and fix #includes
llvm-svn: 1400
2001-11-27 00:03:19 +00:00
Chris Lattner
cead7793a7
Move DataTypes.h from llvm/Support to just Support
...
llvm-svn: 1399
2001-11-26 23:04:08 +00:00
Chris Lattner
66dc044ef5
Remove unused method
...
llvm-svn: 1368
2001-11-26 18:50:26 +00:00
Chris Lattner
f02cda6862
Expose constant prop of an instruction
...
llvm-svn: 1367
2001-11-26 18:50:11 +00:00
Chris Lattner
87bffac69b
Fix field initialization order problem
...
llvm-svn: 1366
2001-11-26 18:49:54 +00:00
Chris Lattner
147acfd1bd
Allow output of manipulators for GCC 2.96 compatibility
...
llvm-svn: 1365
2001-11-26 18:49:33 +00:00
Chris Lattner
3d0b96e43c
Add writer support for call graph nodes and loops and induction variables
...
llvm-svn: 1364
2001-11-26 18:47:46 +00:00
Chris Lattner
9354ac4d83
Implement an entry node for the call graph
...
llvm-svn: 1363
2001-11-26 18:47:11 +00:00
Chris Lattner
4fe18a5b58
Implement "internal vs external linkage" which corresponds to the C notion of static
...
llvm-svn: 1362
2001-11-26 18:46:40 +00:00
Chris Lattner
118f8023f8
Implement DCE of global values
...
llvm-svn: 1360
2001-11-26 18:42:17 +00:00
Chris Lattner
c969e45ded
* Implement dominator based loop identification
...
* Implement cleaner induction variable identification
llvm-svn: 1359
2001-11-26 18:41:20 +00:00
Chris Lattner
c543ead7c9
Rearrange code
...
llvm-svn: 1334
2001-11-26 16:49:49 +00:00
Chris Lattner
e7545d8bcc
Allow array indexing
...
llvm-svn: 1333
2001-11-26 16:49:12 +00:00
Chris Lattner
b911b62a2a
Be more const correct
...
llvm-svn: 1332
2001-11-26 16:48:56 +00:00
Chris Lattner
7d16637991
* Remove the indexVec stuff which gets out of sync with the operands of the
...
instruction.
* Change the indices to take a vector of Value's instead of ConstPoolVal's
for array indexing
* Add new idx_ iterator support for iterating over indices
llvm-svn: 1331
2001-11-26 16:48:41 +00:00
Chris Lattner
9d1784afff
New Method isLosslesslyConvertableTo
...
llvm-svn: 1330
2001-11-26 16:47:10 +00:00
Chris Lattner
92dbc49699
Add new CompositeType shared baseclass of ArrayType and StructType
...
llvm-svn: 1329
2001-11-26 16:46:45 +00:00
Chris Lattner
eb41b2e35a
Add casts
...
llvm-svn: 1328
2001-11-26 16:46:09 +00:00
Chris Lattner
fefd12e111
Fix protection probs
...
llvm-svn: 1321
2001-11-15 15:24:31 +00:00
Vikram S. Adve
ec7d69586c
Modify method AllocateLocalVar to take size argument.
...
llvm-svn: 1320
2001-11-15 15:23:02 +00:00
Vikram S. Adve
7e3b3bea63
Bug fix for Chris.
...
llvm-svn: 1316
2001-11-15 15:00:48 +00:00
Chris Lattner
e19d5b4615
-cleangcc pass now remove type names that are never referenced and type names for pointers to primitive types.
...
llvm-svn: 1312
2001-11-15 04:34:46 +00:00
Vikram S. Adve
3baa8cefc0
Add function returning which operand holds immediate constant
...
for a given opcode.
llvm-svn: 1307
2001-11-14 18:48:36 +00:00
Ruchira Sasanka
d7daf6afcd
added isPseudoInstr()
...
llvm-svn: 1302
2001-11-14 15:35:51 +00:00
Chris Lattner
4046596beb
Remove much cruft from the MemAccessInst instruction
...
llvm-svn: 1298
2001-11-14 11:27:58 +00:00
Ruchira Sasanka
50880b3791
Changed for adding Phi Elimination code
...
llvm-svn: 1266
2001-11-12 14:46:00 +00:00
Ruchira Sasanka
da9d0c48ba
Made isPhi const
...
llvm-svn: 1251
2001-11-10 20:58:58 +00:00
Chris Lattner
053906abc0
Initail checking of structure swapper
...
llvm-svn: 1248
2001-11-10 07:28:25 +00:00
Chris Lattner
ad95d27488
Initial checkin of Structure mutator
...
llvm-svn: 1245
2001-11-10 07:26:22 +00:00
Chris Lattner
13c14c20ee
Provide const version of function with the name the other will be eventually renamed to
...
llvm-svn: 1241
2001-11-10 06:48:14 +00:00
Chris Lattner
2549cbf978
Refactor some functionality to expose more useful stuff
...
llvm-svn: 1240
2001-11-10 06:47:45 +00:00
Chris Lattner
41baa6823a
New pass to figure out what types are in use by a program
...
llvm-svn: 1231
2001-11-09 05:27:10 +00:00
Vikram S. Adve
1639b0edef
Cache parameters for target machine.
...
llvm-svn: 1222
2001-11-09 02:11:25 +00:00
Vikram S. Adve
440465ad0e
Added class MachineCacheInfo.
...
Also added function to convert float to int by copying via memory.
llvm-svn: 1221
2001-11-09 02:11:03 +00:00
Chris Lattner
77d6db28d3
Remove unneeded forward decl
...
llvm-svn: 1216
2001-11-08 20:54:51 +00:00
Vikram S. Adve
8e3065c528
Add handle to object MachineFrameInfo.
...
llvm-svn: 1202
2001-11-08 05:23:45 +00:00
Vikram S. Adve
a63363151d
Include handle to TargetMachine in each Machine...Info class.
...
llvm-svn: 1201
2001-11-08 05:22:43 +00:00
Vikram S. Adve
45b91e38e5
Add method CreateCodeToCopyIntToFloat.
...
Include handle to TargetMachine in each Machine...Info object.
llvm-svn: 1200
2001-11-08 05:22:15 +00:00
Vikram S. Adve
d985dbcdd8
Machine-independent interface to target's stack frame layout parameters.
...
llvm-svn: 1190
2001-11-08 04:52:27 +00:00
Vikram S. Adve
f87d137720
Use different op labels for bitwise logical operations and boolean logical
...
operations in BURG input trees.
llvm-svn: 1189
2001-11-08 04:51:39 +00:00
Vikram S. Adve
ef306158e5
Added a second constructor for and improved class TmpInstruction.
...
llvm-svn: 1188
2001-11-08 04:50:33 +00:00
Vikram S. Adve
2cdcbfb6e0
Major overhaul of stack frame management.
...
llvm-svn: 1185
2001-11-08 04:47:06 +00:00
Vikram S. Adve
8b33c2304f
Old file which was moved to include/llvm/Target some time back.
...
llvm-svn: 1184
2001-11-08 04:46:08 +00:00
Vikram S. Adve
848709f127
Removed MachineCodeForMethod object and made it an annotation.
...
llvm-svn: 1183
2001-11-08 04:38:58 +00:00
Chris Lattner
15b45d9783
Initial checkin of pointer safety checker
...
llvm-svn: 1181
2001-11-07 21:16:12 +00:00
Chris Lattner
ec5014e800
Okay, so this is a huge hack. Fixme later
...
llvm-svn: 1171
2001-11-07 05:31:53 +00:00
Chris Lattner
67ba96723c
New class to provide high performance writing.
...
llvm-svn: 1167
2001-11-07 04:20:50 +00:00
Vikram S. Adve
24fbd417a0
Make reg. numbers signed ints.
...
llvm-svn: 1137
2001-11-05 03:56:02 +00:00
Chris Lattner
ea63d43a07
Minor method rename
...
llvm-svn: 1119
2001-11-04 08:08:34 +00:00
Chris Lattner
1645e398fb
Add a helper function to PHI node
...
llvm-svn: 1113
2001-11-03 21:08:00 +00:00
Chris Lattner
b7cb076c0e
Expose method to merge identically named methods
...
llvm-svn: 1109
2001-11-03 19:49:54 +00:00
Ruchira Sasanka
cb3cfedff4
Moved InsertCallerSaveInstr to the SparcRegInfo.cpp and made machine independent
...
llvm-svn: 1107
2001-11-03 17:14:13 +00:00
Chris Lattner
d61e4631f5
Fix major bugs in type resolution
...
llvm-svn: 1092
2001-11-03 03:27:53 +00:00
Chris Lattner
dec971b881
Fix the linker. This bug was not fun to track down. grr
...
llvm-svn: 1090
2001-11-03 03:26:47 +00:00
Chris Lattner
d8c8439517
Print floating point numbers in expodential form so that small numbers don't get truncated, which broke the health benchmark
...
llvm-svn: 1086
2001-11-01 22:06:00 +00:00
Chris Lattner
aa5e794aaa
Expose the low level DCE mechanism to external users
...
llvm-svn: 1082
2001-11-01 07:00:21 +00:00
Chris Lattner
1942341fd4
Implement constant propogation of null pointer values.
...
llvm-svn: 1078
2001-11-01 05:55:13 +00:00
Chris Lattner
ddb95263c8
Add simpler to use ctors. Add getType() overload to specialize getelementptr's type
...
llvm-svn: 1077
2001-11-01 05:54:28 +00:00
Chris Lattner
13475b1a77
Add new isNullValue method
...
llvm-svn: 1076
2001-11-01 05:53:56 +00:00
Chris Lattner
4e4759adc0
Initial checkin of level raising code
...
llvm-svn: 1073
2001-11-01 02:41:52 +00:00
Chris Lattner
3fd0124447
Move level change xfor into the transforms directory
...
llvm-svn: 1070
2001-11-01 02:39:49 +00:00
Chris Lattner
9c5be3af9d
Add some useful accessors
...
llvm-svn: 1069
2001-11-01 02:39:36 +00:00
Chris Lattner
009d9de81c
Implement code to convert %malloc and %free FUNCTION CALLS into the instruction equivalent
...
llvm-svn: 1065
2001-10-31 06:35:59 +00:00
Chris Lattner
91fc057638
Implemented constant propogation of cast instructions
...
llvm-svn: 1064
2001-10-31 05:07:57 +00:00