Rafael Espindola 
							
						 
					 
					
						
						
							
						
						1d739a010d 
					 
					
						
						
							
							Update the section index map after we add the medatada sections.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118728  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-10 22:34:07 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						4beee3d06b 
					 
					
						
						
							
							Use SectionIndexMap in WriteSymbolTable to make it a little less brittle.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118725  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-10 22:16:43 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						bab2a80525 
					 
					
						
						
							
							Factor some code into ComputeIndexMap.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118722  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-10 21:51:05 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						af3d38f70e 
					 
					
						
						
							
							Change the String<size> methods to take a fragment instead of a buffer.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118709  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-10 20:02:59 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						4283f4b81e 
					 
					
						
						
							
							Use MCSectionELF in places we know we have an ELF section.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118699  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-10 19:05:07 +00:00 
						 
				 
			
				
					
						
							
							
								Jim Grosbach 
							
						 
					 
					
						
						
							
						
						2c4d5125c7 
					 
					
						
						
							
							Update ARMConstantPoolValue to not use a modifier string. Use an explicit  
						
						... 
						
						
						
						VariantKind marker to indicate the additional information necessary. Update
MC to handle the new Kinds. rdar://8647623
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118671  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-10 03:26:07 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						34be396a12 
					 
					
						
						
							
							Fixed version of 118639 with an extra assert to catch similar problems  
						
						... 
						
						
						
						earlier. Implicit bool -> int conversions are evil!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118651  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-09 23:42:07 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						037b5be15a 
					 
					
						
						
							
							Revert previous patch. Missed a case.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118645  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-09 22:54:38 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						e61a1ac595 
					 
					
						
						
							
							Remove IsExplicit. It was always false.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118639  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-09 22:37:44 +00:00 
						 
				 
			
				
					
						
							
							
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						603abd5619 
					 
					
						
						
							
							Fix typo.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118421  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-08 17:53:02 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						4faf7c78fe 
					 
					
						
						
							
							Set default flags for .rodata.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118395  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-08 02:47:59 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						e25e1ef48b 
					 
					
						
						
							
							Speed up AddSectionToTheEnd. It was walking all fragments in all sections.  
						
						... 
						
						
						
						This is really slow with we have 1000s of sections each with a corresponding
relocation section. Also, it is only used by the ELF writer to add
basic data, so there is no need to force a new layout pass.
Should fix PR8563.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118377  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-07 15:03:27 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						187d8339db 
					 
					
						
						
							
							Relax dwarf line fragments. This fixes a crash in the included testcase.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118365  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-07 02:07:12 +00:00 
						 
				 
			
				
					
						
							
							
								Jim Grosbach 
							
						 
					 
					
						
						
							
						
						ba21957cbd 
					 
					
						
						
							
							Add '.code 32' assembler directive to MC streamers.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118309  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-05 22:40:09 +00:00 
						 
				 
			
				
					
						
							
							
								Jim Grosbach 
							
						 
					 
					
						
						
							
						
						ce79299f78 
					 
					
						
						
							
							MC'ize the '.code 16' and '.thumb_func' ARM directives.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118301  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-05 22:08:08 +00:00 
						 
				 
			
				
					
						
							
							
								Benjamin Kramer 
							
						 
					 
					
						
						
							
						
						f79856986d 
					 
					
						
						
							
							Put class into an anonymous namespace.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118294  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-05 19:56:38 +00:00 
						 
				 
			
				
					
						
							
							
								Jim Grosbach 
							
						 
					 
					
						
						
							
						
						c9d1439051 
					 
					
						
						
							
							Allow targets to specify the MachO CPUType/CPUSubtype information.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118288  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-05 18:48:58 +00:00 
						 
				 
			
				
					
						
							
							
								Jim Grosbach 
							
						 
					 
					
						
						
							
						
						41ed3ca19d 
					 
					
						
						
							
							syntaxunified directive is a no-op for MachO writing.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118287  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-05 18:47:32 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						7387345016 
					 
					
						
						
							
							Add 118023 back, but with proper spelling for .uleb128/.sleb128.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118254  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-04 18:17:08 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						187ce544b2 
					 
					
						
						
							
							Do relaxations with FT_Org fragments. Fixes the FIXME:  
						
						... 
						
						
						
						// FIXME: We should compute this sooner, we don't want to recurse here, and
    // we would like to be more functional.
In MCAssembler::ComputeFragmentSize.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118080  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-02 21:38:23 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						3ff57094a7 
					 
					
						
						
							
							Add support for expressions in .sleb/.uleb directives.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118023  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-02 17:22:24 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						c70a1d985a 
					 
					
						
						
							
							Write the line info to .debug_line.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117930  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-01 17:07:14 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						f89671d994 
					 
					
						
						
							
							Move EmitInstruction to MCObjectStreamer so that ELF and MachO can share it.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117925  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-01 16:27:31 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						cc3acee7b3 
					 
					
						
						
							
							Add support for .value.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117922  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-01 15:29:07 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						484291c273 
					 
					
						
						
							
							Implement .weakref.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117911  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-01 14:28:48 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						7be2c33193 
					 
					
						
						
							
							Add support for files with more than 65280 sections. No testcase since  
						
						... 
						
						
						
						it would be a bit too big :-)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117849  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-31 00:16:26 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						d179886f05 
					 
					
						
						
							
							Be more strict on when we produce an undefined reference. In gas a file with  
						
						... 
						
						
						
						just
.type   foo,@object
will produce an undefined reference to foo. On the other hand, a file with
just
.weakref bar, foo
will not. It is somewhat hard to support both in MC since both statements
should create the symbols. It should be possible if we really need to by
adding to the flags, but hopefully that is not necessary.
With this patch we do not produce a undefined reference in any of those cases.
The assembly file needs an actual use for the undefined reference to be
present.
This is in preparation for a patch implementing .weakref.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117735  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-29 23:09:31 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						f4b0f3e616 
					 
					
						
						
							
							Improvements to .section parsing:  
						
						... 
						
						
						
						* If we have a M or a G, reject sections without the type
* Only parse the flag specific arguments if we have M or G
* Parse the corresponding arguments for M and G
We ignore the G arguments and flag for now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117608  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-28 21:33:33 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						787c33718d 
					 
					
						
						
							
							Add support for the .string directive.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117592  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-28 20:02:27 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						1973d43792 
					 
					
						
						
							
							Defined weak symbols should have non-zero value.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117585  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-28 19:39:57 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						29129728f1 
					 
					
						
						
							
							Fix relocations with renamed symbols.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117575  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-28 19:08:03 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						f571f9a8fe 
					 
					
						
						
							
							Aliases defined with .symver should copy the binding of the symbols they alias.  
						
						... 
						
						
						
						Move the existing patching for undefined symbols so that all the patching
is done in the same function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117570  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-28 18:33:03 +00:00 
						 
				 
			
				
					
						
							
							
								Roman Divacky 
							
						 
					 
					
						
						
							
						
						f9d1752104 
					 
					
						
						
							
							Use the IDVal directly as there's no need to convert to std::string.  
						
						... 
						
						
						
						Pointed out by Chris!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117557  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-28 16:57:58 +00:00 
						 
				 
			
				
					
						
							
							
								Roman Divacky 
							
						 
					 
					
						
						
							
						
						50e7a78709 
					 
					
						
						
							
							Implement .equ directive as a synonym to .set.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117553  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-28 16:22:58 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						aa8f1f0135 
					 
					
						
						
							
							Implement R_X86_64_DTPOFF32.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117548  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-28 15:11:03 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						b4d1721eff 
					 
					
						
						
							
							Implement TLSLD.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117547  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-28 15:02:40 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						0cf15d61b7 
					 
					
						
						
							
							Implement DTPOFF.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117546  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-28 14:48:59 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						a264f72d3f 
					 
					
						
						
							
							Implement TLSLDM.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117544  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-28 14:37:09 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						a0a2f8734c 
					 
					
						
						
							
							Implement VK_GOTNTPOFF and switch RelocNeedsGOT to use VariantKind.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117543  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-28 14:22:44 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						3cede2d0b2 
					 
					
						
						
							
							Add support for R_386_TLS_GD, R_386_TLS_LE_32, R_386_TLS_IE and R_386_TLS_LE.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117494  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-27 21:23:52 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						bc82d8b84f 
					 
					
						
						
							
							Implement R_X86_64_GOTTPOFF, R_X86_64_TLSGD and R_X86_64_TPOFF32.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117481  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-27 20:28:07 +00:00 
						 
				 
			
				
					
						
							
							
								Benjamin Kramer 
							
						 
					 
					
						
						
							
						
						07ee63283c 
					 
					
						
						
							
							Replace pointer arithmetic with StringRef::substr.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117477  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-27 19:53:52 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						4fa3478fc2 
					 
					
						
						
							
							Set default type and flags for .init and .fini.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117471  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-27 18:45:20 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						83ff4d2b0d 
					 
					
						
						
							
							Produce an error for an invalid use of .symver.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117462  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-27 17:56:18 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						bf052ac5d1 
					 
					
						
						
							
							Symbols defined as the difference of other two end up in the ABS section.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117451  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-27 16:04:30 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						8818213247 
					 
					
						
						
							
							Add support for the .symver directive. This is really ugly, but most of it is  
						
						... 
						
						
						
						contained in the ELF object writer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117448  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-27 15:18:17 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						a6866969ba 
					 
					
						
						
							
							Move more logic to isInSymtab and simplify.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117447  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-27 14:44:52 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						61e3b91da7 
					 
					
						
						
							
							Add support for .ident.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117389  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-26 19:35:47 +00:00 
						 
				 
			
				
					
						
							
							
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						b1e0f76352 
					 
					
						
						
							
							MC/AsmParser: Fix relative precedence of {+,-} and comparison ops.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117299  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-25 20:18:56 +00:00 
						 
				 
			
				
					
						
							
							
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						bdf90d679b 
					 
					
						
						
							
							MC/AsmLexer: Fix bug in source location for Slash token.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117298  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-25 20:18:53 +00:00