Bill Wendling
							
						 
						
							 
							
							
							
							
								
							
							
								c5437ea429 
								
							 
						 
						
							
							
								
								Overhaul my earlier submission due to feedback. It's a large patch, but most of  
							
							 
							
							... 
							
							
							
							them are generic changes.
- Use the "fast" flag that's already being passed into the asm printers instead
  of shoving it into the DwarfWriter.
- Instead of calling "MI->getParent()->getParent()" for every MI, set the
  machine function when calling "runOnMachineFunction" in the asm printers.
llvm-svn: 65379 
							
						 
						
							2009-02-24 08:30:20 +00:00  
						
					 
				
					
						
							
							
								 
								Oscar Fuentes
							
						 
						
							 
							
							
							
							
								
							
							
								ba4eb2a9db 
								
							 
						 
						
							
							
								
								Adds extern "C" ints to the .cpp files that use RegisterTarget, as  
							
							 
							
							... 
							
							
							
							well as 2 files that use "Registrator"s. These are to be used by the
MSVC builds, as the Win32 linker does not include libs that are
otherwise unreferenced, even if global constructors in the lib have
side-effects.
Patch by Scott Graham!
llvm-svn: 59378 
							
						 
						
							2008-11-15 21:36:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								122c9b1b22 
								
							 
						 
						
							
							
								
								mark some targets as experimental.  Andrew, if you think that Alpha is  
							
							 
							
							... 
							
							
							
							basically working, feel free to remove the tag.  The other targets have
really basic things that break them.
llvm-svn: 57628 
							
						 
						
							2008-10-16 06:16:50 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								9c4b7d5c4f 
								
							 
						 
						
							
							
								
								Fix command-line option printing to print two spaces where needed,  
							
							 
							
							... 
							
							
							
							instead of requiring all "short description" strings to begin with
two spaces. This makes these strings less mysterious, and it fixes
some cases where short description strings mistakenly did not
begin with two spaces.
llvm-svn: 57521 
							
						 
						
							2008-10-14 20:25:08 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								9371964f47 
								
							 
						 
						
							
							
								
								Use raw_ostream throughout the AsmPrinter.  
							
							 
							
							... 
							
							
							
							llvm-svn: 55092 
							
						 
						
							2008-08-21 00:14:44 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								d78c400b5b 
								
							 
						 
						
							
							
								
								Clean up the use of static and anonymous namespaces. This turned up  
							
							 
							
							... 
							
							
							
							several things that were neither in an anonymous namespace nor static
but not intended to be global.
llvm-svn: 51017 
							
						 
						
							2008-05-13 00:00:25 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								24570836b2 
								
							 
						 
						
							
							
								
								Use PassManagerBase instead of FunctionPassManager for functions  
							
							 
							
							... 
							
							
							
							that merely add passes. This allows them to be used with either
FunctionPassManager or PassManager, or even with a custom new
kind of pass manager.
llvm-svn: 48256 
							
						 
						
							2008-03-11 22:29:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f3ebc3f3d2 
								
							 
						 
						
							
							
								
								Remove attribution from file headers, per discussion on llvmdev.  
							
							 
							
							... 
							
							
							
							llvm-svn: 45418 
							
						 
						
							2007-12-29 20:36:04 +00:00  
						
					 
				
					
						
							
							
								 
								Dale Johannesen
							
						 
						
							 
							
							
							
							
								
							
							
								c5283ecd6f 
								
							 
						 
						
							
							
								
								long double patch 2 of N.  Handle it in TargetData.  
							
							 
							
							... 
							
							
							
							(I've tried to get the info right for all targets,
but I'm not expert on all of them - check yours.)
llvm-svn: 40792 
							
						 
						
							2007-08-03 20:20:50 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								9d5df0a5f6 
								
							 
						 
						
							
							
								
								Added -print-emitted-asm to print out JIT generated asm to cerr.  
							
							 
							
							... 
							
							
							
							llvm-svn: 40123 
							
						 
						
							2007-07-20 21:56:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								517290ae52 
								
							 
						 
						
							
							
								
								The various "getModuleMatchQuality" implementations should return  
							
							 
							
							... 
							
							
							
							zero if they see a target triple they don't understand.
llvm-svn: 38463 
							
						 
						
							2007-07-09 17:25:29 +00:00  
						
					 
				
					
						
							
							
								 
								Bill Wendling
							
						 
						
							 
							
							
							
							
								
							
							
								59889ae93f 
								
							 
						 
						
							
							
								
								Added new method to add a "simple" code emitter. That is, to only add  
							
							 
							
							... 
							
							
							
							the code emitter and not set variables.
llvm-svn: 34033 
							
						 
						
							2007-02-08 01:38:33 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								692e4155aa 
								
							 
						 
						
							
							
								
								Add all that branch mangling niftiness  
							
							 
							
							... 
							
							
							
							llvm-svn: 31313 
							
						 
						
							2006-10-31 16:49:55 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								a6bbf33cbf 
								
							 
						 
						
							
							
								
								Jimptables working again on alpha.  
							
							 
							
							... 
							
							
							
							As a bonus, use the GOT node instead of the AlphaISD::GOT for internal stuff.
llvm-svn: 30873 
							
						 
						
							2006-10-11 04:29:42 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								5e2bacd6be 
								
							 
						 
						
							
							
								
								Fix jump tables to match gcc (and the ABI and whatnot)  
							
							 
							
							... 
							
							
							
							llvm-svn: 30594 
							
						 
						
							2006-09-24 19:46:56 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								f23e3bfcb2 
								
							 
						 
						
							
							
								
								A pass to remove the worst of the replay trap offenders, and as a bonus, align basic blocks when it is free to do so  
							
							 
							
							... 
							
							
							
							llvm-svn: 30467 
							
						 
						
							2006-09-18 19:44: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  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0fc4541c67 
								
							 
						 
						
							
							
								
								Simplify target construction.  
							
							 
							
							... 
							
							
							
							llvm-svn: 30070 
							
						 
						
							2006-09-03 18:44:02 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								f6acb34d23 
								
							 
						 
						
							
							
								
								- Refactor the code that resolve basic block references to a TargetJITInfo  
							
							 
							
							... 
							
							
							
							method.
- Added synchronizeICache() to TargetJITInfo. It is called after each block
  of code is emitted to flush the icache. This ensures correct execution
  on targets that have separate dcache and icache.
- Added PPC / Mac OS X specific code to do icache flushing.
llvm-svn: 29276 
							
						 
						
							2006-07-25 20:40:54 +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  
						
					 
				
					
						
							
							
								 
								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
							
						 
						
							 
							
							
							
							
								
							
							
								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  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								c0bf377f98 
								
							 
						 
						
							
							
								
								bye bye Pattern ISEL  
							
							 
							
							... 
							
							
							
							llvm-svn: 25553 
							
						 
						
							2006-01-23 21:56:07 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								045371a744 
								
							 
						 
						
							
							
								
								make DAG isel the default  
							
							 
							
							... 
							
							
							
							llvm-svn: 25282 
							
						 
						
							2006-01-13 18:49:47 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								6bc51c6f34 
								
							 
						 
						
							
							
								
								prevent latent switch creation  
							
							 
							
							... 
							
							
							
							llvm-svn: 24413 
							
						 
						
							2005-11-18 13:57:03 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								54c8fcf303 
								
							 
						 
						
							
							
								
								unbreak the build  
							
							 
							
							... 
							
							
							
							llvm-svn: 24339 
							
						 
						
							2005-11-13 01:45:23 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								ab72424488 
								
							 
						 
						
							
							
								
								enable LSR by default on alpha  
							
							 
							
							... 
							
							
							
							llvm-svn: 24337 
							
						 
						
							2005-11-12 19:21:08 +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  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5c7d731832 
								
							 
						 
						
							
							
								
								If the module has no t-t and the host is an alpha, default to using the Alpha BE  
							
							 
							
							... 
							
							
							
							llvm-svn: 24110 
							
						 
						
							2005-10-30 16:44:01 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								7b69867052 
								
							 
						 
						
							
							
								
								ret 0; works, not much else  
							
							 
							
							... 
							
							
							
							still lots of uglyness.
Maybe calls will come soon.
Fixing the return value of things will be necessary to make alpha work.
llvm-svn: 23832 
							
						 
						
							2005-10-20 00:28:31 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								a7a83b9255 
								
							 
						 
						
							
							
								
								begining alpha subtarget support  
							
							 
							
							... 
							
							
							
							llvm-svn: 23531 
							
						 
						
							2005-09-29 22:54:56 +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  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								3a18a39587 
								
							 
						 
						
							
							
								
								Alpha ABI specifies stack is always 16 byte alligned, and gcc does it, so I will too  
							
							 
							
							... 
							
							
							
							llvm-svn: 22634 
							
						 
						
							2005-08-03 22:33:21 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								c32843ed2b 
								
							 
						 
						
							
							
								
								finally found the gcc defined constants  
							
							 
							
							... 
							
							
							
							llvm-svn: 22502 
							
						 
						
							2005-07-22 21:00:30 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								55d045190e 
								
							 
						 
						
							
							
								
								Alpha JIT (beta)  
							
							 
							
							... 
							
							
							
							llvm-svn: 22500 
							
						 
						
							2005-07-22 20:52:16 +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
							
						 
						
							 
							
							
							
							
								
							
							
								89b8c8d215 
								
							 
						 
						
							
							
								
								Remove trailing whitespace  
							
							 
							
							... 
							
							
							
							llvm-svn: 21424 
							
						 
						
							2005-04-21 23:13:11 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								00348ce902 
								
							 
						 
						
							
							
								
								LSR cleanup patch  
							
							 
							
							... 
							
							
							
							llvm-svn: 20422 
							
						 
						
							2005-03-03 19:03:21 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								ed4b6488a7 
								
							 
						 
						
							
							
								
								Added LSR as a beta pass for alpha  
							
							 
							
							... 
							
							
							
							llvm-svn: 20407 
							
						 
						
							2005-03-02 17:21:38 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								8fb0d5002b 
								
							 
						 
						
							
							
								
								try to match alpha pattern  
							
							 
							
							... 
							
							
							
							llvm-svn: 19972 
							
						 
						
							2005-02-01 20:35:11 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								6d1a96bccc 
								
							 
						 
						
							
							
								
								Alpha JIT prune  
							
							 
							
							... 
							
							
							
							llvm-svn: 19815 
							
						 
						
							2005-01-24 18:48:22 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								3c12772190 
								
							 
						 
						
							
							
								
								include prune and JIT prune  
							
							 
							
							... 
							
							
							
							llvm-svn: 19814 
							
						 
						
							2005-01-24 18:45:41 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								a1b5ca2b9d 
								
							 
						 
						
							
							
								
								Let me introduce you to the early stages of the llvm backend for the alpha processor  
							
							 
							
							... 
							
							
							
							llvm-svn: 19764 
							
						 
						
							2005-01-22 23:41:55 +00:00