bb87665475 
								
							 
						 
						
							
							
								
								Don't use PathV1.h in CrashDebugger.cpp.  
							
							... 
							
							
							
							llvm-svn: 184109 
							
						 
						
							2013-06-17 19:33:18 +00:00  
				
					
						
							
							
								 
						
							
								34889cabcd 
								
							 
						 
						
							
							
								
								Don't use PathV1.h in ToolRunner.h.  
							
							... 
							
							
							
							llvm-svn: 184107 
							
						 
						
							2013-06-17 19:21:38 +00:00  
				
					
						
							
							
								 
						
							
								9fb823bbd4 
								
							 
						 
						
							
							
								
								Move all of the header files which are involved in modelling the LLVM IR  
							
							... 
							
							
							
							into their new header subdirectory: include/llvm/IR. This matches the
directory structure of lib, and begins to correct a long standing point
of file layout clutter in LLVM.
There are still more header files to move here, but I wanted to handle
them in separate commits to make tracking what files make sense at each
layer easier.
The only really questionable files here are the target intrinsic
tablegen files. But that's a battle I'd rather not fight today.
I've updated both CMake and Makefile build systems (I think, and my
tests think, but I may have missed something).
I've also re-sorted the includes throughout the project. I'll be
committing updates to Clang, DragonEgg, and Polly momentarily.
llvm-svn: 171366 
							
						 
						
							2013-01-02 11:36:10 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								d6b092bbd5 
								
							 
						 
						
							
							
								
								One more step towards making doInitialization and doFinalization useful for  
							
							... 
							
							
							
							start up and clean up module passes, now that ASAN and TSAN are fixed the
tests pass
llvm-svn: 168905 
							
						 
						
							2012-11-29 17:47:05 +00:00  
				
					
						
							
							
								 
						
							
								1db12f5135 
								
							 
						 
						
							
							
								
								Revert r168635 "Step towards implementation of pass manager with doInitialization and doFinalization per module detangled from runOn?? calls, still has temporary code not to break ASAN to be removed when that pass conforms to the proposed model".  
							
							... 
							
							
							
							It appears to have broken at least one buildbot.
llvm-svn: 168654 
							
						 
						
							2012-11-27 00:53:24 +00:00  
				
					
						
							
							
								 
						
							
								336368c4fd 
								
							 
						 
						
							
							
								
								Step towards implementation of pass manager with doInitialization and doFinalization per module detangled from runOn?? calls, still has temporary code not to break ASAN to be removed when that pass conforms to the proposed model  
							
							... 
							
							
							
							Patch by Pedro Artigas, with feedback from by Chandler Carruth.
llvm-svn: 168635 
							
						 
						
							2012-11-26 23:54:47 +00:00  
				
					
						
							
							
								 
						
							
								1aa2751260 
								
							 
						 
						
							
							
								
								Add doInitialization and doFinalization methods to ModulePass's, to allow them to be re-initialized and reused on multiple Module's.  
							
							... 
							
							
							
							Patch by Pedro Artigas.
llvm-svn: 168008 
							
						 
						
							2012-11-15 00:14:15 +00:00  
				
					
						
							
							
								 
						
							
								91ce36c986 
								
							 
						 
						
							
							
								
								Revert 'Fix a typo 'iff' => 'if''. iff is an abreviation of if and only if. See:  http://en.wikipedia.org/wiki/If_and_only_if  Commit 164767  
							
							... 
							
							
							
							llvm-svn: 164768 
							
						 
						
							2012-09-27 10:14:43 +00:00  
				
					
						
							
							
								 
						
							
								721cffd53a 
								
							 
						 
						
							
							
								
								Fix a typo 'iff' => 'if'  
							
							... 
							
							
							
							llvm-svn: 164767 
							
						 
						
							2012-09-27 09:59:43 +00:00  
				
					
						
							
							
								 
						
							
								2990ec6e92 
								
							 
						 
						
							
							
								
								Add braces to remove silly warning.  
							
							... 
							
							
							
							llvm-svn: 147264 
							
						 
						
							2011-12-25 06:56:22 +00:00  
				
					
						
							
							
								 
						
							
								a379b18173 
								
							 
						 
						
							
							
								
								Unweaken vtables as per  http://llvm.org/docs/CodingStandards.html#ll_virtual_anch  
							
							... 
							
							
							
							llvm-svn: 146960 
							
						 
						
							2011-12-20 02:50:00 +00:00  
				
					
						
							
							
								 
						
							
								d4e02a50ba 
								
							 
						 
						
							
							
								
								A couple misc fixes so that bugpoint doesn't explode reducing code containing landingpads.  
							
							... 
							
							
							
							llvm-svn: 143435 
							
						 
						
							2011-11-01 04:40:56 +00:00  
				
					
						
							
							
								 
						
							
								229e38f0fe 
								
							 
						 
						
							
							
								
								Be more consistent in using ValueToValueMapTy.  
							
							... 
							
							
							
							llvm-svn: 116387 
							
						 
						
							2010-10-13 01:36:30 +00:00  
				
					
						
							
							
								 
						
							
								d1e241a4c3 
								
							 
						 
						
							
							
								
								Use RunPassesOn as in the rest of bugpoint.  
							
							... 
							
							
							
							llvm-svn: 110682 
							
						 
						
							2010-08-10 15:46:11 +00:00  
				
					
						
							
							
								 
						
							
								33e81a8221 
								
							 
						 
						
							
							
								
								Most of bugpoint now only needs to know the pass names.  
							
							... 
							
							
							
							llvm-svn: 110534 
							
						 
						
							2010-08-08 03:55:08 +00:00  
				
					
						
							
							
								 
						
							
								d1c7ef4ab5 
								
							 
						 
						
							
							
								
								Add const to compileProgram and to the various test functions in CrashDebugger.  
							
							... 
							
							
							
							llvm-svn: 110306 
							
						 
						
							2010-08-05 03:00:22 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								594994a34c 
								
							 
						 
						
							
							
								
								Instead of abusing swapProgramIn, just add a Module argument to  
							
							... 
							
							
							
							EmitProgressBitcode.
llvm-svn: 109602 
							
						 
						
							2010-07-28 18:12:30 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								8dc129325f 
								
							 
						 
						
							
							
								
								Reapply r108794, a fix for the failing test from last time.  
							
							... 
							
							
							
							llvm-svn: 108813 
							
						 
						
							2010-07-20 06:52:42 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								34a2249fde 
								
							 
						 
						
							
							
								
								Use ->isVoidTy().  
							
							... 
							
							
							
							llvm-svn: 105550 
							
						 
						
							2010-06-07 20:19:26 +00:00  
				
					
						
							
							
								 
						
							
								8c292adba4 
								
							 
						 
						
							
							
								
								No need to special-case structs here; structs are first-class now.  
							
							... 
							
							
							
							llvm-svn: 105513 
							
						 
						
							2010-06-05 00:42:29 +00:00  
				
					
						
							
							
								 
						
							
								6ba630b077 
								
							 
						 
						
							
							
								
								Remove use of exceptions from bugpoint. No deliberate functionality change!  
							
							... 
							
							
							
							llvm-svn: 101013 
							
						 
						
							2010-04-12 05:08:25 +00:00  
				
					
						
							
							
								 
						
							
								19d0b47b1f 
								
							 
						 
						
							
							
								
								There are two ways of checking for a given type, for example isa<PointerType>(T)  
							
							... 
							
							
							
							and T->isPointerTy().  Convert most instances of the first form to the second form.
Requested by Chris.
llvm-svn: 96344 
							
						 
						
							2010-02-16 11:11:14 +00:00  
				
					
						
							
							
								 
						
							
								c521f54198 
								
							 
						 
						
							
							
								
								Prune #includes from llvm/Linker.h and llvm/System/Path.h,  
							
							... 
							
							
							
							forcing them down into various .cpp files.
This change also:
1. Renames TimeValue::toString() and Path::toString() to ::str()
   for similarity with the STL.
2. Removes all stream insertion support for sys::Path, forcing
   clients to call .str().
3. Removes a use of Config/alloca.h from bugpoint, using smallvector
   instead.
4. Weans llvm-db off <iostream>
sys::Path really needs to be gutted, but I don't have the desire to
do it at this point.
llvm-svn: 79869 
							
						 
						
							2009-08-23 22:45:37 +00:00  
				
					
						
							
							
								 
						
							
								55f1c09e31 
								
							 
						 
						
							
							
								
								Push LLVMContexts through the IntegerType APIs.  
							
							... 
							
							
							
							llvm-svn: 78948 
							
						 
						
							2009-08-13 21:58:54 +00:00  
				
					
						
							
							
								 
						
							
								5a1acd9912 
								
							 
						 
						
							
							
								
								Move a few more APIs back to 2.5 forms.  The only remaining ones left to change back are  
							
							... 
							
							
							
							metadata related, which I'm waiting on to avoid conflicting with Devang.
llvm-svn: 77721 
							
						 
						
							2009-07-31 20:28:14 +00:00  
				
					
						
							
							
								 
						
							
								ee05152cfa 
								
							 
						 
						
							
							
								
								Convert more tools code from cerr and cout to errs() and outs().  
							
							... 
							
							
							
							llvm-svn: 76070 
							
						 
						
							2009-07-16 15:30:09 +00:00  
				
					
						
							
							
								 
						
							
								d8db376071 
								
							 
						 
						
							
							
								
								Use errs() instead of std::cerr.  
							
							... 
							
							
							
							llvm-svn: 75791 
							
						 
						
							2009-07-15 16:35:29 +00:00  
				
					
						
							
							
								 
						
							
								53a52215b5 
								
							 
						 
						
							
							
								
								Begin the painful process of tearing apart the rat'ss nest that is Constants.cpp and ConstantFold.cpp.  
							
							... 
							
							
							
							This involves temporarily hard wiring some parts to use the global context.  This isn't ideal, but it's
the only way I could figure out to make this process vaguely incremental.
llvm-svn: 75445 
							
						 
						
							2009-07-13 04:09:18 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								4099c7c229 
								
							 
						 
						
							
							
								
								Fix the crash debugger to actually bisect globals once it's determined that it  
							
							... 
							
							
							
							can't just eliminate all global initializers.
llvm-svn: 72378 
							
						 
						
							2009-05-25 06:29:56 +00:00  
				
					
						
							
							
								 
						
							
								6e090c9117 
								
							 
						 
						
							
							
								
								Add a bisection step on the list of instructions before doing the linear  
							
							... 
							
							
							
							simplification. It's not clear to me whether this can replace the first of the
linear instruction simplification stages or not, so I left it in.
llvm-svn: 72377 
							
						 
						
							2009-05-25 05:30:00 +00:00  
				
					
						
							
							
								 
						
							
								6ee6f73973 
								
							 
						 
						
							
							
								
								Make bugpoint emit a bugpoint-reduced-blocks.bc, because bugpoint itself  
							
							... 
							
							
							
							can crash during instruction simplification (for example if it creates a
broken module).
llvm-svn: 72362 
							
						 
						
							2009-05-24 09:40:47 +00:00  
				
					
						
							
							
								 
						
							
								5bd3f7b4a2 
								
							 
						 
						
							
							
								
								Add -disable-global-remove option to bugpoint.  
							
							... 
							
							
							
							Sometimes when bugpointing a crash the bugpoint-reduced-simplified.bc reproduces
a totally different bug than the original one ("GV doesn't have initializer").
Although its useful to report that bug too, I need a way to reduce the original
bug, hence I introduced -disable-global-remove.
llvm-svn: 72361 
							
						 
						
							2009-05-24 09:31:04 +00:00  
				
					
						
							
							
								 
						
							
								b294e31e83 
								
							 
						 
						
							
							
								
								CloneModule stores the BasicBlock mapping in ValueMap. There's no need to  
							
							... 
							
							
							
							recompute it. This fixes a O(n^2) in number of blocks when reducing a crash.
llvm-svn: 68422 
							
						 
						
							2009-04-04 09:39:23 +00:00  
				
					
						
							
							
								 
						
							
								bcad718f73 
								
							 
						 
						
							
							
								
								Use CloneModule's ValueMap to avoid needing to look up  
							
							... 
							
							
							
							functions by name. This fixes PR718.
llvm-svn: 66239 
							
						 
						
							2009-03-06 02:16:23 +00:00  
				
					
						
							
							
								 
						
							
								4f42ac8400 
								
							 
						 
						
							
							
								
								Fix a bugpoint bug on anonymous functions. Instead of looking up  
							
							... 
							
							
							
							functions in the new module by name, use the ValueMap provided by
CloneModule to do the lookups.
llvm-svn: 66216 
							
						 
						
							2009-03-05 23:20:46 +00:00  
				
					
						
							
							
								 
						
							
								3d5d6f90e0 
								
							 
						 
						
							
							
								
								Improve bugpoint output a bit by outputting the actual instructions instead of  
							
							... 
							
							
							
							just it's name, which is often empty. Also remove a newline from the output
that wasn't really needed.
llvm-svn: 54158 
							
						 
						
							2008-07-29 08:55:30 +00:00  
				
					
						
							
							
								 
						
							
								7855a5cb70 
								
							 
						 
						
							
							
								
								several multiple-retval fixes for bugpoint.  
							
							... 
							
							
							
							llvm-svn: 50331 
							
						 
						
							2008-04-28 00:04:58 +00:00  
				
					
						
							
							
								 
						
							
								856d8f5b58 
								
							 
						 
						
							
							
								
								Remove tabs. Patch by Mike Stump!  
							
							... 
							
							
							
							llvm-svn: 49317 
							
						 
						
							2008-04-07 05:47:52 +00:00  
				
					
						
							
							
								 
						
							
								e9ecc68d8f 
								
							 
						 
						
							
							
								
								API changes for class Use size reduction, wave 1.  
							
							... 
							
							
							
							Specifically, introduction of XXX::Create methods
for Users that have a potentially variable number of
Uses.
llvm-svn: 49277 
							
						 
						
							2008-04-06 20:25:17 +00:00  
				
					
						
							
							
								 
						
							
								5e0067d982 
								
							 
						 
						
							
							
								
								With debug info, there are nameless constant global values.  do not crash when we hit one  
							
							... 
							
							
							
							llvm-svn: 48749 
							
						 
						
							2008-03-24 22:16:14 +00:00  
				
					
						
							
							
								 
						
							
								345353d6b4 
								
							 
						 
						
							
							
								
								remove attributions from tools.  
							
							... 
							
							
							
							llvm-svn: 45421 
							
						 
						
							2007-12-29 20:44:31 +00:00  
				
					
						
							
							
								 
						
							
								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