584cb0a8c1 
								
							 
						 
						
							
							
								
								For PR351:  
							
							... 
							
							
							
							* removeFile() -> sys::Path::destroyFile()
* remove extraneous toString() calls
* convert local variables representing path names from std::string to
  sys::Path
* Use sys::Path objects with FileRemove instead of std::string
* Use sys::Path methods for construction of path names
llvm-svn: 19001 
							
						 
						
							2004-12-16 23:04:20 +00:00  
				
					
						
							
							
								 
						
							
								7c16caa336 
								
							 
						 
						
							
							
								
								Changes For Bug 352  
							
							... 
							
							
							
							Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.
llvm-svn: 16137 
							
						 
						
							2004-09-01 22:55:40 +00:00  
				
					
						
							
							
								 
						
							
								63b38bd2ed 
								
							 
						 
						
							
							
								
								Fix #includes of i*.h => Instructions.h as per PR403.  
							
							... 
							
							
							
							llvm-svn: 15334 
							
						 
						
							2004-07-29 17:30:56 +00:00  
				
					
						
							
							
								 
						
							
								6aa3c83f8d 
								
							 
						 
						
							
							
								
								* Convert "\n" -> '\n'  
							
							... 
							
							
							
							* Print out another '\n' after printing out program execution status
* Make sure code wraps at 80 cols
llvm-svn: 15123 
							
						 
						
							2004-07-23 01:30:49 +00:00  
				
					
						
							
							
								 
						
							
								e7e9671cad 
								
							 
						 
						
							
							
								
								Convert to SymbolTable's new iteration interface.  
							
							... 
							
							
							
							llvm-svn: 13754 
							
						 
						
							2004-05-25 08:53:40 +00:00  
				
					
						
							
							
								 
						
							
								fd72bed301 
								
							 
						 
						
							
							
								
								Refactor and clean up a bunch more code.  No major functionality changes.  
							
							... 
							
							
							
							* Make several methods of bugdriver global functions (ParseInputFile, PrintFunctionList)
 * Make PrintFunctionList truncate the output after 10 entries, like the crash debugger
   did.  This allows code sharing.
 * Add a couple of methods to BugDriver that allows us to eliminate some friends
 * Improve comments in ExtractFunction.cpp
 * Make classes that used to be friends up bugdriver now live in anon namespaces
 * Rip a bunch of functionality in the miscompilation tester into a new
   TestMergedProgram function for future code sharing.
 * Fix a bug in the miscompilation tester induced in my last checkin
llvm-svn: 12393 
							
						 
						
							2004-03-14 20:50:42 +00:00  
				
					
						
							
							
								 
						
							
								0ee372cfe3 
								
							 
						 
						
							
							
								
								Fix the "infinite looping unless you disable adce" bug  
							
							... 
							
							
							
							Also remove an option to disable adce :)
llvm-svn: 12359 
							
						 
						
							2004-03-13 19:35:54 +00:00  
				
					
						
							
							
								 
						
							
								94b2bfb447 
								
							 
						 
						
							
							
								
								Fix the "horribly N^2'd" problem when deleting individual instructions.  
							
							... 
							
							
							
							llvm-svn: 11617 
							
						 
						
							2004-02-18 23:59:11 +00:00  
				
					
						
							
							
								 
						
							
								8bda4c4901 
								
							 
						 
						
							
							
								
								* Predicate the optimizer crash debugger on a function.  
							
							... 
							
							
							
							* Implement a new code generator crash debugger which uses this predicate
llvm-svn: 11614 
							
						 
						
							2004-02-18 23:26:28 +00:00  
				
					
						
							
							
								 
						
							
								1942f98d80 
								
							 
						 
						
							
							
								
								A couple of minor cleanups: don't forward declare private classes, put private  
							
							... 
							
							
							
							classes in an anon namespace
llvm-svn: 11604 
							
						 
						
							2004-02-18 21:29:46 +00:00  
				
					
						
							
							
								 
						
							
								327019b495 
								
							 
						 
						
							
							
								
								Cleanup and simplify manipulation of the program, eliminate the need for so  
							
							... 
							
							
							
							many 'friends' of bugdriver.
llvm-svn: 11603 
							
						 
						
							2004-02-18 21:24:48 +00:00  
				
					
						
							
							
								 
						
							
								ead1dff00b 
								
							 
						 
						
							
							
								
								Add a stub for debugging code generator crashes  
							
							... 
							
							
							
							llvm-svn: 11602 
							
						 
						
							2004-02-18 21:02:04 +00:00  
				
					
						
							
							
								 
						
							
								2f1aa118a4 
								
							 
						 
						
							
							
								
								finegrainify namespacification  
							
							... 
							
							
							
							llvm-svn: 10839 
							
						 
						
							2004-01-14 03:38:37 +00:00  
				
					
						
							
							
								 
						
							
								7b233af247 
								
							 
						 
						
							
							
								
								Do not crash when dealing with invoke and unwind instructions!  
							
							... 
							
							
							
							llvm-svn: 10160 
							
						 
						
							2003-11-22 02:10:38 +00:00  
				
					
						
							
							
								 
						
							
								960707c335 
								
							 
						 
						
							
							
								
								Put all LLVM code into the llvm namespace, as per bug 109.  
							
							... 
							
							
							
							llvm-svn: 9903 
							
						 
						
							2003-11-11 22:41:34 +00:00  
				
					
						
							
							
								 
						
							
								2920100e4d 
								
							 
						 
						
							
							
								
								I hate it when bugpoint is all ready to give me a bytecode file, then crashes  
							
							... 
							
							
							
							in final cleanups.  Then you had to run the whole mess again with
-disable-final-cleanups.
This makes bugpoint run the cleanups in a protected environment so that if
they crash, bugpoint itself doesn't crash.  This makes things much happier,
implements a FIXME, and gets rid of YABPO (yet another bugpoint option).
llvm-svn: 9743 
							
						 
						
							2003-11-05 21:45:35 +00:00  
				
					
						
							
							
								 
						
							
								debac38f5e 
								
							 
						 
						
							
							
								
								Simplify the performFinalCleanups interface  
							
							... 
							
							
							
							llvm-svn: 9740 
							
						 
						
							2003-11-05 21:15:19 +00:00  
				
					
						
							
							
								 
						
							
								4f50ebda32 
								
							 
						 
						
							
							
								
								Do not print out lists with thousands of elements in them, that's kinda silly  
							
							... 
							
							
							
							llvm-svn: 9523 
							
						 
						
							2003-10-27 04:44:59 +00:00  
				
					
						
							
							
								 
						
							
								ebec8030d6 
								
							 
						 
						
							
							
								
								fix file headers  
							
							... 
							
							
							
							llvm-svn: 9293 
							
						 
						
							2003-10-20 17:57:13 +00:00  
				
					
						
							
							
								 
						
							
								09344dcf97 
								
							 
						 
						
							
							
								
								Added copyright header to all C++ source files.  
							
							... 
							
							
							
							llvm-svn: 9291 
							
						 
						
							2003-10-20 17:47:21 +00:00  
				
					
						
							
							
								 
						
							
								8b2bd4ed47 
								
							 
						 
						
							
							
								
								Fix spelling.  
							
							... 
							
							
							
							llvm-svn: 9027 
							
						 
						
							2003-10-10 17:57:28 +00:00  
				
					
						
							
							
								 
						
							
								7eb05a170a 
								
							 
						 
						
							
							
								
								Spell `necessary' correctly.  
							
							... 
							
							
							
							llvm-svn: 7944 
							
						 
						
							2003-08-18 14:43:39 +00:00  
				
					
						
							
							
								 
						
							
								1b7a238f3f 
								
							 
						 
						
							
							
								
								File-related functions moved to FileUtilities.h .  
							
							... 
							
							
							
							llvm-svn: 7696 
							
						 
						
							2003-08-07 21:42:28 +00:00  
				
					
						
							
							
								 
						
							
								0c2305b110 
								
							 
						 
						
							
							
								
								Re-grouped and alphabetized headers for easier reading and cleaner style.  
							
							... 
							
							
							
							llvm-svn: 7689 
							
						 
						
							2003-08-07 21:19:30 +00:00  
				
					
						
							
							
								 
						
							
								e722e4ea49 
								
							 
						 
						
							
							
								
								Moved SystemUtils.h to include/Support and SystemUtils.cpp to lib/Support.  
							
							... 
							
							
							
							llvm-svn: 7687 
							
						 
						
							2003-08-07 21:04:42 +00:00  
				
					
						
							
							
								 
						
							
								d1e2aaef4f 
								
							 
						 
						
							
							
								
								If we're debugging the SimplifyCFG pass, we _REALLY_ don't want to use it for  
							
							... 
							
							
							
							narrowing, no matter what.
llvm-svn: 7596 
							
						 
						
							2003-08-05 15:51:05 +00:00  
				
					
						
							
							
								 
						
							
								689398fe76 
								
							 
						 
						
							
							
								
								Only test the vector of functions if it is non-empty.  
							
							... 
							
							
							
							llvm-svn: 7594 
							
						 
						
							2003-08-05 15:26:21 +00:00  
				
					
						
							
							
								 
						
							
								fe69bc502d 
								
							 
						 
						
							
							
								
								Added code that ensures that we don't try to reduce an empty vector of basic  
							
							... 
							
							
							
							blocks.
This fixes the bugpoint regressions.
llvm-svn: 7569 
							
						 
						
							2003-08-04 18:24:31 +00:00  
				
					
						
							
							
								 
						
							
								2599356122 
								
							 
						 
						
							
							
								
								Try to run cleanups even if nothing was modified in the preview passes  
							
							... 
							
							
							
							llvm-svn: 6897 
							
						 
						
							2003-06-25 04:13:52 +00:00  
				
					
						
							
							
								 
						
							
								a965631408 
								
							 
						 
						
							
							
								
								Remove stupid thinko that was preventing bugpoint from working  
							
							... 
							
							
							
							llvm-svn: 6533 
							
						 
						
							2003-06-02 04:54:29 +00:00  
				
					
						
							
							
								 
						
							
								65e5f653fd 
								
							 
						 
						
							
							
								
								Big programs have tons of global variable initializers, and most passes don't care  
							
							... 
							
							
							
							about them.  Try to delete them if it doesn't affect the passes.
llvm-svn: 5918 
							
						 
						
							2003-04-25 00:53:05 +00:00  
				
					
						
							
							
								 
						
							
								f32939bbc9 
								
							 
						 
						
							
							
								
								Speed up convergence significantly and also reduce the size of testcases by making large portions of a function's CFG dead at a time.  
							
							... 
							
							
							
							llvm-svn: 5915 
							
						 
						
							2003-04-24 23:51:38 +00:00  
				
					
						
							
							
								 
						
							
								de39f2bdac 
								
							 
						 
						
							
							
								
								The big fix is this change:  
							
							... 
							
							
							
							-    if (I->isExternal() && !Functions.count(I))
+    if (!I->isExternal() && !Functions.count(I))
We were not actually deleting any functions from the module!
llvm-svn: 5914 
							
						 
						
							2003-04-24 22:54:06 +00:00  
				
					
						
							
							
								 
						
							
								1d080f24c5 
								
							 
						 
						
							
							
								
								Use the list reducer to improve convergence speed and to support crashes that  
							
							... 
							
							
							
							only occur when multiple passes interact or when multiple functions exist in a module
llvm-svn: 5911 
							
						 
						
							2003-04-24 22:24:58 +00:00  
				
					
						
							
							
								 
						
							
								16a413103c 
								
							 
						 
						
							
							
								
								Implement support for bugpoint to identify which FUNCTION an optimization  
							
							... 
							
							
							
							is miscompiling.
llvm-svn: 5893 
							
						 
						
							2003-04-24 17:02:17 +00:00  
				
					
						
							
							
								 
						
							
								514c02eb26 
								
							 
						 
						
							
							
								
								* Reduce the number of useless bytecode files produced by bugpoint.  
							
							... 
							
							
							
							- This also speeds it up as the bytecode writer isn't terribly fast.
* Add a new cleanup pass after everything else to run -funcresolve -globaldce
llvm-svn: 5668 
							
						 
						
							2003-02-28 16:13:20 +00:00  
				
					
						
							
							
								 
						
							
								0eb5ce94dd 
								
							 
						 
						
							
							
								
								Make bugpoint *much* more powerful, giving it the capability to delete instructions  
							
							... 
							
							
							
							out of a large function to reduce it.
llvm-svn: 5408 
							
						 
						
							2003-01-23 02:48:33 +00:00  
				
					
						
							
							
								 
						
							
								d4e0474dcf 
								
							 
						 
						
							
							
								
								Implement the start of the miscompilation detection stuff  
							
							... 
							
							
							
							llvm-svn: 5119 
							
						 
						
							2002-12-23 23:49:59 +00:00  
				
					
						
							
							
								 
						
							
								73a6bdd958 
								
							 
						 
						
							
							
								
								Initial checkin of bugpoint  
							
							... 
							
							
							
							llvm-svn: 4789 
							
						 
						
							2002-11-20 22:28:10 +00:00