Eli Friedman
							
						 
						
							 
							
							
							
							
								
							
							
								489c0ff4a4 
								
							 
						 
						
							
							
								
								Add support for custom names for library functions in TargetLibraryInfo.  Add a custom name for fwrite and fputs on x86-32 OSX.  Make SimplifyLibCalls honor the custom  
							
							 
							
							... 
							
							
							
							names for fwrite and fputs.
Fixes <rdar://problem/9815881>.
llvm-svn: 144876 
							
						 
						
							2011-11-17 01:27:36 +00:00  
						
					 
				
					
						
							
							
								 
								Benjamin Kramer
							
						 
						
							 
							
							
							
							
								
							
							
								b106bcc536 
								
							 
						 
						
							
							
								
								StringRefize and simplify.  
							
							 
							
							... 
							
							
							
							llvm-svn: 144675 
							
						 
						
							2011-11-15 19:12:09 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								229907cd11 
								
							 
						 
						
							
							
								
								land David Blaikie's patch to de-constify Type, with a few tweaks.  
							
							 
							
							... 
							
							
							
							llvm-svn: 135375 
							
						 
						
							2011-07-18 04:54:35 +00:00  
						
					 
				
					
						
							
							
								 
								Eli Friedman
							
						 
						
							 
							
							
							
							
								
							
							
								e217f89420 
								
							 
						 
						
							
							
								
								One more debug line number miss in instcombine (although the code in question isn't actually in instcombine).  
							
							 
							
							... 
							
							
							
							llvm-svn: 132170 
							
						 
						
							2011-05-27 01:00:36 +00:00  
						
					 
				
					
						
							
							
								 
								Benjamin Kramer
							
						 
						
							 
							
							
							
							
								
							
							
								84bd73c527 
								
							 
						 
						
							
							
								
								BuildLibCalls: Nuke EmitMemCpy, EmitMemMove and EmitMemSet. They are dead and superseded by IRBuilder.  
							
							 
							
							... 
							
							
							
							llvm-svn: 122576 
							
						 
						
							2010-12-27 00:25:32 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								3e44ea1917 
								
							 
						 
						
							
							
								
								undo 80 column trespassing I caused  
							
							 
							
							... 
							
							
							
							llvm-svn: 109092 
							
						 
						
							2010-07-22 10:37:47 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								6d673953e3 
								
							 
						 
						
							
							
								
								eliminate CallInst::ArgOffset  
							
							 
							
							... 
							
							
							
							llvm-svn: 108522 
							
						 
						
							2010-07-16 09:38:02 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								2de43a7c5c 
								
							 
						 
						
							
							
								
								use ArgOperand API and CallInst::ArgOffset  
							
							 
							
							... 
							
							
							
							llvm-svn: 107002 
							
						 
						
							2010-06-28 12:29:20 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								e3ba486c9f 
								
							 
						 
						
							
							
								
								use ArgOperand API (one more hunk I could split)  
							
							 
							
							... 
							
							
							
							llvm-svn: 106825 
							
						 
						
							2010-06-25 07:58:41 +00:00  
						
					 
				
					
						
							
							
								 
								Benjamin Kramer
							
						 
						
							 
							
							
							
							
								
							
							
								1118860e3a 
								
							 
						 
						
							
							
								
								simplify-libcalls: fold strstr(a, b) == a -> strncmp(a, b, strlen(b)) == 0  
							
							 
							
							... 
							
							
							
							llvm-svn: 106047 
							
						 
						
							2010-06-15 21:34:25 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								aee2632be3 
								
							 
						 
						
							
							
								
								The memcpy intrinsic only takes i8* for %src and %dst, so cast them to that  
							
							 
							
							... 
							
							
							
							first. Fixes PR7265.
llvm-svn: 105206 
							
						 
						
							2010-05-31 06:16:35 +00:00  
						
					 
				
					
						
							
							
								 
								Eric Christopher
							
						 
						
							 
							
							
							
							
								
							
							
								7258dcd77f 
								
							 
						 
						
							
							
								
								Revert 101465, it broke internal OpenGL testing.  
							
							 
							
							... 
							
							
							
							Probably the best way to know that all getOperand() calls have been handled
is to replace that API instead of updating.
llvm-svn: 101579 
							
						 
						
							2010-04-16 23:37:20 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								f375520f7b 
								
							 
						 
						
							
							
								
								reapply r101434  
							
							 
							
							... 
							
							
							
							with a fix for self-hosting
rotate CallInst operands, i.e. move callee to the back
of the operand array
the motivation for this patch are laid out in my mail to llvm-commits:
more efficient access to operands and callee, faster callgraph-construction,
smaller compiler binary
llvm-svn: 101465 
							
						 
						
							2010-04-16 15:33:14 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								403e9694f9 
								
							 
						 
						
							
							
								
								back out r101423 and r101397, they break llvm-gcc self-host on darwin10  
							
							 
							
							... 
							
							
							
							llvm-svn: 101434 
							
						 
						
							2010-04-16 01:16:20 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								33ae80bff7 
								
							 
						 
						
							
							
								
								reapply r101364, which has been backed out in r101368  
							
							 
							
							... 
							
							
							
							with a fix
rotate CallInst operands, i.e. move callee to the back
of the operand array
the motivation for this patch are laid out in my mail to llvm-commits:
more efficient access to operands and callee, faster callgraph-construction,
smaller compiler binary
llvm-svn: 101397 
							
						 
						
							2010-04-15 20:51:13 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								9fd00c7d25 
								
							 
						 
						
							
							
								
								back out r101364, as it trips the linux nightlybot on some clang C++ tests  
							
							 
							
							... 
							
							
							
							llvm-svn: 101368 
							
						 
						
							2010-04-15 12:46:56 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								aafd209632 
								
							 
						 
						
							
							
								
								rotate CallInst operands, i.e. move callee to the back  
							
							 
							
							... 
							
							
							
							of the operand array
the motivation for this patch are laid out in my mail to llvm-commits:
more efficient access to operands and callee, faster callgraph-construction,
smaller compiler binary
llvm-svn: 101364 
							
						 
						
							2010-04-15 10:49:53 +00:00  
						
					 
				
					
						
							
							
								 
								Eric Christopher
							
						 
						
							 
							
							
							
							
								
							
							
								4016dcd625 
								
							 
						 
						
							
							
								
								Actually... return after the check for invalid input.  
							
							 
							
							... 
							
							
							
							llvm-svn: 101139 
							
						 
						
							2010-04-13 16:41:29 +00:00  
						
					 
				
					
						
							
							
								 
								Eric Christopher
							
						 
						
							 
							
							
							
							
								
							
							
								1f272f7fd8 
								
							 
						 
						
							
							
								
								Verify function prototypes before trying to optimize functions. We also  
							
							 
							
							... 
							
							
							
							need TargetData, just return false if we don't have it.
Update testcases accordingly.
Fixes PR6807.
llvm-svn: 101011 
							
						 
						
							2010-04-12 04:48:00 +00:00  
						
					 
				
					
						
							
							
								 
								Eric Christopher
							
						 
						
							 
							
							
							
							
								
							
							
								e8b281c3c3 
								
							 
						 
						
							
							
								
								Add support for stpncpy_chk.  
							
							 
							
							... 
							
							
							
							llvm-svn: 100710 
							
						 
						
							2010-04-07 23:00:07 +00:00  
						
					 
				
					
						
							
							
								 
								Mon P Wang
							
						 
						
							 
							
							
							
							
								
							
							
								c576ee9040 
								
							 
						 
						
							
							
								
								Reapply address space patch after fixing an issue in MemCopyOptimizer.  
							
							 
							
							... 
							
							
							
							Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset,
e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1)
llvm-svn: 100304 
							
						 
						
							2010-04-04 03:10:48 +00:00  
						
					 
				
					
						
							
							
								 
								Mon P Wang
							
						 
						
							 
							
							
							
							
								
							
							
								999c1b927b 
								
							 
						 
						
							
							
								
								Revert r100191 since it breaks objc in clang  
							
							 
							
							... 
							
							
							
							llvm-svn: 100199 
							
						 
						
							2010-04-02 18:43:02 +00:00  
						
					 
				
					
						
							
							
								 
								Mon P Wang
							
						 
						
							 
							
							
							
							
								
							
							
								a972ab8564 
								
							 
						 
						
							
							
								
								Reapply address space patch after fixing an issue in MemCopyOptimizer.  
							
							 
							
							... 
							
							
							
							Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset,
e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1)
llvm-svn: 100191 
							
						 
						
							2010-04-02 18:04:15 +00:00  
						
					 
				
					
						
							
							
								 
								Bob Wilson
							
						 
						
							 
							
							
							
							
								
							
							
								6f7fd28824 
								
							 
						 
						
							
							
								
								Revert Mon Ping's change 99928, since it broke all the llvm-gcc buildbots.  
							
							 
							
							... 
							
							
							
							llvm-svn: 99948 
							
						 
						
							2010-03-30 22:27:04 +00:00  
						
					 
				
					
						
							
							
								 
								Mon P Wang
							
						 
						
							 
							
							
							
							
								
							
							
								7460571381 
								
							 
						 
						
							
							
								
								Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset,  
							
							 
							
							... 
							
							
							
							e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1)
A update of langref will occur in a subsequent checkin.
llvm-svn: 99928 
							
						 
						
							2010-03-30 20:55:56 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								d9e822345c 
								
							 
						 
						
							
							
								
								Teach simplify libcall to transform __strcpy_chk to __memcpy_chk to enable optimizations down stream.  
							
							 
							
							... 
							
							
							
							llvm-svn: 99282 
							
						 
						
							2010-03-23 15:48:04 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								9a7b270825 
								
							 
						 
						
							
							
								
								Fix 80 col violation.  
							
							 
							
							... 
							
							
							
							llvm-svn: 99224 
							
						 
						
							2010-03-22 22:44:31 +00:00  
						
					 
				
					
						
							
							
								 
								Benjamin Kramer
							
						 
						
							 
							
							
							
							
								
							
							
								a956527c92 
								
							 
						 
						
							
							
								
								Add a virtual destructor and give vtable a home.  
							
							 
							
							... 
							
							
							
							llvm-svn: 98376 
							
						 
						
							2010-03-12 20:41:29 +00:00  
						
					 
				
					
						
							
							
								 
								Benjamin Kramer
							
						 
						
							 
							
							
							
							
								
							
							
								7b88a49f3e 
								
							 
						 
						
							
							
								
								Factor checked library call optimization into a common helper class and use it  
							
							 
							
							... 
							
							
							
							to unify the almost identical code in CodeGenPrepare and InstCombineCalls.
llvm-svn: 98338 
							
						 
						
							2010-03-12 09:27:41 +00:00  
						
					 
				
					
						
							
							
								 
								Benjamin Kramer
							
						 
						
							 
							
							
							
							
								
							
							
								2fc395659c 
								
							 
						 
						
							
							
								
								stpcpy is so similar to strcpy, it doesn't deserve a complete copy of the __strcpy_chk -> strcpy code.  
							
							 
							
							... 
							
							
							
							llvm-svn: 98284 
							
						 
						
							2010-03-11 20:45:13 +00:00  
						
					 
				
					
						
							
							
								 
								Eric Christopher
							
						 
						
							 
							
							
							
							
								
							
							
								607de1de53 
								
							 
						 
						
							
							
								
								Lower stpcpy_chk when possible.  
							
							 
							
							... 
							
							
							
							llvm-svn: 98274 
							
						 
						
							2010-03-11 19:24:34 +00:00  
						
					 
				
					
						
							
							
								 
								Eric Christopher
							
						 
						
							 
							
							
							
							
								
							
							
								103e3ef893 
								
							 
						 
						
							
							
								
								Fix typo.  
							
							 
							
							... 
							
							
							
							llvm-svn: 98260 
							
						 
						
							2010-03-11 17:45:38 +00:00  
						
					 
				
					
						
							
							
								 
								Eric Christopher
							
						 
						
							 
							
							
							
							
								
							
							
								43dc11c525 
								
							 
						 
						
							
							
								
								Add strncpy libcall creator.  Use it when it should be used.  
							
							 
							
							... 
							
							
							
							llvm-svn: 98219 
							
						 
						
							2010-03-11 01:25:07 +00:00  
						
					 
				
					
						
							
							
								 
								Eric Christopher
							
						 
						
							 
							
							
							
							
								
							
							
								87abfc506f 
								
							 
						 
						
							
							
								
								Move SimplifyLibCalls's LibCall builders to a separate file so they  
							
							 
							
							... 
							
							
							
							can be used in more places.  Add an argument for the TargetData that
most of them need. Update for the getInt8PtrTy() change.  Should be
no functionality change.
llvm-svn: 97844 
							
						 
						
							2010-03-05 22:25:30 +00:00