Jakob Stoklund Olesen 
							
						 
					 
					
						
						
							
						
						78e6e00922 
					 
					
						
						
							
							Remove the isMoveInstr() hook.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108567  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-07-16 22:35:46 +00:00 
						 
				 
			
				
					
						
							
							
								Jakob Stoklund Olesen 
							
						 
					 
					
						
						
							
						
						600f171486 
					 
					
						
						
							
							RISC architectures get their memory operand folding for free.  
						
						... 
						
						
						
						The only folding these load/store architectures can do is converting COPY into a
load or store, and the target independent part of foldMemoryOperand already
knows how to do that.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108099  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-07-11 19:19:13 +00:00 
						 
				 
			
				
					
						
							
							
								Jakob Stoklund Olesen 
							
						 
					 
					
						
						
							
						
						99666a3429 
					 
					
						
						
							
							Replace copyRegToReg with copyPhysReg for Alpha.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108065  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-07-11 01:08:23 +00:00 
						 
				 
			
				
					
						
							
							
								Stuart Hastings 
							
						 
					 
					
						
						
							
						
						3bf9125933 
					 
					
						
						
							
							Add a DebugLoc parameter to TargetInstrInfo::InsertBranch().  This  
						
						... 
						
						
						
						addresses a longstanding deficiency noted in many FIXMEs scattered
across all the targets.
This effectively moves the problem up one level, replacing eleven
FIXMEs in the targets with eight FIXMEs in CodeGen, plus one path
through FastISel where we actually supply a DebugLoc, fixing Radar
7421831.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106243  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-06-17 22:43:56 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						34dcc6fadc 
					 
					
						
						
							
							Add a DebugLoc argument to TargetInstrInfo::copyRegToReg, so that it  
						
						... 
						
						
						
						doesn't have to guess.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103194  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-05-06 20:33:48 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						746ad69e08 
					 
					
						
						
							
							Add argument TargetRegisterInfo to loadRegFromStackSlot and storeRegToStackSlot.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103193  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-05-06 19:06:44 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						864e2efce2 
					 
					
						
						
							
							Remove the target hook TargetInstrInfo::BlockHasNoFallThrough in favor of  
						
						... 
						
						
						
						MachineBasicBlock::canFallThrough(), which is target-independent and more
thorough.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90634  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-05 00:44:40 +00:00 
						 
				 
			
				
					
						
							
							
								Eli Friedman 
							
						 
					 
					
						
						
							
						
						23ed52752b 
					 
					
						
						
							
							Remove unused member functions.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76960  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-24 07:43:59 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						9911405183 
					 
					
						
						
							
							Convert Alpha and Mips to use a MachineFunctionInfo subclass to  
						
						... 
						
						
						
						carry GlobalBaseReg, and GlobalRetAddr too in Alpha's case. This
eliminates the need for them to search through the
MachineRegisterInfo livein list in order to identify these
virtual registers. EmitLiveInCopies is now the only user of the
virtual register portion of MachineRegisterInfo's livein data.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72802  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-03 20:30:14 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						dc54d317e7 
					 
					
						
						
							
							Turns out AnalyzeBranch can modify the mbb being analyzed. This is a nasty  
						
						... 
						
						
						
						suprise to some callers, e.g. register coalescer. For now, add an parameter
that tells AnalyzeBranch whether it's safe to modify the mbb. A better
solution is out there, but I don't have time to deal with it right now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64124  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-09 07:14:22 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						04ee5a1d92 
					 
					
						
						
							
							Change TargetInstrInfo::isMoveInstr to return source and destination sub-register indices as well.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62600  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-20 19:12:24 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						c54baa2d43 
					 
					
						
						
							
							Split foldMemoryOperand into public non-virtual and protected virtual  
						
						... 
						
						
						
						parts, and add target-independent code to add/preserve
MachineMemOperands.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60488  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-12-03 18:43:12 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						cbad42cfd1 
					 
					
						
						
							
							Add more const qualifiers. This fixes build breakage from r59540.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59542  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-18 19:49:32 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						8e8b8a223c 
					 
					
						
						
							
							Const-ify several TargetInstrInfo methods.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57622  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-10-16 01:49:15 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						940f83e772 
					 
					
						
						
							
							Make TargetInstrInfo::copyRegToReg return a bool indicating whether the copy requested  
						
						... 
						
						
						
						was inserted or not.  This allows bitcast in fast isel to properly handle the case
where an appropriate reg-to-reg copy is not available.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55375  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-26 18:03:31 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						44eb65cf58 
					 
					
						
						
							
							Convert uses of std::vector in TargetInstrInfo to SmallVector.  This change had to be propoagated down into all the targets and up into all clients of this API.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54802  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-14 22:49:33 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						c9f5f3f64f 
					 
					
						
						
							
							Change target-specific classes to use more precise static types.  
						
						... 
						
						
						
						This eliminates the need for several awkward casts, including
the last dynamic_cast under lib/Target.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51091  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-05-14 01:58:56 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						6f0d024a53 
					 
					
						
						
							
							Rename MRegisterInfo to TargetRegisterInfo.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46930  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-02-10 18:45:23 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						5fd79d0560 
					 
					
						
						
							
							It's not always safe to fold movsd into xorpd, etc. Check the alignment of the load address first to make sure it's 16 byte aligned.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46893  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-02-08 21:20:40 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						43dbe05279 
					 
					
						
						
							
							Move even more functionality from MRegisterInfo into TargetInstrInfo.  
						
						... 
						
						
						
						Some day I'll get it all moved over...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45672  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-01-07 01:35:02 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						f6372aa1cc 
					 
					
						
						
							
							Move some more instruction creation methods from RegisterInfo into InstrInfo.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45484  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-01-01 21:11:32 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6410552250 
					 
					
						
						
							
							Fix a problem where lib/Target/TargetInstrInfo.h would include and use  
						
						... 
						
						
						
						a header file from libcodegen.  This violates a layering order: codegen
depends on target, not the other way around.  The fix to this is to 
split TII into two classes, TII and TargetInstrInfoImpl, which defines
stuff that depends on libcodegen.  It is defined in libcodegen, where 
the base is not.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45475  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-01-01 01:03:04 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						d10fd9791c 
					 
					
						
						
							
							Move copyRegToReg from MRegisterInfo to TargetInstrInfo.  This is part of the  
						
						... 
						
						
						
						Machine-level API cleanup instigated by Chris.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45470  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-12-31 06:32:00 +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 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						b5cdaa257e 
					 
					
						
						
							
							RemoveBranch() and InsertBranch() now returns number of instructions deleted / inserted.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37192  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-05-18 00:05:48 +00:00 
						 
				 
			
				
					
						
							
							
								Andrew Lenharth 
							
						 
					 
					
						
						
							
						
						f81173f70e 
					 
					
						
						
							
							Add all that branch mangling niftiness  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31313  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-10-31 16:49:55 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0476b28525 
					 
					
						
						
							
							implement uncond branch insertion so alpha works work branchfolding.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31158  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-10-24 16:41:36 +00:00 
						 
				 
			
				
					
						
							
							
								Andrew Lenharth 
							
						 
					 
					
						
						
							
						
						133d3100ea 
					 
					
						
						
							
							isStoreToStackSlot  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25925  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-03 03:07:37 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4083960147 
					 
					
						
						
							
							Move isLoadFrom/StoreToStackSlot from MRegisterInfo to TargetInstrInfo,a far more logical place.  Other methods should also be moved if anyoneis interested. :)  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25913  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-02 20:12:32 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						4633f1cde8 
					 
					
						
						
							
							Remove trailing whitespace  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21424  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-04-21 23:13:11 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						bc9ccf663c 
					 
					
						
						
							
							Make file header comment consistent: extend the whole 80 cols to fill the line  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20039  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-02-04 20:25:52 +00:00 
						 
				 
			
				
					
						
							
							
								Andrew Lenharth 
							
						 
					 
					
						
						
							
						
						304d0f3076 
					 
					
						
						
							
							Let me introduce you to the early stages of the llvm backend for the alpha processor  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19764  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-01-22 23:41:55 +00:00