Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						a029a27fae 
					 
					
						
						
							
							Simple ELF32/64 binary files can now be emitted for x86 and x86_64 without  
						
						... 
						
						
						
						relocation sections.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73038  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-07 21:22:38 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						ae3a0be92e 
					 
					
						
						
							
							Split the Add, Sub, and Mul instruction opcodes into separate  
						
						... 
						
						
						
						integer and floating-point opcodes, introducing
FAdd, FSub, and FMul.
For now, the AsmParser, BitcodeReader, and IRBuilder all preserve
backwards compatability, and the Core LLVM APIs preserve backwards
compatibility for IR producers. Most front-ends won't need to change
immediately.
This implements the first step of the plan outlined here:
http://nondot.org/sabre/LLVMNotes/IntegerOverflow.txt 
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72897  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-04 22:49:04 +00:00 
						 
				 
			
				
					
						
							
							
								Torok Edwin 
							
						 
					 
					
						
						
							
						
						e8ebb0fe1b 
					 
					
						
						
							
							Add support for outputting ANSI colors to raw_fd_ostream.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72854  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-04 07:09:50 +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 
						 
				 
			
				
					
						
							
							
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						e98c4d0b10 
					 
					
						
						
							
							Remove some silly code.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72788  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-03 18:13:05 +00:00 
						 
				 
			
				
					
						
							
							
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						04d5f44882 
					 
					
						
						
							
							Add StandardPasses.h which embeds the standard compilation passes shared by  
						
						... 
						
						
						
						clang/llvm-gcc.
 - Implemented as inline functions for linking simplicity.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72786  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-03 17:52:39 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						b3ae97cffe 
					 
					
						
						
							
							Change TargetFolder's TD member from a reference to a  
						
						... 
						
						
						
						pointer, now that ConstantFoldConstantExpression can
accept a null TargetData pointer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72744  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-03 00:13:48 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						55b42513e1 
					 
					
						
						
							
							Fix the name of the function in this comment.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72666  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-31 16:18:03 +00:00 
						 
				 
			
				
					
						
							
							
								Bruno Cardoso Lopes 
							
						 
					 
					
						
						
							
						
						cc5fc60468 
					 
					
						
						
							
							Add AMD64 elf machine type  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72635  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-30 21:05:47 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						b60182f1b0 
					 
					
						
						
							
							Add an accessor method to return the insertion point.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72184  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-20 21:45:41 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						6afe2fa288 
					 
					
						
						
							
							Have llvm_start_multithreaded return a bool indicating whether multithreaded  
						
						... 
						
						
						
						initialization succeeded or not, rather than just asserting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72182  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-20 21:03:06 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						b4d97b78df 
					 
					
						
						
							
							Add llvm_start_multithreaded(), which starts up the LLVM internals in thread-safe mode.  Provide double-check locking  
						
						... 
						
						
						
						initialization of ManagedStatic's when running in thread-safe mode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72151  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-20 00:39:20 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						18ad4cb95d 
					 
					
						
						
							
							Back out the thread-safe ManagedStatic for now.  Too many people have too many problems with it for the moment.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71931  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-16 07:20:52 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						ca37b511fa 
					 
					
						
						
							
							Factor out some common code, fix more typoes, and add a memory fence that might be needed.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71853  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-15 08:22:07 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						d300a28c40 
					 
					
						
						
							
							Fix an unfortunate typo.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71852  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-15 08:07:23 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						5f00b0c5b6 
					 
					
						
						
							
							Now with working on Leopard!  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71819  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-15 00:01:40 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						87ba22dc67 
					 
					
						
						
							
							Make ManagedStatic threadsafe by using atomic operations.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71796  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-14 21:26:50 +00:00 
						 
				 
			
				
					
						
							
							
								Dale Johannesen 
							
						 
					 
					
						
						
							
						
						7b9486ad43 
					 
					
						
						
							
							Add an int64_t variant of abs, for host environments  
						
						... 
						
						
						
						without one.  Use it where we were using abs on
int64_t objects.
(I strongly suspect the casts to unsigned in the
fragments in LoopStrengthReduce are not doing whatever
the original intent was, but the obvious change to
uint64_t doesn't work.  Maybe later.)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71612  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-13 00:24:22 +00:00 
						 
				 
			
				
					
						
							
							
								Mike Stump 
							
						 
					 
					
						
						
							
						
						6dc4ade595 
					 
					
						
						
							
							Add DW_AT_APPLE_isa and DW_AT_APPLE_block.  Radar 6867696  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71479  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-11 21:58:01 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						0ec4146db7 
					 
					
						
						
							
							Add simplify_type specializations to allow WeakVH, AssertingVH, and  
						
						... 
						
						
						
						CallbackVH to participate in dyn_cast, isa, etc. without needing
an explicit conversion.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71087  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-06 17:12:48 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						8f18edd8b6 
					 
					
						
						
							
							Quotes should be printed before private prefix; some code clean up.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71032  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-05 22:50:29 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						ff9977f8cd 
					 
					
						
						
							
							Add an explicit keyword.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71022  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-05 21:23:20 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						c09b12c622 
					 
					
						
						
							
							Apply Jeffrey Yasskin's CallbackVH patch, with minor tweaks from me  
						
						... 
						
						
						
						to make the copy constructor and destructor protected, and corresponding
adjustments to the unittests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70644  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-02 21:10:48 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						42da7f7542 
					 
					
						
						
							
							Include <limits.h> to get the definition of CHAR_BIT.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70643  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-02 21:03:21 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						837e59e2e8 
					 
					
						
						
							
							Drop the default assumption about alignment down to 2 bits from 3.  This apparently  
						
						... 
						
						
						
						helps some problems on win32 platforms (PR4119)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70603  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-05-01 23:48:33 +00:00 
						 
				 
			
				
					
						
							
							
								Jeffrey Yasskin 
							
						 
					 
					
						
						
							
						
						714257f5de 
					 
					
						
						
							
							Add a mention of TypeBuilder to the programmer's manual, and clean up the class  
						
						... 
						
						
						
						comment a bit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70515  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-30 22:33:41 +00:00 
						 
				 
			
				
					
						
							
							
								Torok Edwin 
							
						 
					 
					
						
						
							
						
						7f09dd2f63 
					 
					
						
						
							
							Make dataflow iteration possible on Value*, not only on User*: df_ext_iterator<Value*, SmallPtrSet<const Value*, 16> >  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70496  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-30 17:09:22 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						b587f9662a 
					 
					
						
						
							
							Add support for a character after a command line option. Like '-Os'.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70437  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-29 23:26:16 +00:00 
						 
				 
			
				
					
						
							
							
								Jeffrey Yasskin 
							
						 
					 
					
						
						
							
						
						487fa01673 
					 
					
						
						
							
							Add tests for WeakVH and AssertingVH.  These pointed out that the overloads for  
						
						... 
						
						
						
						the comparison operators were not only unnecessary in the presence of the
implicit conversion; they caused ambiguous overload errors. So I deleted them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70243  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-27 20:32:07 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						096fd7b5a7 
					 
					
						
						
							
							Add a new TypeBuilder helper class, which eases making LLVM IR types.  
						
						... 
						
						
						
						Patch by Jeffrey Yasskin!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70084  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-25 22:14:04 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						ddcb3415cb 
					 
					
						
						
							
							Add caching of predecessor counts as well as predecessors themselves.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69791  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-22 08:46:33 +00:00 
						 
				 
			
				
					
						
							
							
								Douglas Gregor 
							
						 
					 
					
						
						
							
						
						8f7be4731e 
					 
					
						
						
							
							Make all raw_ostreams support the tell() function.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69583  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-20 07:34:17 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						7c53316922 
					 
					
						
						
							
							Fix missing text in doxygen documentation.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69529  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-19 18:20:21 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						cb8c4778d3 
					 
					
						
						
							
							Cleanup. Remove redundant llvm:: , we don't need them since we're inside  
						
						... 
						
						
						
						namespace llvm already.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68774  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-10 06:54:06 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						b9fc360857 
					 
					
						
						
							
							Add utility function to IRBuilder that takes the difference between two  
						
						... 
						
						
						
						pointers, taking into account the size of the pointed-to object.
Patch by Jeffrey Yasskin!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68768  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-10 05:30:48 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						00a7b52385 
					 
					
						
						
							
							Remove AllowInverse: it leaks memory and is not the right  
						
						... 
						
						
						
						abstraction for CommandLine.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68588  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-08 03:43:51 +00:00 
						 
				 
			
				
					
						
							
							
								Mikhail Glushenkov 
							
						 
					 
					
						
						
							
						
						4e9ca339b5 
					 
					
						
						
							
							Add segment flag bits to ELF.h.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68438  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-05 09:07:08 +00:00 
						 
				 
			
				
					
						
							
							
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						38f4dd7b5e 
					 
					
						
						
							
							Add fast path for raw_ostream output of strings.  
						
						... 
						
						
						
						- Particularly nice for small constant strings, which get optimized
   down nicely. On a synthetic benchmark writing out "hello" in a
   loop, this is about 2x faster with gcc and 3x faster with
   llvm-gcc. llc on insn-attrtab.bc from 403.gcc is about .5% faster.
 - I tried for a fancier solution which wouldn't increase code size as
   much (by trying to match constant arrays), but can't quite make it
   fly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68396  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-03 18:43:17 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b7a00daa11 
					 
					
						
						
							
							Work around an apparent GCC miscompilation by specializing different,  
						
						... 
						
						
						
						this fixes a regression on some compilers from r68147.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68356  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-03 00:26:01 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6caced9564 
					 
					
						
						
							
							add missing *  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68350  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-02 23:53:03 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						de551f91d8 
					 
					
						
						
							
							Use CHAR_BIT instead of hard-coding 8 in several places where it  
						
						... 
						
						
						
						is appropriate. This helps visually differentiate host-oriented
calculations from target-oriented calculations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68227  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-01 18:45:54 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						d485e885f0 
					 
					
						
						
							
							* Fixed spelling of `invertible'  
						
						... 
						
						
						
						* Simplified if statement
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68163  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-04-01 00:15:46 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b160f5d36d 
					 
					
						
						
							
							add a converting operator  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68158  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-03-31 23:09:51 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						722272df41 
					 
					
						
						
							
							Add two new classes: WeakVH and AssertingVH.  These are both "ValueHandles",  
						
						... 
						
						
						
						which are effectively smart pointers to Value*'s.  They are both very light
weight and simple, and react to values being destroyed or being RAUW'd.
WeakVN does a best effort to follow a value around, including through RAUW 
operations and will get nulled out of the value is destroyed.  This is useful
for the eventual "metadata that references a value" work, because it is a
reference to a value that does not show up on its use_* list.
AssertingVH is a pointer that compiles down to a dumb raw pointer when 
assertions are disabled.  When enabled, it emits an assertion if the 
pointed-to value is destroyed while it is still being referenced.  This
is very useful for Maps and other things, and should have caught the recent
bugs in CallGraph and Reassociate, for example.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68149  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-03-31 22:11:05 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f385167b85 
					 
					
						
						
							
							teach PointerLikeTypeTraits that all pointers to pointers may only be 4-byte aligned.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68147  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-03-31 21:28:39 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						31fd5a571e 
					 
					
						
						
							
							Constify check. This fixes PR3900.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68013  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-03-29 20:08:56 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						911c8b21da 
					 
					
						
						
							
							Add a PointerLikeTypeTraits specialization for uintptr_t  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67985  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-03-29 06:00:21 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e30173ac33 
					 
					
						
						
							
							Replace the PointerLikeTypeTraits::getNumLowBitsAvailable  
						
						... 
						
						
						
						function with a new NumLowBitsAvailable enum, which makes the
value available as an integer constant expression.
Add PointerLikeTypeTraits specializations for Instruction* and
Use** since they are only guaranteed 4-byte aligned.
Enhance PointerIntPair to know about (and enforce) the alignment
specified by PointerLikeTypeTraits.  This should allow things 
like PointerIntPair<PointerIntPair<void*, 1,bool>, 1, bool> 
because the inner one knows that 2 low bits are free.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67979  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-03-29 04:32:37 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8ee1b5e916 
					 
					
						
						
							
							rename PointerLikeTypeInto to PointerLikeTypeTraits, add trait for  
						
						... 
						
						
						
						# low bits free, and move to its own header.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67973  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-03-29 00:39:30 +00:00