Chris Lattner
60a6591d83
Method.h no longer includes BasicBlock.h
...
Method::inst_* is now in llvm/Support/InstIterator.h
GraphTraits specializations for BasicBlock and Methods are now in llvm/Support/CFG.h
llvm-svn: 1746
2002-02-12 21:07:25 +00:00
Chris Lattner
774cbceb0b
Write llvm bytecode to output .s file as last step of LLC.
...
llvm-svn: 1728
2002-02-11 22:35:46 +00:00
Chris Lattner
74ed5cf1e6
Fix build error
...
llvm-svn: 1722
2002-02-11 17:11:43 +00:00
Chris Lattner
ea13e0afa0
Convert operand iterator over to work like an STL iterator
...
llvm-svn: 1720
2002-02-05 06:02:59 +00:00
Chris Lattner
7e5ee4253c
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
d30f989cda
* Code Cleanups
...
* Removal dependencies on Type.h & remove uses of getTypeID()
llvm-svn: 1718
2002-02-05 03:52:29 +00:00
Chris Lattner
b0af9cdbda
* 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.
* Eliminate some irrelevant const's
llvm-svn: 1712
2002-02-05 02:52:05 +00:00
Chris Lattner
30e8fb69c5
* 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
1cb37628d9
The interface to instruction scheduling is now just a call to get the pass.
...
llvm-svn: 1702
2002-02-04 20:03:43 +00:00
Chris Lattner
e6b511dc0a
* ValueSet interface converted from add/remove to insert/erase
...
llvm-svn: 1690
2002-02-04 16:37:09 +00:00
Chris Lattner
f48173a875
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
13b2227ccc
EmitAssembly doesn't need an UltraSparc, it can do with any TargetMachine
...
llvm-svn: 1680
2002-02-04 15:53:23 +00:00
Chris Lattner
5216cc55f7
* Minor cleanups
...
* Reduce number of #includes
* Remove blatently misleading qualifiers (how do you have an inlined pure virtual function?)
* Remove unnecesary & ignored qualifiers (const int argument vs int argument)
* SparcInternals.h now no longer #includes RegClass.h or SparcRegClassInfo.h
* Pull inlined functions out of .h file if they are virtual and interfere with dependencies
llvm-svn: 1677
2002-02-04 05:59:25 +00:00
Chris Lattner
a3403539e1
SparcRegInfo does NOT need anything about instruction scheduling.
...
llvm-svn: 1670
2002-02-04 02:44:38 +00:00
Chris Lattner
e769482fd3
Pull all of the scheduling related stuff out of Sparc.cpp into it's own file
...
llvm-svn: 1668
2002-02-04 00:39:14 +00:00
Chris Lattner
36aa542ef0
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
64593c51bb
Move a ton of tables out of SparcInternals.h and move them to Sparc.cpp.
...
Eventually they will probably get moved again, but at least now they aren't
having to be compiled by 7 different .cpp files...
llvm-svn: 1666
2002-02-04 00:04:35 +00:00
Chris Lattner
38aa77b911
Convert sparc backend over to use pass based compilation structure.
...
Try to decouple stuff as much as possible.
llvm-svn: 1664
2002-02-03 23:42:19 +00:00
Chris Lattner
84fa1e7801
Convert sparc backend over to use pass based compilation structure.
...
Convert some stages into passes in preparation for more splitting up.
Try to decouple stuff as much as possible.
llvm-svn: 1663
2002-02-03 23:41:51 +00:00
Chris Lattner
d682045227
Convert assembly emission over to a two pass approach.
...
llvm-svn: 1662
2002-02-03 23:41:08 +00:00
Chris Lattner
029af0b37f
Add a file level comment
...
Remove #includes
llvm-svn: 1657
2002-02-03 07:52:04 +00:00
Chris Lattner
92a49c5cae
Implement new method by method assembly output & memory releasing
...
llvm-svn: 1656
2002-02-03 07:51:17 +00:00
Chris Lattner
477923d0d4
* Switch to new TmpInstruction model
...
* Switch to new MachineCodeForInstruction model
llvm-svn: 1655
2002-02-03 07:50:56 +00:00
Chris Lattner
f08669fcbc
* Switch to new TmpInstruction model
...
llvm-svn: 1654
2002-02-03 07:49:49 +00:00
Chris Lattner
0752167009
* Swithc to new MachineCodeForInstruction model
...
* Implement memory freeing for instruction temporaries
llvm-svn: 1653
2002-02-03 07:49:15 +00:00
Chris Lattner
e772d28862
* prune #includes
...
* Implement permethod output of machine code to assembly
llvm-svn: 1652
2002-02-03 07:48:06 +00:00
Chris Lattner
61c6aeb6fe
Remove dead variable.
...
llvm-svn: 1514
2002-01-21 22:44:57 +00:00
Chris Lattner
7f74a56e24
Changes to build successfully with GCC 3.02
...
llvm-svn: 1503
2002-01-20 22:54:45 +00:00
Ruchira Sasanka
f4c2dddcda
Added more comments
...
llvm-svn: 1498
2002-01-07 21:03:42 +00:00
Ruchira Sasanka
c07341f999
removed SizeOfStackOperand constant from the SparcRegInfo class - no longer used
...
by code.
llvm-svn: 1497
2002-01-07 20:33:44 +00:00
Ruchira Sasanka
57386b570f
Added more comments
...
llvm-svn: 1496
2002-01-07 20:28:49 +00:00
Ruchira Sasanka
4cfbfd599a
Added comments and correct logic for finding register sizes.
...
llvm-svn: 1494
2002-01-07 19:20:28 +00:00
Vikram S. Adve
cb2335f13f
Eliminate all uses of memInst->getIndicesBROKEN().
...
llvm-svn: 1485
2001-12-15 00:36:32 +00:00
Vikram S. Adve
8234b04143
Remove int hack to allow unsigned numbers greater than 2^63 - 1...
...
llvm-svn: 1483
2001-12-15 00:33:36 +00:00
Chris Lattner
7dc20864b6
Allow pointer indexing
...
llvm-svn: 1462
2001-12-14 16:31:26 +00:00
Chris Lattner
b2b1b3d036
Remove unsized array support
...
llvm-svn: 1461
2001-12-14 16:30:51 +00:00
Chris Lattner
2413b160ec
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
3462ae3ad7
Rename ConstPoolVal -> Constant
...
Rename ConstPool* -> Constant*
Rename ConstPoolVals.h -> ConstantVals.h
llvm-svn: 1407
2001-12-03 22:26:30 +00:00
Chris Lattner
5de2204fe8
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
63b52693c8
The old getIndices has been deprecated, because it no longer works. It now
...
is named getIndicesBROKEN() and shall be removed when the codebase is updated
to not call it
llvm-svn: 1338
2001-11-26 16:56:19 +00:00
Ruchira Sasanka
edbf52c7f9
commented out popAllTempValues since it leads to a bug - see code
...
llvm-svn: 1327
2001-11-15 22:03:04 +00:00
Ruchira Sasanka
c97ccc5cb5
changed since names of some methods in PhyRegAlloc changed
...
llvm-svn: 1324
2001-11-15 20:25:07 +00:00
Vikram S. Adve
5c8f573bbf
Fix use of AllocateLocalVar for alloca instruction!
...
llvm-svn: 1319
2001-11-15 15:22:39 +00:00
Vikram S. Adve
821b129755
Fix int->float conversion.
...
llvm-svn: 1314
2001-11-15 14:59:56 +00:00
Vikram S. Adve
7e833073e3
Add function returning which operand holds immediate constant
...
for a given opcode.
llvm-svn: 1307
2001-11-14 18:48:36 +00:00
Vikram S. Adve
ea1a93b95d
Change latency of SETX to improve schedule -- just a hack.
...
llvm-svn: 1304
2001-11-14 15:54:44 +00:00
Ruchira Sasanka
b8be6f6856
Added M_PSEUDO_FLAG for SETX .. instr
...
llvm-svn: 1301
2001-11-14 15:35:13 +00:00
Chris Lattner
1237e86597
Remove much cruft from the MemAccessInst instruction
...
llvm-svn: 1298
2001-11-14 11:27:58 +00:00
Ruchira Sasanka
1a9a7f2ef1
Changed checking for invalid register number - earlier it was uisng a contant
...
llvm-svn: 1293
2001-11-13 23:08:19 +00:00
Vikram S. Adve
6e9422e14c
When allocating space on stack for writing a register,
...
use the size of the register, not the size of the Value type,
to get the right alignment.
llvm-svn: 1284
2001-11-12 23:26:35 +00:00