Jay Foad 
							
						 
					 
					
						
						
							
						
						a9203109f4 
					 
					
						
						
							
							Convert GetElementPtrInst to use ArrayRef.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135904  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-07-25 09:48:08 +00:00 
						 
				 
			
				
					
						
							
							
								Jay Foad 
							
						 
					 
					
						
						
							
						
						dab3d29605 
					 
					
						
						
							
							Convert ConstantExpr::getGetElementPtr and  
						
						... 
						
						
						
						ConstantExpr::getInBoundsGetElementPtr to use ArrayRef.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135673  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-07-21 14:31:17 +00:00 
						 
				 
			
				
					
						
							
							
								Jay Foad 
							
						 
					 
					
						
						
							
						
						12fc16f195 
					 
					
						
						
							
							Convert ConstantFolder APIs to use ArrayRef.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135671  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-07-21 07:52:17 +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 
							
						 
					 
					
						
						
							
						
						fc6d3a4986 
					 
					
						
						
							
							Convert InsertValueInst and ExtractValueInst APIs to use ArrayRef.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135040  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-07-13 10:26:04 +00:00 
						 
				 
			
				
					
						
							
							
								Frits van Bommel 
							
						 
					 
					
						
						
							
						
						c12d4c93f9 
					 
					
						
						
							
							Remove the LLVMContext& arguments from *Folder constructors, as they don't seem to be used anywhere.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128793  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-04-03 19:46:28 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						49ff8a76d0 
					 
					
						
						
							
							Update the NoFolder to work with current IRBuilder.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126479  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-02-25 07:13:35 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						1dbf0df996 
					 
					
						
						
							
							Add IRBuilder methods for creating an exact udiv, like for exact sdiv.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125002  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-02-07 09:21:52 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						85a0a06b18 
					 
					
						
						
							
							patch from Frits van Bommel:  
						
						... 
						
						
						
						The attached patch fixes IRBuilder and the NoFolder class so that when
NoFolder is used the instructions it generates are treated just like
the ones IRBuilder creates directly (insert into block, assign them a
name and debug info, as applicable).
It does this by
1) having NoFolder return Instruction*s instead of Value*s,
2) having IRBuilder call Insert(Value, Name) on values obtained from
the folder like it does on instructions it creates directly, and
3) adding an Insert(Constant*, const Twine& = "") overload which just
returns the constant so that the other folders shouldn't have any
extra overhead as long as inlining is enabled.
While I was there, I also added some missing (CreateFNeg and various
Create*Cast) methods to NoFolder.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119614  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-18 02:15:42 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						8991d51ddc 
					 
					
						
						
							
							Adding missing methods for creating Add, Mul, Neg and Sub with NUW.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95086  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-02-02 12:53:04 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						411984810e 
					 
					
						
						
							
							Add utility routines for NSW multiply.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91664  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-18 03:10:26 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						bdc46c6af5 
					 
					
						
						
							
							Add utility routines for creating integer negation operators with NSW set.  
						
						... 
						
						
						
						Integer negation only overflows with INT_MIN, but that's an important case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91662  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-18 02:58:50 +00:00 
						 
				 
			
				
					
						
							
							
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						5a325e3663 
					 
					
						
						
							
							Use ExtractElementInst::Create instead of new; patch by Artur Pietrek!  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89606  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-22 18:27:43 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						3548ea8e90 
					 
					
						
						
							
							For the NSWSub support in the builder to actually be useable,  
						
						... 
						
						
						
						there need to be corresponding changes to the constant folders,
done in this patch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82862  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-09-26 15:35:35 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						6e7ad95868 
					 
					
						
						
							
							Revert 80959. It isn't sufficient to solve the full problem. And it  
						
						... 
						
						
						
						introduced regressions in the Ocaml bindings tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80969  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-09-03 23:34:49 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						e56a94ef91 
					 
					
						
						
							
							Remove the API for creating ConstantExprs with the nsw, nuw, inbounds,  
						
						... 
						
						
						
						and exact flags. Because ConstantExprs are uniqued, creating an
expression with this flag causes all expressions with the same operands
to have the same flag, which may not be safe. Add, sub, mul, and sdiv
ConstantExprs are usually folded anyway, so the main interesting flag
here is inbounds, and the constant folder already knows how to set the
inbounds flag automatically in most cases, so there isn't an urgent need
for the API support.
This can be reconsidered in the future, but for now just removing these
API bits eliminates a source of potential trouble with little downside.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80959  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-09-03 22:17:40 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						d6474fa1f1 
					 
					
						
						
							
							Add convenience functions for creating nsw add operators.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78707  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-11 20:20:39 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						e2574d3215 
					 
					
						
						
							
							Add convenience functions for creating inbounds GEPs.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78695  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-11 17:57:01 +00:00 
						 
				 
			
				
					
						
							
							
								Benjamin Kramer 
							
						 
					 
					
						
						
							
						
						12ddd40953 
					 
					
						
						
							
							Make LLVMContext and LLVMContextImpl classes instead of structs.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78690  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-11 17:45:13 +00:00 
						 
				 
			
				
					
						
							
							
								Benjamin Kramer 
							
						 
					 
					
						
						
							
						
						754bdacf46 
					 
					
						
						
							
							Fix struct/class mismatch.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78686  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-11 17:27:20 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						59c4f5c2fc 
					 
					
						
						
							
							Add convenience functions for creating exact sdiv operators, and  
						
						... 
						
						
						
						use them in CreatePtrDiff.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78682  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-11 17:05:24 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						7f4151bc69 
					 
					
						
						
							
							ConstantFolder and NoFolder no longer require their Context members.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78673  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-11 15:56:12 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						baf3c40440 
					 
					
						
						
							
							Move ConstantExpr to 2.5 API.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77494  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-29 18:55:55 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						c7d2ce7047 
					 
					
						
						
							
							Push LLVMContext through the PatternMatch API.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75255  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-10 17:35:01 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						7f6aa2b162 
					 
					
						
						
							
							Remove the vicmp and vfcmp instructions. Because we never had a release with  
						
						... 
						
						
						
						these instructions, no autoupgrade or backwards compatibility support is
provided.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74991  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-08 03:04: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 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						5a9a4bf7f2 
					 
					
						
						
							
							Fix the name of the include guard to match the filename.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58310  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-10-28 00:52:46 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						9d8658a129 
					 
					
						
						
							
							Rename this, in case people think that NullFolder  
						
						... 
						
						
						
						has something to do with folding null values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54725  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-13 08:56:48 +00:00