Craig Topper 
							
						 
					 
					
						
						
							
						
						79aa3417eb 
					 
					
						
						
							
							Reorder includes in Target backends to following coding standards. Remove some superfluous forward declarations.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152997  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-03-17 18:46:09 +00:00 
						 
				 
			
				
					
						
							
							
								Jia Liu 
							
						 
					 
					
						
						
							
						
						31d157ae1a 
					 
					
						
						
							
							Emacs-tag and some comment fix for all ARM, CellSPU, Hexagon, MBlaze, MSP430, PPC, PTX, Sparc, X86, XCore.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150878  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-02-18 12:03:15 +00:00 
						 
				 
			
				
					
						
							
							
								Richard Osborne 
							
						 
					 
					
						
						
							
						
						6c6f28ffe4 
					 
					
						
						
							
							Implement the emitFrameIndexDebugValue and getDebugValueLocation hooks.  
						
						... 
						
						
						
						This fixes an assert due to the operands of the DBG_VALUE instruction not
being as expected (PR11105).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141666  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-10-11 12:55:35 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						3e74d6fdd2 
					 
					
						
						
							
							Move TargetRegistry and TargetSelect from Target to Support where they belong.  
						
						... 
						
						
						
						These are strictly utilities for registering targets and components.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138450  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-08-24 18:08:43 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						2d28617de2 
					 
					
						
						
							
							Move getInitialFrameState from TargetFrameInfo to MCAsmInfo (suggestions for  
						
						... 
						
						
						
						better location welcome).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135438  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-07-18 22:29:13 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						c60f9b7523 
					 
					
						
						
							
							Next round of MC refactoring. This patch factor MC table instantiations, MC  
						
						... 
						
						
						
						registeration and creation code into XXXMCDesc libraries.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135184  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-07-14 20:59:42 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						59ee62d241 
					 
					
						
						
							
							- Eliminate MCCodeEmitter's dependency on TargetMachine. It now uses MCInstrInfo  
						
						... 
						
						
						
						and MCSubtargetInfo.
- Added methods to update subtarget features (used when targets automatically
  detect subtarget features or switch modes).
- Teach X86Subtarget to update MCSubtargetInfo features bits since the
  MCSubtargetInfo layer can be shared with other modules.
- These fixes .code 16 / .code 32 support since mode switch is updated in
  MCSubtargetInfo so MC code emitter can do the right thing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134884  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-07-11 03:57:24 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						4db3cffe94 
					 
					
						
						
							
							Hide the call to InitMCInstrInfo into tblgen generated ctor.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134244  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-07-01 17:57:27 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						d5b03f252c 
					 
					
						
						
							
							Move CallFrameSetupOpcode and CallFrameDestroyOpcode to TargetInstrInfo.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134030  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-06-28 21:14:33 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						22fee2dff4 
					 
					
						
						
							
							Merge XXXGenRegisterNames.inc into XXXGenRegisterInfo.inc  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134024  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-06-28 20:07:07 +00:00 
						 
				 
			
				
					
						
							
							
								Anton Korobeynikov 
							
						 
					 
					
						
						
							
						
						cd775ceff0 
					 
					
						
						
							
							Move callee-saved regs spills / reloads to TFI  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120228  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-27 23:05:03 +00:00 
						 
				 
			
				
					
						
							
							
								Jakob Stoklund Olesen 
							
						 
					 
					
						
						
							
						
						78e6e00922 
					 
					
						
						
							
							Remove the isMoveInstr() hook.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108567  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-07-16 22:35:46 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						7431beaba2 
					 
					
						
						
							
							Rename DBG_LABEL PROLOG_LABEL, because it's only used during prolog emission and  
						
						... 
						
						
						
						thus is a much more meaningful name.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108563  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-07-16 22:20:36 +00:00 
						 
				 
			
				
					
						
							
							
								Jakob Stoklund Olesen 
							
						 
					 
					
						
						
							
						
						a98625cdad 
					 
					
						
						
							
							Replace copyRegToReg with copyPhysReg for XCore.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108087  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-07-11 07:56:13 +00:00 
						 
				 
			
				
					
						
							
							
								Stuart Hastings 
							
						 
					 
					
						
						
							
						
						3bf9125933 
					 
					
						
						
							
							Add a DebugLoc parameter to TargetInstrInfo::InsertBranch().  This  
						
						... 
						
						
						
						addresses a longstanding deficiency noted in many FIXMEs scattered
across all the targets.
This effectively moves the problem up one level, replacing eleven
FIXMEs in the targets with eight FIXMEs in CodeGen, plus one path
through FastISel where we actually supply a DebugLoc, fixing Radar
7421831.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106243  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-06-17 22:43:56 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						42d075c4fb 
					 
					
						
						
							
							Remove the TargetRegisterClass member from CalleeSavedInfo  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105344  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-06-02 20:02:30 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						2457f2c661 
					 
					
						
						
							
							Implement @llvm.returnaddress. rdar://8015977.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104421  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-05-22 01:47:14 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						34dcc6fadc 
					 
					
						
						
							
							Add a DebugLoc argument to TargetInstrInfo::copyRegToReg, so that it  
						
						... 
						
						
						
						doesn't have to guess.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103194  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-05-06 20:33:48 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						746ad69e08 
					 
					
						
						
							
							Add argument TargetRegisterInfo to loadRegFromStackSlot and storeRegToStackSlot.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103193  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-05-06 19:06:44 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						66f20c8e82 
					 
					
						
						
							
							simplify code.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100412  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-04-05 05:48:36 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c7f3ace20c 
					 
					
						
						
							
							use DebugLoc default ctor instead of DebugLoc::getUnknownLoc()  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100214  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-04-02 20:16:16 +00:00 
						 
				 
			
				
					
						
							
							
								Dale Johannesen 
							
						 
					 
					
						
						
							
						
						93d6a7e9c2 
					 
					
						
						
							
							Teach AnalyzeBranch, RemoveBranch and the branch  
						
						... 
						
						
						
						folder to be tolerant of debug info following the
branch(es) at the end of a block.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100168  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-04-02 01:38:09 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						63d7836267 
					 
					
						
						
							
							get MMI out of the label uniquing business, just go to MCContext  
						
						... 
						
						
						
						to get unique assembler temporary labels.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98489  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-03-14 08:36:50 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2e9919a5e5 
					 
					
						
						
							
							Now that DBG_LABEL is updated, we can finally make MachineMove  
						
						... 
						
						
						
						contain an MCSymbol instead of a label index.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98482  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-03-14 08:12:40 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6ffcccab51 
					 
					
						
						
							
							change the DBG_LABEL MachineInstr to always be created  
						
						... 
						
						
						
						with an MCSymbol instead of an immediate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98481  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-03-14 07:56:48 +00:00 
						 
				 
			
				
					
						
							
							
								Richard Osborne 
							
						 
					 
					
						
						
							
						
						78700b0c55 
					 
					
						
						
							
							Lower BR_JT on the XCore to a jump into a series of jump instructions.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96942  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-02-23 13:25:07 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						864e2efce2 
					 
					
						
						
							
							Remove the target hook TargetInstrInfo::BlockHasNoFallThrough in favor of  
						
						... 
						
						
						
						MachineBasicBlock::canFallThrough(), which is target-independent and more
thorough.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90634  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-05 00:44:40 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						e33f44cfc5 
					 
					
						
						
							
							Replace TargetInstrInfo::isInvariantLoad and its target-specific  
						
						... 
						
						
						
						implementations with a new MachineInstr::isInvariantLoad, which uses
MachineMemOperands and is target-independent. This brings MachineLICM
and other functionality to targets which previously lacked an
isInvariantLoad implementation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83475  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-10-07 17:38:06 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						a9ad04191c 
					 
					
						
						
							
							This void is implicit in C++.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78848  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-12 22:10:57 +00:00 
						 
				 
			
				
					
						
							
							
								Eli Friedman 
							
						 
					 
					
						
						
							
						
						23ed52752b 
					 
					
						
						
							
							Remove unused member functions.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76960  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-24 07:43:59 +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 
							
						 
					 
					
						
						
							
						
						29fd056d81 
					 
					
						
						
							
							Remove extra \n from LLVM_UNREACHABLE calls.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75416  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-12 07:15:17 +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 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						51b16f4737 
					 
					
						
						
							
							Untabification.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72604  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-30 01:09:53 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						587daedce2 
					 
					
						
						
							
							Change MachineInstrBuilder::addReg() to take a flag instead of a list of  
						
						... 
						
						
						
						booleans. This gives a better indication of what the "addReg()" is
doing. Remembering what all of those booleans mean isn't easy, especially if you
aren't spending all of your time in that code.
I took Jakob's suggestion and made it illegal to pass in "true" for the
flag. This should hopefully prevent any unintended misuse of this (by reverting
to the old way of using addReg()).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71722  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-13 21:33:08 +00:00 
						 
				 
			
				
					
						
							
							
								Dale Johannesen 
							
						 
					 
					
						
						
							
						
						bd9ef18f74 
					 
					
						
						
							
							Remove refs to non-DebugLoc version of BuildMI from XCore, PIC16.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64432  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-13 02:29:03 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						d1c321a89a 
					 
					
						
						
							
							Move debug loc info along when the spiller creates new instructions.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64342  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-12 00:02:55 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						dc54d317e7 
					 
					
						
						
							
							Turns out AnalyzeBranch can modify the mbb being analyzed. This is a nasty  
						
						... 
						
						
						
						suprise to some callers, e.g. register coalescer. For now, add an parameter
that tells AnalyzeBranch whether it's safe to modify the mbb. A better
solution is out there, but I don't have time to deal with it right now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64124  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-09 07:14:22 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						04ee5a1d92 
					 
					
						
						
							
							Change TargetInstrInfo::isMoveInstr to return source and destination sub-register indices as well.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62600  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-20 19:12:24 +00:00 
						 
				 
			
				
					
						
							
							
								Richard Osborne 
							
						 
					 
					
						
						
							
						
						62db116933 
					 
					
						
						
							
							Update the operands used when building LDAWSP instructions to match the .td  
						
						... 
						
						
						
						changes in the last commit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62257  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-15 11:18:53 +00:00 
						 
				 
			
				
					
						
							
							
								Richard Osborne 
							
						 
					 
					
						
						
							
						
						29cab5f0ee 
					 
					
						
						
							
							Add pseudo instructions to the XCore for (load|store|load address) of a  
						
						... 
						
						
						
						frame index. eliminateFrameIndex will replace these instructions with
(LDWSP|STWSP|LDAWSP) or (LDW|STW|LDAWF) if a frame pointer is in use.
This fixes PR 3324. Previously we used LDWSP, STWSP, LDAWSP before frame
pointer elimination. However since they were marked as implicitly using
SP they could not be rematerialised.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62238  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-14 18:26:46 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						cbad42cfd1 
					 
					
						
						
							
							Add more const qualifiers. This fixes build breakage from r59540.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59542  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-18 19:49:32 +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