Bill Wendling
							
						 
						
							 
							
							
							
							
								
							
							
								38ee6519b7 
								
							 
						 
						
							
							
								
								Revert patch.  
							
							 
							
							... 
							
							
							
							llvm-svn: 33298 
							
						 
						
							2007-01-17 09:06:13 +00:00  
						
					 
				
					
						
							
							
								 
								Bill Wendling
							
						 
						
							 
							
							
							
							
								
							
							
								05e5a5ee6c 
								
							 
						 
						
							
							
								
								Create the specified TargetObjInfo and use it.  
							
							 
							
							... 
							
							
							
							llvm-svn: 33291 
							
						 
						
							2007-01-17 03:51:37 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								11b0a5dbd4 
								
							 
						 
						
							
							
								
								Committing X86-64 support.  
							
							 
							
							... 
							
							
							
							llvm-svn: 30177 
							
						 
						
							2006-09-08 06:48:29 +00:00  
						
					 
				
					
						
							
							
								 
								Jim Laskey
							
						 
						
							 
							
							
							
							
								
							
							
								ae92ce8798 
								
							 
						 
						
							
							
								
								1. Remove condition on delete.  
							
							 
							
							... 
							
							
							
							2. Protect and outline createTargetAsmInfo.
3. Misc. kruft.
llvm-svn: 30169 
							
						 
						
							2006-09-07 23:39:26 +00:00  
						
					 
				
					
						
							
							
								 
								Jim Laskey
							
						 
						
							 
							
							
							
							
								
							
							
								261779bb45 
								
							 
						 
						
							
							
								
								Make target asm info a property of the target machine.  
							
							 
							
							... 
							
							
							
							llvm-svn: 30162 
							
						 
						
							2006-09-07 22:06:40 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								12e97307a1 
								
							 
						 
						
							
							
								
								Completely rearchitect the interface between targets and the pass manager.  
							
							 
							
							... 
							
							
							
							This pass:
1. Splits TargetMachine into TargetMachine (generic targets, can be implemented
any way, like the CBE) and LLVMTargetMachine (subclass of TM that is used by
things using libcodegen and other support).
2. Instead of having each target fully populate the passmgr for file or JIT
   output, move all this to common code, and give targets hooks they can
   implement.
3. Commonalize the target population stuff between file emission and JIT
   emission.
4. All (native code) codegen stuff now happens in a FunctionPassManager, which
   paves the way for "fast -O0" stuff in the CFE later, and now LLC could
   lazily stream .bc files from disk to use less memory.
5. There are now many fewer #includes and the targets don't depend on the
   scalar xforms or libanalysis anymore (but codegen does).
6. Changing common code generator pass ordering stuff no longer requires
   touching all targets.
7. The JIT now has the option of "-fast" codegen or normal optimized codegen,
   which is now orthogonal to the fact that JIT'ing is being done.
llvm-svn: 30081 
							
						 
						
							2006-09-04 04:14:57 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								c8c172eaae 
								
							 
						 
						
							
							
								
								Fix a build breaker.  
							
							 
							
							... 
							
							
							
							llvm-svn: 28574 
							
						 
						
							2006-05-30 21:45:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b19ce6c810 
								
							 
						 
						
							
							
								
								More coverity fixes  
							
							 
							
							... 
							
							
							
							llvm-svn: 28266 
							
						 
						
							2006-05-12 21:14:20 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								8c2c1e90c4 
								
							 
						 
						
							
							
								
								Refactor a bunch of includes so that TargetMachine.h doesn't have to include  
							
							 
							
							... 
							
							
							
							TargetData.h.  This should make recompiles a bit faster with my current
TargetData tinkering.
llvm-svn: 28238 
							
						 
						
							2006-05-12 06:33:49 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								20a631fde7 
								
							 
						 
						
							
							
								
								Refactor TargetMachine, pushing handling of TargetData into the target-specific subclasses.  This has one caller-visible change: getTargetData() now returns a pointer instead of a reference.  
							
							 
							
							... 
							
							
							
							This fixes PR 759.
llvm-svn: 28074 
							
						 
						
							2006-05-03 01:29:57 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6f95ab7abb 
								
							 
						 
						
							
							
								
								Eliminate IntrinsicLowering from TargetMachine.  
							
							 
							
							... 
							
							
							
							Make the CBE and V9 backends create their own, since they're the only ones that use it.
llvm-svn: 26974 
							
						 
						
							2006-03-23 05:43:16 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								2dd2c652b2 
								
							 
						 
						
							
							
								
								Added getTargetLowering() to TargetMachine. Refactored targets to support this.  
							
							 
							
							... 
							
							
							
							llvm-svn: 26742 
							
						 
						
							2006-03-13 23:20:37 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b28f214033 
								
							 
						 
						
							
							
								
								Add a new option to indicate we want the code generator to emit code quickly,not spending tons of time microoptimizing it.  This is useful for an -O0style of build.  
							
							 
							
							... 
							
							
							
							llvm-svn: 24233 
							
						 
						
							2005-11-08 02:11:51 +00:00  
						
					 
				
					
						
							
							
								 
								Jim Laskey
							
						 
						
							 
							
							
							
							
								
							
							
								19058c3989 
								
							 
						 
						
							
							
								
								1. Use SubtargetFeatures in llc/lli.  
							
							 
							
							... 
							
							
							
							2. Propagate feature "string" to all targets.
3. Implement use of SubtargetFeatures in PowerPCTargetSubtarget.
llvm-svn: 23192 
							
						 
						
							2005-09-01 21:38:21 +00:00  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								f26625e1de 
								
							 
						 
						
							
							
								
								Implement Subtarget support  
							
							 
							
							... 
							
							
							
							Implement the X86 Subtarget.
This consolidates the checks for target triple, and setting options based
on target triple into one place.  This allows us to convert the asm printer
and isel over from being littered with "forDarwin", "forCygwin", etc. into
just having the appropriate flags for each subtarget feature controlling
the code for that feature.
This patch also implements indirect external and weak references in the
X86 pattern isel, for darwin.  Next up is to convert over the asm printers
to use this new interface.
llvm-svn: 22389 
							
						 
						
							2005-07-12 01:41:54 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f11f48ba61 
								
							 
						 
						
							
							
								
								Refactor the addPassesToEmitAssembly interface into a addPassesToEmitFile  
							
							 
							
							... 
							
							
							
							interface.
llvm-svn: 22282 
							
						 
						
							2005-06-25 02:48:37 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								c88330ad13 
								
							 
						 
						
							
							
								
								* Remove trailing whitespace  
							
							 
							
							... 
							
							
							
							* Convert tabs to spaces
llvm-svn: 21426 
							
						 
						
							2005-04-21 23:38:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6b7652fae5 
								
							 
						 
						
							
							
								
								Remove a dead function, which died when we got GAS emission working (phwew,  
							
							 
							
							... 
							
							
							
							hold your nose!)
llvm-svn: 17869 
							
						 
						
							2004-11-16 04:34:29 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4266f8017d 
								
							 
						 
						
							
							
								
								Auto-registrate target  
							
							 
							
							... 
							
							
							
							llvm-svn: 14745 
							
						 
						
							2004-07-11 02:48:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								82baa9c394 
								
							 
						 
						
							
							
								
								Convert to the new TargetMachine interface.  
							
							 
							
							... 
							
							
							
							llvm-svn: 13952 
							
						 
						
							2004-06-02 05:55:25 +00:00  
						
					 
				
					
						
							
							
								 
								Alkis Evlogimenos
							
						 
						
							 
							
							
							
							
								
							
							
								508b459d12 
								
							 
						 
						
							
							
								
								Add emitInstruction() API so that we can get the bytes of a simple instruction  
							
							 
							
							... 
							
							
							
							llvm-svn: 12252 
							
						 
						
							2004-03-09 03:34:53 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								427cec1395 
								
							 
						 
						
							
							
								
								TargetCacheInfo has been removed; its only uses were to propagate a constant  
							
							 
							
							... 
							
							
							
							(16) into certain areas of the SPARC V9 back-end. I'm fairly sure the US IIIi's
dcache has 32-byte lines, so I'm not sure where the 16 came from. However, in
the interest of not breaking things any more than they already are, I'm going
to leave the constant alone.
llvm-svn: 12043 
							
						 
						
							2004-03-01 06:43:29 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5d236005b0 
								
							 
						 
						
							
							
								
								Clean up a lot of the code I added yesterday by exposing the IntrinsicLowering  
							
							 
							
							... 
							
							
							
							implementation from the TargetMachine directly.
llvm-svn: 10636 
							
						 
						
							2003-12-28 21:23:38 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c45a033b42 
								
							 
						 
						
							
							
								
								implement support for the intrinsic lowering functionality  
							
							 
							
							... 
							
							
							
							llvm-svn: 10629 
							
						 
						
							2003-12-28 09:47:19 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								833c3c2597 
								
							 
						 
						
							
							
								
								Rip JIT specific stuff out of TargetMachine, as per PR176  
							
							 
							
							... 
							
							
							
							llvm-svn: 10542 
							
						 
						
							2003-12-20 01:22:19 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2e7416cb04 
								
							 
						 
						
							
							
								
								Implement the TargetMachine::getJITStubForFunction method for X86, finegrainify  
							
							 
							
							... 
							
							
							
							namespacification.
llvm-svn: 10430 
							
						 
						
							2003-12-12 07:11:18 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								960707c335 
								
							 
						 
						
							
							
								
								Put all LLVM code into the llvm namespace, as per bug 109.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9903 
							
						 
						
							2003-11-11 22:41:34 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								29265fe981 
								
							 
						 
						
							
							
								
								Added LLVM copyright header.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9321 
							
						 
						
							2003-10-21 15:17:13 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								ca1789d3f5 
								
							 
						 
						
							
							
								
								Minor leftover fixups from replaceMachineCodeForFunction () change.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9295 
							
						 
						
							2003-10-20 17:59:09 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								240fc39b07 
								
							 
						 
						
							
							
								
								Add prototype for replaceMachineCodeForFunction().  
							
							 
							
							... 
							
							
							
							llvm-svn: 9202 
							
						 
						
							2003-10-17 18:27:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d189277f32 
								
							 
						 
						
							
							
								
								OptInfo is no longer required  
							
							 
							
							... 
							
							
							
							llvm-svn: 8312 
							
						 
						
							2003-09-01 20:41:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4fd144acc8 
								
							 
						 
						
							
							
								
								Targets should configure themselves based on a Module, not some wierd flags  
							
							 
							
							... 
							
							
							
							llvm-svn: 8132 
							
						 
						
							2003-08-24 19:49:48 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								845b5af4d4 
								
							 
						 
						
							
							
								
								addPassesToJITCompile and addPassesToEmitMachineCode now take a  
							
							 
							
							... 
							
							
							
							FunctionPassManager, to support function-at-a-time compilation and
 emission of code.
llvm-svn: 7821 
							
						 
						
							2003-08-13 18:17:27 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								ac94bab876 
								
							 
						 
						
							
							
								
								lib/Target/X86/X86TargetMachine.{cpp,h}:  Add initial version  
							
							 
							
							... 
							
							
							
							(non-working) of llc guts for X86, and add a prototype for it.
llvm-svn: 6779 
							
						 
						
							2003-06-18 21:43:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f9781b59ab 
								
							 
						 
						
							
							
								
								More renamings of Target/Machine*Info to Target/Target*Info  
							
							 
							
							... 
							
							
							
							llvm-svn: 5204 
							
						 
						
							2002-12-29 03:13:05 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								42d59219c7 
								
							 
						 
						
							
							
								
								Rename MachineOptInfo to TargetoptInfo  
							
							 
							
							... 
							
							
							
							Rename MachineCacheInfo to TargetCacheInfo
llvm-svn: 5203 
							
						 
						
							2002-12-29 02:50:35 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								871e591e34 
								
							 
						 
						
							
							
								
								Rename MachineFrameInfo to TargetFrameInfo.h  
							
							 
							
							... 
							
							
							
							llvm-svn: 5199 
							
						 
						
							2002-12-28 21:00:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								362b26c37e 
								
							 
						 
						
							
							
								
								Implement the TargetFrameInfo interface  
							
							 
							
							... 
							
							
							
							llvm-svn: 5189 
							
						 
						
							2002-12-28 20:33:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a32b4055be 
								
							 
						 
						
							
							
								
								Changes to allow for a configurable target machine that allows big endian and/or long pointer operation  
							
							 
							
							... 
							
							
							
							llvm-svn: 5131 
							
						 
						
							2002-12-24 00:04:01 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1207ccdbc1 
								
							 
						 
						
							
							
								
								Expose explicit type  
							
							 
							
							... 
							
							
							
							llvm-svn: 4871 
							
						 
						
							2002-12-02 21:50:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								787a9de685 
								
							 
						 
						
							
							
								
								Initial support for machine code emission  
							
							 
							
							... 
							
							
							
							llvm-svn: 4866 
							
						 
						
							2002-12-02 21:24:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								858a4a6595 
								
							 
						 
						
							
							
								
								Implement the new optional getRegisterInfo  
							
							 
							
							... 
							
							
							
							llvm-svn: 4437 
							
						 
						
							2002-10-30 00:56:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								02a3d837c2 
								
							 
						 
						
							
							
								
								Convert backend to use passes, implement X86TargetMachine  
							
							 
							
							... 
							
							
							
							llvm-svn: 4421 
							
						 
						
							2002-10-29 22:37:54 +00:00