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  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								b4ad4c3d4c 
								
							 
						 
						
							
							
								
								* Make the comment header 80 columns long  
							
							 
							
							... 
							
							
							
							* Alphabetize #includes
llvm-svn: 9751 
							
						 
						
							2003-11-06 18:06:13 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								adc07972bc 
								
							 
						 
						
							
							
								
								Tweak sed commands so that they filter out more # stuff and also  
							
							 
							
							... 
							
							
							
							work on Mac OS X. Also turn ${...} into $(...); we do not speak BSD
Make.
llvm-svn: 9589 
							
						 
						
							2003-10-29 20:07:35 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								3f45389172 
								
							 
						 
						
							
							
								
								Make code layout more consistent.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9418 
							
						 
						
							2003-10-23 16:48:30 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								dbe73c5d6d 
								
							 
						 
						
							
							
								
								Add comments to describe what these functions actually do.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9370 
							
						 
						
							2003-10-22 05:50:40 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								8c0608cf0d 
								
							 
						 
						
							
							
								
								* Use <cmath> instead of <math.h>  
							
							 
							
							... 
							
							
							
							* Order #includes according to LLVM coding standards
llvm-svn: 9369 
							
						 
						
							2003-10-22 05:09:56 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								cc0d34223d 
								
							 
						 
						
							
							
								
								Removed completely duplicated function comment (an identical one appears later).  
							
							 
							
							... 
							
							
							
							llvm-svn: 9368 
							
						 
						
							2003-10-22 04:55:09 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								980d74c752 
								
							 
						 
						
							
							
								
								No, really, order the #includes correctly.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9367 
							
						 
						
							2003-10-22 04:51:36 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								88be700644 
								
							 
						 
						
							
							
								
								* Fix order of #includes to follow style guide  
							
							 
							
							... 
							
							
							
							* It's no longer a BasicBlock pass: update comment on run() method
* Fix placement of braces to be consistent
* Delete extraneous whitespace
llvm-svn: 9361 
							
						 
						
							2003-10-22 03:27:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								73d9355fea 
								
							 
						 
						
							
							
								
								Hrm, unbreak stuph :(  
							
							 
							
							... 
							
							
							
							llvm-svn: 9334 
							
						 
						
							2003-10-21 17:22:23 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a62228d01a 
								
							 
						 
						
							
							
								
								Fix preselection/lowerswitches bug  
							
							 
							
							... 
							
							
							
							llvm-svn: 9333 
							
						 
						
							2003-10-21 16:29:23 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4439aee504 
								
							 
						 
						
							
							
								
								Pull the PHI special case into it's own visit* method  
							
							 
							
							... 
							
							
							
							llvm-svn: 9332 
							
						 
						
							2003-10-21 16:09:23 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								898a42afde 
								
							 
						 
						
							
							
								
								The lastOp operand is never used  
							
							 
							
							... 
							
							
							
							llvm-svn: 9331 
							
						 
						
							2003-10-21 16:06:07 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								9583cfafc5 
								
							 
						 
						
							
							
								
								Added LLVM copyright notice.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9324 
							
						 
						
							2003-10-21 15:29:18 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								29265fe981 
								
							 
						 
						
							
							
								
								Added LLVM copyright header.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9321 
							
						 
						
							2003-10-21 15:17:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2e2a0ed7e1 
								
							 
						 
						
							
							
								
								Preselection is _not_ a basicblock pass, because it adds global variables to  
							
							 
							
							... 
							
							
							
							the module.  This change converts it from being a basic block pass to being
a simple pass.  This allows elimination of the annotation and simplification
of the logic for moving constants into global variables.
llvm-svn: 9320 
							
						 
						
							2003-10-21 14:49:19 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								8264e29e01 
								
							 
						 
						
							
							
								
								When opcodes like ADD were split into reg. and immed. versions (ADDi and ADDr),  
							
							 
							
							... 
							
							
							
							this code wasn't fixed correctly so it missed copy operations that used ADDi.
llvm-svn: 9318 
							
						 
						
							2003-10-21 12:29:45 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								64e8a13b7b 
								
							 
						 
						
							
							
								
								Why does g++ not even generate a warning when you miss a break statement?  
							
							 
							
							... 
							
							
							
							llvm-svn: 9317 
							
						 
						
							2003-10-21 12:28:27 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								af2df5b7f9 
								
							 
						 
						
							
							
								
								Implement the new varargs instructions and intrinsics.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9316 
							
						 
						
							2003-10-21 11:25:09 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								4436c49787 
								
							 
						 
						
							
							
								
								Added LLVM copyright notice to Makefiles.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9312 
							
						 
						
							2003-10-20 22:26:57 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								e7621515c0 
								
							 
						 
						
							
							
								
								Goodbye, AddRegNumToValues  
							
							 
							
							... 
							
							
							
							llvm-svn: 9309 
							
						 
						
							2003-10-20 20:44:03 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								482202a601 
								
							 
						 
						
							
							
								
								Added LLVM project notice to the top of every C++ source file.  
							
							 
							
							... 
							
							
							
							Header files will be on the way.
llvm-svn: 9298 
							
						 
						
							2003-10-20 19:43:21 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								ca1789d3f5 
								
							 
						 
						
							
							
								
								Minor leftover fixups from replaceMachineCodeForFunction () change.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9295 
							
						 
						
							2003-10-20 17:59:09 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								4bc3958c7b 
								
							 
						 
						
							
							
								
								Make replaceMachineCodeForFunction() return void.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9289 
							
						 
						
							2003-10-20 15:17:12 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								67a5a865ae 
								
							 
						 
						
							
							
								
								Make replaceMachineCodeForFunction return void.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9288 
							
						 
						
							2003-10-20 15:15:17 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f187b7691d 
								
							 
						 
						
							
							
								
								Apparently the dependencies are wrong for this file, so it didn't rebuild it  
							
							 
							
							... 
							
							
							
							when changing Instruction.def.  :(
llvm-svn: 9286 
							
						 
						
							2003-10-20 14:12:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b94550e537 
								
							 
						 
						
							
							
								
								Change the Opcode enum for PHI nodes from "Instruction::PHINode" to "Instruction::PHI" to be more consistent with the other instructions.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9269 
							
						 
						
							2003-10-19 21:34:28 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fb40334c25 
								
							 
						 
						
							
							
								
								Update the sparc backend to at least compile correctly with the new varargs stuff even if it's not all implemented yet.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9223 
							
						 
						
							2003-10-18 05:55:58 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								2e24fcadf5 
								
							 
						 
						
							
							
								
								Refactor jump insertion code from CompilationCallback() into insertJumpAtAddr().  
							
							 
							
							... 
							
							
							
							Make insertFarJumpAtAddr() return void, because nothing uses its return value.
Remove some commented-out code.
Implement replaceMachineCodeForFunction() for SPARC.
llvm-svn: 9203 
							
						 
						
							2003-10-17 18:27:37 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								240fc39b07 
								
							 
						 
						
							
							
								
								Add prototype for replaceMachineCodeForFunction().  
							
							 
							
							... 
							
							
							
							llvm-svn: 9202 
							
						 
						
							2003-10-17 18:27:25 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								09d40333a2 
								
							 
						 
						
							
							
								
								Remove extra blank line.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9196 
							
						 
						
							2003-10-17 18:09:10 +00:00  
						
					 
				
					
						
							
							
								 
								Alkis Evlogimenos
							
						 
						
							 
							
							
							
							
								
							
							
								8faf8d93d5 
								
							 
						 
						
							
							
								
								Eliminate some extraneous code in SlotCalculator::insertVal().  
							
							 
							
							... 
							
							
							
							Rename SlotCalculator::getValSlot() to SlotCalculator::getSlot(),
       SlotCalculator::insertValue() to SlotCalculator::getOrCreateSlot(),
       SlotCalculator::insertVal() to SlotCalculator::insertValue(), and
       SlotCalculator::doInsertVal() to SlotCalculator::doInsertValue().
llvm-svn: 9190 
							
						 
						
							2003-10-17 02:02:40 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								6855f03c56 
								
							 
						 
						
							
							
								
								Remove WordsEmitted statistic; there's already a non-backend-specific  
							
							 
							
							... 
							
							
							
							jello statistic for this (just divide #-bytes-of-code-emitted by 4).
Rewrite head-of-file comment.
llvm-svn: 9098 
							
						 
						
							2003-10-13 19:51:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								44d2c3514a 
								
							 
						 
						
							
							
								
								Regularize header file comments  
							
							 
							
							... 
							
							
							
							llvm-svn: 9071 
							
						 
						
							2003-10-13 03:32:08 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								2797c131ef 
								
							 
						 
						
							
							
								
								Don't include "Config/stdlib.h".  
							
							 
							
							... 
							
							
							
							llvm-svn: 9037 
							
						 
						
							2003-10-10 19:12:22 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								b8a4ed6543 
								
							 
						 
						
							
							
								
								Include <cstdio> instead of <stdio.h>.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9032 
							
						 
						
							2003-10-10 18:46:52 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								8b2bd4ed47 
								
							 
						 
						
							
							
								
								Fix spelling.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9027 
							
						 
						
							2003-10-10 17:57:28 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								4547ab19b0 
								
							 
						 
						
							
							
								
								Add # of printed instructions statistic to both the SPARC and X86 LLC backends.  
							
							 
							
							... 
							
							
							
							llvm-svn: 8892 
							
						 
						
							2003-10-06 15:41:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fb25374170 
								
							 
						 
						
							
							
								
								Add support for the Invoke instruction by using the LowerInvoke pass  
							
							 
							
							... 
							
							
							
							llvm-svn: 8872 
							
						 
						
							2003-10-05 19:16:09 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								cda2885499 
								
							 
						 
						
							
							
								
								The comment seems irrelevant as the pass has become a BasicBlock pass.  
							
							 
							
							... 
							
							
							
							llvm-svn: 8803 
							
						 
						
							2003-10-01 05:24:50 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1440902484 
								
							 
						 
						
							
							
								
								Make sure to get the definition of getRegisterAllocator  
							
							 
							
							... 
							
							
							
							llvm-svn: 8801 
							
						 
						
							2003-09-30 22:24:00 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8b583a229d 
								
							 
						 
						
							
							
								
								RegisterAllocation.h is going away  
							
							 
							
							... 
							
							
							
							llvm-svn: 8795 
							
						 
						
							2003-09-30 20:15:04 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								167d87443a 
								
							 
						 
						
							
							
								
								Add statistic for # of emitWord() calls.  
							
							 
							
							... 
							
							
							
							llvm-svn: 8772 
							
						 
						
							2003-09-30 17:49:41 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								427929adfb 
								
							 
						 
						
							
							
								
								Fixed spelling.  
							
							 
							
							... 
							
							
							
							llvm-svn: 8687 
							
						 
						
							2003-09-23 17:28:11 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								84b1140e2c 
								
							 
						 
						
							
							
								
								Fix spelling.  
							
							 
							
							... 
							
							
							
							llvm-svn: 8686 
							
						 
						
							2003-09-23 17:27:28 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								49cf091005 
								
							 
						 
						
							
							
								
								Fix assertion so it doesn't not trip incorrectly.  
							
							 
							
							... 
							
							
							
							llvm-svn: 8650 
							
						 
						
							2003-09-21 07:55:27 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								7af0df0015 
								
							 
						 
						
							
							
								
								Fix a typo in Sparc.cpp.  
							
							 
							
							... 
							
							
							
							Update names of some pass creator fns in addPassesToEmitAssembly().
FunctionInfo is gone.
llvm-svn: 8599 
							
						 
						
							2003-09-18 17:37:46 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								310b1d899a 
								
							 
						 
						
							
							
								
								Rename the pass creator fn to mimic the other creator fn names.  
							
							 
							
							... 
							
							
							
							llvm-svn: 8598 
							
						 
						
							2003-09-18 17:37:35 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								24e706c1ac 
								
							 
						 
						
							
							
								
								Fix (and properly doxygenify) some comments. Incorporate  
							
							 
							
							... 
							
							
							
							functionality of FunctionInfo pass as doFinalization method.
Rename pass to match names of other passes like it.
Rename the pass creator fn to mimic the other creator fn names.
Include StringExtras for utostr().
Make symbol prologue/epilogue stuff redundant with
 EmitBytecodeToAssembly, in preparation for refactoring.
llvm-svn: 8597 
							
						 
						
							2003-09-18 17:37:25 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								b4aa604093 
								
							 
						 
						
							
							
								
								Make the symbol prologue/epilogue stuff redundant with MappingInfo, in  
							
							 
							
							... 
							
							
							
							preparation for refactoring.
Rename the pass creator fn to mimic the other creator fn names.
llvm-svn: 8596 
							
						 
						
							2003-09-18 17:37:14 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								256fc40375 
								
							 
						 
						
							
							
								
								Fix longjmp case so that, along with the call to abort(), we also  
							
							 
							
							... 
							
							
							
							generate the appropriate CallArgsDescriptor and tmp. virtual regs.
llvm-svn: 8554 
							
						 
						
							2003-09-16 05:56:22 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								732ae94521 
								
							 
						 
						
							
							
								
								Don't explicitly use $SourceDir to find the tblgen files.  This causes make  
							
							 
							
							... 
							
							
							
							some confusion when trying to generate files (it probably couldn't tell that
./file and $(SourceDir)/file may be the same file).
Now, just let VPATH find everything, and list the primary tblgen file first in
the list of dependencies so that we can just use $< to reference it in the make
rule.
This should hopefully fix the nightly tester.
llvm-svn: 8433 
							
						 
						
							2003-09-10 14:10:44 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								ded9899d2d 
								
							 
						 
						
							
							
								
								Updated to find source files using VPATH.  This makes writing build rules  
							
							 
							
							... 
							
							
							
							much cleaner and easier.
Labeled .td as a suffix for tblgen files in Makefile.rules.
Modified build rules so that source files generated during the build are placed
in the build directory and not the source directory (and not in a Debug
directory).  This makes the system cleaner and allows us to have a read-only
source tree.
llvm-svn: 8424 
							
						 
						
							2003-09-09 20:57:03 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								0d1a26ddc2 
								
							 
						 
						
							
							
								
								Checkin of autoconf-style object root.  
							
							 
							
							... 
							
							
							
							Adjusted Makefile to work with new autoconf-style object root.
Specifically, use the new -I option of tblgen to find include files.
llvm-svn: 8379 
							
						 
						
							2003-09-06 14:50:22 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								c1ac706afb 
								
							 
						 
						
							
							
								
								Added some optimizations:  
							
							 
							
							... 
							
							
							
							* Generate a single BA instead of 6-instruction JUMP if possible
  (this occurs both in the creation and overwriting of the stub code)
* If possible, rewrite the ORIGINAL call to call the generated function
  directly, thus bypassing the stub entirely
Also added some statistics on how often calls are overwritten and how often the
CompilationCallback is invoked.
llvm-svn: 8376 
							
						 
						
							2003-09-05 22:59:31 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b49a8d7e01 
								
							 
						 
						
							
							
								
								No longer provide an optinfo, noone uses it  
							
							 
							
							... 
							
							
							
							llvm-svn: 8311 
							
						 
						
							2003-09-01 20:40:59 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								825624e954 
								
							 
						 
						
							
							
								
								Inline simple comparison which is sparc specific anyway  
							
							 
							
							... 
							
							
							
							llvm-svn: 8309 
							
						 
						
							2003-09-01 20:38:03 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0792315409 
								
							 
						 
						
							
							
								
								Move private interfaces into private .h file  
							
							 
							
							... 
							
							
							
							llvm-svn: 8306 
							
						 
						
							2003-09-01 20:33:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8a3d3d26a5 
								
							 
						 
						
							
							
								
								Simplify code a bit  
							
							 
							
							... 
							
							
							
							llvm-svn: 8301 
							
						 
						
							2003-09-01 20:24:06 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								eefb565449 
								
							 
						 
						
							
							
								
								LiveRange.h is now in lib/CodeGen/RegAlloc  
							
							 
							
							... 
							
							
							
							llvm-svn: 8299 
							
						 
						
							2003-09-01 20:17:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e80612a28e 
								
							 
						 
						
							
							
								
								LiveRangeInfo got moved into the lib/CodeGen/RegAlloc directory  
							
							 
							
							... 
							
							
							
							llvm-svn: 8297 
							
						 
						
							2003-09-01 20:12:17 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8c50571f12 
								
							 
						 
						
							
							
								
								IGNode got moved to lib/CodeGen/RegAlloc  
							
							 
							
							... 
							
							
							
							llvm-svn: 8294 
							
						 
						
							2003-09-01 20:00:08 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								69382173e9 
								
							 
						 
						
							
							
								
								This file just needs LiveRange.h not IGNode.h  
							
							 
							
							... 
							
							
							
							llvm-svn: 8293 
							
						 
						
							2003-09-01 19:58:02 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3323829ecc 
								
							 
						 
						
							
							
								
								No longer include IGNode.h in the Sparc global header  
							
							 
							
							... 
							
							
							
							llvm-svn: 8292 
							
						 
						
							2003-09-01 19:56:48 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								9770b83509 
								
							 
						 
						
							
							
								
								* Use alloca() to force GCC not to eliminate frame pointer  
							
							 
							
							... 
							
							
							
							* Break apart saving and restoring registers into separate functions
* Instead of saving single and double FP registers, just save the double
  registers -- aliasing helps preserve the single FP registers as well.
* Request just as much memory for a stub as we actually use
llvm-svn: 8200 
							
						 
						
							2003-08-29 04:22:54 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4fd144acc8 
								
							 
						 
						
							
							
								
								Targets should configure themselves based on a Module, not some wierd flags  
							
							 
							
							... 
							
							
							
							llvm-svn: 8132 
							
						 
						
							2003-08-24 19:49:48 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								43450cb075 
								
							 
						 
						
							
							
								
								Change all #include'd files to be :: rules instead of : rules  
							
							 
							
							... 
							
							
							
							llvm-svn: 8019 
							
						 
						
							2003-08-21 20:37:17 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a592cac43c 
								
							 
						 
						
							
							
								
								Add support for the sig(set|long)jmp intrinsics  
							
							 
							
							... 
							
							
							
							llvm-svn: 7951 
							
						 
						
							2003-08-18 16:06:09 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								7eb05a170a 
								
							 
						 
						
							
							
								
								Spell `necessary' correctly.  
							
							 
							
							... 
							
							
							
							llvm-svn: 7944 
							
						 
						
							2003-08-18 14:43:39 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								f365176472 
								
							 
						 
						
							
							
								
								Rename -emitmaps to -enable-maps  
							
							 
							
							... 
							
							
							
							llvm-svn: 7913 
							
						 
						
							2003-08-16 00:23:16 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								0238ea5d69 
								
							 
						 
						
							
							
								
								Now that the JIT memory manager allocates as many bytes as necessary rather than  
							
							 
							
							... 
							
							
							
							rounding up to a page, we need to request (num instrs * 4) bytes. However, I
think that 64 bytes is overkill for the stub function.
llvm-svn: 7888 
							
						 
						
							2003-08-15 18:03:06 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								7d98bf2921 
								
							 
						 
						
							
							
								
								Fix register and parameter numbers in saving double FP registers.  
							
							 
							
							... 
							
							
							
							llvm-svn: 7884 
							
						 
						
							2003-08-15 16:15:28 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								a12864b1bd 
								
							 
						 
						
							
							
								
								* Must save FP registers when calling CompilationCallback(), because FP  
							
							 
							
							... 
							
							
							
							registers are global, are NOT windowed, and hence can be clobbered!
* Removed unused register shorthand notations
* Fixed and cleaned up comments in inline assembly
llvm-svn: 7853 
							
						 
						
							2003-08-15 00:26:50 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								4aab2b25b3 
								
							 
						 
						
							
							
								
								Since we now have TableGen editing modes for VIM and (X)Emacs, we no longer need  
							
							 
							
							... 
							
							
							
							to mark TableGen description files with "C++ mode".
llvm-svn: 7841 
							
						 
						
							2003-08-14 15:16:28 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bf0c0100f6 
								
							 
						 
						
							
							
								
								Restore 'nice name' to pass  
							
							 
							
							... 
							
							
							
							llvm-svn: 7840 
							
						 
						
							2003-08-14 14:43:24 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								8c14ba96ca 
								
							 
						 
						
							
							
								
								Factory methods for function passes now return type FunctionPass *.  
							
							 
							
							... 
							
							
							
							llvm-svn: 7839 
							
						 
						
							2003-08-14 06:09:32 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								74db4c7e27 
								
							 
						 
						
							
							
								
								Unbreak SPARC backend: addPassesToJITCompile and  
							
							 
							
							... 
							
							
							
							addPassesToEmitMachineCode now both take a FunctionPassManager.
llvm-svn: 7837 
							
						 
						
							2003-08-14 06:04:59 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								cbd3a40626 
								
							 
						 
						
							
							
								
								Factory methods for function passes now return type FunctionPass *.  
							
							 
							
							... 
							
							
							
							Get rid of RegisterLLC, which can't handle FunctionPasses anyway.
llvm-svn: 7836 
							
						 
						
							2003-08-14 06:04:49 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								ec8519d6b6 
								
							 
						 
						
							
							
								
								Unbreak SPARC backend: addPassesToJITCompile and  
							
							 
							
							... 
							
							
							
							addPassesToEmitMachineCode now both take a FunctionPassManager.
Factory methods for function passes now return type FunctionPass *.
llvm-svn: 7835 
							
						 
						
							2003-08-14 06:04:29 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ec611ae0d0 
								
							 
						 
						
							
							
								
								Adjust files for move of mapping info stuff into the Sparc directory  
							
							 
							
							... 
							
							
							
							llvm-svn: 7802 
							
						 
						
							2003-08-13 02:38:16 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								d6f22ad8d3 
								
							 
						 
						
							
							
								
								Disable emitting LLVM-to-MI maps, by default.  
							
							 
							
							... 
							
							
							
							Add -emitmaps options to turn this back on.
llvm-svn: 7774 
							
						 
						
							2003-08-12 15:51:02 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								029ed09323 
								
							 
						 
						
							
							
								
								Fix va_arg to generate LDDFi for floating point values, instead of LDXi.  
							
							 
							
							... 
							
							
							
							All non-FP cases use LDXi as before.
llvm-svn: 7765 
							
						 
						
							2003-08-12 03:04:05 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								2df6ea2f38 
								
							 
						 
						
							
							
								
								Register argument to va_start must be marked as defined!  
							
							 
							
							... 
							
							
							
							llvm-svn: 7734 
							
						 
						
							2003-08-11 18:42:47 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								1fe74d144b 
								
							 
						 
						
							
							
								
								Implement LLVM intrinsics `llvm.setjmp' and `llvm.longjmp' as follows:  
							
							 
							
							... 
							
							
							
							* setjmp() simply returns 0
* longjmp() simply calls abort()
llvm-svn: 7676 
							
						 
						
							2003-08-07 15:43:46 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								6e4a358f72 
								
							 
						 
						
							
							
								
								Fix sanity-checking in 'maskUnsigned' code to be more precise:  
							
							 
							
							... 
							
							
							
							use or def-and-use operands can be substituted after one def-only
operand has been substituted.
llvm-svn: 7674 
							
						 
						
							2003-08-07 15:01:26 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								b611692487 
								
							 
						 
						
							
							
								
								Changing command-line option formats to be more consistent with LLVM style.  
							
							 
							
							... 
							
							
							
							llvm-svn: 7658 
							
						 
						
							2003-08-06 23:25:25 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								8f18938d1c 
								
							 
						 
						
							
							
								
								* Renamed option from `nopreselect' to `nopreopt' since it disables more than  
							
							 
							
							... 
							
							
							
							just PreSelection
* Wrapped code at 80 columns
* Added the DecomposeMultiDimRefs Pass to the JIT compilation path
llvm-svn: 7657 
							
						 
						
							2003-08-06 23:06:21 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								79226d066e 
								
							 
						 
						
							
							
								
								Use the registers g1 and g5 as temporaries for making far jumps and far calls,  
							
							 
							
							... 
							
							
							
							because saving i1 and i2 to their ``designated'' stack slots corrupts unknown
memory in other functions, standard libraries, and worse.
In addition, this has the benefit of improving JIT performance because we
eliminate writing out 4 instructions in CompilationCallback() and 2 loads and 2
stores.
llvm-svn: 7653 
							
						 
						
							2003-08-06 22:19:18 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								792b48f4d1 
								
							 
						 
						
							
							
								
								1. Bug fix: was using SLL instead of SLLX for ULongTy.  Chump.  
							
							 
							
							... 
							
							
							
							2. Handle fp-to-uint conversions directly here instead of relying on
   a pre-transformation to replace them with the 2-step conversion.
3. Use size rather than explicitly checking types when deciding what
   opcodes to use, wherever possible.  This is less error prone (the
   bug fix above was not the first time!).
4. Float-to-pointer casts shd now work though this hasn't been tested.
llvm-svn: 7645 
							
						 
						
							2003-08-06 18:48:40 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								26125cbeb5 
								
							 
						 
						
							
							
								
								Remove conversion of fp-to-uint cast into a multi-step cast:  
							
							 
							
							... 
							
							
							
							this is not an optional transformation on SPARC and is now handled
directly by instruction selection.
llvm-svn: 7644 
							
						 
						
							2003-08-06 18:42:49 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								4510698acb 
								
							 
						 
						
							
							
								
								SparcV9CodeEmitter.cpp:  
							
							 
							
							... 
							
							
							
							* Doxygen-ified comments
* Added capability to make far calls (i.e., beyond 30 bits in CALL instr)
  which implies that we need to delete function references that were added by
  the call to addFunctionReference() because the actual call instruction is 10
  instructions away (thanks to 64-bit address construction)
* Cleaned up code that generates far jumps by using an array+loop
SparcV9CodeEmitter.h:
* Explained more of the side-effects of emitFarCall()
llvm-svn: 7639 
							
						 
						
							2003-08-06 16:20:22 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								21343336d6 
								
							 
						 
						
							
							
								
								This method has now been changed to preserve flags for us!  
							
							 
							
							... 
							
							
							
							llvm-svn: 7603 
							
						 
						
							2003-08-05 16:59:24 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								1e88cfb42e 
								
							 
						 
						
							
							
								
								* Removed `using' declaration, now use full namespace qualifier std::string  
							
							 
							
							... 
							
							
							
							* Simplified code by using an inline function instead of copy-pasted code
llvm-svn: 7597 
							
						 
						
							2003-08-05 16:01:50 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								5c68269dfd 
								
							 
						 
						
							
							
								
								* Set annul bit to be 0, because the Sparc backend currently does not use it.  
							
							 
							
							... 
							
							
							
							* Use the name of the predict field instead of just the const 1 in the
  Instruction.
llvm-svn: 7592 
							
						 
						
							2003-08-05 14:34:38 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9fb7e0a425 
								
							 
						 
						
							
							
								
								Transition to using 'let X = y' instead of 'set X = y'.  
							
							 
							
							... 
							
							
							
							llvm-svn: 7565 
							
						 
						
							2003-08-04 05:03:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fea54c2511 
								
							 
						 
						
							
							
								
								DEBUG got moved to Debug.h  
							
							 
							
							... 
							
							
							
							llvm-svn: 7495 
							
						 
						
							2003-08-01 22:19:03 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c0eb77c24c 
								
							 
						 
						
							
							
								
								Remove makefile complexity by always running tablegen with its final output  
							
							 
							
							... 
							
							
							
							directory.
llvm-svn: 7485 
							
						 
						
							2003-08-01 20:34:56 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								89f9397668 
								
							 
						 
						
							
							
								
								Add all arithmetic operators to ConstantExprToString().  
							
							 
							
							... 
							
							
							
							Note that some generated operators (like &, | or ^) may
not be supported by the assembler -- but if they've got
this far, it's better to generate them and let the assembler decide.
llvm-svn: 7476 
							
						 
						
							2003-08-01 15:55:53 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								16c2b62d13 
								
							 
						 
						
							
							
								
								*Both* operands of divide need sign-extension before divide (if smaller  
							
							 
							
							... 
							
							
							
							than machine register size), not just the second operand.
llvm-svn: 7475 
							
						 
						
							2003-08-01 15:54:38 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								36fcc5d8b3 
								
							 
						 
						
							
							
								
								Put back the separate pass to decompose multi-dimensional references  
							
							 
							
							... 
							
							
							
							since it is *necessary* for correct code generation.  Only optional
transformations belong in the PreOpts pass (which needs to be renamed
from PreSelection to PreOpts).
llvm-svn: 7474 
							
						 
						
							2003-08-01 15:53:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a979d4dd27 
								
							 
						 
						
							
							
								
								We no longer need to preprocess SparcV9.td before sending it through tablegen  
							
							 
							
							... 
							
							
							
							llvm-svn: 7437 
							
						 
						
							2003-07-30 21:00:37 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								4f6b98900c 
								
							 
						 
						
							
							
								
								When emitting a constant, check for ConstantExpr before  
							
							 
							
							... 
							
							
							
							ordinary (primitive) types since ConstantExprs may be of primitive type!
llvm-svn: 7418 
							
						 
						
							2003-07-30 12:54:47 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								33a3edad1b 
								
							 
						 
						
							
							
								
								Conform to the new interface for describing target registers... even though  
							
							 
							
							... 
							
							
							
							it's currently not used.
llvm-svn: 7416 
							
						 
						
							2003-07-30 05:51:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3f368e3432 
								
							 
						 
						
							
							
								
								Only regenerate the .inc file if IT has changed, not just if the .td files  
							
							 
							
							... 
							
							
							
							have changed.
llvm-svn: 7414 
							
						 
						
							2003-07-30 05:49:17 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4f94bedfa6 
								
							 
						 
						
							
							
								
								Do not use 'cpp' directly  
							
							 
							
							... 
							
							
							
							llvm-svn: 7404 
							
						 
						
							2003-07-29 23:04:41 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								0f918540b6 
								
							 
						 
						
							
							
								
								* Cleaned up and corrected comments wrt instruction formats  
							
							 
							
							... 
							
							
							
							* Enabled STXFSR instructions
llvm-svn: 7400 
							
						 
						
							2003-07-29 21:21:20 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								fb8f64a590 
								
							 
						 
						
							
							
								
								Make emitFarCall() public, and add a few comments to functions.  
							
							 
							
							... 
							
							
							
							llvm-svn: 7399 
							
						 
						
							2003-07-29 20:52:56 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								e895c2e241 
								
							 
						 
						
							
							
								
								Unify all constant evaluations that depend on register size  
							
							 
							
							... 
							
							
							
							in ConvertConstantToIntType.
llvm-svn: 7395 
							
						 
						
							2003-07-29 19:59:23 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								2b630b4ec2 
								
							 
						 
						
							
							
								
								Rename 'dump-asm' to 'dump-input' and really print it just before code-gen.  
							
							 
							
							... 
							
							
							
							llvm-svn: 7394 
							
						 
						
							2003-07-29 19:58:00 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								dbc0eb6a2d 
								
							 
						 
						
							
							
								
								Bug fix: don't unnecessarily pretty-print control-characters, some of  
							
							 
							
							... 
							
							
							
							which were wrong (particularly, '\a' for '\007').
llvm-svn: 7393 
							
						 
						
							2003-07-29 19:57:34 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								648ce40adf 
								
							 
						 
						
							
							
								
								Add ConvertConstantToIntType() to unify all constant handling  
							
							 
							
							... 
							
							
							
							that depends on machine register size.
Moved insertCallerSavingCode() to PhyRegAlloc and
moved isRegVolatile and modifiedByCall to TargetRegInfo: they are all
machine independent.  Remove several dead functions.
llvm-svn: 7392 
							
						 
						
							2003-07-29 19:54:41 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								2353584afc 
								
							 
						 
						
							
							
								
								Add code to support stack spill/temp offsets that don't fit in the  
							
							 
							
							... 
							
							
							
							immed. field.  Moved insertCallerSavingCode() to PhyRegAlloc: it is
now machine independent.  Remove all uses of PhyRegAlloc.
llvm-svn: 7391 
							
						 
						
							2003-07-29 19:53:21 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								0db560d8f6 
								
							 
						 
						
							
							
								
								* Correctly emit a far call if the target address does not fit into 30 bits  
							
							 
							
							... 
							
							
							
							instead of assert()ing
* Fixed a nasty bug where '07' was used instead of register 'o7'
llvm-svn: 7382 
							
						 
						
							2003-07-29 19:00:58 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ae92d0bba6 
								
							 
						 
						
							
							
								
								Specify the value type for the register, not just the size.  
							
							 
							
							... 
							
							
							
							llvm-svn: 7357 
							
						 
						
							2003-07-28 04:25:36 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								99dbdf7391 
								
							 
						 
						
							
							
								
								This code doesn't modify the LLVM structure, keep stuff const  
							
							 
							
							... 
							
							
							
							llvm-svn: 7343 
							
						 
						
							2003-07-26 23:04:00 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								536b19220c 
								
							 
						 
						
							
							
								
								(1) Major fix to the way unused regs. are marked and found for the FP  
							
							 
							
							... 
							
							
							
							Single and FP double reg types (which share the same reg class).
    Now all methods marking/finding unused regs consider the regType
    within the reg class, and SparcFloatRegClass specializes this code.
(2) Remove machine-specific regalloc. methods that are no longer needed.
    In particular, arguments and return value from a call do not need
    machine-specific code for allocation.
(3) Rename TargetRegInfo::getRegType variants to avoid unintentional
    overloading when an include file is omitted.
llvm-svn: 7334 
							
						 
						
							2003-07-25 21:12:15 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								9b17ad16c4 
								
							 
						 
						
							
							
								
								1. Fix a case that was marking the invalid reg. num. (-1) as used,  
							
							 
							
							... 
							
							
							
							causing a nasty array bound error later.
2. Fix silly typo causing logical shift of unsigned long to use
   SRL instead of SRLX.
llvm-svn: 7330 
							
						 
						
							2003-07-25 21:08:58 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f26a8ee580 
								
							 
						 
						
							
							
								
								Remove redundant const qualifiers from cast<> expressions  
							
							 
							
							... 
							
							
							
							llvm-svn: 7253 
							
						 
						
							2003-07-23 15:30:06 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6077c3195f 
								
							 
						 
						
							
							
								
								Simplify code by using ConstantInt::getRawValue instead of checking to see  
							
							 
							
							... 
							
							
							
							whether the constant is signed or unsigned, then casting
llvm-svn: 7252 
							
						 
						
							2003-07-23 15:22:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c783297812 
								
							 
						 
						
							
							
								
								Simplify code a bit  
							
							 
							
							... 
							
							
							
							llvm-svn: 7217 
							
						 
						
							2003-07-21 19:56:49 +00:00  
						
					 
				
					
						
							
							
								 
								Anand Shukla
							
						 
						
							 
							
							
							
							
								
							
							
								bd2d0577fb 
								
							 
						 
						
							
							
								
								Added special consideration for instrumentation strategy  
							
							 
							
							... 
							
							
							
							llvm-svn: 7208 
							
						 
						
							2003-07-20 15:39:30 +00:00