4369c9b42c 
								
							 
						 
						
							
							
								
								Use the cached subtarget from the MachineFunction rather than  
							
							... 
							
							
							
							doing a lookup on the TargetMachine.
llvm-svn: 229995 
							
						 
						
							2015-02-20 08:01:52 +00:00  
				
					
						
							
							
								 
						
							
								d361ff8282 
								
							 
						 
						
							
							
								
								Use cached subtargets inside X86FixupLEAs.  
							
							... 
							
							
							
							llvm-svn: 228333 
							
						 
						
							2015-02-05 19:27:01 +00:00  
				
					
						
							
							
								 
						
							
								d3c02f177a 
								
							 
						 
						
							
							
								
								Replace several 'assert(false' with 'llvm_unreachable' or fold a condition into the assert.  
							
							... 
							
							
							
							llvm-svn: 225160 
							
						 
						
							2015-01-05 10:15:49 +00:00  
				
					
						
							
							
								 
						
							
								d913448b38 
								
							 
						 
						
							
							
								
								Remove the TargetMachine forwards for TargetSubtargetInfo based  
							
							... 
							
							
							
							information and update all callers. No functional change.
llvm-svn: 214781 
							
						 
						
							2014-08-04 21:25:23 +00:00  
				
					
						
							
							
								 
						
							
								6360441f99 
								
							 
						 
						
							
							
								
								Remove Atom references in description.  
							
							... 
							
							
							
							Any CPU can run this pass.
llvm-svn: 213190 
							
						 
						
							2014-07-16 20:18:49 +00:00  
				
					
						
							
							
								 
						
							
								66f09ad041 
								
							 
						 
						
							
							
								
								[C++11] Use 'nullptr'.  
							
							... 
							
							
							
							llvm-svn: 210442 
							
						 
						
							2014-06-08 22:29:17 +00:00  
				
					
						
							
							
								 
						
							
								dd240fd79c 
								
							 
						 
						
							
							
								
								Revert r209381 as it isn't a local variable. Add a testcase so that  
							
							... 
							
							
							
							we know next time this happens.
llvm-svn: 210127 
							
						 
						
							2014-06-03 21:01:39 +00:00  
				
					
						
							
							
								 
						
							
								31b81ce5ee 
								
							 
						 
						
							
							
								
								Fixup formatting in the pass.  
							
							... 
							
							
							
							llvm-svn: 210126 
							
						 
						
							2014-06-03 21:01:35 +00:00  
				
					
						
							
							
								 
						
							
								0d5c99eb08 
								
							 
						 
						
							
							
								
								Avoid using subtarget features when adding X86 specific passes to  
							
							... 
							
							
							
							the pass pipeline.
llvm-svn: 209382 
							
						 
						
							2014-05-22 01:46:02 +00:00  
				
					
						
							
							
								 
						
							
								e0bd2fa927 
								
							 
						 
						
							
							
								
								Remove extra local variable.  
							
							... 
							
							
							
							llvm-svn: 209381 
							
						 
						
							2014-05-22 01:45:59 +00:00  
				
					
						
							
							
								 
						
							
								6226de6721 
								
							 
						 
						
							
							
								
								[X86] Tune LEA usage for Silvermont  
							
							... 
							
							
							
							According to Intel Software Optimization Manual on Silvermont in some cases LEA
is better to be replaced with ADD instructions:
"The rule of thumb for ADDs and LEAs is that it is justified to use LEA
with a valid index and/or displacement for non-destructive destination purposes
(especially useful for stack offset cases), or to use a SCALE.
Otherwise, ADD(s) are preferable."
Differential Revision: http://reviews.llvm.org/D3826 
llvm-svn: 209198 
							
						 
						
							2014-05-20 08:55:50 +00:00  
				
					
						
							
							
								 
						
							
								062a2baef0 
								
							 
						 
						
							
							
								
								[C++] Use 'nullptr'. Target edition.  
							
							... 
							
							
							
							llvm-svn: 207197 
							
						 
						
							2014-04-25 05:30:21 +00:00  
				
					
						
							
							
								 
						
							
								84e68b2994 
								
							 
						 
						
							
							
								
								[Modules] Fix potential ODR violations by sinking the DEBUG_TYPE  
							
							... 
							
							
							
							definition below all of the header #include lines, lib/Target/...
edition.
llvm-svn: 206842 
							
						 
						
							2014-04-22 02:41:26 +00:00  
				
					
						
							
							
								 
						
							
								2d9361e325 
								
							 
						 
						
							
							
								
								[C++11] Add 'override' keyword to virtual methods that override their base class.  
							
							... 
							
							
							
							llvm-svn: 203378 
							
						 
						
							2014-03-09 07:44:38 +00:00  
				
					
						
							
							
								 
						
							
								f03a6e7fba 
								
							 
						 
						
							
							
								
								Forgot to add a break statement.  
							
							... 
							
							
							
							llvm-svn: 191715 
							
						 
						
							2013-09-30 23:51:22 +00:00  
				
					
						
							
							
								 
						
							
								f0b6288cbf 
								
							 
						 
						
							
							
								
								The X86FixupLEAs pass for Intel Atom must not call convertToThreeAddress  
							
							... 
							
							
							
							on ADD16rr opcodes, if src1 != src, since that would cause 
convertToThreeAddress to try to create a virtual register. This is not
permitted after register allocation, which is when the X86FixupLEAs pass
runs.
This patch fixes PR16785.
llvm-svn: 191711 
							
						 
						
							2013-09-30 23:18:42 +00:00  
				
					
						
							
							
								 
						
							
								8f26840c5a 
								
							 
						 
						
							
							
								
								Don't cache the instruction and register info from the TargetMachine, because  
							
							... 
							
							
							
							the internals of TargetMachine could change.
No functionality change intended.
llvm-svn: 183571 
							
						 
						
							2013-06-07 21:00:34 +00:00  
				
					
						
							
							
								 
						
							
								128920d9fa 
								
							 
						 
						
							
							
								
								Make function documentation conform to llvm standards.  
							
							... 
							
							
							
							Expunge all remaining traces and use of live variable information.
llvm-svn: 180577 
							
						 
						
							2013-04-25 21:31:33 +00:00  
				
					
						
							
							
								 
						
							
								8b7ab4ba2b 
								
							 
						 
						
							
							
								
								This patch adds the X86FixupLEAs pass, which will reduce instruction  
							
							... 
							
							
							
							latency for certain models of the Intel Atom family, by converting
instructions into their equivalent LEA instructions, when it is both
useful and possible to do so.
llvm-svn: 180573 
							
						 
						
							2013-04-25 20:29:37 +00:00