Christopher Lamb
							
						 
						
							 
							
							
							
							
								
							
							
								0592cf7e74 
								
							 
						 
						
							
							
								
								Allow ComplexExpressions in InstrInfo.td files to be slightly more... complex! ComplexExpressions can now have attributes which affect how TableGen interprets  
							
							 
							
							... 
							
							
							
							the pattern when generating matchin code. 
The first (and currently, only) attribute causes the immediate parent node of the ComplexPattern operand to be passed into the matching code rather than the node at the root of the entire DAG containing the pattern.
llvm-svn: 46606 
							
						 
						
							2008-01-31 07:27:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								42c63ef96e 
								
							 
						 
						
							
							
								
								start inferring 'no side effects'.  
							
							 
							
							... 
							
							
							
							llvm-svn: 45822 
							
						 
						
							2008-01-10 05:39:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1ca2068227 
								
							 
						 
						
							
							
								
								realize that instructions who match intrinsics  that read memory read memory.  
							
							 
							
							... 
							
							
							
							Also, instructions with any nodes that are SDNPMayLoad also read memory.
llvm-svn: 45817 
							
						 
						
							2008-01-10 04:38:57 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a348f55ec6 
								
							 
						 
						
							
							
								
								Change the 'isStore' inferrer to look for 'SDNPMayStore'  
							
							 
							
							... 
							
							
							
							instead of "ISD::STORE".  This allows us to mark target-specific dag
nodes as storing (such as ppc byteswap stores).  This allows us to remove
more explicit isStore flags from the .td files.
Finally, add a warning for when a .td file contains an explicit 
isStore and tblgen is able to infer it.
llvm-svn: 45654 
							
						 
						
							2008-01-06 06:44:58 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8cab021ca2 
								
							 
						 
						
							
							
								
								change getQualifiedName to be a global function.  
							
							 
							
							... 
							
							
							
							Split the pattern parsing code out from the dag isel emitter into it's own file.
No functionality change.
llvm-svn: 45632 
							
						 
						
							2008-01-05 22:25:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8adcd9f32e 
								
							 
						 
						
							
							
								
								remove attributions from utils.  
							
							 
							
							... 
							
							
							
							llvm-svn: 45419 
							
						 
						
							2007-12-29 20:37:13 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								10835d9c67 
								
							 
						 
						
							
							
								
								Eliminate an unused parameter.  
							
							 
							
							... 
							
							
							
							llvm-svn: 39828 
							
						 
						
							2007-07-13 20:16:50 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								a23ef8a8f2 
								
							 
						 
						
							
							
								
								Remove the operator<< for MVT::ValueType in preparation for MVT::ValueType  
							
							 
							
							... 
							
							
							
							being changed from an enum to an integer type, which can't have a custom
operator<< overload.
llvm-svn: 37412 
							
						 
						
							2007-06-04 16:11:03 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								2022c79d7f 
								
							 
						 
						
							
							
								
								Added properties such as SDNPHasChain to ComplexPattern.  
							
							 
							
							... 
							
							
							
							llvm-svn: 30890 
							
						 
						
							2006-10-11 21:02:01 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								fe72285033 
								
							 
						 
						
							
							
								
								Don't generate getCalleeSaveReg and getCalleeSaveRegClasses anymore.  
							
							 
							
							... 
							
							
							
							llvm-svn: 28376 
							
						 
						
							2006-05-18 00:08:46 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								f5ef47fe74 
								
							 
						 
						
							
							
								
								Remove PointerType from target definition. Use abstract type MVT::iPTR to  
							
							 
							
							... 
							
							
							
							represent pointer type.
llvm-svn: 28363 
							
						 
						
							2006-05-17 20:37:59 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								d985d66781 
								
							 
						 
						
							
							
								
								Allow patterns to refer to physical registers that belong to multiple  
							
							 
							
							... 
							
							
							
							register classes.
llvm-svn: 28323 
							
						 
						
							2006-05-16 07:05:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c92f688ef3 
								
							 
						 
						
							
							
								
								Add support for decoding iPTR to the right pointer type.  
							
							 
							
							... 
							
							
							
							llvm-svn: 27188 
							
						 
						
							2006-03-27 22:48:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								543fe4b6aa 
								
							 
						 
						
							
							
								
								PHI and INLINEASM are now builtin instructions provided by Target.td  
							
							 
							
							... 
							
							
							
							llvm-svn: 25673 
							
						 
						
							2006-01-27 01:45:06 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								c9a620060b 
								
							 
						 
						
							
							
								
								* Added an explicit type field to ComplexPattern.  
							
							 
							
							... 
							
							
							
							* Renamed MatchingNodes to RootNodes.
llvm-svn: 24636 
							
						 
						
							2005-12-08 02:14:08 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								9b9567bfb5 
								
							 
						 
						
							
							
								
								Added support for ComplexPattern. These are patterns that require C++ pattern  
							
							 
							
							... 
							
							
							
							matching code that is not currently auto-generated by tblgen, e.g. X86
addressing mode. Selection routines for complex patterns can return multiple operands, e.g. X86 addressing mode returns 4.
llvm-svn: 24634 
							
						 
						
							2005-12-08 02:00:36 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3717b4c830 
								
							 
						 
						
							
							
								
								Add some methods  
							
							 
							
							... 
							
							
							
							llvm-svn: 24596 
							
						 
						
							2005-12-05 02:35:08 +00:00  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								cdf2c67888 
								
							 
						 
						
							
							
								
								Stop checking the ValueType of the CodeGenInstruction.  Instead, use the  
							
							 
							
							... 
							
							
							
							ValueType from the RegisterClass or Operands.  This step is necessary to
allow RegisterClasses to have multiple ValueTypes.
llvm-svn: 24555 
							
						 
						
							2005-12-01 00:06:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fcffc98b05 
								
							 
						 
						
							
							
								
								add an accessor  
							
							 
							
							... 
							
							
							
							llvm-svn: 23349 
							
						 
						
							2005-09-14 18:02:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								cee994b464 
								
							 
						 
						
							
							
								
								Compute the value types that are natively supported by a target.  
							
							 
							
							... 
							
							
							
							llvm-svn: 23282 
							
						 
						
							2005-09-08 21:43:21 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								650ba8eb56 
								
							 
						 
						
							
							
								
								Remove trailing whitespace  
							
							 
							
							... 
							
							
							
							llvm-svn: 21428 
							
						 
						
							2005-04-22 00:00:37 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								945e8655dd 
								
							 
						 
						
							
							
								
								Refactor code for numbering instructions into CodeGenTarget.  
							
							 
							
							... 
							
							
							
							llvm-svn: 19758 
							
						 
						
							2005-01-22 18:58:51 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7dfc2d29ac 
								
							 
						 
						
							
							
								
								Convert 'struct' to 'class' in various places to adhere to the coding standards  
							
							 
							
							... 
							
							
							
							and work better with VC++.  Patch contributed by Morten Ofstad!
llvm-svn: 17281 
							
						 
						
							2004-10-27 16:14:51 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								243ded5e1a 
								
							 
						 
						
							
							
								
								* Add option to read isLittleEndianEncoding for InstrInfo classes  
							
							 
							
							... 
							
							
							
							* Doxygen-ify some function comments
llvm-svn: 16974 
							
						 
						
							2004-10-14 05:50:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2a86fab933 
								
							 
						 
						
							
							
								
								Start parsing register classes into a more structured form  
							
							 
							
							... 
							
							
							
							llvm-svn: 15961 
							
						 
						
							2004-08-21 04:05:00 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8af61ddb96 
								
							 
						 
						
							
							
								
								Use CodeGenRegister class to make reading in of register information more  
							
							 
							
							... 
							
							
							
							systematic.
llvm-svn: 15805 
							
						 
						
							2004-08-16 01:10:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6ffa501d9f 
								
							 
						 
						
							
							
								
								Make the AsmWriter a first-class tblgen object.  Allow targets to specify  
							
							 
							
							... 
							
							
							
							name of the generated asmwriter class, and the name of the format string.
llvm-svn: 15747 
							
						 
						
							2004-08-14 22:50:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5572682faa 
								
							 
						 
						
							
							
								
								Parse the operand list of the instruction.  We currently support register and immediate operands.  
							
							 
							
							... 
							
							
							
							llvm-svn: 15390 
							
						 
						
							2004-08-01 07:42:39 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c860ecafe1 
								
							 
						 
						
							
							
								
								Add, and start using, the CodeGenInstruction class.  This class represents  
							
							 
							
							... 
							
							
							
							an instance of the Instruction tablegen class.
llvm-svn: 15385 
							
						 
						
							2004-08-01 05:04:00 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fce9603387 
								
							 
						 
						
							
							
								
								Rename CodeGenWrappers.(cpp|h) -> CodeGenTarget.(cpp|h)  
							
							 
							
							... 
							
							
							
							llvm-svn: 15382 
							
						 
						
							2004-08-01 04:04:35 +00:00