Chris Lattner
674e29ccde
New file
...
llvm-svn: 18029
2004-11-20 03:05:50 +00:00
Chris Lattner
6e17c0f19e
Remove dead #include
...
llvm-svn: 18027
2004-11-20 02:17:03 +00:00
Chris Lattner
f9b6c00d88
External symbols are const char*'s now, change this to match.
...
llvm-svn: 18008
2004-11-19 20:56:22 +00:00
Chris Lattner
2a37cb2ef9
Instead of storing std::string's for ExternalSymbol references, rely on the
...
fact that all ExternalSymbols are actually string literals with static storage.
Thus we don't have to do anything special to hold them and we certainly don't
have to copy string data around.
llvm-svn: 18007
2004-11-19 20:46:15 +00:00
Chris Lattner
dd0094e4ed
Convert 'struct' to 'class' in various places to adhere to the coding standards
...
and work better with VC++. Patch contributed by Morten Ofstad!
llvm-svn: 17281
2004-10-27 16:14:51 +00:00
Chris Lattner
fabd2aa5b5
Remove the unused MachineBasicBlock2IndexFunctor class.
...
Move method bodies that depend on <algorithm> out of line to
MachineBasicBlock.cpp. Patch contributed by Morten Ofstad!
llvm-svn: 17252
2004-10-26 15:41:13 +00:00
Chris Lattner
9f1c4d5b67
Fix miscompilations in the SparcV9 backend that were induced by this patch:
...
http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20041011/019311.html
llvm-svn: 17130
2004-10-18 17:19:20 +00:00
Chris Lattner
65976f4178
Allow machine operands to represent global variables with offsets. This is
...
useful when you have a reference like:
int A[100];
void foo() { A[10] = 1; }
In this case, &A[10] is a single constant and should be treated as such.
Only MO_GlobalAddress and MO_ExternalSymbol are allowed to use this field, no
other operand type is.
This is another fine patch contributed by Jeff Cohen!!
llvm-svn: 17007
2004-10-15 04:38:41 +00:00
Misha Brukman
e20eb48c53
Convert tabs to spaces
...
llvm-svn: 16988
2004-10-14 18:47:56 +00:00
Alkis Evlogimenos
bbc01f13fc
Add const version of getLastBlock() member function.
...
llvm-svn: 16625
2004-09-30 21:42:02 +00:00
Alkis Evlogimenos
adea49eec0
Use class instead of struct for defining classes. This unbreaks the
...
build on windows. Patch contributed by Paolo Invernizzi!
llvm-svn: 16531
2004-09-28 01:59:17 +00:00
Reid Spencer
c4abcbefb1
Changes For Bug 352
...
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.
llvm-svn: 16137
2004-09-01 22:55:40 +00:00
Alkis Evlogimenos
003c38c6dd
Add getLastBlock member. This is useful when growing a densemap keyed
...
on MachineBasicBlocks.
llvm-svn: 16069
2004-08-27 04:02:35 +00:00
Alkis Evlogimenos
877fe7d13c
Add MachineBasicBlock2IndexFunctor. This is useful for densemaps from
...
MachineBasicBlocks to an arbitrary type.
llvm-svn: 16068
2004-08-27 04:00:26 +00:00
Alkis Evlogimenos
03913413da
Use newly added API in MRegisterInfo and don't expose the allocatable
...
register set anymore. Its users now use the MRegisterInfo API.
llvm-svn: 16061
2004-08-26 22:23:32 +00:00
Chris Lattner
4987b24267
All targets are now allowed to have their own MachineFunctionInfo objects,
...
also, make getInfo do some checking and cast to the appropriate concrete type.
llvm-svn: 15903
2004-08-18 18:13:16 +00:00
Chris Lattner
17411aae8b
Alkis pointed out that this is not a character (we actually support strings)
...
and as such, we should use self revealing names. Hey, makes sense to me!
llvm-svn: 15896
2004-08-18 02:22:34 +00:00
Chris Lattner
34334091d5
new method
...
llvm-svn: 15895
2004-08-17 21:38:51 +00:00
Chris Lattner
659175521b
Add support for alignment
...
llvm-svn: 15888
2004-08-17 19:14:29 +00:00
Misha Brukman
d89d44e7ec
Ultra-doxygenify some function header comments.
...
llvm-svn: 15884
2004-08-17 17:52:36 +00:00
Chris Lattner
05683db298
Allow targets to specify a comment character
...
llvm-svn: 15879
2004-08-17 16:26:36 +00:00
Chris Lattner
1c87acdfa8
Add missing \t
...
llvm-svn: 15871
2004-08-17 06:48:34 +00:00
Chris Lattner
0b1a8c9b57
Add some hooks
...
llvm-svn: 15867
2004-08-17 06:36:27 +00:00
Chris Lattner
1362ba130b
We now allow targets to use any prefix they want for global symbols. Lets
...
hear it for ".".
llvm-svn: 15863
2004-08-17 06:06:19 +00:00
Chris Lattner
5420524642
Some asmweriters want an _ prefix
...
llvm-svn: 15844
2004-08-17 02:28:12 +00:00
Chris Lattner
aac51aa3d8
Initial implementation of the asmprinter base class
...
llvm-svn: 15838
2004-08-16 23:15:22 +00:00
Chris Lattner
195a408814
Fit into 80 lines, add a gross hack for MachineFunctionInfo
...
llvm-svn: 15832
2004-08-16 22:35:26 +00:00
Chris Lattner
e6de0fa4a8
These files now live in lib/Target/SparcV9
...
llvm-svn: 15831
2004-08-16 21:56:15 +00:00
Chris Lattner
f0e1b33f6c
Remove helper method
...
llvm-svn: 15776
2004-08-15 22:02:36 +00:00
Brian Gaeke
464b5b8f1a
These headers have been moved/merged into other files.
...
llvm-svn: 15477
2004-08-04 07:37:56 +00:00
Chris Lattner
ab1daf9f8a
New pass
...
llvm-svn: 15367
2004-07-31 09:59:14 +00:00
Chris Lattner
0829da11d7
Expose some helpful methods
...
llvm-svn: 15366
2004-07-31 09:59:04 +00:00
Chris Lattner
6f4beb3664
Add some machine CFG related stuff
...
llvm-svn: 15352
2004-07-31 01:59:11 +00:00
Alkis Evlogimenos
b5f60641f4
Add Iterative scan register allocator.
...
llvm-svn: 15068
2004-07-21 08:24:35 +00:00
Chris Lattner
58a6310e16
Fix comment
...
llvm-svn: 15002
2004-07-19 13:28:39 +00:00
Chris Lattner
773c66b02c
Delete 4 methods, make clients use hte mark* methods directly
...
llvm-svn: 14999
2004-07-19 07:52:25 +00:00
Chris Lattner
22728e2f27
There is no need to store the MBB along with the MI any more, we can now
...
ask instructions for their parent.
llvm-svn: 14998
2004-07-19 07:04:55 +00:00
Chris Lattner
6c34920110
Simplify the interface to LiveVariables::addVirtualRegister(Killed|Dead)
...
llvm-svn: 14997
2004-07-19 06:55:21 +00:00
Chris Lattner
53fa752649
Remove the DefBlock element of VarInfo. DefBlock is always DefInst->getParent()
...
llvm-svn: 14996
2004-07-19 06:26:50 +00:00
Alkis Evlogimenos
e7e19f771f
Add viewCFG() and viewCFGOnly() APIs.
...
llvm-svn: 14679
2004-07-08 00:47:58 +00:00
Chris Lattner
c71f8fcb8e
Add a new pass for code generators to use
...
llvm-svn: 14562
2004-07-02 05:44:13 +00:00
Chris Lattner
08fb05fe14
Now that we have happy mappings from MBBs->numbers, use them instead of keeping
...
a LV private map
llvm-svn: 14522
2004-07-01 06:14:57 +00:00
Chris Lattner
d9411df2c0
Change the implementation of the autonumbering for MBB's a bit to provide
...
the reverse mapping as well as the mapping from MBB->unsigned
llvm-svn: 14519
2004-07-01 06:01:36 +00:00
Chris Lattner
b6b8d6e242
This class is no longer an annotation
...
llvm-svn: 14437
2004-06-27 18:50:49 +00:00
Chris Lattner
642e65c537
Add a map of MachineCodeForInstruction objects to MachineFunctionInfo
...
llvm-svn: 14436
2004-06-27 18:50:30 +00:00
Chris Lattner
19e5c047c7
Make it obvious that this file is bad bad bad
...
llvm-svn: 14432
2004-06-27 18:21:20 +00:00
Tanya Lattner
da38dc5180
Made a fix so that you can print out MachineInstrs that belong to a MachineBasicBlock that is not yet attached to a MachineFunction. This change includes changing the third operand (TargetMachine) to a pointer for the MachineInstr::print function.
...
llvm-svn: 14389
2004-06-25 00:13:11 +00:00
Chris Lattner
9da4181217
Start moving IntrinsicLowering out of VMCore into libcodegen, as per PR346
...
llvm-svn: 14264
2004-06-20 07:40:46 +00:00
Brian Gaeke
fb83999991
Add a forwarding method pop_front() that allows you to delete instructions
...
from the beginning of a MBB.
llvm-svn: 14074
2004-06-08 18:52:47 +00:00
Brian Gaeke
4b0b12c188
Add a TmpInstruction ctor that doesn't take a MCFI.
...
llvm-svn: 14073
2004-06-08 18:52:46 +00:00