Bill Wendling 
							
						 
					 
					
						
						
							
						
						a67eda76c0 
					 
					
						
						
							
							Implement stack protectors for structures with character arrays in them.  
						
						... 
						
						
						
						<rdar://problem/10545247>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162131  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-08-17 20:59:56 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						6d86f3cdfc 
					 
					
						
						
							
							Whitespace cleanup.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161788  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-08-13 21:20:43 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						1299422ee1 
					 
					
						
						
							
							For non-Darwin platforms, we want to generate stack protectors only for  
						
						... 
						
						
						
						character arrays. This is in line with what GCC does.
<rdar://problem/10529227>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161446  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-08-07 20:59:05 +00:00 
						 
				 
			
				
					
						
							
							
								Bob Wilson 
							
						 
					 
					
						
						
							
						
						23d66a58b7 
					 
					
						
						
							
							Enable stack protectors for all arrays, not just char arrays. rdar://5875909  
						
						... 
						
						
						
						Patch by Bill Wendling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145097  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-11-23 07:13:56 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						db125cfaf5 
					 
					
						
						
							
							land David Blaikie's patch to de-constify Type, with a few tweaks.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135375  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-07-18 04:54:35 +00:00 
						 
				 
			
				
					
						
							
							
								Jay Foad 
							
						 
					 
					
						
						
							
						
						a3efbb15dd 
					 
					
						
						
							
							Convert CallInst and InvokeInst APIs to use ArrayRef.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135265  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-07-15 08:37:34 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						3f782f4d75 
					 
					
						
						
							
							Inline check that's used only once.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128465  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-03-29 17:12:55 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						3c288b9787 
					 
					
						
						
							
							Rework the logic (and removing the bad check for an unreachable block) so that  
						
						... 
						
						
						
						the FailBB dominator is correctly calculated. Believe it or not, there isn't a
functionality change here.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128455  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-03-29 07:28:52 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						ad7d8a598b 
					 
					
						
						
							
							Don't try to add stack protector logic to a dead basic block. It messes up  
						
						... 
						
						
						
						dominator information.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128452  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-03-29 05:15:48 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						2d930db24f 
					 
					
						
						
							
							In some cases, the "fail BB dominator" may be null after the BB was split (and  
						
						... 
						
						
						
						becomes reachable when before it wasn't). Check to make sure that it's not null
before trying to use it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128434  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-03-28 23:02:18 +00:00 
						 
				 
			
				
					
						
							
							
								Cameron Zwarich 
							
						 
					 
					
						
						
							
						
						53aac15a60 
					 
					
						
						
							
							Fix the GCC test suite issue exposed by r127477, which was caused by stack  
						
						... 
						
						
						
						protector insertion not working correctly with unreachable code. Since that
revision was rolled out, this test doesn't actual fail before this fix.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127497  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-03-11 21:51:56 +00:00 
						 
				 
			
				
					
						
							
							
								Cameron Zwarich 
							
						 
					 
					
						
						
							
						
						80f6a507d4 
					 
					
						
						
							
							Make more passes preserve dominators (or state that they preserve dominators if  
						
						... 
						
						
						
						they all ready do). This removes two dominator recomputations prior to isel,
which is a 1% improvement in total llc time for 403.gcc.
The only potentially suspect thing is making GCStrategy recompute dominators if
it used a custom lowering strategy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123064  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-01-08 17:01:52 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						081c34b725 
					 
					
						
						
							
							Get rid of static constructors for pass registration.  Instead, every pass exposes an initializeMyPassFunction(), which  
						
						... 
						
						
						
						must be called in the pass's constructor.  This function uses static dependency declarations to recursively initialize
the pass's dependencies.
Clients that only create passes through the createFooPass() APIs will require no changes.  Clients that want to use the
CommandLine options for passes will need to manually call the appropriate initialization functions in PassInitialization.h
before parsing commandline arguments.
I have tested this with all standard configurations of clang and llvm-gcc on Darwin.  It is possible that there are problems
with the static dependencies that will only be visible with non-standard options.  If you encounter any crash in pass
registration/creation, please send the testcase to me directly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116820  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-19 17:21:58 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						ce665bd2e2 
					 
					
						
						
							
							Now with fewer extraneous semicolons!  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115996  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-07 22:25:06 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						90c579de5a 
					 
					
						
						
							
							Reapply r110396, with fixes to appease the Linux buildbot gods.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110460  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-08-06 18:33:48 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						1f74590e9d 
					 
					
						
						
							
							Revert r110396 to fix buildbots.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110410  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-08-06 00:23:35 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						9ccaf53ada 
					 
					
						
						
							
							Don't use PassInfo* as a type identifier for passes.  Instead, use the address of the static  
						
						... 
						
						
						
						ID member as the sole unique type identifier.  Clean up APIs related to this change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110396  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-08-05 23:42:04 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						d13db2c59c 
					 
					
						
						
							
							Fix batch of converting RegisterPass<> to INTIALIZE_PASS().  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109045  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-07-21 22:09:45 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f8bd392dce 
					 
					
						
						
							
							tighten up this code.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107670  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-07-06 15:59:27 +00:00 
						 
				 
			
				
					
						
							
							
								Eric Christopher 
							
						 
					 
					
						
						
							
						
						f7a0c7bf8b 
					 
					
						
						
							
							Fix up -fstack-protector on linux to use the segment  
						
						... 
						
						
						
						registers.  Split out testcases per architecture and os
now.
Patch from Nelson Elhage.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107640  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-07-06 05:18:56 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						b0bc6c361d 
					 
					
						
						
							
							Uniformize the names of type predicates: rather than having isFloatTy and  
						
						... 
						
						
						
						isInteger, we now have isFloatTy and isIntegerTy.  Requested by Chris!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96223  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-02-15 16:12:20 +00:00 
						 
				 
			
				
					
						
							
							
								Benjamin Kramer 
							
						 
					 
					
						
						
							
						
						8c65f6e71c 
					 
					
						
						
							
							Move remaining stuff to the isInteger predicate.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92771  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-05 21:05:54 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						6726b6d75a 
					 
					
						
						
							
							Remove VISIBILITY_HIDDEN from class/struct found inside anonymous namespaces.  
						
						... 
						
						
						
						Chris claims we should never have visibility_hidden inside any .cpp file but
that's still not true even after this commit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85042  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-10-25 06:33:48 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						dfd85c142f 
					 
					
						
						
							
							Neuter stack protectors by only checking character arrays. This is what GCC  
						
						... 
						
						
						
						does.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84916  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-10-23 00:01:05 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						1d0be15f89 
					 
					
						
						
							
							Push LLVMContexts through the IntegerType APIs.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78948  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-13 21:58:54 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						50dead06ff 
					 
					
						
						
							
							Revert yesterday's change by removing the LLVMContext parameter to AllocaInst and MallocInst.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75863  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-15 23:53:25 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						9adc0abad3 
					 
					
						
						
							
							Move EVER MORE stuff over to LLVMContext.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75703  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-14 23:09:55 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						333c400965 
					 
					
						
						
							
							This started as a small change, I swear.  Unfortunately, lots of things call the [I|F]CmpInst constructors.  Who knew!?  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75200  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-09 23:48:35 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						777d2306b3 
					 
					
						
						
							
							Rename PaddedSize to AllocSize, in the hope that this  
						
						... 
						
						
						
						will make it more obvious what it represents, and stop
it being confused with the StoreSize.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71349  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-09 07:06:46 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						5601699d7c 
					 
					
						
						
							
							When we split a basic block, there's a default branch to the newly created BB.  
						
						... 
						
						
						
						Delete this default branch, because we're going to generate our own.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66234  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-03-06 01:41:15 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						ceb4d1aecb 
					 
					
						
						
							
							Rename getABITypeSize to getTypePaddedSize, as  
						
						... 
						
						
						
						suggested by Chris.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62099  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-12 20:38:59 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						5734450d40 
					 
					
						
						
							
							Rename stackprotector_create intrinsic to stackprotector.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59519  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-18 11:01:33 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						733bbc5320 
					 
					
						
						
							
							Remove the stackprotector_check intrinsic. Use a volatile load instead.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59504  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-18 07:30:57 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						c3348a77f7 
					 
					
						
						
							
							- Use "moveAfter" instead of "remove/insert" of a basic block.  
						
						... 
						
						
						
						- Use less indentation in coding.
- Shorten description.
- Update comments.
- Move code around
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59496  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-18 05:32:11 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						e9e6bdf27f 
					 
					
						
						
							
							Implement stack protectors as function attributes: "ssp" and "sspreq".  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59202  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-13 01:02:14 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						22511ed2fe 
					 
					
						
						
							
							Small simplification. Use the iterator already present as the insertion point.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59008  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-10 23:38:59 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						7205677a46 
					 
					
						
						
							
							- Make sure that we don't over-increment the iterator when going through the  
						
						... 
						
						
						
						basic blocks.
- Minor code clean-up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59002  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-10 21:13:10 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						b7c6ebcb47 
					 
					
						
						
							
							- Modify the stack protector algorithm so that the stack slot is allocated in  
						
						... 
						
						
						
						LLVM IR code and not in the selection DAG ISel. This is a cleaner solution.
- Fix the heuristic for determining if protectors are necessary. The previous
  one wasn't checking the proper type size.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58824  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-07 01:23:58 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						848693c254 
					 
					
						
						
							
							Remove unneeded header file.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58823  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-06 23:56:59 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						1fb615f820 
					 
					
						
						
							
							Don't build a vector of returns. Just modify the Function in the loop.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58822  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-06 23:55:49 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						703ccfe053 
					 
					
						
						
							
							The size limit is for individual arrays. So if any array has more than 8 bytes  
						
						... 
						
						
						
						in it, then emit stack protectors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58819  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-06 22:18:44 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						4c3a1d8d2b 
					 
					
						
						
							
							- Rename stackprotector_{prologue,epilogue} to stackprotector_{create,check}.  
						
						... 
						
						
						
						- Get rid of "HasStackProtector" in MachineFrameInfo.
- Modify intrinsics to tell which are doing what with memory.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58799  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-06 07:23:03 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						89c5cc6c79 
					 
					
						
						
							
							Adjust the stack protector heuristic to care about only arrays or calls to  
						
						... 
						
						
						
						"alloca".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58792  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-06 02:38:58 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						b2a4298ce4 
					 
					
						
						
							
							Implement the stack protector stack accesses via intrinsics:  
						
						... 
						
						
						
						- stackprotector_prologue creates a stack object and stores the guard there.
- stackprotector_epilogue reads the stack guard from the stack position created
  by stackprotector_prologue.
- The PrologEpilogInserter was changed to make sure that the stack guard is
  first on the stack frame.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58791  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-06 02:29:10 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						1508606ee8 
					 
					
						
						
							
							Remove dead variable.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58741  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-05 00:56:35 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						fa75dc647c 
					 
					
						
						
							
							Simplify the allocated size calculation.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58740  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-05 00:54:27 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						f0eaa9a233 
					 
					
						
						
							
							Fix comment  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58739  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-05 00:46:15 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						613f77439e 
					 
					
						
						
							
							Some code simplification. It now doesn't generate a prologue if the epilogue  
						
						... 
						
						
						
						isn't going to be generated.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58734  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-05 00:00:21 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						4a3a851182 
					 
					
						
						
							
							Small simplification of the stack guard type.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58728  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-04 22:54:43 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						b7c2c1246f 
					 
					
						
						
							
							- Add a "getOrInsertGlobal" method to the Module class. This acts similarly to  
						
						... 
						
						
						
						"getOrInsertFunction" in that it either adds a new declaration of the global
  and returns it, or returns the current one -- optionally casting it to the
  correct type.
- Use the new getOrInsertGlobal in the stack protector code.
- Use "splitBasicBlock" in the stack protector code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58727  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-11-04 22:51:24 +00:00