Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a81a75c390 
								
							 
						 
						
							
							
								
								The DarwinAsmPrinter need not check for isDarwin.  createPPCAsmPrinterPass  
							
							 
							
							... 
							
							
							
							should create the right asmprinter subclass.
llvm-svn: 30542 
							
						 
						
							2006-09-20 17:12:19 +00:00  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								c9db83306f 
								
							 
						 
						
							
							
								
								We actually do support object file writing, so don't return true (error)  
							
							 
							
							... 
							
							
							
							llvm-svn: 30173 
							
						 
						
							2006-09-08 03:42:15 +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
							
						 
						
							 
							
							
							
							
								
							
							
								a6211dcdad 
								
							 
						 
						
							
							
								
								Separate target specific asm properties from the asm printers.  
							
							 
							
							... 
							
							
							
							llvm-svn: 30126 
							
						 
						
							2006-09-06 18:34: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  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0fc4541c67 
								
							 
						 
						
							
							
								
								Simplify target construction.  
							
							 
							
							... 
							
							
							
							llvm-svn: 30070 
							
						 
						
							2006-09-03 18:44:02 +00:00  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								18f0329cfc 
								
							 
						 
						
							
							
								
								Make ppc64 jit kinda work right.  About 2/3 of Olden passes with this,  
							
							 
							
							... 
							
							
							
							there are clearly some encoding bugs lurking in there somewhere.
llvm-svn: 29949 
							
						 
						
							2006-08-29 02:30:59 +00:00  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								3cb3921a60 
								
							 
						 
						
							
							
								
								Initial checkin of the Mach-O emitter.  There's plenty of fixmes, but it  
							
							 
							
							... 
							
							
							
							does emit linkable .o files in very simple cases.
llvm-svn: 29850 
							
						 
						
							2006-08-23 21:08:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9e56e5c003 
								
							 
						 
						
							
							
								
								Rename RelocModel::PIC to PIC_, to avoid conflicts with -DPIC.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29307 
							
						 
						
							2006-07-26 21:12:04 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e1758d4cef 
								
							 
						 
						
							
							
								
								Remove what little AIX support we have.  It has never been tested and isn't  
							
							 
							
							... 
							
							
							
							complete.
llvm-svn: 29156 
							
						 
						
							2006-07-15 01:24:23 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1ec5e73b32 
								
							 
						 
						
							
							
								
								An overaggressive #ifdef allows a function to fall off the bottom of the  
							
							 
							
							... 
							
							
							
							function instead of returning a value.  This sometimes allowed the ppc32 jit
to be used in 64-bit mode.
llvm-svn: 29123 
							
						 
						
							2006-07-12 20:42:10 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								59b6e8a683 
								
							 
						 
						
							
							
								
								Undisable ppc64 jit  
							
							 
							
							... 
							
							
							
							llvm-svn: 29011 
							
						 
						
							2006-07-06 17:10:42 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								49cadab385 
								
							 
						 
						
							
							
								
								Implement the getPointerRegClass method, which is required for the ptr_rc  
							
							 
							
							... 
							
							
							
							magic to work.
llvm-svn: 28847 
							
						 
						
							2006-06-17 00:01:04 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a7d9db2fa5 
								
							 
						 
						
							
							
								
								Remove the -darwin and -aix llc options, inferring darwinism and aixism from  
							
							 
							
							... 
							
							
							
							the target triple & subtarget info.  woo.
llvm-svn: 28835 
							
						 
						
							2006-06-16 18:50:48 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f3b5b92e58 
								
							 
						 
						
							
							
								
								Don't pass target name into TargetData anymore, it is never used or needed.  
							
							 
							
							... 
							
							
							
							Remove explicit casts to std::string now that there is no overload resolution
issues in the TargetData ctors.
llvm-svn: 28830 
							
						 
						
							2006-06-16 18:22:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0c4aa14deb 
								
							 
						 
						
							
							
								
								First baby step towards ppc64 support.  This adds a new -march=ppc64 backend  
							
							 
							
							... 
							
							
							
							that is currently just like ppc32 :)
llvm-svn: 28813 
							
						 
						
							2006-06-16 01:37:27 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								80b1b4d41e 
								
							 
						 
						
							
							
								
								Make TargetData strings less redundant.  
							
							 
							
							... 
							
							
							
							llvm-svn: 28423 
							
						 
						
							2006-05-20 23:28:54 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								88812b5c0a 
								
							 
						 
						
							
							
								
								Make all of the TargetMachine subclasses use the new string TargetData methods.  
							
							 
							
							... 
							
							
							
							This is part of the on-going work on PR 761.
llvm-svn: 28414 
							
						 
						
							2006-05-20 00:24:56 +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  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								57a32f0bc1 
								
							 
						 
						
							
							
								
								Fix the comment  
							
							 
							
							... 
							
							
							
							llvm-svn: 27938 
							
						 
						
							2006-04-21 22:11:27 +00:00  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								516b393992 
								
							 
						 
						
							
							
								
								Change the PPC JIT to use a Static relocation model  
							
							 
							
							... 
							
							
							
							llvm-svn: 27937 
							
						 
						
							2006-04-21 22:04:15 +00:00  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								3f9c17906f 
								
							 
						 
						
							
							
								
								Disable switch lowering for targets based on the selection dag isel,  
							
							 
							
							... 
							
							
							
							letting the code generator handle them directly.
llvm-svn: 27539 
							
						 
						
							2006-04-08 19:46:55 +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
							
						 
						
							 
							
							
							
							
								
							
							
								20931a798e 
								
							 
						 
						
							
							
								
								Added a way for TargetLowering to specify what values can be used as the  
							
							 
							
							... 
							
							
							
							scale component of the target addressing mode.
llvm-svn: 26802 
							
						 
						
							2006-03-16 21:47:42 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								0f9d6534f5 
								
							 
						 
						
							
							
								
								PPC LSR pass should use target lowering hooks.  
							
							 
							
							... 
							
							
							
							llvm-svn: 26743 
							
						 
						
							2006-03-13 23:56:51 +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  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								0ed48fe601 
								
							 
						 
						
							
							
								
								PPC JIT relocation model should be DynamicNoPIC.  
							
							 
							
							... 
							
							
							
							llvm-svn: 26338 
							
						 
						
							2006-02-23 22:18:07 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								73136dfecc 
								
							 
						 
						
							
							
								
								- Added option -relocation-model to set relocation model. Valid values include static, pic,  
							
							 
							
							... 
							
							
							
							dynamic-no-pic, and default.
PPC and x86 default is dynamic-no-pic for Darwin, pic for others.
- Removed options -enable-pic and -ppc-static.
llvm-svn: 26315 
							
						 
						
							2006-02-22 20:19:42 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								33792a483a 
								
							 
						 
						
							
							
								
								Goodbye PPC pattern isel.  You have served us well, but it is now time for  
							
							 
							
							... 
							
							
							
							you to ride off into the sunset.
llvm-svn: 25236 
							
						 
						
							2006-01-12 01:46:07 +00:00  
						
					 
				
					
						
							
							
								 
								Jim Laskey
							
						 
						
							 
							
							
							
							
								
							
							
								b0609d91c3 
								
							 
						 
						
							
							
								
								Tie dwarf generation to darwin assembler.  
							
							 
							
							... 
							
							
							
							llvm-svn: 25093 
							
						 
						
							2006-01-04 13:52:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								88e234dd49 
								
							 
						 
						
							
							
								
								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 -O0
style of build.
llvm-svn: 24235 
							
						 
						
							2005-11-08 02:12:47 +00:00  
						
					 
				
					
						
							
							
								 
								Jim Laskey
							
						 
						
							 
							
							
							
							
								
							
							
								802748cd61 
								
							 
						 
						
							
							
								
								Allow itineraries to be passed through the Target Machine.  
							
							 
							
							... 
							
							
							
							llvm-svn: 24139 
							
						 
						
							2005-11-01 20:06:59 +00:00  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								0b71e007ef 
								
							 
						 
						
							
							
								
								First bits of 64 bit PowerPC stuff, currently disabled.  A lot of this is  
							
							 
							
							... 
							
							
							
							purely mechanical.
llvm-svn: 23778 
							
						 
						
							2005-10-18 00:28:58 +00:00  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								6cca84e43c 
								
							 
						 
						
							
							
								
								More PPC32 -> PPC changes, as well as merging some classes that were  
							
							 
							
							... 
							
							
							
							redundant after the change.
llvm-svn: 23759 
							
						 
						
							2005-10-16 05:39:50 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6f3b954662 
								
							 
						 
						
							
							
								
								Rename PPC32*.h to PPC*.h  
							
							 
							
							... 
							
							
							
							This completes the grand PPC file renaming
llvm-svn: 23745 
							
						 
						
							2005-10-14 23:59:06 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0aa794ba5b 
								
							 
						 
						
							
							
								
								Merge PPCJITInfo.h and PPC32JITInfo.h.  Note that the PowerPCJITInfo  
							
							 
							
							... 
							
							
							
							and PPC32JITInfo classes should be merged.
llvm-svn: 23744 
							
						 
						
							2005-10-14 23:53:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bfca1ab79d 
								
							 
						 
						
							
							
								
								Rename PowerPC*.h to PPC*.h  
							
							 
							
							... 
							
							
							
							llvm-svn: 23743 
							
						 
						
							2005-10-14 23:51:18 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								5ce1408537 
								
							 
						 
						
							
							
								
								Do IMPLICIT_DEFs on incoming args' hard regs, to avoid confusing the regalloc.  
							
							 
							
							... 
							
							
							
							Support single-fp incoming args.
Support single-fp outgoing args ('call' operands).
Support double-fp return values.
llvm-svn: 14880 
							
						 
						
							2004-07-16 10:31:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c9819f09c2 
								
							 
						 
						
							
							
								
								Revert stuff that I didn't mean to checkin  
							
							 
							
							... 
							
							
							
							llvm-svn: 14844 
							
						 
						
							2004-07-15 02:33:38 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7dc9de5f43 
								
							 
						 
						
							
							
								
								Patches towards fixing PR341  
							
							 
							
							... 
							
							
							
							llvm-svn: 14841 
							
						 
						
							2004-07-15 02:14:30 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								dcb0eec80d 
								
							 
						 
						
							
							
								
								Implement getModuleMatchQuality and getJITMatchQuality() for PowerPC  
							
							 
							
							... 
							
							
							
							llvm-svn: 14780 
							
						 
						
							2004-07-12 23:36:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b889c6b261 
								
							 
						 
						
							
							
								
								Delete the allocate*TargetMachine function, which is now dead.  
							
							 
							
							... 
							
							
							
							The shared command line options are now in a header that makes sense.
llvm-svn: 14757 
							
						 
						
							2004-07-11 04:17:58 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								73eb9436ee 
								
							 
						 
						
							
							
								
								Make these format a bit nicer  
							
							 
							
							... 
							
							
							
							llvm-svn: 14747 
							
						 
						
							2004-07-11 03:27:42 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4266f8017d 
								
							 
						 
						
							
							
								
								Auto-registrate target  
							
							 
							
							... 
							
							
							
							llvm-svn: 14745 
							
						 
						
							2004-07-11 02:48:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3594324248 
								
							 
						 
						
							
							
								
								Fix all of those problems that the PPC backend has running 176.gcc :)  
							
							 
							
							... 
							
							
							
							llvm-svn: 14565 
							
						 
						
							2004-07-02 05:48:42 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								1f3a7f0255 
								
							 
						 
						
							
							
								
								Wrap long line  
							
							 
							
							... 
							
							
							
							llvm-svn: 14552 
							
						 
						
							2004-07-01 21:27:59 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								4efe3da794 
								
							 
						 
						
							
							
								
								Lower ConstantExpressions before the code generator.  
							
							 
							
							... 
							
							
							
							llvm-svn: 14497 
							
						 
						
							2004-06-29 23:33:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c5f9b356af 
								
							 
						 
						
							
							
								
								The code generator should work with unreachable blocks.  If not, then this  
							
							 
							
							... 
							
							
							
							is a bug that should be fixed in the code generator, not papered over with
the simplifycfg pass.  Eliminating this makes bugpoint much more useful
llvm-svn: 14477 
							
						 
						
							2004-06-29 07:20:16 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								15c10883ff 
								
							 
						 
						
							
							
								
								Can't print out machine code before it is constructed.  
							
							 
							
							... 
							
							
							
							llvm-svn: 14472 
							
						 
						
							2004-06-28 21:16:57 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								c52ea2574d 
								
							 
						 
						
							
							
								
								Allow debugging machine instrs (by printout) before/after isel and regalloc  
							
							 
							
							... 
							
							
							
							llvm-svn: 14416 
							
						 
						
							2004-06-25 19:57:47 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								5e3afa0d4c 
								
							 
						 
						
							
							
								
								Add option to print out machine code before register allocation.  
							
							 
							
							... 
							
							
							
							llvm-svn: 14387 
							
						 
						
							2004-06-24 23:55:01 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								302df232b5 
								
							 
						 
						
							
							
								
								llvm/IntrinsicLowering.h => llvm/CodeGen/IntrinsicLowering.h  
							
							 
							
							... 
							
							
							
							llvm-svn: 14292 
							
						 
						
							2004-06-21 18:30:31 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								e05203fb40 
								
							 
						 
						
							
							
								
								Initial revision  
							
							 
							
							... 
							
							
							
							llvm-svn: 14283 
							
						 
						
							2004-06-21 16:55:25 +00:00