66031ed839 
								
							 
						 
						
							
							
								
								move all the target's asmprinters into the main target.  The piece  
							
							... 
							
							
							
							that should be split out is the InstPrinter (if a target is mc'ized).
This change makes all the targets be consistent.
llvm-svn: 119056 
							
						 
						
							2010-11-14 18:43:56 +00:00  
				
					
						
							
							
								 
						
							
								f4caceb668 
								
							 
						 
						
							
							
								
								Separate alpha asmprinter. This should unbreak native build.  
							
							... 
							
							
							
							llvm-svn: 59046 
							
						 
						
							2008-11-11 16:42:17 +00:00  
				
					
						
							
							
								 
						
							
								0d1e9a8e04 
								
							 
						 
						
							
							
								
								Switch the MachineOperand accessors back to the short names like  
							
							... 
							
							
							
							isReg, etc., from isRegister, etc.
llvm-svn: 57006 
							
						 
						
							2008-10-03 15:45:36 +00:00  
				
					
						
							
							
								 
						
							
								076e905b94 
								
							 
						 
						
							
							
								
								Move actual section printing stuff to AsmPrinter from TAI reducing heap traffic.  
							
							... 
							
							
							
							llvm-svn: 56573 
							
						 
						
							2008-09-24 22:14:23 +00:00  
				
					
						
							
							
								 
						
							
								69ff51baa0 
								
							 
						 
						
							
							
								
								Drop obsolete hook and change all usage to new interface  
							
							... 
							
							
							
							llvm-svn: 56572 
							
						 
						
							2008-09-24 22:13:07 +00:00  
				
					
						
							
							
								 
						
							
								9371964f47 
								
							 
						 
						
							
							
								
								Use raw_ostream throughout the AsmPrinter.  
							
							... 
							
							
							
							llvm-svn: 55092 
							
						 
						
							2008-08-21 00:14:44 +00:00  
				
					
						
							
							
								 
						
							
								ed47329174 
								
							 
						 
						
							
							
								
								Handle visibility printing with all generality. Remove bunch of duplicate code.  
							
							... 
							
							
							
							llvm-svn: 54540 
							
						 
						
							2008-08-08 18:25:07 +00:00  
				
					
						
							
							
								 
						
							
								08faaedc58 
								
							 
						 
						
							
							
								
								Switch Alpha to new section handling stuff  
							
							... 
							
							
							
							llvm-svn: 54457 
							
						 
						
							2008-08-07 09:53:57 +00:00  
				
					
						
							
							
								 
						
							
								ce4396bc92 
								
							 
						 
						
							
							
								
								Add CommonLinkage; currently tentative definitions  
							
							... 
							
							
							
							are represented as "weak", but there are subtle differences
in some cases on Darwin, so we need both.  The intent
is that "common" will behave identically to "weak" unless
somebody changes their target to do something else.
No functional change as yet.
llvm-svn: 51118 
							
						 
						
							2008-05-14 20:12:51 +00:00  
				
					
						
							
							
								 
						
							
								c799065cc3 
								
							 
						 
						
							
							
								
								Add a quick and dirty "loop aligner pass". x86 uses it to align its loops to 16-byte boundaries.  
							
							... 
							
							
							
							llvm-svn: 47703 
							
						 
						
							2008-02-28 00:43:03 +00:00  
				
					
						
							
							
								 
						
							
								c24ea4fb41 
								
							 
						 
						
							
							
								
								Change "Name" to "AsmName" in the target register info. Gee, a refactoring tool  
							
							... 
							
							
							
							would have been a Godsend here!
llvm-svn: 47625 
							
						 
						
							2008-02-26 21:11:01 +00:00  
				
					
						
							
							
								 
						
							
								3a4be0fdef 
								
							 
						 
						
							
							
								
								Rename MRegisterInfo to TargetRegisterInfo.  
							
							... 
							
							
							
							llvm-svn: 46930 
							
						 
						
							2008-02-10 18:45:23 +00:00  
				
					
						
							
							
								 
						
							
								32e5347eb8 
								
							 
						 
						
							
							
								
								Get rid of the annoying blank lines before labels.  
							
							... 
							
							
							
							llvm-svn: 46667 
							
						 
						
							2008-02-02 08:39:46 +00:00  
				
					
						
							
							
								 
						
							
								a5bb370aa4 
								
							 
						 
						
							
							
								
								Add new shorter predicates for testing machine operands for various types:  
							
							... 
							
							
							
							e.g. MO.isMBB() instead of MO.isMachineBasicBlock().  I don't plan on 
switching everything over, so new clients should just start using the 
shorter names.
Remove old long accessors, switching everything over to use the short
accessor: getMachineBasicBlock() -> getMBB(), 
getConstantPoolIndex() -> getIndex(), setMachineBasicBlock -> setMBB(), etc.
llvm-svn: 45464 
							
						 
						
							2007-12-30 23:10:15 +00:00  
				
					
						
							
							
								 
						
							
								5c4637816e 
								
							 
						 
						
							
							
								
								Use MachineOperand::getImm instead of MachineOperand::getImmedValue.  Likewise setImmedValue -> setImm  
							
							... 
							
							
							
							llvm-svn: 45453 
							
						 
						
							2007-12-30 20:49:49 +00:00  
				
					
						
							
							
								 
						
							
								f3ebc3f3d2 
								
							 
						 
						
							
							
								
								Remove attribution from file headers, per discussion on llvmdev.  
							
							... 
							
							
							
							llvm-svn: 45418 
							
						 
						
							2007-12-29 20:36:04 +00:00  
				
					
						
							
							
								 
						
							
								283207a71c 
								
							 
						 
						
							
							
								
								Eliminate the remaining uses of getTypeSize.  This  
							
							... 
							
							
							
							should only effect x86 when using long double.  Now
12/16 bytes are output for long double globals (the
exact amount depends on the alignment).  This brings
globals in line with the rest of LLVM: the space
reserved for an object is now always the ABI size.
One tricky point is that only 10 bytes should be
output for long double if it is a field in a packed
struct, which is the reason for the additional
argument to EmitGlobalConstant.
llvm-svn: 43688 
							
						 
						
							2007-11-05 00:04:43 +00:00  
				
					
						
							
							
								 
						
							
								cdf3609130 
								
							 
						 
						
							
							
								
								Revert 42908 for now.  
							
							... 
							
							
							
							llvm-svn: 42960 
							
						 
						
							2007-10-14 05:57:21 +00:00  
				
					
						
							
							
								 
						
							
								dc35bd79ca 
								
							 
						 
						
							
							
								
								Change the names used for internal labels to use the current  
							
							... 
							
							
							
							function symbol name instead of a codegen-assigned function
number.
Thanks Evan! :-)
llvm-svn: 42908 
							
						 
						
							2007-10-12 14:53:36 +00:00  
				
					
						
							
							
								 
						
							
								cf0a5349de 
								
							 
						 
						
							
							
								
								Don't ignore the return value of AsmPrinter::doInitialization and  
							
							... 
							
							
							
							AsmPrinter::doFinalization.
llvm-svn: 40487 
							
						 
						
							2007-07-25 19:33:14 +00:00  
				
					
						
							
							
								 
						
							
								fb80151c42 
								
							 
						 
						
							
							
								
								Removed tabs everywhere except autogenerated & external files. Add make  
							
							... 
							
							
							
							target for tabs checking.
llvm-svn: 36146 
							
						 
						
							2007-04-16 18:10:23 +00:00  
				
					
						
							
							
								 
						
							
								6719d3d0a2 
								
							 
						 
						
							
							
								
								Well this isn't as ugly and it works better. At least gcc bootstraps again  
							
							... 
							
							
							
							llvm-svn: 34254 
							
						 
						
							2007-02-13 23:41:16 +00:00  
				
					
						
							
							
								 
						
							
								c4bdea012b 
								
							 
						 
						
							
							
								
								FTOIT and ITOFT are bit converts, and if we drop 21264s, are always available  
							
							... 
							
							
							
							llvm-svn: 33492 
							
						 
						
							2007-01-24 21:09:16 +00:00  
				
					
						
							
							
								 
						
							
								f5c96fabf9 
								
							 
						 
						
							
							
								
								Renamed getTypeAlignmentShift() to getPreferredTypeAlignmentShift().  
							
							... 
							
							
							
							llvm-svn: 33482 
							
						 
						
							2007-01-24 07:03:39 +00:00  
				
					
						
							
							
								 
						
							
								1ef9cd400d 
								
							 
						 
						
							
							
								
								eliminate static ctors for Statistic objects.  
							
							... 
							
							
							
							llvm-svn: 32703 
							
						 
						
							2006-12-19 22:59:26 +00:00  
				
					
						
							
							
								 
						
							
								085cfdbfdc 
								
							 
						 
						
							
							
								
								Simplify a bit  
							
							... 
							
							
							
							llvm-svn: 32343 
							
						 
						
							2006-12-07 23:55:55 +00:00  
				
					
						
							
							
								 
						
							
								9bfb1e1f29 
								
							 
						 
						
							
							
								
								What should be the last unnecessary <iostream>s in the library.  
							
							... 
							
							
							
							llvm-svn: 32333 
							
						 
						
							2006-12-07 22:21:48 +00:00  
				
					
						
							
							
								 
						
							
								76a61eb054 
								
							 
						 
						
							
							
								
								Be sure to grab weak functions too, and make implicit defs comments  
							
							... 
							
							
							
							llvm-svn: 32308 
							
						 
						
							2006-12-07 17:39:14 +00:00  
				
					
						
							
							
								 
						
							
								7c779fcad4 
								
							 
						 
						
							
							
								
								add #include  
							
							... 
							
							
							
							llvm-svn: 32281 
							
						 
						
							2006-12-06 18:19:53 +00:00  
				
					
						
							
							
								 
						
							
								700b873130 
								
							 
						 
						
							
							
								
								Detemplatize the Statistic class.  The only type it is instantiated with  
							
							... 
							
							
							
							is 'unsigned'.
llvm-svn: 32279 
							
						 
						
							2006-12-06 17:46:33 +00:00  
				
					
						
							
							
								 
						
							
								de46e48420 
								
							 
						 
						
							
							
								
								For PR786:  
							
							... 
							
							
							
							Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting
fall out by removing unused variables. Remaining warnings have to do with
unused functions (I didn't want to delete code without review) and unused
variables in generated code. Maintainers should clean up the remaining
issues when they see them. All changes pass DejaGnu tests and Olden.
llvm-svn: 31380 
							
						 
						
							2006-11-02 20:25:50 +00:00  
				
					
						
							
							
								 
						
							
								71b99297aa 
								
							 
						 
						
							
							
								
								Move getPreferredAlignmentLog from AsmPrinter to TargetData  
							
							... 
							
							
							
							llvm-svn: 31171 
							
						 
						
							2006-10-24 20:32:14 +00:00  
				
					
						
							
							
								 
						
							
								a6a570e02f 
								
							 
						 
						
							
							
								
								Pass the MachineFunction into EmitJumpTableInfo.  
							
							... 
							
							
							
							llvm-svn: 30742 
							
						 
						
							2006-10-05 03:01:21 +00:00  
				
					
						
							
							
								 
						
							
								c8c78982d4 
								
							 
						 
						
							
							
								
								use getSectionForFunction to decide which section to emit code into  
							
							... 
							
							
							
							llvm-svn: 30738 
							
						 
						
							2006-10-05 02:47:13 +00:00  
				
					
						
							
							
								 
						
							
								3aa3ad780e 
								
							 
						 
						
							
							
								
								Jump tables on Alpha  
							
							... 
							
							
							
							llvm-svn: 30463 
							
						 
						
							2006-09-18 18:01:03 +00:00  
				
					
						
							
							
								 
						
							
								d61d39ec53 
								
							 
						 
						
							
							
								
								Adding dllimport, dllexport and external weak linkage types.  
							
							... 
							
							
							
							DLL* linkages got full (I hope) codegeneration support in C & both x86
assembler backends.
External weak linkage added for future use, we don't provide any
codegeneration, etc. support for it.
llvm-svn: 30374 
							
						 
						
							2006-09-14 18:23:27 +00:00  
				
					
						
							
							
								 
						
							
								261779bb45 
								
							 
						 
						
							
							
								
								Make target asm info a property of the target machine.  
							
							... 
							
							
							
							llvm-svn: 30162 
							
						 
						
							2006-09-07 22:06:40 +00:00  
				
					
						
							
							
								 
						
							
								a6211dcdad 
								
							 
						 
						
							
							
								
								Separate target specific asm properties from the asm printers.  
							
							... 
							
							
							
							llvm-svn: 30126 
							
						 
						
							2006-09-06 18:34:40 +00:00  
				
					
						
							
							
								 
						
							
								042f5076ed 
								
							 
						 
						
							
							
								
								0 offsets for memory operands  
							
							... 
							
							
							
							llvm-svn: 28989 
							
						 
						
							2006-07-03 17:57:34 +00:00  
				
					
						
							
							
								 
						
							
								680ac12e53 
								
							 
						 
						
							
							
								
								Add memory operand and int regs  
							
							... 
							
							
							
							llvm-svn: 28896 
							
						 
						
							2006-06-21 15:42:36 +00:00  
				
					
						
							
							
								 
						
							
								b0316eada6 
								
							 
						 
						
							
							
								
								inline asm, at least for floats  
							
							... 
							
							
							
							llvm-svn: 28895 
							
						 
						
							2006-06-21 13:37:27 +00:00  
				
					
						
							
							
								 
						
							
								446dbcb5e4 
								
							 
						 
						
							
							
								
								Added sanity check for obviously bogus immediates  
							
							... 
							
							
							
							llvm-svn: 28359 
							
						 
						
							2006-05-17 19:24:31 +00:00  
				
					
						
							
							
								 
						
							
								8488ba2e41 
								
							 
						 
						
							
							
								
								Split SwitchSection into SwitchTo{Text|Data}Section methods.  
							
							... 
							
							
							
							llvm-svn: 28184 
							
						 
						
							2006-05-09 04:59:56 +00:00  
				
					
						
							
							
								 
						
							
								10b71c0d08 
								
							 
						 
						
							
							
								
								Rename MO_VirtualRegister -> MO_Register.  Clean up immediate handling.  
							
							... 
							
							
							
							llvm-svn: 28104 
							
						 
						
							2006-05-04 18:05:43 +00:00  
				
					
						
							
							
								 
						
							
								fef7a2d0f5 
								
							 
						 
						
							
							
								
								There shalt be only one "immediate" operand type!  
							
							... 
							
							
							
							llvm-svn: 28099 
							
						 
						
							2006-05-04 17:21:20 +00:00  
				
					
						
							
							
								 
						
							
								940cc978ef 
								
							 
						 
						
							
							
								
								Remove a bunch more SparcV9 specific stuff  
							
							... 
							
							
							
							llvm-svn: 28093 
							
						 
						
							2006-05-04 01:15:02 +00:00  
				
					
						
							
							
								 
						
							
								6e663f1c1e 
								
							 
						 
						
							
							
								
								Remove some more V9-specific stuff.  
							
							... 
							
							
							
							llvm-svn: 28092 
							
						 
						
							2006-05-04 00:49:59 +00:00  
				
					
						
							
							
								 
						
							
								9f6639b64d 
								
							 
						 
						
							
							
								
								Remove some more unused stuff from MachineInstr that was leftover from V9.  
							
							... 
							
							
							
							llvm-svn: 28091 
							
						 
						
							2006-05-04 00:44:25 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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