Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						d163e8b14c 
					 
					
						
						
							
							Remove hack used to strip unwanted chars from section name  
						
						... 
						
						
						
						Use MCSectionELF methods as much as possible, removing some
ELFWriter methods which are now unused
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78940  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-13 21:25:27 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						64a6b39417 
					 
					
						
						
							
							Move ConstantExpr handling to ResolveConstantExpr method and also  
						
						... 
						
						
						
						add support for PtrToInt, Add, Mul.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78552  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-10 03:32:40 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						3e0094d969 
					 
					
						
						
							
							ELF improvements:  
						
						... 
						
						
						
						Handle large integers, x86_fp80, ConstantAggregateZero, and two more ConstantExpr:
GetElementPtr and IntToPtr
Set SHF_MERGE bit for mergeable strings
Avoid zero initialized strings to be classified as a bss symbol
Don't allow common symbols to be classified as STB_WEAK
Add a constant to be used as a global value offset in data relocations 
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78476  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-08 17:29:04 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						52d0851446 
					 
					
						
						
							
							- Remove custom handling of jumptables by the elf writter (this was  
						
						... 
						
						
						
						a dirty hack and isn't need anymore since the last x86 code emitter patch)
- Add a target-dependent modifier to addend calculation
- Use R_X86_64_32S relocation for X86::reloc_absolute_word_sext
- Use getELFSectionFlags whenever possible
- fix getTextSection to use TLOF and emit the right text section 
- Handle global emission for static ctors, dtors and Type::PointerTyID
- Some minor fixes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78176  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-05 06:57:03 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f26e03bc7e 
					 
					
						
						
							
							refactor section construction in TLOF to be through an explicit  
						
						... 
						
						
						
						initialize method, which can be called when an MCContext is available.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77687  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-31 17:42:42 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						df0b6503d6 
					 
					
						
						
							
							add module identifier to the elf object file  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77238  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-27 19:32:57 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						746e3bb354 
					 
					
						
						
							
							Handle external symbols for ELF and add some static methods to ELFSym  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77232  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-27 18:54:47 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5fe575ff4f 
					 
					
						
						
							
							Eliminate SectionFlags, just embed a SectionKind into Section  
						
						... 
						
						
						
						instead and drive things based off of that.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77184  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-27 05:32:16 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						68491c1217 
					 
					
						
						
							
							Support adding relocations for data sections, handling the cases where  
						
						... 
						
						
						
						global declared symbols are initialized with references from other global
symbols.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76540  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-21 06:51:32 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						0a38dc5fda 
					 
					
						
						
							
							For PC relative relocations where symbols are defined in the same section they  
						
						... 
						
						
						
						are referenced, ignore the relocation entry and patch the relocatable field with
the computed symbol offset directly
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76414  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-20 08:52:02 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						e2b0ecd8be 
					 
					
						
						
							
							Use R_X86_64_32S to handle Jump Table Index relocation entries. Hide TAI usage inside getSection* functions  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76347  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-18 23:24:01 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						171375f73a 
					 
					
						
						
							
							Add support to properly reference private symbols on relocation entries.  
						
						... 
						
						
						
						Use proper relocation type to build relocations for JumpTables (rodata
sections).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76326  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-18 19:30:09 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						115934eb57 
					 
					
						
						
							
							Fix coding style issues pointed by Bill.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75898  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-16 06:26:41 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						4b70fab658 
					 
					
						
						
							
							use std::vector instead of std::list for both Section and Symbol lists because  
						
						... 
						
						
						
						we care more about random access than insertion/deletion of elements.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75828  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-15 20:49:10 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						d291066879 
					 
					
						
						
							
							Cleanup the global emission and refactor some code  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75537  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-13 22:40:39 +00:00 
						 
				 
			
				
					
						
							
							
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						89e12a1b2e 
					 
					
						
						
							
							Match declaration to definition.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75454  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-13 06:00:13 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						6933d3eff8 
					 
					
						
						
							
							Changed ELFCodeEmitter to inherit from ObjectCodeEmitter  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74821  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-06 09:26:48 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						0b1308f189 
					 
					
						
						
							
							Factor some code out and support for Jump Table relocations  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74760  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-03 04:36:26 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						45f5d6417b 
					 
					
						
						
							
							shrinking down #includes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74718  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-02 18:29:24 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						a5e0abd0d4 
					 
					
						
						
							
							Support Constant Pool Sections  
						
						... 
						
						
						
						Add section symbols to the symbol table
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74170  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-25 07:36:24 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						e39493eb1b 
					 
					
						
						
							
							Use a default alignment for data and bss sections.  
						
						... 
						
						
						
						Only pad when the section size > 0 and move the code that deals
with globals initializers to a place we know for sure the global
is initialized.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73944  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-23 04:39:27 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						c236a345c7 
					 
					
						
						
							
							Use different functions to emit the string and symbol tables.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73895  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-22 19:29:56 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						0d3193ef3c 
					 
					
						
						
							
							Add more methods to gather target specific elf stuff  
						
						... 
						
						
						
						Support for .text relocations, implementing TargetELFWriter overloaded methods for x86/x86_64.
Use a map to track global values to their symbol table indexes
Code cleanup and small fixes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73894  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-22 19:16:16 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						ae9163f0e2 
					 
					
						
						
							
							Introduce new BinaryObject (blob) class, ELF Writer modified to use it. BinaryObject.h by Aaron Gray  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73333  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-14 07:53:21 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						c997d45ae5 
					 
					
						
						
							
							Support for ELF Visibility  
						
						... 
						
						
						
						Emission for globals, using the correct data sections
Function alignment can be computed for each target using TargetELFWriterInfo
Some small fixes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73201  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-11 19:16:03 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						a029a27fae 
					 
					
						
						
							
							Simple ELF32/64 binary files can now be emitted for x86 and x86_64 without  
						
						... 
						
						
						
						relocation sections.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73038  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-07 21:22:38 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						f5b0c5a1c7 
					 
					
						
						
							
							Remove elf specific info from ELFWriter.h to Elf.h. Code cleanup and more comments added  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72982  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-06 03:56:29 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						5d41910396 
					 
					
						
						
							
							ELF Code Emitter now uses CurBufferPtr, BufferBegin and BufferEnd, as do JIT and  
						
						... 
						
						
						
						MachO Writer. This will change with the arrival of ObjectCodeEmitter and
BinaryObject
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72906  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-05 00:22:10 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						cb37188323 
					 
					
						
						
							
							Use raw_ostream throughout the AsmPrinter.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55092  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-21 00:14:44 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						c9235d2e85 
					 
					
						
						
							
							Don't include <map> in Pass.h, which doesn't need it. This requires  
						
						... 
						
						
						
						adding <map> to many files that actually do need it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48667  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-03-21 23:51:57 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4ee451de36 
					 
					
						
						
							
							Remove attribution from file headers, per discussion on llvmdev.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45418  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-12-29 20:36:04 +00:00 
						 
				 
			
				
					
						
							
							
								Gabor Greif 
							
						 
					 
					
						
						
							
						
						a99be51bf5 
					 
					
						
						
							
							Here is the bulk of the sanitizing.  
						
						... 
						
						
						
						Almost all occurrences of "bytecode" in the sources have been eliminated.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37913  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-07-05 17:07:56 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						1997473cf7 
					 
					
						
						
							
							Drop 'const'  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36662  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-05-03 01:11:54 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						3e15bf33e0 
					 
					
						
						
							
							Use 'static const char' instead of 'static const int'.  
						
						... 
						
						
						
						Due to darwin gcc bug, one version of darwin linker coalesces
static const int, which defauts PassID based pass identification.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36652  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-05-02 21:39:20 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						794fd75c67 
					 
					
						
						
							
							Do not use typeinfo to identify pass in pass manager.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36632  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-05-01 21:15:47 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						4b2ca1a3c4 
					 
					
						
						
							
							Moved from include/llvm/CodeGen to lib/CodeGen.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34027  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2007-02-08 01:30:50 +00:00