Chris Lattner 
							
						 
					 
					
						
						
							
						
						69244300b8 
					 
					
						
						
							
							Rename MachineInstr::getInstrDescriptor -> getDesc(), which reflects  
						
						... 
						
						
						
						that it is cheap and efficient to get.
Move a variety of predicates from TargetInstrInfo into 
TargetInstrDescriptor, which makes it much easier to query a predicate
when you don't have TII around.  Now you can use MI->getDesc()->isBranch()
instead of going through TII, and this is much more efficient anyway. Not
all of the predicates have been moved over yet.
Update old code that used MI->getInstrDescriptor()->Flags to use the
new predicates in many places.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45674  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-01-07 01:56:04 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						d5da7048c2 
					 
					
						
						
							
							Add that this preserves some analyses.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45573  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-01-04 08:48:49 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						cc8f603f53 
					 
					
						
						
							
							Move option to enable machine LICM into LLVMTargetMachine.cpp.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45572  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-01-04 08:11:03 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						b082c6f5d9 
					 
					
						
						
							
							Call the parent's getAnalysisUsage.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45571  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-01-04 07:50:05 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ac69582664 
					 
					
						
						
							
							remove dead #includes and reorder the rest.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45569  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-01-04 06:41:45 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						dde059a9de 
					 
					
						
						
							
							Use the correct MachineRegisterInfo object.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45499  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-01-02 21:10:54 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						a4b662272d 
					 
					
						
						
							
							Remove dead code.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45496  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-01-02 20:47:37 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						9258cd3994 
					 
					
						
						
							
							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).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45492  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-01-02 19:32:43 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4ee451de36 
					 
					
						
						
							
							Remove attribution from file headers, per discussion on llvmdev.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45418  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-12-29 20:36:04 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						60ff1a3005 
					 
					
						
						
							
							Updated comments to reflect what "side effects" means in this situation.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45245  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-12-20 01:08:10 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						280f4565eb 
					 
					
						
						
							
							Add debugging info. Use the newly created "hasUnmodelledSideEffects" method.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45178  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-12-18 21:38:04 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						efe2be7976 
					 
					
						
						
							
							Need to grow the indexed map. Added debug statements.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44892  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-12-11 23:27:51 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						a17ad59e13 
					 
					
						
						
							
							Simplify slightly.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44881  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-12-11 22:22:22 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						12ebf14048 
					 
					
						
						
							
							Blark! How in the world did this work without this?!  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44874  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-12-11 19:40:06 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						28bd5f0e47 
					 
					
						
						
							
							- Update the virtual reg to machine instruction map when hoisting.  
						
						... 
						
						
						
						- Fix subtle bug when creating initially creating this map.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44873  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-12-11 19:17:04 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						650b0527a4 
					 
					
						
						
							
							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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44871  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-12-11 18:45:11 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						041b3f8356 
					 
					
						
						
							
							Reverting 44702. It wasn't correct to rename them.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44727  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-12-08 23:58:46 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						320c630c1b 
					 
					
						
						
							
							Renaming:  
						
						... 
						
						
						
						isTriviallyReMaterializable -> hasNoSideEffects
  isReallyTriviallyReMaterializable -> isTriviallyReMaterializable
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44702  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-12-08 07:17:56 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						b48519cbad 
					 
					
						
						
							
							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 
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44696  91177308-0d34-0410-b5e6-96231b3b80d8 
					
						2007-12-08 01:47:01 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						0f940c95d4 
					 
					
						
						
							
							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...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44687  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-12-07 21:42:31 +00:00