Bill Wendling
|
66470d02c3
|
Move option to enable machine LICM into LLVMTargetMachine.cpp.
llvm-svn: 45572
|
2008-01-04 08:11:03 +00:00 |
Bill Wendling
|
d865697016
|
Call the parent's getAnalysisUsage.
llvm-svn: 45571
|
2008-01-04 07:50:05 +00:00 |
Chris Lattner
|
b5c1d9b7da
|
remove dead #includes and reorder the rest.
llvm-svn: 45569
|
2008-01-04 06:41:45 +00:00 |
Bill Wendling
|
0ba4184404
|
Use the correct MachineRegisterInfo object.
llvm-svn: 45499
|
2008-01-02 21:10:54 +00:00 |
Bill Wendling
|
f0b37780ca
|
Remove dead code.
llvm-svn: 45496
|
2008-01-02 20:47:37 +00:00 |
Bill Wendling
|
5da1945cdd
|
Use the new architecture to get the containing machine basic block for a machine
instruction. Also, use "splice" to move the new instruction instead of
remove/insert (where it was leaking memory anyway).
llvm-svn: 45492
|
2008-01-02 19:32:43 +00:00 |
Chris Lattner
|
f3ebc3f3d2
|
Remove attribution from file headers, per discussion on llvmdev.
llvm-svn: 45418
|
2007-12-29 20:36:04 +00:00 |
Bill Wendling
|
65c001e6bc
|
Updated comments to reflect what "side effects" means in this situation.
llvm-svn: 45245
|
2007-12-20 01:08:10 +00:00 |
Bill Wendling
|
166f746246
|
Add debugging info. Use the newly created "hasUnmodelledSideEffects" method.
llvm-svn: 45178
|
2007-12-18 21:38:04 +00:00 |
Bill Wendling
|
38236ef6cb
|
Need to grow the indexed map. Added debug statements.
llvm-svn: 44892
|
2007-12-11 23:27:51 +00:00 |
Bill Wendling
|
642e15a7cb
|
Simplify slightly.
llvm-svn: 44881
|
2007-12-11 22:22:22 +00:00 |
Bill Wendling
|
b678ae7c38
|
Blark! How in the world did this work without this?!
llvm-svn: 44874
|
2007-12-11 19:40:06 +00:00 |
Bill Wendling
|
7717a8a37d
|
- Update the virtual reg to machine instruction map when hoisting.
- Fix subtle bug when creating initially creating this map.
llvm-svn: 44873
|
2007-12-11 19:17:04 +00:00 |
Bill Wendling
|
5143d898c8
|
Checking for "zero operands" during the "CanHoistInst()" method isn't necessary
because those with side effects will be caught by other checks in here.
Also, simplify the check for a BB in a sub loop.
llvm-svn: 44871
|
2007-12-11 18:45:11 +00:00 |
Bill Wendling
|
3f19dfe794
|
Reverting 44702. It wasn't correct to rename them.
llvm-svn: 44727
|
2007-12-08 23:58:46 +00:00 |
Bill Wendling
|
2b07d8c5a0
|
Renaming:
isTriviallyReMaterializable -> hasNoSideEffects
isReallyTriviallyReMaterializable -> isTriviallyReMaterializable
llvm-svn: 44702
|
2007-12-08 07:17:56 +00:00 |
Bill Wendling
|
4375173ba0
|
Incorporated comments from Evan and Chris:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20071203/056043.html
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20071203/056048.html
llvm-svn: 44696
|
2007-12-08 01:47:01 +00:00 |
Bill Wendling
|
fb706bc52b
|
Initial commit of the machine code LICM pass. It successfully hoists this:
_foo:
li r2, 0
LBB1_1: ; bb
li r5, 0
stw r5, 0(r3)
addi r2, r2, 1
addi r3, r3, 4
cmplw cr0, r2, r4
bne cr0, LBB1_1 ; bb
LBB1_2: ; return
blr
to:
_foo:
li r2, 0
li r5, 0
LBB1_1: ; bb
stw r5, 0(r3)
addi r2, r2, 1
addi r3, r3, 4
cmplw cr0, r2, r4
bne cr0, LBB1_1 ; bb
LBB1_2: ; return
blr
ZOMG!! :-)
Moar to come...
llvm-svn: 44687
|
2007-12-07 21:42:31 +00:00 |