Chandler Carruth
							
						 
						
							 
							
							
							
							
								
							
							
								4d88a1c233 
								
							 
						 
						
							
							
								
								Sort the #include lines for tools/...  
							
							 
							
							... 
							
							
							
							Again, tools are trickier to pick the main module header for than
library source files. I've started to follow the pattern of using
LLVMContext.h when it is included as a stub for program source files.
llvm-svn: 169252 
							
						 
						
							2012-12-04 10:44:52 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								229e38f0fe 
								
							 
						 
						
							
							
								
								Be more consistent in using ValueToValueMapTy.  
							
							 
							
							... 
							
							
							
							llvm-svn: 116387 
							
						 
						
							2010-10-13 01:36:30 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								d1e241a4c3 
								
							 
						 
						
							
							
								
								Use RunPassesOn as in the rest of bugpoint.  
							
							 
							
							... 
							
							
							
							llvm-svn: 110682 
							
						 
						
							2010-08-10 15:46:11 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								33e81a8221 
								
							 
						 
						
							
							
								
								Most of bugpoint now only needs to know the pass names.  
							
							 
							
							... 
							
							
							
							llvm-svn: 110534 
							
						 
						
							2010-08-08 03:55:08 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								bbdce49c2a 
								
							 
						 
						
							
							
								
								Run opt instead of bugpoint itself.  
							
							 
							
							... 
							
							
							
							llvm-svn: 110524 
							
						 
						
							2010-08-07 23:03:21 +00:00  
						
					 
				
					
						
							
							
								 
								Bob Wilson
							
						 
						
							 
							
							
							
							
								
							
							
								824edeb842 
								
							 
						 
						
							
							
								
								Revert bugpoint change due to buildbot breakage.  
							
							 
							
							... 
							
							
							
							--- Reverse-merging r110333 into '.':
U    tools/bugpoint/BugDriver.h
U    tools/bugpoint/OptimizerDriver.cpp
U    tools/bugpoint/bugpoint.cpp
U    tools/bugpoint/BugDriver.cpp
llvm-svn: 110341 
							
						 
						
							2010-08-05 16:26:32 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								86d7095eac 
								
							 
						 
						
							
							
								
								Run opt instead of bugpoint itself.  
							
							 
							
							... 
							
							
							
							Fixes PR753.
llvm-svn: 110333 
							
						 
						
							2010-08-05 15:25:38 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								d1c7ef4ab5 
								
							 
						 
						
							
							
								
								Add const to compileProgram and to the various test functions in CrashDebugger.  
							
							 
							
							... 
							
							
							
							llvm-svn: 110306 
							
						 
						
							2010-08-05 03:00:22 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								37302eadca 
								
							 
						 
						
							
							
								
								Add a Module argument to the remaining runPasses methods and mark getContext  
							
							 
							
							... 
							
							
							
							const.
llvm-svn: 110300 
							
						 
						
							2010-08-05 02:16:32 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								315190b28c 
								
							 
						 
						
							
							
								
								Make EmitProgressBitcode const and add a Module argument to runPasses. Use  
							
							 
							
							... 
							
							
							
							that argument to simplify runPassesOn.
llvm-svn: 110291 
							
						 
						
							2010-08-05 00:29:04 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								e490460fc8 
								
							 
						 
						
							
							
								
								Add const to some methods and change TestMergedProgram to return the merged  
							
							 
							
							... 
							
							
							
							module and take a const BugDriver.
llvm-svn: 109951 
							
						 
						
							2010-07-31 14:34:49 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								c89b1ef0a9 
								
							 
						 
						
							
							
								
								Add a Program argument to diffProgram to avoid a use of swapProgramIn.  
							
							 
							
							... 
							
							
							
							llvm-svn: 109859 
							
						 
						
							2010-07-30 14:19:00 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								594994a34c 
								
							 
						 
						
							
							
								
								Instead of abusing swapProgramIn, just add a Module argument to  
							
							 
							
							... 
							
							
							
							EmitProgressBitcode.
llvm-svn: 109602 
							
						 
						
							2010-07-28 18:12:30 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								81781220d2 
								
							 
						 
						
							
							
								
								Speculatively revert r108813, in an attempt to get the self-host buildbots working again.  I don't see why this patch  
							
							 
							
							... 
							
							
							
							would cause them to fail the way they are, but none of the other intervening patches seem likely either.
llvm-svn: 108818 
							
						 
						
							2010-07-20 08:26:15 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								8dc129325f 
								
							 
						 
						
							
							
								
								Reapply r108794, a fix for the failing test from last time.  
							
							 
							
							... 
							
							
							
							llvm-svn: 108813 
							
						 
						
							2010-07-20 06:52:42 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Dunbar
							
						 
						
							 
							
							
							
							
								
							
							
								4a35d6f8cd 
								
							 
						 
						
							
							
								
								Revert r108794, "Separate PassInfo into two classes: a constructor-free  
							
							 
							
							... 
							
							
							
							superclass (StaticPassInfo) and a constructor-ful subclass (PassInfo).", it is
breaking teh everything.
llvm-svn: 108805 
							
						 
						
							2010-07-20 03:06:07 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								e7c5fe586a 
								
							 
						 
						
							
							
								
								Separate PassInfo into two classes: a constructor-free superclass (StaticPassInfo) and a constructor-ful subclass (PassInfo).  
							
							 
							
							... 
							
							
							
							llvm-svn: 108794 
							
						 
						
							2010-07-20 01:19:58 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								41b4a6b36a 
								
							 
						 
						
							
							
								
								Convert some tab stops into spaces.  
							
							 
							
							... 
							
							
							
							llvm-svn: 108130 
							
						 
						
							2010-07-12 08:16:59 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								0dc3c2d37e 
								
							 
						 
						
							
							
								
								Use ValueMap instead of DenseMap.  
							
							 
							
							... 
							
							
							
							The ValueMapper used by various cloning utility maps MDNodes also.
llvm-svn: 106706 
							
						 
						
							2010-06-24 00:33:28 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								c37b45bd2d 
								
							 
						 
						
							
							
								
								Remove accidentally committed cruft.  
							
							 
							
							... 
							
							
							
							llvm-svn: 101230 
							
						 
						
							2010-04-14 04:46:11 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								7c167954e2 
								
							 
						 
						
							
							
								
								Bugpoint no longer uses exceptions.  
							
							 
							
							... 
							
							
							
							llvm-svn: 101228 
							
						 
						
							2010-04-14 04:40:31 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								6ba630b077 
								
							 
						 
						
							
							
								
								Remove use of exceptions from bugpoint. No deliberate functionality change!  
							
							 
							
							... 
							
							
							
							llvm-svn: 101013 
							
						 
						
							2010-04-12 05:08:25 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								3e24f7e632 
								
							 
						 
						
							
							
								
								Remove dead argument and clean whitespace. No functionality change.  
							
							 
							
							... 
							
							
							
							llvm-svn: 100954 
							
						 
						
							2010-04-10 23:18:13 +00:00  
						
					 
				
					
						
							
							
								 
								Jeffrey Yasskin
							
						 
						
							 
							
							
							
							
								
							
							
								a6eedc3c03 
								
							 
						 
						
							
							
								
								Free all Constants in ~LLVMConstantImpl.  We avoid assertion failures  
							
							 
							
							... 
							
							
							
							by dropping all references from all constants that can use other
constants before trying to destroy any of them.
I also had to free bugpoint's Module in ~BugDriver().
llvm-svn: 99160 
							
						 
						
							2010-03-22 05:23:37 +00:00  
						
					 
				
					
						
							
							
								 
								Jeffrey Yasskin
							
						 
						
							 
							
							
							
							
								
							
							
								71bd0f4eda 
								
							 
						 
						
							
							
								
								Bugpoint's default memory limit (100MB) was too low for valgrind, so  
							
							 
							
							... 
							
							
							
							this patch raises the default to 800MB when valgrind's active.  800
was chosen semi-arbitrarily.
llvm-svn: 98905 
							
						 
						
							2010-03-19 00:09:28 +00:00  
						
					 
				
					
						
							
							
								 
								Benjamin Kramer
							
						 
						
							 
							
							
							
							
								
							
							
								78c3bcb582 
								
							 
						 
						
							
							
								
								Make LLVMContext and LLVMContextImpl classes instead of structs.  
							
							 
							
							... 
							
							
							
							llvm-svn: 78690 
							
						 
						
							2009-08-11 17:45:13 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								46ffffa750 
								
							 
						 
						
							
							
								
								Fix FindExecutable to use sys::Path::GetMainExecutable instead of  
							
							 
							
							... 
							
							
							
							just argv[0]. And remove the code for searching the current
working directory and for searching PATH; the point of FindExecutable
is not to find whatever version of the executable can be found by
searching around, but to find an executable that accompanies the
current executable.
Update the tools to use sys::Program::FindProgramByName when they
want PATH searching.
llvm-svn: 78240 
							
						 
						
							2009-08-05 20:21:17 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								afd0c4cd56 
								
							 
						 
						
							
							
								
								Factor some of the constants+context related code out into a separate header, to make LLVMContextImpl.h  
							
							 
							
							... 
							
							
							
							not hideous.  Also, fix some MSVC compile errors.
llvm-svn: 78115 
							
						 
						
							2009-08-04 22:41:48 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								ee05152cfa 
								
							 
						 
						
							
							
								
								Convert more tools code from cerr and cout to errs() and outs().  
							
							 
							
							... 
							
							
							
							llvm-svn: 76070 
							
						 
						
							2009-07-16 15:30:09 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								2a15443aa8 
								
							 
						 
						
							
							
								
								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.
llvm-svn: 74655 
							
						 
						
							2009-07-01 23:13:44 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								1cf085d558 
								
							 
						 
						
							
							
								
								Hold the LLVMContext by reference rather than by pointer.  
							
							 
							
							... 
							
							
							
							llvm-svn: 74640 
							
						 
						
							2009-07-01 21:22:36 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								6773d388aa 
								
							 
						 
						
							
							
								
								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.
llvm-svn: 74614 
							
						 
						
							2009-07-01 16:58:40 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								956ae9dc15 
								
							 
						 
						
							
							
								
								Use CloneModule's ValueMap in more places, instead of looking  
							
							 
							
							... 
							
							
							
							up functions by name.
llvm-svn: 69805 
							
						 
						
							2009-04-22 15:57:18 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								414cf50234 
								
							 
						 
						
							
							
								
								Generalize bugpoint's concept of a "safe" backend, and add options  
							
							 
							
							... 
							
							
							
							to allow the "safe" backend to be run with a different path, and/or
with different command-line options.
This enables the following use cases:
 - bugpoint llc against an llc command from a different build
 - bugpoint llc against the same llc with different command-line options
 - and more...
Also, document the existing "custom" interpreter options.
llvm-svn: 60681 
							
						 
						
							2008-12-08 04:02:47 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								345353d6b4 
								
							 
						 
						
							
							
								
								remove attributions from tools.  
							
							 
							
							... 
							
							
							
							llvm-svn: 45421 
							
						 
						
							2007-12-29 20:44:31 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								c6243020a6 
								
							 
						 
						
							
							
								
								Allow the block extractor take to take a list of basic blocks to not extract  
							
							 
							
							... 
							
							
							
							from a file containing Function/BasicBlock pairings. This is not safe against
anonymous or abnormally-named Funcs or BBs.
Make bugpoint use this interface to pass the BBs list to the child bugpoint.
llvm-svn: 44101 
							
						 
						
							2007-11-14 06:47:06 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								0e535c3c8e 
								
							 
						 
						
							
							
								
								Pretty straightforward replacement of "bytecode" by "bitcode"  
							
							 
							
							... 
							
							
							
							performed on tools/ first, in order not to cause lethal damage
llvm-svn: 37877 
							
						 
						
							2007-07-04 21:55:50 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								d01defedf6 
								
							 
						 
						
							
							
								
								Add possibility to set memory limit for binaries run via libSystem. This  
							
							 
							
							... 
							
							
							
							is especially needed for bugpoint. This partly implements PR688
llvm-svn: 34349 
							
						 
						
							2007-02-16 19:11:07 +00:00  
						
					 
				
					
						
							
							
								 
								Bill Wendling
							
						 
						
							 
							
							
							
							
								
							
							
								3f83343c52 
								
							 
						 
						
							
							
								
								Fix for PR960. Improves bugpoint so that it removes global variable  
							
							 
							
							... 
							
							
							
							initializers as well. This is only a first pass. It can be slow because
it clones the module for each pass. An obvious improvement is not to do that.
llvm-svn: 31182 
							
						 
						
							2006-10-25 18:36:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								634bc046ca 
								
							 
						 
						
							
							
								
								Add a new -cbe-bug mode, which works just like -run-llc, except that it uses  
							
							 
							
							... 
							
							
							
							LLC as the reference compiler to reduce testcases for bugs in GCC.
llvm-svn: 30400 
							
						 
						
							2006-09-15 21:29:15 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								56588abbf8 
								
							 
						 
						
							
							
								
								fit in 80 cols  
							
							 
							
							... 
							
							
							
							llvm-svn: 29754 
							
						 
						
							2006-08-17 18:51:28 +00:00  
						
					 
				
					
						
							
							
								 
								Patrick Jenkins
							
						 
						
							 
							
							
							
							
								
							
							
								c46c03834c 
								
							 
						 
						
							
							
								
								This commit adds a new feature called find-bugs. The find-bugs option can be invoked on a .bc file from the command like with -find-bugs and a list of passes you wish to test. This procedure takes the set of optimization passes the user specifies, randomizes the passes, runs the passes on the specified .bc file, compiles the program, and finally runs the program checking its output vs the .bc file with no optimizations. This process repeats until either the user kills bugpoint or an error occurs in the optimizations, program complitation, or the running of the program. If an error occurs, bugpoint attempts to diagnose the error by eliminating passes that are not at fault and code that is not needed.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29703 
							
						 
						
							2006-08-15 16:40:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								20ec1654b1 
								
							 
						 
						
							
							
								
								Teach bugpoint to kill optimization passes that run over the timeout limit,  
							
							 
							
							... 
							
							
							
							which allows it to debug optimizer infinite loops.  This patch is contributed
by Nick Lewycky, thanks!
llvm-svn: 28763 
							
						 
						
							2006-06-13 03:10:48 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								842118ce95 
								
							 
						 
						
							
							
								
								For PR351:  
							
							 
							
							... 
							
							
							
							Generally, remove use of fork/exec from bugpoint in favor of the portable
sys::Program::ExecuteAndWait method. This change requires two new options
to bugpoint to tell it that it is running in "child" mode. In this mode,
it reads its input and runs the passes. The result code signals to the
parent instance of bugpoint what happened (success, fail, crash).
This change should make bugpoint usable on Win32 systems.
llvm-svn: 24961 
							
						 
						
							2005-12-22 20:02:55 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								beb01faea3 
								
							 
						 
						
							
							
								
								When the user hits ctrl-c, bugpoint should attempt to stop reduction as  
							
							 
							
							... 
							
							
							
							quickly as possible and output what it has so far.  If they hit it twice,
bugpoint is killed.
llvm-svn: 22579 
							
						 
						
							2005-08-02 02:16:17 +00:00  
						
					 
				
					
						
							
							
								 
								Jeff Cohen
							
						 
						
							 
							
							
							
							
								
							
							
								88e7b7288a 
								
							 
						 
						
							
							
								
								Eliminate tabs and trailing spaces  
							
							 
							
							... 
							
							
							
							llvm-svn: 21441 
							
						 
						
							2005-04-22 04:13:13 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								650ba8eb56 
								
							 
						 
						
							
							
								
								Remove trailing whitespace  
							
							 
							
							... 
							
							
							
							llvm-svn: 21428 
							
						 
						
							2005-04-22 00:00:37 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a060b10ee5 
								
							 
						 
						
							
							
								
								Implement basic block extraction for the miscompilation debugger.  This still needs  
							
							 
							
							... 
							
							
							
							two things: the FIXME in ExtractBlocks needs to be implemented, and the basic block
extractor itself needs to have enough bugs fixed for this to be more or less
useful.
Until the time that this is generally useful, it is hidden behind the new bugpoint
-enable-block-extraction option.  I hope to get the FIXME done tonight.
Also of note, this patch adds a -extract-bbs option to bugpoint which can be used
to debug the block extractor.  (hint hint Misha :)
llvm-svn: 13471 
							
						 
						
							2004-05-11 21:54:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bf791614ed 
								
							 
						 
						
							
							
								
								Merge the code generator miscompilation code into the optimizer miscompilation  
							
							 
							
							... 
							
							
							
							code.  This "instantly" gives us loop-extractor power to assist with the
debugment of our nasty codegen issues.  :)
llvm-svn: 12678 
							
						 
						
							2004-04-05 22:58:16 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								95053a9f28 
								
							 
						 
						
							
							
								
								Make a method public  
							
							 
							
							... 
							
							
							
							llvm-svn: 12677 
							
						 
						
							2004-04-05 22:01:48 +00:00