Chris Lattner
|
6c1ee16321
|
State for frame and constant pool information pulled out of MachineFunction
llvm-svn: 5165
|
2002-12-28 20:07:33 +00:00 |
|
Chris Lattner
|
84cb1f5dbc
|
* Frame indices are signed
* Cluster modification methods together
llvm-svn: 5164
|
2002-12-28 20:05:44 +00:00 |
|
Chris Lattner
|
59c301a15a
|
* Pull a bunch of frame and constant pool state out into a new
MachineFunctionInfo class
* Add a new FunctionFrameInfo object
llvm-svn: 5163
|
2002-12-28 20:04:31 +00:00 |
|
Chris Lattner
|
db5cd8b071
|
Initial check in of MachineFunctionPass.h
llvm-svn: 5162
|
2002-12-28 20:03:01 +00:00 |
|
Chris Lattner
|
881ffece47
|
Simplify spill interface methods
llvm-svn: 5142
|
2002-12-25 05:02:00 +00:00 |
|
Chris Lattner
|
b44ebe2588
|
Add comment
llvm-svn: 5141
|
2002-12-25 05:01:46 +00:00 |
|
Chris Lattner
|
47e342f4bf
|
Add abstract frame index capability
llvm-svn: 5140
|
2002-12-25 05:01:18 +00:00 |
|
Chris Lattner
|
b898c53b42
|
Remove default ctor
llvm-svn: 5139
|
2002-12-25 05:01:05 +00:00 |
|
Chris Lattner
|
aea2f8e9da
|
*** empty log message ***
llvm-svn: 5138
|
2002-12-25 05:00:49 +00:00 |
|
Chris Lattner
|
a5ba3d9b3d
|
Remove dependency on SSARegMap.h
llvm-svn: 5137
|
2002-12-25 05:00:16 +00:00 |
|
Chris Lattner
|
bc5e71ef2f
|
Allow the target machines to specify endianness and pointer size
llvm-svn: 5128
|
2002-12-24 00:02:17 +00:00 |
|
Chris Lattner
|
5fe4097f52
|
Initial checkin of new LLI with JIT compiler
llvm-svn: 5126
|
2002-12-24 00:01:05 +00:00 |
|
Chris Lattner
|
2af84f79e3
|
New files for miscompilation detection
llvm-svn: 5120
|
2002-12-23 23:50:16 +00:00 |
|
Chris Lattner
|
079d149fbd
|
Simplify interface to remove virtual function references
llvm-svn: 5100
|
2002-12-17 04:20:39 +00:00 |
|
Chris Lattner
|
3b7f709ebd
|
Add support for register alias set description
llvm-svn: 5080
|
2002-12-16 16:39:14 +00:00 |
|
Chris Lattner
|
07cc730ddd
|
Export well known instruction opcodes usable by target independant passes
llvm-svn: 5063
|
2002-12-15 22:16:08 +00:00 |
|
Chris Lattner
|
7ac77c761c
|
Add new opIsUse method
llvm-svn: 5062
|
2002-12-15 22:05:02 +00:00 |
|
Chris Lattner
|
4214ac384a
|
Simplify interfaces used by regalloc to insert code
llvm-svn: 5052
|
2002-12-15 20:06:35 +00:00 |
|
Chris Lattner
|
9b1957fd1e
|
Simplify TargetRegisterClass a bit, also eliminating virtual function call
overhead
llvm-svn: 5049
|
2002-12-15 19:29:14 +00:00 |
|
Chris Lattner
|
51cf15cf12
|
* Rename const_regclass_begin/end to just regclass_begin/end
* Regclass iterators need an extra level of pointerness to work right
* Pull inverse mapping code out of target description files
llvm-svn: 5046
|
2002-12-15 18:40:01 +00:00 |
|
Chris Lattner
|
026fa9948b
|
Add capability to have a MachineBasicBlock as an operand to a MachineInstr
Add a bunch of methods to MachineOperand is* to reduce usage of MO_foo
llvm-svn: 5032
|
2002-12-15 08:01:02 +00:00 |
|
Misha Brukman
|
fb02408496
|
Added moveReg2Reg() and moveImm2Reg() to accomodate moving data around due to
PHI nodes.
llvm-svn: 5001
|
2002-12-13 09:54:12 +00:00 |
|
Chris Lattner
|
74e9df0627
|
Final version of BuildMI for symmetry and because I want to use it
llvm-svn: 5000
|
2002-12-13 09:33:06 +00:00 |
|
Chris Lattner
|
329956d9f9
|
Get rid of deprecated function
llvm-svn: 4997
|
2002-12-13 07:30:45 +00:00 |
|
Misha Brukman
|
bc60f65211
|
Define the 2-address flag used by X86 instructions (add,sub,and,or,xor) that
need to be declared as such.
llvm-svn: 4975
|
2002-12-12 23:19:51 +00:00 |
|
Chris Lattner
|
4e607715ce
|
Make a release build compile. This field is not really an enum, it's really a bitfield
llvm-svn: 4971
|
2002-12-12 05:31:26 +00:00 |
|
Misha Brukman
|
9fbca4e8ea
|
No need to specify the class if the method is within the class declaration.
llvm-svn: 4969
|
2002-12-12 05:28:39 +00:00 |
|
Chris Lattner
|
8911afb9c1
|
Fix header
llvm-svn: 4966
|
2002-12-12 03:43:30 +00:00 |
|
Vikram S. Adve
|
8ea96d8162
|
This file provides the function DemoteRegToStack(), which takes a
virtual register computed by an Instruction& X and replaces it with
a slot in the stack frame, allocated via alloca.
llvm-svn: 4963
|
2002-12-10 13:07:12 +00:00 |
|
Vikram S. Adve
|
c8ea11cf8e
|
The pass Parallelize automatically parallelizes a program using the
Cilk multi-threaded runtime system to execute parallel code. This file
exposes some routines needed for code generation for that pass.
llvm-svn: 4961
|
2002-12-10 00:42:22 +00:00 |
|
Vikram S. Adve
|
c9617fde54
|
Iterator that enumerates the ProgramDependenceGraph (PDG) for a function,
i.e., enumerates all data and control dependences for the function.
llvm-svn: 4958
|
2002-12-08 14:13:19 +00:00 |
|
Vikram S. Adve
|
90bc3110b6
|
An explicit representation of dependence graphs, and a pass that
computes a dependence graph for data dependences on memory locations
using interprocedural Mod/Ref information.
llvm-svn: 4957
|
2002-12-08 13:26:29 +00:00 |
|
Chris Lattner
|
93f7326092
|
Give better error message if two passes of the same argument are registered
llvm-svn: 4950
|
2002-12-07 04:41:22 +00:00 |
|
Vikram S. Adve
|
183ea76dc4
|
Stronger assertion in getNodeId(): node id must exist in the map.
llvm-svn: 4949
|
2002-12-06 21:19:07 +00:00 |
|
Vikram S. Adve
|
ef10713b0e
|
Added static helper method MergeNodes(). See DataStructure.cpp for more.
llvm-svn: 4946
|
2002-12-06 21:10:17 +00:00 |
|
Vikram S. Adve
|
c8e0378317
|
Bug fix in operator==() and in method fini().
llvm-svn: 4945
|
2002-12-06 15:02:22 +00:00 |
|
Chris Lattner
|
da374a0ade
|
Make sure to print indirect node again
llvm-svn: 4943
|
2002-12-06 06:40:00 +00:00 |
|
Misha Brukman
|
32ec427192
|
Added prototypes for emitting prologue and epilogue for function code
generation.
llvm-svn: 4927
|
2002-12-04 23:55:56 +00:00 |
|
Misha Brukman
|
101076f586
|
storeReg2RegOffset() and loadRegOffset2Reg() now take the iterator by value
instead of by reference, since they return the modified iterator.
llvm-svn: 4914
|
2002-12-04 17:14:13 +00:00 |
|
Misha Brukman
|
6e1c4851ea
|
Moved buildReg2RegClassMap() into from X86RegisterInfo to MRegisterInfo, since
it is target-independent.
llvm-svn: 4911
|
2002-12-04 16:47:04 +00:00 |
|
Chris Lattner
|
d0a42dbe95
|
Add support for direct global references
llvm-svn: 4905
|
2002-12-04 06:44:27 +00:00 |
|
Chris Lattner
|
aeb454c30e
|
Expose target data through a method for uniformity
llvm-svn: 4901
|
2002-12-04 05:20:12 +00:00 |
|
Misha Brukman
|
6b9cb74fdc
|
RegisterInfo now supports handing out caller- and callee-save registers, as
well as building a map from a physical register to its register class.
llvm-svn: 4896
|
2002-12-03 23:09:53 +00:00 |
|
Chris Lattner
|
af812d279c
|
Add virtual dtor, expose a debug impl
llvm-svn: 4892
|
2002-12-03 20:56:20 +00:00 |
|
Chris Lattner
|
866d635098
|
Add entries to track information about implicit uses and definitions of
the instructions
llvm-svn: 4875
|
2002-12-03 05:41:32 +00:00 |
|
Chris Lattner
|
2ebb6f1a57
|
More support
llvm-svn: 4873
|
2002-12-02 21:56:28 +00:00 |
|
Chris Lattner
|
ce514e232d
|
Start adding to the meat of MachineCodeEmitter
llvm-svn: 4869
|
2002-12-02 21:44:13 +00:00 |
|
Chris Lattner
|
54d6377268
|
Initial version of MachineCodeEmitter interface: empty
llvm-svn: 4864
|
2002-12-02 21:21:36 +00:00 |
|
Chris Lattner
|
920d619d39
|
The hopefully final version of addPassesToEmitMachineCode which does not
have any question about ownership
llvm-svn: 4863
|
2002-12-02 21:15:42 +00:00 |
|
Chris Lattner
|
b7073c8c07
|
Add comment about ownership semantics
llvm-svn: 4859
|
2002-12-02 21:13:45 +00:00 |
|