David Greene 
							
						 
					 
					
						
						
							
						
						71847813bc 
					 
					
						
						
							
							Have asm printers use formatted_raw_ostream directly to avoid a  
						
						... 
						
						
						
						dynamic_cast<>.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75670  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-14 20:18:05 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b8158acc23 
					 
					
						
						
							
							Reapply my previous asmprinter changes now with more testing and two  
						
						... 
						
						
						
						additional bug fixes:
1. The bug that everyone hit was a problem in the asmprinter where it
   would remove $stub but keep the L prefix on a name when emitting the
   indirect symbol.  This is easy to fix by keeping the name of the stub
   and the name of the symbol in a StringMap instead of just keeping a
   StringSet and trying to reconstruct it late.
2. There was a problem printing the personality function.  The current
   logic to print out the personality function from the DWARF information
   is a bit of a cesspool right now that duplicates a bunch of other 
   logic in the asm printer.  The short version of it is that it depends
   on emitting both the L and _ prefix for symbols (at least on darwin)
   and until I can untangle it, it is best to switch the mangler back to
   emitting both prefixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75646  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-14 18:17:16 +00:00 
						 
				 
			
				
					
						
							
							
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						1f316e321a 
					 
					
						
						
							
							Revert r7561{9,8,7,6}, which depend on r75610.  
						
						... 
						
						
						
						--- Reverse-merging r75619 into '.':
U    lib/Target/DarwinTargetAsmInfo.cpp
U    lib/CodeGen/AsmPrinter/AsmPrinter.cpp
--- Reverse-merging r75618 into '.':
U    lib/CodeGen/ELFWriter.cpp
U    lib/CodeGen/MachOCodeEmitter.cpp
U    lib/CodeGen/MachOWriter.cpp
--- Reverse-merging r75617 into '.':
U    lib/Target/CBackend/CBackend.cpp
--- Reverse-merging r75616 into '.':
U    tools/bugpoint/Miscompilation.cpp
U    tools/lto/LTOCodeGenerator.cpp
U    tools/lto/LTOModule.cpp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75638  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-14 16:25:11 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b5851462d0 
					 
					
						
						
							
							rename getValueName -> getMangledName  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75616  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-14 06:19:07 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						ac57e6e498 
					 
					
						
						
							
							Add the Object Code Emitter class. Original patch by Aaron Gray, I did some  
						
						... 
						
						
						
						cleanup, removed some #includes and moved Object Code Emitter out-of-line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74813  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-06 05:09:34 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						0e7a54672c 
					 
					
						
						
							
							Maintain the old LTO API, by using the global context.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74678  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-02 00:31:14 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						4434ed44c4 
					 
					
						
						
							
							Make the use of const with respect to LLVMContext sane.  Hopefully this is the last time, for the  
						
						... 
						
						
						
						moment, that I will need to make far-reaching changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74655  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-01 23:13:44 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						31895e7359 
					 
					
						
						
							
							Hold the LLVMContext by reference rather than by pointer.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74640  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-01 21:22:36 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						8b477ed579 
					 
					
						
						
							
							Add a pointer to the owning LLVMContext to Module.  This requires threading LLVMContext through a lot  
						
						... 
						
						
						
						of the bitcode reader and ASM parser APIs, as well as supporting it in all of the tools.
Patches for Clang and LLVM-GCC to follow.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74614  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-01 16:58:40 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						855a168dbe 
					 
					
						
						
							
							Indentation.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74281  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-26 06:57:16 +00:00 
						 
				 
			
				
					
						
							
							
								Bob Wilson 
							
						 
					 
					
						
						
							
						
						75d6ffd53f 
					 
					
						
						
							
							Recognize and handle ARM v7 target triples for Darwin.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73889  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-22 18:01:28 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2deb58f72e 
					 
					
						
						
							
							switch to using llvm/Target/TargetSelect.h  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73611  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-17 16:42:19 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						8189d40a8d 
					 
					
						
						
							
							Fix libLTO by #include'ing the initializers for all targets and all asm  
						
						... 
						
						
						
						printers.
While I'm here, alphabetize.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73606  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-17 06:52:10 +00:00 
						 
				 
			
				
					
						
							
							
								Rafael Espindola 
							
						 
					 
					
						
						
							
						
						f403cd7838 
					 
					
						
						
							
							Bug fix:  
						
						... 
						
						
						
						string::find returns string::npos if the substring is not found.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73145  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-09 21:14:25 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Kledzik 
							
						 
					 
					
						
						
							
						
						d8b4711a16 
					 
					
						
						
							
							<rdar://problem/6944342> libLTO for darwin should add -static when assembling .s  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72881  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-04 19:14:08 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Kledzik 
							
						 
					 
					
						
						
							
						
						cbad586240 
					 
					
						
						
							
							<rdar://problem/6940611> libLTO.dylib needs to let linker specify path to assembler  
						
						... 
						
						
						
						Add lto_codegen_set_assembler_path() API which allows the linker to specify the
path to the assembler tool to run.  When assembler is used (instead of compiler)
different command line options are used.
Add LTO_API_VERSION #define so clients (linkers) can conditionalize use of new APIs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72823  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-04 00:28:45 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Kledzik 
							
						 
					 
					
						
						
							
						
						f5a1c35f1b 
					 
					
						
						
							
							<rdar://problem/6941517> C++ static constructors not preserved for static executable using LTO  
						
						... 
						
						
						
						Move setRelocationModel() to be called before TargetMachine is instantiated.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72816  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-03 22:52:12 +00:00 
						 
				 
			
				
					
						
							
							
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						e0f0e0be1c 
					 
					
						
						
							
							Change LTO to run the global opt pass twice.  
						
						... 
						
						
						
						- This matches llvm-ld.
It took a bit of archeology to figure out what the right thing to do was
(whether this was intentionally added or intentionally removed). My final
conclusion is that Chris added this intentionally here:
  http://llvm.org/viewvc/llvm-project?view=rev&revision=16913 
but the changes weren't propogated to llvm-ld until here:
  http://llvm.org/viewvc/llvm-project?view=rev&revision=34058 
which was after lto.cpp had been cloned off (of llvm-ld), here:
  http://llvm.org/viewvc/llvm-project?view=rev&revision=29494 
From the commit message, it looks like the motivation for running global opt
again is because we ran it prior to inlining. Based on that I updated the
comment and also only run the pass if we actually ran the inliner.
Chris, please review.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72811  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-03 21:51:32 +00:00 
						 
				 
			
				
					
						
							
							
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						006a034828 
					 
					
						
						
							
							Add createStandardLTOPasses to StandardPasses.h, and move lto and llvm-ld over.  
						
						... 
						
						
						
						- I know it sounds crazy, but I think all the pass lists are now coalesced into
   StandardPasses.h.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72805  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-03 21:06:14 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						195bea3498 
					 
					
						
						
							
							Allow a user of libLTO to specify the full pathname of the gcc executable to  
						
						... 
						
						
						
						run when assembling.
Wire this up to the gold plugin. You can now pass --plugin-opt gcc=/foo/bar/gcc
and it will run that gcc instead of looking for it on the path.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70490  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-30 15:24:09 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						b8cb0bb08c 
					 
					
						
						
							
							Remove LTO optimization level.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70445  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-29 23:40:42 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						98a366d547 
					 
					
						
						
							
							Instead of passing in an unsigned value for the optimization level, use an enum,  
						
						... 
						
						
						
						which better identifies what the optimization is doing. And is more flexible for
future uses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70440  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-29 23:29:43 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						a7e326b0a9 
					 
					
						
						
							
							Don't use 'false' for 'fast isel' here.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70411  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-29 21:22:00 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						9f777c64c5 
					 
					
						
						
							
							Recognize arm triplets.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68229  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-01 18:54:56 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						677c2c2a62 
					 
					
						
						
							
							Add the function attributes pass during LTO time.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65508  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-26 06:56:16 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						a9183c8020 
					 
					
						
						
							
							If nobody minds, I'm using LTO to produce faster binaries. Switch fast codegen  
						
						... 
						
						
						
						off in libLTO.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65310  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-23 07:41:55 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						38ed388fb3 
					 
					
						
						
							
							Remove changes that were accidently included in previous commit.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64835  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-17 22:45:18 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						13319ceffd 
					 
					
						
						
							
							The debugger sometimes lookup dynamically in the runtime to find ivar info of any Objective-C classes. It would be very helpful to debugger if the compiler encodes runtime version number in DWARF.  
						
						... 
						
						
						
						Add support for two additional DWARF attributes to encode Objective-C runtime version number.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64834  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-17 22:43:44 +00:00 
						 
				 
			
				
					
						
							
							
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						0d9eb9b491 
					 
					
						
						
							
							Add Binary flag to raw_fd_ostream constructor.  
						
						... 
						
						
						
						Document raw_fd_ostream's treatment of "-".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59219  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-13 05:01:07 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						f75e78900c 
					 
					
						
						
							
							On darwin, 32-bit x86 target is i386-apple-darwin...  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58731  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-04 23:13:50 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						ed3e8b4ed2 
					 
					
						
						
							
							Don't silently ignore errors when opening output streams.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55120  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-21 15:33:45 +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 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						3688f268cb 
					 
					
						
						
							
							Remove GCSE, ValueNumbering, and LoadValueNumbering.  These have been deprecated for almost a year; it's finally time for them to go away.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54822  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-15 21:31:02 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Kledzik 
							
						 
					 
					
						
						
							
						
						920ae9863b 
					 
					
						
						
							
							fix dangling pointer and argv off by one errors.  Add support for --disable-inlining  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53249  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-07-08 21:14:10 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						a93ae711a9 
					 
					
						
						
							
							Provide a  hook to set the code generation debug options to investigate lto failures.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53119  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-07-03 22:53:14 +00:00 
						 
				 
			
				
					
						
							
							
								Devang Patel 
							
						 
					 
					
						
						
							
						
						ebd69421a2 
					 
					
						
						
							
							Rename new lto2 tool as lto.  
						
						... 
						
						
						
						lto2->lto
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52912  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-30 18:15:01 +00:00