Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								0d41d19427 
								
							 
						 
						
							
							
								
								All targets expand BR_JT for now.  
							
							 
							
							... 
							
							
							
							llvm-svn: 31294 
							
						 
						
							2006-10-30 08:02:39 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a6873c0f88 
								
							 
						 
						
							
							
								
								don't dist internal readme  
							
							 
							
							... 
							
							
							
							llvm-svn: 31247 
							
						 
						
							2006-10-28 00:51:15 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								ed32883b27 
								
							 
						 
						
							
							
								
								fix warning about missing newline at end of file  
							
							 
							
							... 
							
							
							
							llvm-svn: 31162 
							
						 
						
							2006-10-24 17:07:11 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b7267bd034 
								
							 
						 
						
							
							
								
								implement uncond branch insertion for sparc to fix regressions from last night  
							
							 
							
							... 
							
							
							
							due to branchfolding
llvm-svn: 31157 
							
						 
						
							2006-10-24 16:39:19 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								ab51cf2e78 
								
							 
						 
						
							
							
								
								Merge ISD::TRUNCSTORE to ISD::STORE. Switch to using StoreSDNode.  
							
							 
							
							... 
							
							
							
							llvm-svn: 30945 
							
						 
						
							2006-10-13 21:14:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d376e9f4ac 
								
							 
						 
						
							
							
								
								adjcallstackup/down clobbers the stack pointer  
							
							 
							
							... 
							
							
							
							llvm-svn: 30909 
							
						 
						
							2006-10-12 17:57:58 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								577ef7694e 
								
							 
						 
						
							
							
								
								Add properties to ComplexPattern.  
							
							 
							
							... 
							
							
							
							llvm-svn: 30891 
							
						 
						
							2006-10-11 21:03:53 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								e71fe34d75 
								
							 
						 
						
							
							
								
								Reflects ISD::LOAD / ISD::LOADX / LoadSDNode changes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 30844 
							
						 
						
							2006-10-09 20:57:25 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								df9ac47e5e 
								
							 
						 
						
							
							
								
								Make use of getStore().  
							
							 
							
							... 
							
							
							
							llvm-svn: 30759 
							
						 
						
							2006-10-05 23:01:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d4d255a408 
								
							 
						 
						
							
							
								
								Use getSectionForFunction  
							
							 
							
							... 
							
							
							
							llvm-svn: 30739 
							
						 
						
							2006-10-05 02:48:40 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								5d9fd977d3 
								
							 
						 
						
							
							
								
								Combine ISD::EXTLOAD, ISD::SEXTLOAD, ISD::ZEXTLOAD into ISD::LOADX. Add an  
							
							 
							
							... 
							
							
							
							extra operand to LOADX to specify the exact value extension type.
llvm-svn: 30714 
							
						 
						
							2006-10-04 00:56:09 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								d61d39ec53 
								
							 
						 
						
							
							
								
								Adding dllimport, dllexport and external weak linkage types.  
							
							 
							
							... 
							
							
							
							DLL* linkages got full (I hope) codegeneration support in C & both x86
assembler backends.
External weak linkage added for future use, we don't provide any
codegeneration, etc. support for it.
llvm-svn: 30374 
							
						 
						
							2006-09-14 18:23:27 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								9a083a4121 
								
							 
						 
						
							
							
								
								Reflects MachineConstantPoolEntry changes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 30279 
							
						 
						
							2006-09-12 21:04:05 +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  
						
					 
				
					
						
							
							
								 
								Jim Laskey
							
						 
						
							 
							
							
							
							
								
							
							
								0e83541f8b 
								
							 
						 
						
							
							
								
								Break out target asm info into separate files.  
							
							 
							
							... 
							
							
							
							llvm-svn: 30161 
							
						 
						
							2006-09-07 22:05:02 +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
							
						 
						
							 
							
							
							
							
								
							
							
								af23f9b5f6 
								
							 
						 
						
							
							
								
								Completely eliminate def&use operands.  Now a register operand is EITHER a  
							
							 
							
							... 
							
							
							
							def operand or a use operand.
llvm-svn: 30109 
							
						 
						
							2006-09-05 02:31:13 +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  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bad9d2ee49 
								
							 
						 
						
							
							
								
								Use a couple of multiclass patterns to factor some integer ops.  
							
							 
							
							... 
							
							
							
							llvm-svn: 30039 
							
						 
						
							2006-09-01 22:28:02 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								38e6d1d5af 
								
							 
						 
						
							
							
								
								remove a bunch of comments  
							
							 
							
							... 
							
							
							
							llvm-svn: 30038 
							
						 
						
							2006-09-01 22:16:22 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								34b70eea5c 
								
							 
						 
						
							
							
								
								SelectNodeTo now returns a SDNode*.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29901 
							
						 
						
							2006-08-26 08:00:10 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								61413a3d72 
								
							 
						 
						
							
							
								
								Select() no longer require Result operand by reference.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29898 
							
						 
						
							2006-08-26 05:34:46 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								ab8297f92d 
								
							 
						 
						
							
							
								
								Match tblgen changes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29895 
							
						 
						
							2006-08-26 01:07:58 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								60f1eecd3a 
								
							 
						 
						
							
							
								
								Constify some methods.  Patch provided by Anton Vayvod, thanks!  
							
							 
							
							... 
							
							
							
							llvm-svn: 29756 
							
						 
						
							2006-08-17 22:00:08 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								63d178f473 
								
							 
						 
						
							
							
								
								SelectNodeTo() may return a SDOperand that is different from the input.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29726 
							
						 
						
							2006-08-16 07:30:09 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								bd1c5a8fb8 
								
							 
						 
						
							
							
								
								Match tablegen changes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29604 
							
						 
						
							2006-08-11 09:08:15 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								81b645a76b 
								
							 
						 
						
							
							
								
								CALLSEQ_* produces chain even if that's not needed.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29603 
							
						 
						
							2006-08-11 09:03:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c24a1d3093 
								
							 
						 
						
							
							
								
								Start eliminating temporary vectors used to create DAG nodes.  Instead, pass  
							
							 
							
							... 
							
							
							
							in the start of an array and a count of operands where applicable.  In many
cases, the number of operands is known, so this static array can be allocated
on the stack, avoiding the heap.  In many other cases, a SmallVector can be
used, which has the same benefit in the common cases.
I updated a lot of code calling getNode that takes a vector, but ran out of
time.  The rest of the code should be updated, and these methods should be
removed.
We should also do the same thing to eliminate the methods that take a
vector of MVT::ValueTypes.
It would be extra nice to convert the dagiselemitter to avoid creating vectors
for operands when calling getTargetNode.
llvm-svn: 29566 
							
						 
						
							2006-08-08 02:23:42 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								b9d34bd098 
								
							 
						 
						
							
							
								
								Match tablegen isel changes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29549 
							
						 
						
							2006-08-07 22:28:20 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								b572401bea 
								
							 
						 
						
							
							
								
								Remove InFlightSet hack. No longer needed.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29373 
							
						 
						
							2006-07-28 00:47:19 +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  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								94bb93f8f7 
								
							 
						 
						
							
							
								
								Type of extract_element index operand should be iPTR.  
							
							 
							
							... 
							
							
							
							llvm-svn: 28797 
							
						 
						
							2006-06-15 08:18:06 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								a3add0fea8 
								
							 
						 
						
							
							
								
								Change RET node to include signness information of the return values. i.e.  
							
							 
							
							... 
							
							
							
							RET chain, value1, sign1, value2, sign2, ...
llvm-svn: 28510 
							
						 
						
							2006-05-26 23:10:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								dc1614d93e 
								
							 
						 
						
							
							
								
								Add support for the missing FP condition codes  
							
							 
							
							... 
							
							
							
							llvm-svn: 28482 
							
						 
						
							2006-05-25 22:26:02 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								4af59dac0b 
								
							 
						 
						
							
							
								
								Assert if InflightSet is not cleared after instruction selecting a BB.  
							
							 
							
							... 
							
							
							
							llvm-svn: 28459 
							
						 
						
							2006-05-25 00:24:28 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								1a8e74d113 
								
							 
						 
						
							
							
								
								Clear HandleMap and ReplaceMap after instruction selection. Or it may cause  
							
							 
							
							... 
							
							
							
							non-deterministic behavior.
llvm-svn: 28454 
							
						 
						
							2006-05-24 20:46:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								aa2372562e 
								
							 
						 
						
							
							
								
								Patches to make the LLVM sources more -pedantic clean.  Patch provided  
							
							 
							
							... 
							
							
							
							by Anton Korobeynikov!  This is a step towards closing PR786.
llvm-svn: 28447 
							
						 
						
							2006-05-24 17:04:05 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								f7db631b7d 
								
							 
						 
						
							
							
								
								Sparc is big-endian.  
							
							 
							
							... 
							
							
							
							llvm-svn: 28415 
							
						 
						
							2006-05-20 00:49:30 +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  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								305c49579c 
								
							 
						 
						
							
							
								
								getCalleeSaveRegs and getCalleeSaveRegClasses are no long TableGen'd.  
							
							 
							
							... 
							
							
							
							llvm-svn: 28378 
							
						 
						
							2006-05-18 00:12:58 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								dcec882286 
								
							 
						 
						
							
							
								
								Remove PointerType from class Target  
							
							 
							
							... 
							
							
							
							llvm-svn: 28368 
							
						 
						
							2006-05-17 21:20:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9cd2ef34e6 
								
							 
						 
						
							
							
								
								Remove dead variable.  
							
							 
							
							... 
							
							
							
							llvm-svn: 28247 
							
						 
						
							2006-05-12 17:31:21 +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  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8488ba2e41 
								
							 
						 
						
							
							
								
								Split SwitchSection into SwitchTo{Text|Data}Section methods.  
							
							 
							
							... 
							
							
							
							llvm-svn: 28184 
							
						 
						
							2006-05-09 04:59:56 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8587f8885d 
								
							 
						 
						
							
							
								
								Some notes and thoughts to myself  
							
							 
							
							... 
							
							
							
							llvm-svn: 28182 
							
						 
						
							2006-05-09 04:58:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								10b71c0d08 
								
							 
						 
						
							
							
								
								Rename MO_VirtualRegister -> MO_Register.  Clean up immediate handling.  
							
							 
							
							... 
							
							
							
							llvm-svn: 28104 
							
						 
						
							2006-05-04 18:05:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								10d6341618 
								
							 
						 
						
							
							
								
								Move some methods out of MachineInstr into MachineOperand  
							
							 
							
							... 
							
							
							
							llvm-svn: 28102 
							
						 
						
							2006-05-04 17:52:23 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fef7a2d0f5 
								
							 
						 
						
							
							
								
								There shalt be only one "immediate" operand type!  
							
							 
							
							... 
							
							
							
							llvm-svn: 28099 
							
						 
						
							2006-05-04 17:21:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								940cc978ef 
								
							 
						 
						
							
							
								
								Remove a bunch more SparcV9 specific stuff  
							
							 
							
							... 
							
							
							
							llvm-svn: 28093 
							
						 
						
							2006-05-04 01:15:02 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9f6639b64d 
								
							 
						 
						
							
							
								
								Remove some more unused stuff from MachineInstr that was leftover from V9.  
							
							 
							
							... 
							
							
							
							llvm-svn: 28091 
							
						 
						
							2006-05-04 00:44:25 +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
							
						 
						
							 
							
							
							
							
								
							
							
								b9d4f8324d 
								
							 
						 
						
							
							
								
								Extend printBasicBlockLabel a bit so that it can be used to print all  
							
							 
							
							... 
							
							
							
							basic block labels, consolidating the code to do so in one place for each
target.
llvm-svn: 28050 
							
						 
						
							2006-05-02 05:37:32 +00:00  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								4ca2ea5b43 
								
							 
						 
						
							
							
								
								JumpTable support!  What this represents is working asm and jit support for  
							
							 
							
							... 
							
							
							
							x86 and ppc for 100% dense switch statements when relocations are non-PIC.
This support will be extended and enhanced in the coming days to support
PIC, and less dense forms of jump tables.
llvm-svn: 27947 
							
						 
						
							2006-04-22 18:53:45 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								9857229aba 
								
							 
						 
						
							
							
								
								Add the README files to the distribution.  
							
							 
							
							... 
							
							
							
							llvm-svn: 27651 
							
						 
						
							2006-04-13 06:39:24 +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  
						
					 
				
					
						
							
							
								 
								Jim Laskey
							
						 
						
							 
							
							
							
							
								
							
							
								2d7298c362 
								
							 
						 
						
							
							
								
								Foundation for call frame information.  
							
							 
							
							... 
							
							
							
							llvm-svn: 27491 
							
						 
						
							2006-04-07 16:34:46 +00:00  
						
					 
				
					
						
							
							
								 
								Jim Laskey
							
						 
						
							 
							
							
							
							
								
							
							
								d1aa1638c6 
								
							 
						 
						
							
							
								
								Expose base register for DwarfWriter.  Refactor code accordingly.  
							
							 
							
							... 
							
							
							
							llvm-svn: 27225 
							
						 
						
							2006-03-28 13:48:33 +00:00  
						
					 
				
					
						
							
							
								 
								Jim Laskey
							
						 
						
							 
							
							
							
							
								
							
							
								fa53b276d0 
								
							 
						 
						
							
							
								
								Translate llvm target registers to dwarf register numbers properly.  
							
							 
							
							... 
							
							
							
							llvm-svn: 27180 
							
						 
						
							2006-03-27 20:18:45 +00:00  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								ed728c1291 
								
							 
						 
						
							
							
								
								SelectionDAGISel can now natively handle Switch instructions, in the same  
							
							 
							
							... 
							
							
							
							manner that the LowerSwitch LLVM to LLVM pass does: emitting a binary
search tree of basic blocks.  The new approach has several advantages:
it is faster, it generates significantly smaller code in many cases, and
it paves the way for implementing dense switch tables as a jump table by
handling switches directly in the instruction selector.
This functionality is currently only enabled on x86, but should be safe for
every target.  In anticipation of making it the default, the cfg is now
properly updated in the x86, ppc, and sparc select lowering code.
llvm-svn: 27156 
							
						 
						
							2006-03-27 01:32:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5d70a7c4a5 
								
							 
						 
						
							
							
								
								#include Intrinsics.h into all dag isels  
							
							 
							
							... 
							
							
							
							llvm-svn: 27109 
							
						 
						
							2006-03-25 06:47:10 +00:00  
						
					 
				
					
						
							
							
								 
								Jim Laskey
							
						 
						
							 
							
							
							
							
								
							
							
								bb84eae239 
								
							 
						 
						
							
							
								
								D'oh - should be even numbered.  
							
							 
							
							... 
							
							
							
							llvm-svn: 27088 
							
						 
						
							2006-03-24 22:48:02 +00:00  
						
					 
				
					
						
							
							
								 
								Jim Laskey
							
						 
						
							 
							
							
							
							
								
							
							
								f0729b4067 
								
							 
						 
						
							
							
								
								Add dwarf register numbering to register data.  
							
							 
							
							... 
							
							
							
							llvm-svn: 27081 
							
						 
						
							2006-03-24 21:15:58 +00:00  
						
					 
				
					
						
							
							
								 
								Jim Laskey
							
						 
						
							 
							
							
							
							
								
							
							
								3c43609f1f 
								
							 
						 
						
							
							
								
								Add support to locate local variables in frames (early version.)  
							
							 
							
							... 
							
							
							
							llvm-svn: 26994 
							
						 
						
							2006-03-23 18:12: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  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								bb01d4f272 
								
							 
						 
						
							
							
								
								Remove BRTWOWAY*  
							
							 
							
							... 
							
							
							
							Make the PPC backend not dependent on BRTWOWAY_CC and make the branch
selector smarter about the code it generates, fixing a case in the
readme.
llvm-svn: 26814 
							
						 
						
							2006-03-17 01:40:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e363fdf318 
								
							 
						 
						
							
							
								
								Add support for 'special' llvm globals like debug info and static ctors/dtors.  
							
							 
							
							... 
							
							
							
							llvm-svn: 26628 
							
						 
						
							2006-03-09 06:14:35 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9c7f50376a 
								
							 
						 
						
							
							
								
								Copysign needs to be expanded everywhere.  Note that Alpha and IA64 should  
							
							 
							
							... 
							
							
							
							implement copysign as a native op if they have it.
llvm-svn: 26541 
							
						 
						
							2006-03-05 05:08:37 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ec185f7843 
								
							 
						 
						
							
							
								
								Don't print constant initializers, they may span lines now.  
							
							 
							
							... 
							
							
							
							llvm-svn: 26403 
							
						 
						
							2006-02-27 20:09:23 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								747cf60696 
								
							 
						 
						
							
							
								
								The HasNoV9 hack isn't needed here, now that tblgen knows that CustomDAGSchedInserter  
							
							 
							
							... 
							
							
							
							instructions are expensive.
llvm-svn: 26298 
							
						 
						
							2006-02-21 18:04:32 +00:00  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								5965bd19f8 
								
							 
						 
						
							
							
								
								kill ADD_PARTS & SUB_PARTS and replace them with fancy new ADDC, ADDE, SUBC  
							
							 
							
							... 
							
							
							
							and SUBE nodes that actually expose what's going on and allow for
significant simplifications in the targets.
llvm-svn: 26255 
							
						 
						
							2006-02-17 05:43:56 +00:00  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								8a77efe4f7 
								
							 
						 
						
							
							
								
								Rework the SelectionDAG-based implementations of SimplifyDemandedBits  
							
							 
							
							... 
							
							
							
							and ComputeMaskedBits to match the new improved versions in instcombine.
Tested against all of multisource/benchmarks on ppc.
llvm-svn: 26238 
							
						 
						
							2006-02-16 21:11:51 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6db414e8de 
								
							 
						 
						
							
							
								
								Sparc actually *DOES* have a directive for emitting zeros.  In fact, it requires  
							
							 
							
							... 
							
							
							
							it, because this:
.bss
X:
.byte 0
results in the assembler warning: "initialization in bss segment".  Annoying.
llvm-svn: 26204 
							
						 
						
							2006-02-15 07:07:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a9d0b5800a 
								
							 
						 
						
							
							
								
								Fix SingleSource/Regression/C/2004-08-12-InlinerAndAllocas.c on Sparc.  
							
							 
							
							... 
							
							
							
							The ABI specifies that there is a register save area at the bottom of the
stack, which means the actual used pointer needs to be an offset from
the subtracted value.
llvm-svn: 26202 
							
						 
						
							2006-02-15 06:41:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								62c3484e43 
								
							 
						 
						
							
							
								
								Switch targets over to using SelectionDAG::getCALLSEQ_START to create  
							
							 
							
							... 
							
							
							
							CALLSEQ_START nodes.
llvm-svn: 26143 
							
						 
						
							2006-02-13 09:00:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fcb8a3aa76 
								
							 
						 
						
							
							
								
								Use the auto-generated call matcher.  Remove a broken impl of the frameaddr/returnaddr  
							
							 
							
							... 
							
							
							
							intrinsics.
Autogen frameindex matcher
llvm-svn: 26107 
							
						 
						
							2006-02-10 07:35:42 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0c4dea4cb2 
								
							 
						 
						
							
							
								
								Update to new-style flags usage, simplifying the .td file  
							
							 
							
							... 
							
							
							
							llvm-svn: 26106 
							
						 
						
							2006-02-10 06:58:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4c0bd5bcdf 
								
							 
						 
						
							
							
								
								Done  
							
							 
							
							... 
							
							
							
							llvm-svn: 26091 
							
						 
						
							2006-02-09 20:00:19 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5259aa1c86 
								
							 
						 
						
							
							
								
								Enable LSR by default for SPARC: it is a clear win.  
							
							 
							
							... 
							
							
							
							llvm-svn: 26090 
							
						 
						
							2006-02-09 19:59:55 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								d1b82d8db0 
								
							 
						 
						
							
							
								
								Match getTargetNode() changes (now return SDNode* instead of SDOperand).  
							
							 
							
							... 
							
							
							
							llvm-svn: 26085 
							
						 
						
							2006-02-09 07:17:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c75d5b093d 
								
							 
						 
						
							
							
								
								add an option to turn on LSR.  
							
							 
							
							... 
							
							
							
							llvm-svn: 26080 
							
						 
						
							2006-02-09 05:06:36 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f6190821da 
								
							 
						 
						
							
							
								
								Adjust to MachineConstantPool interface change: instead of keeping a  
							
							 
							
							... 
							
							
							
							value/alignment pair for each constant, keep a value/offset pair.
llvm-svn: 26078 
							
						 
						
							2006-02-09 04:46:04 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								6dc90ca172 
								
							 
						 
						
							
							
								
								Change Select() from  
							
							 
							
							... 
							
							
							
							SDOperand Select(SDOperand N);
to
void Select(SDOperand &Result, SDOperand N);
llvm-svn: 26067 
							
						 
						
							2006-02-09 00:37:58 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								463fa70eaa 
								
							 
						 
						
							
							
								
								Fix the Sparc backend with Evan's recent tblgen changes  
							
							 
							
							... 
							
							
							
							llvm-svn: 26009 
							
						 
						
							2006-02-05 08:35:50 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								a28b764886 
								
							 
						 
						
							
							
								
								Use SelectRoot() as the entry to any tblgen based isel.  
							
							 
							
							... 
							
							
							
							llvm-svn: 25998 
							
						 
						
							2006-02-05 06:51:51 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a3e5b2c61c 
								
							 
						 
						
							
							
								
								remove V8 reference  
							
							 
							
							... 
							
							
							
							llvm-svn: 25991 
							
						 
						
							2006-02-05 06:32:59 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								158e1f519c 
								
							 
						 
						
							
							
								
								Rename SPARC V8 target to be the LLVM SPARC target.  
							
							 
							
							... 
							
							
							
							llvm-svn: 25985 
							
						 
						
							2006-02-05 05:50:24 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								94e95d2b3e 
								
							 
						 
						
							
							
								
								Great renaming: Sparc --> SparcV9  
							
							 
							
							... 
							
							
							
							llvm-svn: 11826 
							
						 
						
							2004-02-25 18:44:15 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								10a32da382 
								
							 
						 
						
							
							
								
								FunctionLiveVarInfo.h moved: include/llvm/CodeGen -> lib/Target/Sparc/LiveVar  
							
							 
							
							... 
							
							
							
							llvm-svn: 11804 
							
						 
						
							2004-02-24 19:46:00 +00:00  
						
					 
				
					
						
							
							
								 
								Alkis Evlogimenos
							
						 
						
							 
							
							
							
							
								
							
							
								8358cc573d 
								
							 
						 
						
							
							
								
								Move MOTy::UseType enum into MachineOperand. This eliminates the  
							
							 
							
							... 
							
							
							
							switch statements in the constructors and simplifies the
implementation of the getUseType() member function. You will have to
specify defs using MachineOperand::Def instead of MOTy::Def though
(similarly for Use and UseAndDef).
llvm-svn: 11715 
							
						 
						
							2004-02-22 19:23:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								76b2ff4ded 
								
							 
						 
						
							
							
								
								Adjustments to support the new ConstantAggregateZero class  
							
							 
							
							... 
							
							
							
							llvm-svn: 11474 
							
						 
						
							2004-02-15 05:55:15 +00:00  
						
					 
				
					
						
							
							
								 
								Alkis Evlogimenos
							
						 
						
							 
							
							
							
							
								
							
							
								5a92240270 
								
							 
						 
						
							
							
								
								Use newly added next() and prior() utility functions.  
							
							 
							
							... 
							
							
							
							llvm-svn: 11430 
							
						 
						
							2004-02-14 01:18:34 +00:00  
						
					 
				
					
						
							
							
								 
								Alkis Evlogimenos
							
						 
						
							 
							
							
							
							
								
							
							
								8cdd0215bf 
								
							 
						 
						
							
							
								
								Remove getAllocatedRegNum(). Use getReg() instead.  
							
							 
							
							... 
							
							
							
							llvm-svn: 11393 
							
						 
						
							2004-02-13 21:01:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								cbf0667743 
								
							 
						 
						
							
							
								
								Squish warning  
							
							 
							
							... 
							
							
							
							llvm-svn: 11375 
							
						 
						
							2004-02-13 16:14:50 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								c07b64f3cb 
								
							 
						 
						
							
							
								
								Remove this MachineOpCodeFlags assertion - its test can never be false.  
							
							 
							
							... 
							
							
							
							llvm-svn: 11342 
							
						 
						
							2004-02-12 04:01:07 +00:00  
						
					 
				
					
						
							
							
								 
								Alkis Evlogimenos
							
						 
						
							 
							
							
							
							
								
							
							
								80da865f77 
								
							 
						 
						
							
							
								
								Change MachineBasicBlock's vector of MachineInstr pointers into an  
							
							 
							
							... 
							
							
							
							ilist of MachineInstr objects. This allows constant time removal and
insertion of MachineInstr instances from anywhere in each
MachineBasicBlock. It also allows for constant time splicing of
MachineInstrs into or out of MachineBasicBlocks.
llvm-svn: 11340 
							
						 
						
							2004-02-12 02:27:10 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								b22186adf0 
								
							 
						 
						
							
							
								
								MachineInstr::getOpCode() --> getOpcode() in SPARC back-end.  
							
							 
							
							... 
							
							
							
							llvm-svn: 11335 
							
						 
						
							2004-02-11 20:47:34 +00:00  
						
					 
				
					
						
							
							
								 
								Alkis Evlogimenos
							
						 
						
							 
							
							
							
							
								
							
							
								8f4142616d 
								
							 
						 
						
							
							
								
								Increase constness.  
							
							 
							
							... 
							
							
							
							llvm-svn: 11322 
							
						 
						
							2004-02-11 17:55:09 +00:00  
						
					 
				
					
						
							
							
								 
								Alkis Evlogimenos
							
						 
						
							 
							
							
							
							
								
							
							
								2f21547208 
								
							 
						 
						
							
							
								
								Remove assert as the only integer registers on the sparc are physical.  
							
							 
							
							... 
							
							
							
							llvm-svn: 11317 
							
						 
						
							2004-02-11 06:04:51 +00:00  
						
					 
				
					
						
							
							
								 
								Alkis Evlogimenos
							
						 
						
							 
							
							
							
							
								
							
							
								fcb99fe370 
								
							 
						 
						
							
							
								
								Fix previous broken commit. A MachineOperand may have opType ==  
							
							 
							
							... 
							
							
							
							MO_VirtualRegister but if the register number is one of a physical
register is it considered as a physical register.
llvm-svn: 11315 
							
						 
						
							2004-02-11 05:55:00 +00:00  
						
					 
				
					
						
							
							
								 
								Alkis Evlogimenos
							
						 
						
							 
							
							
							
							
								
							
							
								adcc14d96a 
								
							 
						 
						
							
							
								
								Remove assert as it is meaningless. MachineOperands can be tagged as  
							
							 
							
							... 
							
							
							
							MO_VirtualRegister but actually be representing a physical register.
llvm-svn: 11310 
							
						 
						
							2004-02-11 04:52:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1cb6d2697d 
								
							 
						 
						
							
							
								
								Stop using this method  
							
							 
							
							... 
							
							
							
							llvm-svn: 11282 
							
						 
						
							2004-02-10 21:12:06 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2d5feb5e04 
								
							 
						 
						
							
							
								
								Remvoe use of MO.isVirtualRegister(), turn an assertion into an assert()  
							
							 
							
							... 
							
							
							
							llvm-svn: 11280 
							
						 
						
							2004-02-10 20:47:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2aea68ccfd 
								
							 
						 
						
							
							
								
								Remove use of isPhysicalRegister  
							
							 
							
							... 
							
							
							
							llvm-svn: 11277 
							
						 
						
							2004-02-10 20:35:42 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ff04d76c57 
								
							 
						 
						
							
							
								
								Fix PR228: [sparc] Boolean constants are emitted as true and false  
							
							 
							
							... 
							
							
							
							I will observe that the concept of using WriteAsOperand is completely broken,
but then we all knew that, didn't we?
llvm-svn: 11255 
							
						 
						
							2004-02-10 05:16:44 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								7f7a842bd6 
								
							 
						 
						
							
							
								
								Doxygenify comments.  
							
							 
							
							... 
							
							
							
							llvm-svn: 11252 
							
						 
						
							2004-02-09 23:18:42 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								4dc5478fbc 
								
							 
						 
						
							
							
								
								Fix PR#226: When emitting padding, always emit it as bytes.  Bytes can be  
							
							 
							
							... 
							
							
							
							placed into any alignment situation.
llvm-svn: 11247 
							
						 
						
							2004-02-09 22:15:33 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								f429a0e6dd 
								
							 
						 
						
							
							
								
								Add a new (static inline) std::ostream& << AllocInfo& method. Use it.  
							
							 
							
							... 
							
							
							
							llvm-svn: 11002 
							
						 
						
							2004-01-28 19:05:43 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								929d1d1ca1 
								
							 
						 
						
							
							
								
								Use the LLVM standard name mangling infrastructure instead of reinventing the  
							
							 
							
							... 
							
							
							
							wheel.
llvm-svn: 10891 
							
						 
						
							2004-01-15 22:44:19 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								16d4009a1b 
								
							 
						 
						
							
							
								
								Include TargetRegInfo.h and declare SparcTargetMachine forward, to make this  
							
							 
							
							... 
							
							
							
							header more easily includable.
llvm-svn: 10880 
							
						 
						
							2004-01-15 18:17:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								93cd755c05 
								
							 
						 
						
							
							
								
								Eliminate the isStringCompatible function, using ConstantArray::isString.  
							
							 
							
							... 
							
							
							
							It's not clear why the code was looking for signed chars < 0, but it can't
matter to the assembler anyway, so the check goes away.  This also fixes
compatibility with arrays of [us]byte that have constantexprs in them.
Also slightly restructure some code to be cleaner.
llvm-svn: 10854 
							
						 
						
							2004-01-14 17:15:17 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								66f33ff6c2 
								
							 
						 
						
							
							
								
								Finegrainify namespacification  
							
							 
							
							... 
							
							
							
							Using the SlotCalculator is total overkill for this file, a simple map
will suffice.  Why doesn't this use the NameMangler interface?
llvm-svn: 10823 
							
						 
						
							2004-01-13 21:27:59 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								dbd9c33e5e 
								
							 
						 
						
							
							
								
								Remove dump-input option.  
							
							 
							
							... 
							
							
							
							Make addPassesToEmitAssembly() look slightly more like addPassesToJITCompile().
llvm-svn: 10818 
							
						 
						
							2004-01-13 19:26:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fe2aafe08a 
								
							 
						 
						
							
							
								
								Eliminate use of ConstantHandling itf  
							
							 
							
							... 
							
							
							
							llvm-svn: 10782 
							
						 
						
							2004-01-12 18:08:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4ee36320f4 
								
							 
						 
						
							
							
								
								Move sparc-specific livevar code into lib/Target/Sparc  
							
							 
							
							... 
							
							
							
							llvm-svn: 10733 
							
						 
						
							2004-01-09 18:15:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bb6fa4b327 
								
							 
						 
						
							
							
								
								Fix more incestuous #includage.  
							
							 
							
							... 
							
							
							
							llvm-svn: 10732 
							
						 
						
							2004-01-09 16:17:09 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3d874aebc2 
								
							 
						 
						
							
							
								
								Move InstrSelection into lib/Target/Sparc, as it's sparc specific.  This  
							
							 
							
							... 
							
							
							
							makes the incestuous #include'ing of sparc internal headers much less
disturbing.  :)
llvm-svn: 10729 
							
						 
						
							2004-01-09 06:22:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b9c7999881 
								
							 
						 
						
							
							
								
								Move lib/Codegen/RegAlloc into lib/Target/Sparc, as it is sparc specific  
							
							 
							
							... 
							
							
							
							llvm-svn: 10728 
							
						 
						
							2004-01-09 06:17:12 +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
							
						 
						
							 
							
							
							
							
								
							
							
								dfc5631bfd 
								
							 
						 
						
							
							
								
								Eliminate some code that is not needed now that we have the intrinsic lowering pass  
							
							 
							
							... 
							
							
							
							llvm-svn: 10628 
							
						 
						
							2003-12-28 09:46:33 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								69aa1ccb07 
								
							 
						 
						
							
							
								
								Really release memory used by functions. Patch by Chris.  
							
							 
							
							... 
							
							
							
							llvm-svn: 10572 
							
						 
						
							2003-12-22 03:47:58 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9a4898939a 
								
							 
						 
						
							
							
								
								Hoist some sparc specific code into the sparc target  
							
							 
							
							... 
							
							
							
							llvm-svn: 10554 
							
						 
						
							2003-12-20 09:17:40 +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  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								ee158ca708 
								
							 
						 
						
							
							
								
								* Converted C-style comments to C++  
							
							 
							
							... 
							
							
							
							* Doxygenified comments
* Reordered #includes
llvm-svn: 10503 
							
						 
						
							2003-12-17 22:08:20 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								0f42585924 
								
							 
						 
						
							
							
								
								Reordered #includes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 10502 
							
						 
						
							2003-12-17 22:06:28 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								426275b96d 
								
							 
						 
						
							
							
								
								Doxygenified some comments, reduced extraneous space.  
							
							 
							
							... 
							
							
							
							llvm-svn: 10501 
							
						 
						
							2003-12-17 22:06:08 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								b01a80aa94 
								
							 
						 
						
							
							
								
								Reorganized the Sparc backend to be more modular -- each different  
							
							 
							
							... 
							
							
							
							implementation of a Target{RegInfo, InstrInfo, Machine, etc} now has a separate
header and a separate implementation file.
This means that instead of a massive SparcInternals.h that forces a
recompilation of the whole target whenever a minor detail is changed, you should
only recompile a few files.
Note that SparcInternals.h is still around; its contents should be minimized.
llvm-svn: 10500 
							
						 
						
							2003-12-17 22:04:00 +00:00  
						
					 
				
					
						
							
							
								 
								Alkis Evlogimenos
							
						 
						
							 
							
							
							
							
								
							
							
								aaba4639f8 
								
							 
						 
						
							
							
								
								Change interface of MachineOperand as follows:  
							
							 
							
							... 
							
							
							
							a) remove opIsUse(), opIsDefOnly(), opIsDefAndUse()
    b) add isUse(), isDef()
    c) rename opHiBits32() to isHiBits32(),
              opLoBits32() to isLoBits32(),
              opHiBits64() to isHiBits64(),
              opLoBits64() to isLoBits64().
This results to much more readable code, for example compare
"op.opIsDef() || op.opIsDefAndUse()" to "op.isDef()" a pattern used
very often in the code.
llvm-svn: 10461 
							
						 
						
							2003-12-14 13:24:17 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								d181666052 
								
							 
						 
						
							
							
								
								* Add code to flush the ICache, which any self-respecting SMC must do  
							
							 
							
							... 
							
							
							
							* Restore registers *after* everything else to avoid any possible side effects
This fixes McCat-imp.
llvm-svn: 10147 
							
						 
						
							2003-11-21 23:48:54 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								0e2e1f121a 
								
							 
						 
						
							
							
								
								Include the file before we close the llvm namespace.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9954 
							
						 
						
							2003-11-13 00:23:05 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								6675f982de 
								
							 
						 
						
							
							
								
								Substantially re-organized this file:  
							
							 
							
							... 
							
							
							
							* There is now only one pass to print out assembly instead of two
* It is a FunctionPass
* The Module-level printing of globals is now in doFinalization() method of the
  FunctionPass
* The code has been reformatted to follow LLVM coding standards
* Some comments, not all, were doxygenified
* Last but not least, the function to create an instance of this pass is also no
  longer a method in the UltraSparc class.
llvm-svn: 9953 
							
						 
						
							2003-11-13 00:22:19 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								2558e8c852 
								
							 
						 
						
							
							
								
								The function to create an instance of this pass is no longer a method of  
							
							 
							
							... 
							
							
							
							the UltraSparc class.
llvm-svn: 9952 
							
						 
						
							2003-11-13 00:19:02 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								167026f8c8 
								
							 
						 
						
							
							
								
								The functions to create new instances of passes are no longer methods in the  
							
							 
							
							... 
							
							
							
							UltraSparc class. Comments are also doxygen-compatible now.
llvm-svn: 9951 
							
						 
						
							2003-11-13 00:17:20 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								b26c6fa4eb 
								
							 
						 
						
							
							
								
								* Put command-line switches in their own namespace  
							
							 
							
							... 
							
							
							
							* Pass creation functions are no longer in the UltraSparc class
llvm-svn: 9950 
							
						 
						
							2003-11-13 00:16:28 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								893e793739 
								
							 
						 
						
							
							
								
								Force a dependency on the .inc file, which must be generated!  
							
							 
							
							... 
							
							
							
							llvm-svn: 9949 
							
						 
						
							2003-11-13 00:05:09 +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  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								75bc7cec4b 
								
							 
						 
						
							
							
								
								Fix PR103  
							
							 
							
							... 
							
							
							
							llvm-svn: 9830 
							
						 
						
							2003-11-09 07:08:34 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								f8cb2419ee 
								
							 
						 
						
							
							
								
								Fix two typos I found in comments.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9806 
							
						 
						
							2003-11-08 18:12:24 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								a1eefa40dc 
								
							 
						 
						
							
							
								
								For some reason, LICM and GCSE like to crash the FunctionPassManager when they  
							
							 
							
							... 
							
							
							
							are being added as FunctionPasses... Sigh.
llvm-svn: 9798 
							
						 
						
							2003-11-08 00:01:39 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								508cc3e7a9 
								
							 
						 
						
							
							
								
								Implement branching to a PC-relative constant (not a BasicBlock).  
							
							 
							
							... 
							
							
							
							llvm-svn: 9793 
							
						 
						
							2003-11-07 21:07:30 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								3b2343eae9 
								
							 
						 
						
							
							
								
								PreSelection is not optional, it performs a necessary and vital transformation  
							
							 
							
							... 
							
							
							
							for the Sparc backend: breaking up constant expressions. Thus, we cannot have it
guarded by a conditional, it should never be disabled.
Also, it's now available for the JIT since it is a FunctionPass.
llvm-svn: 9791 
							
						 
						
							2003-11-07 20:33:25 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								2c3068026a 
								
							 
						 
						
							
							
								
								Switch to emitting MachineConstantPool the way it was meant to be done.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9777 
							
						 
						
							2003-11-07 18:06:26 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								2133b0513d 
								
							 
						 
						
							
							
								
								Switch to using the standard representation of the constant pool -- namely, the  
							
							 
							
							... 
							
							
							
							MachineConstantPool. This involved refactoring the two classes involved in
printing out Sparc assembly. In fact, they should share all this code anyway.
llvm-svn: 9776 
							
						 
						
							2003-11-07 17:45:28 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								faa42d264f 
								
							 
						 
						
							
							
								
								We accept TargetMachine as a const reference.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9775 
							
						 
						
							2003-11-07 17:44:18 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								bd4a8ed139 
								
							 
						 
						
							
							
								
								PreSelection and PeepholeOpts are now FunctionPasses.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9774 
							
						 
						
							2003-11-07 17:43:43 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								81c748c1e2 
								
							 
						 
						
							
							
								
								* Stop making a global for each constant that cannot live in an instruction;  
							
							 
							
							... 
							
							
							
							it will be converted to a MachineConstantPool index during instruction
  selection
* This is now eligible to become a FunctionPass since it does not have any side
  effects outside of the function it is processing.
llvm-svn: 9773 
							
						 
						
							2003-11-07 17:31:22 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								bf9ed7ac1f 
								
							 
						 
						
							
							
								
								* Use the MachineConstantPool for storing constants instead of a hash_set;  
							
							 
							
							... 
							
							
							
							* Do not create new globals for constants!
Also, order #includes as per coding style guide
llvm-svn: 9772 
							
						 
						
							2003-11-07 17:29:48 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								c16149d7dd 
								
							 
						 
						
							
							
								
								Use `basename $<` to get just the filename, not full path, for ease of reading.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9770 
							
						 
						
							2003-11-07 17:26:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5285e9c9a0 
								
							 
						 
						
							
							
								
								Hopefully this will fix PR98  
							
							 
							
							... 
							
							
							
							llvm-svn: 9762 
							
						 
						
							2003-11-07 00:38:09 +00:00