34f3a962b0 
								
							 
						 
						
							
							
								
								Change getBinaryCodeForInstr prototype. First operand MachineInstr& should be const. Make corresponding changes.  
							
							... 
							
							
							
							llvm-svn: 55623 
							
						 
						
							2008-09-02 06:51:36 +00:00  
				
					
						
							
							
								 
						
							
								fb19f9402b 
								
							 
						 
						
							
							
								
								Split ISD::LABEL into ISD::DBG_LABEL and ISD::EH_LABEL, eliminating  
							
							... 
							
							
							
							the need for a flavor operand, and add a new SDNode subclass,
LabelSDNode, for use with them to eliminate the need for a label id
operand.
Change instruction selection to let these label nodes through
unmodified instead of creating copies of them. Teach the MachineInstr
emitter how to emit a MachineInstr directly from an ISD label node.
This avoids the need for allocating SDNodes for the label id and
flavor value, as well as SDNodes for each of the post-isel label,
label id, and label flavor.
llvm-svn: 52943 
							
						 
						
							2008-07-01 00:05:16 +00:00  
				
					
						
							
							
								 
						
							
								d3d0ad3f58 
								
							 
						 
						
							
							
								
								Make insert_subreg a two-address instruction, vastly simplifying LowerSubregs pass. Add a new TII, subreg_to_reg, which is like insert_subreg except that it takes an immediate implicit value to insert into rather than a register.  
							
							... 
							
							
							
							llvm-svn: 48412 
							
						 
						
							2008-03-16 03:12:01 +00:00  
				
					
						
							
							
								 
						
							
								0e7b00d79f 
								
							 
						 
						
							
							
								
								Replace all target specific implicit def instructions with a target independent one: TargetInstrInfo::IMPLICIT_DEF.  
							
							... 
							
							
							
							llvm-svn: 48380 
							
						 
						
							2008-03-15 00:03:38 +00:00  
				
					
						
							
							
								 
						
							
								efd142a920 
								
							 
						 
						
							
							
								
								SDIsel processes llvm.dbg.declare by recording the variable debug information descriptor and its corresponding stack frame index in MachineModuleInfo. This only works if the local variable is "homed" in the stack frame. It does not work for byval parameter, etc.  
							
							... 
							
							
							
							Added ISD::DECLARE node type to represent llvm.dbg.declare intrinsic. Now the intrinsic calls are lowered into a SDNode and lives on through out the codegen passes.
For now, since all the debugging information recording is done at isel time, when a ISD::DECLARE node is selected, it has the side effect of also recording the variable. This is a short term solution that should be fixed in time.
llvm-svn: 46659 
							
						 
						
							2008-02-02 04:07:54 +00:00  
				
					
						
							
							
								 
						
							
								8adcd9f32e 
								
							 
						 
						
							
							
								
								remove attributions from utils.  
							
							... 
							
							
							
							llvm-svn: 45419 
							
						 
						
							2007-12-29 20:37:13 +00:00  
				
					
						
							
							
								 
						
							
								cde0ee5221 
								
							 
						 
						
							
							
								
								Add target independent MachineInstr's to represent subreg insert/extract in MBB's. PR1350  
							
							... 
							
							
							
							llvm-svn: 40518 
							
						 
						
							2007-07-26 07:48:21 +00:00  
				
					
						
							
							
								 
						
							
								214c582002 
								
							 
						 
						
							
							
								
								Files missing from LABEL check in.  
							
							... 
							
							
							
							llvm-svn: 33539 
							
						 
						
							2007-01-26 17:29:20 +00:00  
				
					
						
							
							
								 
						
							
								9bfb1e1f29 
								
							 
						 
						
							
							
								
								What should be the last unnecessary <iostream>s in the library.  
							
							... 
							
							
							
							llvm-svn: 32333 
							
						 
						
							2006-12-07 22:21:48 +00:00  
				
					
						
							
							
								 
						
							
								78a403f90e 
								
							 
						 
						
							
							
								
								Remove the isTwoAddress property from the CodeGenInstruction class.  It should  
							
							... 
							
							
							
							not be used for anything other than backwards compat constraint handling.
Add support for a new DisableEncoding property which contains a list of
registers that should not be encoded by the generated code emitter.  Convert
the codeemitter generator to use this, fixing some PPC JIT regressions.
llvm-svn: 31769 
							
						 
						
							2006-11-15 23:23:02 +00:00  
				
					
						
							
							
								 
						
							
								03c6038226 
								
							 
						 
						
							
							
								
								Remove an unused variable.  
							
							... 
							
							
							
							llvm-svn: 31403 
							
						 
						
							2006-11-03 01:48:30 +00:00  
				
					
						
							
							
								 
						
							
								a2d7d1c4fa 
								
							 
						 
						
							
							
								
								Fix JIT encoding of two-addr instructions.  
							
							... 
							
							
							
							llvm-svn: 30111 
							
						 
						
							2006-09-05 03:01:52 +00:00  
				
					
						
							
							
								 
						
							
								10d4b040ac 
								
							 
						 
						
							
							
								
								Clean up.  
							
							... 
							
							
							
							llvm-svn: 29137 
							
						 
						
							2006-07-13 22:17:08 +00:00  
				
					
						
							
							
								 
						
							
								a44f6269bf 
								
							 
						 
						
							
							
								
								1. Simplfy bit operations.  
							
							... 
							
							
							
							2. Coalesce instruction cases.
llvm-svn: 29135 
							
						 
						
							2006-07-13 21:02:53 +00:00  
				
					
						
							
							
								 
						
							
								23bd480cea 
								
							 
						 
						
							
							
								
								Move base value of instruction to lookup table to prepare for case reduction.  
							
							... 
							
							
							
							llvm-svn: 29122 
							
						 
						
							2006-07-12 19:15:43 +00:00  
				
					
						
							
							
								 
						
							
								57e4363171 
								
							 
						 
						
							
							
								
								Reduce bloat in target libraries by removing per machine instruction assertion  
							
							... 
							
							
							
							from code emitter generation.
llvm-svn: 29097 
							
						 
						
							2006-07-11 01:25:59 +00:00  
				
					
						
							
							
								 
						
							
								f878f6aa54 
								
							 
						 
						
							
							
								
								Fix miscodegen of V_SET0 in PPC.  
							
							... 
							
							
							
							llvm-svn: 26836 
							
						 
						
							2006-03-18 00:40:36 +00:00  
				
					
						
							
							
								 
						
							
								ec249a3d30 
								
							 
						 
						
							
							
								
								Don't emit JIT code for these instructions  
							
							... 
							
							
							
							llvm-svn: 25669 
							
						 
						
							2006-01-27 01:39:38 +00:00  
				
					
						
							
							
								 
						
							
								fc9f5773d0 
								
							 
						 
						
							
							
								
								Fix an incompatibility with GCC 4.1, thanks to Vladimir Merzliakov  
							
							... 
							
							
							
							for pointing this out!
llvm-svn: 23963 
							
						 
						
							2005-10-24 15:04:15 +00:00  
				
					
						
							
							
								 
						
							
								04a5ae3f71 
								
							 
						 
						
							
							
								
								The code emitter generator only supports targets with 32-bit instruction  
							
							... 
							
							
							
							words.  There is no way for one of these targets to have a > 32-bit immediate!
llvm-svn: 22897 
							
						 
						
							2005-08-19 01:04:33 +00:00  
				
					
						
							
							
								 
						
							
								650ba8eb56 
								
							 
						 
						
							
							
								
								Remove trailing whitespace  
							
							... 
							
							
							
							llvm-svn: 21428 
							
						 
						
							2005-04-22 00:00:37 +00:00  
				
					
						
							
							
								 
						
							
								8393c15b28 
								
							 
						 
						
							
							
								
								* Factor out (into new fn) a loop emitting operand shifts into the instruction  
							
							... 
							
							
							
							* Reverse instruction bit components for a LittleEndian-style encoding
* Fix some comments and spacing
llvm-svn: 16975 
							
						 
						
							2004-10-14 05:53:01 +00:00  
				
					
						
							
							
								 
						
							
								7c16caa336 
								
							 
						 
						
							
							
								
								Changes For Bug 352  
							
							... 
							
							
							
							Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.
llvm-svn: 16137 
							
						 
						
							2004-09-01 22:55:40 +00:00  
				
					
						
							
							
								 
						
							
								c9d99efdd3 
								
							 
						 
						
							
							
								
								Do not #include files into the llvm namespace  
							
							... 
							
							
							
							llvm-svn: 15849 
							
						 
						
							2004-08-17 03:08:28 +00:00  
				
					
						
							
							
								 
						
							
								422d0fadf1 
								
							 
						 
						
							
							
								
								Deleted commented-out code as we now get namespace directly, add comments  
							
							... 
							
							
							
							llvm-svn: 15627 
							
						 
						
							2004-08-10 20:54:58 +00:00  
				
					
						
							
							
								 
						
							
								59978333a3 
								
							 
						 
						
							
							
								
								Use the target name instead of hard-coding SparcV9.  
							
							... 
							
							
							
							llvm-svn: 15616 
							
						 
						
							2004-08-10 18:31:01 +00:00  
				
					
						
							
							
								 
						
							
								79db057a3b 
								
							 
						 
						
							
							
								
								This was a good idea, but until this does not break the build of  
							
							... 
							
							
							
							lib/Target/Sparc, we should not use it.
llvm-svn: 15603 
							
						 
						
							2004-08-10 15:05:18 +00:00  
				
					
						
							
							
								 
						
							
								920ae9524d 
								
							 
						 
						
							
							
								
								Use the current target name instead of a ClassPrefix.  
							
							... 
							
							
							
							llvm-svn: 15585 
							
						 
						
							2004-08-09 19:10:43 +00:00  
				
					
						
							
							
								 
						
							
								18d27dc342 
								
							 
						 
						
							
							
								
								* Use Classname and ClassPrefix instead of hard-coded V9 values  
							
							... 
							
							
							
							* Simplify code and shorten lines by not recomputing values
llvm-svn: 15582 
							
						 
						
							2004-08-09 17:47:45 +00:00  
				
					
						
							
							
								 
						
							
								8e5492e350 
								
							 
						 
						
							
							
								
								* Added documentation in the file header  
							
							... 
							
							
							
							* Shorten assert() text to make it fit within 80 cols
llvm-svn: 15508 
							
						 
						
							2004-08-04 22:07:54 +00:00  
				
					
						
							
							
								 
						
							
								6847866400 
								
							 
						 
						
							
							
								
								Finegrainify namespacification  
							
							... 
							
							
							
							llvm-svn: 15381 
							
						 
						
							2004-08-01 03:55:39 +00:00  
				
					
						
							
							
								 
						
							
								960707c335 
								
							 
						 
						
							
							
								
								Put all LLVM code into the llvm namespace, as per bug 109.  
							
							... 
							
							
							
							llvm-svn: 9903 
							
						 
						
							2003-11-11 22:41:34 +00:00  
				
					
						
							
							
								 
						
							
								d3032037f1 
								
							 
						 
						
							
							
								
								Added LLVM copyright header.  
							
							... 
							
							
							
							llvm-svn: 9305 
							
						 
						
							2003-10-20 20:20:30 +00:00  
				
					
						
							
							
								 
						
							
								f5bd1b7a8e 
								
							 
						 
						
							
							
								
								Move support/tools/* back into utils  
							
							... 
							
							
							
							llvm-svn: 8875 
							
						 
						
							2003-10-05 19:27:59 +00:00