Eli Friedman 
							
						 
					 
					
						
						
							
						
						ed224949ed 
					 
					
						
						
							
							Handle void in XCoreTargetLowering::isLegalAddressingMode.  Triggers in  
						
						... 
						
						
						
						test/CodeGen/Generic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76162  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-17 07:16:38 +00:00 
						 
				 
			
				
					
						
							
							
								Richard Osborne 
							
						 
					 
					
						
						
							
						
						db9e697725 
					 
					
						
						
							
							Combine an unaligned store of unaligned load into a memmove.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75908  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-16 12:50:48 +00:00 
						 
				 
			
				
					
						
							
							
								Richard Osborne 
							
						 
					 
					
						
						
							
						
						787e90f862 
					 
					
						
						
							
							Lower the threshold at which memcpy / memmove / memset stop being expanded  
						
						... 
						
						
						
						inline in the XCore.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75906  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-16 12:41:34 +00:00 
						 
				 
			
				
					
						
							
							
								Richard Osborne 
							
						 
					 
					
						
						
							
						
						ff4149b903 
					 
					
						
						
							
							Fix typo in last commit on expansion of unaligned loads.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75903  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-16 10:48:47 +00:00 
						 
				 
			
				
					
						
							
							
								Richard Osborne 
							
						 
					 
					
						
						
							
						
						ccb7e96ef0 
					 
					
						
						
							
							Expand unaligned 32 bit loads from an address which is a constant  
						
						... 
						
						
						
						offset from a 32 bit aligned base as follows:
  ldw low, base[offset >> 2]
  ldw high, base[(offset >> 2) + 1]
  shr low_shifted, low, (offset & 0x3) * 8
  shl high_shifted, high, 32 - (offset & 0x3) * 8
  or result, low_shifted, high_shifted
Expand 32 bit loads / stores with 16 bit alignment into two 16 bit
loads / stores.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75902  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-16 10:42:35 +00:00 
						 
				 
			
				
					
						
							
							
								Richard Osborne 
							
						 
					 
					
						
						
							
						
						7f47ce9662 
					 
					
						
						
							
							Custom lower unaligned 32 bit stores and loads into libcalls. This is  
						
						... 
						
						
						
						a big code size win since before they were expanding to upto 16
instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75901  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-16 10:21:18 +00:00 
						 
				 
			
				
					
						
							
							
								Richard Osborne 
							
						 
					 
					
						
						
							
						
						3af282f16a 
					 
					
						
						
							
							Fix XCoreTargetLowering::isLegalAddressingMode to handle non simple VTs.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75788  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-15 15:46:56 +00:00 
						 
				 
			
				
					
						
							
							
								Torok Edwin 
							
						 
					 
					
						
						
							
						
						c23197a26f 
					 
					
						
						
							
							llvm_unreachable->llvm_unreachable(0), LLVM_UNREACHABLE->llvm_unreachable.  
						
						... 
						
						
						
						This adds location info for all llvm_unreachable calls (which is a macro now) in
!NDEBUG builds.
In NDEBUG builds location info and the message is off (it only prints
"UREACHABLE executed").
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75640  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-14 16:55:14 +00:00 
						 
				 
			
				
					
						
							
							
								Torok Edwin 
							
						 
					 
					
						
						
							
						
						c25e7581b9 
					 
					
						
						
							
							assert(0) -> LLVM_UNREACHABLE.  
						
						... 
						
						
						
						Make llvm_unreachable take an optional string, thus moving the cerr<< out of
line.
LLVM_UNREACHABLE is now a simple wrapper that makes the message go away for
NDEBUG builds.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75379  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-11 20:10:48 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						d1474d09cb 
					 
					
						
						
							
							Thread LLVMContext through MVT and related parts of SDISel.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75153  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-09 17:57:24 +00:00 
						 
				 
			
				
					
						
							
							
								Torok Edwin 
							
						 
					 
					
						
						
							
						
						dac237e182 
					 
					
						
						
							
							Implement changes from Chris's feedback.  
						
						... 
						
						
						
						Finish converting lib/Target.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75043  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-08 20:53:28 +00:00 
						 
				 
			
				
					
						
							
							
								Torok Edwin 
							
						 
					 
					
						
						
							
						
						804e0fea40 
					 
					
						
						
							
							Convert more abort() calls to llvm_report_error().  
						
						... 
						
						
						
						Also remove trailing semicolon.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75027  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-08 19:04:27 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						b4202b84d7 
					 
					
						
						
							
							Update comments to make it clear that the function alignment is the Log2 of the  
						
						... 
						
						
						
						bytes and not bytes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74624  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-01 18:50:55 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						20c568f366 
					 
					
						
						
							
							Add an "alignment" field to the MachineFunction object. It makes more sense to  
						
						... 
						
						
						
						have the alignment be calculated up front, and have the back-ends obey whatever
alignment is decided upon.
This allows for future work that would allow for precise no-op placement and the
like.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74564  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-30 22:38:32 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						777d2306b3 
					 
					
						
						
							
							Rename PaddedSize to AllocSize, in the hope that this  
						
						... 
						
						
						
						will make it more obvious what it represents, and stop
it being confused with the StoreSize.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71349  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-09 07:06:46 +00:00 
						 
				 
			
				
					
						
							
							
								Dale Johannesen 
							
						 
					 
					
						
						
							
						
						0b4581f16c 
					 
					
						
						
							
							missed file  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64436  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-13 02:32:04 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						1fdbc1dd4e 
					 
					
						
						
							
							Constify TargetInstrInfo::EmitInstrWithCustomInserter, allowing  
						
						... 
						
						
						
						ScheduleDAG's TLI member to use const.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64018  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-07 16:15:20 +00:00 
						 
				 
			
				
					
						
							
							
								Dale Johannesen 
							
						 
					 
					
						
						
							
						
						b300d2aa3e 
					 
					
						
						
							
							Get rid of the last non-DebugLoc versions of getNode!  
						
						... 
						
						
						
						Many targets build placeholder nodes for special operands, e.g.
GlobalBaseReg on X86 and PPC for the PIC base.  There's no
sensible way to associate debug info with these.  I've left
them built with getNode calls with explicit DebugLoc::getUnknownLoc operands. 
I'm not too happy about this but don't see a good improvement;
I considered adding a getPseudoOperand or something, but it
seems to me that'll just make it harder to read.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63992  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-07 00:55:49 +00:00 
						 
				 
			
				
					
						
							
							
								Dale Johannesen 
							
						 
					 
					
						
						
							
						
						de06470330 
					 
					
						
						
							
							Remove more non-DebugLoc versions of getNode.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63969  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-06 21:50:26 +00:00 
						 
				 
			
				
					
						
							
							
								Dale Johannesen 
							
						 
					 
					
						
						
							
						
						2fabcb2776 
					 
					
						
						
							
							Get rid of 3 non-DebugLoc getNode variants.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63808  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-05 01:01:16 +00:00 
						 
				 
			
				
					
						
							
							
								Dale Johannesen 
							
						 
					 
					
						
						
							
						
						a05dca4f9e 
					 
					
						
						
							
							Remove non-DebugLoc forms of CopyToReg and CopyFromReg.  
						
						... 
						
						
						
						Adjust callers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63789  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-04 23:02:30 +00:00 
						 
				 
			
				
					
						
							
							
								Dale Johannesen 
							
						 
					 
					
						
						
							
						
						33c960f523 
					 
					
						
						
							
							Remove non-DebugLoc versions of getLoad and getStore.  
						
						... 
						
						
						
						Adjust the many callers of those versions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63767  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-04 20:06:27 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						ceb4d1aecb 
					 
					
						
						
							
							Rename getABITypeSize to getTypePaddedSize, as  
						
						... 
						
						
						
						suggested by Chris.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62099  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-12 20:38:59 +00:00 
						 
				 
			
				
					
						
							
							
								Richard Osborne 
							
						 
					 
					
						
						
							
						
						269bc0042f 
					 
					
						
						
							
							Add support for ISD::TRAP to the XCore backend  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60479  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-12-03 10:59:16 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						1607f05cb7 
					 
					
						
						
							
							Change the interface to the type legalization method  
						
						... 
						
						
						
						ReplaceNodeResults: rather than returning a node which
must have the same number of results as the original
node (which means mucking around with MERGE_VALUES,
and which is also easy to get wrong since SelectionDAG
folding may mean you don't get the node you expect),
return the results in a vector.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60348  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-12-01 11:39:25 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						03228089d5 
					 
					
						
						
							
							Rename SetCCResultContents to BooleanContents.  In  
						
						... 
						
						
						
						practice these booleans are mostly produced by SetCC,
however the concept is more general.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59911  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-23 15:47:28 +00:00 
						 
				 
			
				
					
						
							
							
								Richard Osborne 
							
						 
					 
					
						
						
							
						
						223fd6efc8 
					 
					
						
						
							
							[XCore] Fix expansion of 64 bit add/sub. Don't custom expand  
						
						... 
						
						
						
						these operations if ladd/lsub are not available on the current
subtarget.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59305  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-14 15:59:19 +00:00 
						 
				 
			
				
					
						
							
							
								Richard Osborne 
							
						 
					 
					
						
						
							
						
						1d8f975890 
					 
					
						
						
							
							Add XCore intrinsics for getid (returns thread id) and bitrev (reverses  
						
						... 
						
						
						
						bits in a word).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59296  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-14 10:12:16 +00:00 
						 
				 
			
				
					
						
							
							
								Richard Osborne 
							
						 
					 
					
						
						
							
						
						b25baef26f 
					 
					
						
						
							
							Add XCore backend.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58838  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-07 10:59:00 +00:00