Chad Rosier
							
						 
						
							 
							
							
							
							
								
							
							
								67a5df5329 
								
							 
						 
						
							
							
								
								Add a few test cases to ensure the bitcode reader is backward compatible with  
							
							 
							
							... 
							
							
							
							LLVM 2.9.  My understanding is that we plan to maintain compatibility with 2.9
until the 3.1 release.  At that time we can generate new test cases using LLVM
3.0.
llvm-svn: 142958 
							
						 
						
							2011-10-25 20:33:19 +00:00  
						
					 
				
					
						
							
							
								 
								Chad Rosier
							
						 
						
							 
							
							
							
							
								
							
							
								1248500425 
								
							 
						 
						
							
							
								
								Simplify tests by not piping them through llvm-dis.  
							
							 
							
							... 
							
							
							
							llvm-svn: 142948 
							
						 
						
							2011-10-25 19:59:50 +00:00  
						
					 
				
					
						
							
							
								 
								Chad Rosier
							
						 
						
							 
							
							
							
							
								
							
							
								48d436618d 
								
							 
						 
						
							
							
								
								Fix these test cases to not use .bc files.  Otherwise, we run into issues with  
							
							 
							
							... 
							
							
							
							bitcode reader/writer backward compatibility.
llvm-svn: 142896 
							
						 
						
							2011-10-25 01:22:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8936d2bfbc 
								
							 
						 
						
							
							
								
								Remove support for parsing the "type i32" syntax for defining a numbered  
							
							 
							
							... 
							
							
							
							top level type without a specified number.  This syntax isn't documented
and blocks forward progress.
llvm-svn: 133371 
							
						 
						
							2011-06-19 00:03:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								80ed9dc9e5 
								
							 
						 
						
							
							
								
								rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which is  
							
							 
							
							... 
							
							
							
							for pre-2.9 bitcode files.  We keep x86 unaligned loads, movnt, crc32, and the
target indep prefetch change.
As usual, updating the testsuite is a PITA.
llvm-svn: 133337 
							
						 
						
							2011-06-18 06:05:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f1c871098d 
								
							 
						 
						
							
							
								
								remove support for a bunch of obsolete instruction encodings  
							
							 
							
							... 
							
							
							
							and other backward compatibility hacks.
llvm-svn: 133273 
							
						 
						
							2011-06-17 18:09:11 +00:00  
						
					 
				
					
						
							
							
								 
								Chad Rosier
							
						 
						
							 
							
							
							
							
								
							
							
								96ea58e7c7 
								
							 
						 
						
							
							
								
								Add missing newlines.  
							
							 
							
							... 
							
							
							
							llvm-svn: 132241 
							
						 
						
							2011-05-28 01:35:58 +00:00  
						
					 
				
					
						
							
							
								 
								Chad Rosier
							
						 
						
							 
							
							
							
							
								
							
							
								f374d8b0cf 
								
							 
						 
						
							
							
								
								Fix test cases that were previously using grep to use FileCheck  
							
							 
							
							... 
							
							
							
							llvm-svn: 132237 
							
						 
						
							2011-05-28 00:15:10 +00:00  
						
					 
				
					
						
							
							
								 
								Chad Rosier
							
						 
						
							 
							
							
							
							
								
							
							
								bbdca744d4 
								
							 
						 
						
							
							
								
								Typo is test case  
							
							 
							
							... 
							
							
							
							llvm-svn: 132214 
							
						 
						
							2011-05-27 20:16:57 +00:00  
						
					 
				
					
						
							
							
								 
								Chad Rosier
							
						 
						
							 
							
							
							
							
								
							
							
								3252177f16 
								
							 
						 
						
							
							
								
								CRC32 intrinsics were renamed at revision 132163.  This submission  
							
							 
							
							... 
							
							
							
							fixes aliasing issues with the old and new names as well as adds test
cases for the auto-upgrader.
Fixes rdar 9472944.
llvm-svn: 132207 
							
						 
						
							2011-05-27 19:38:10 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								64c9284411 
								
							 
						 
						
							
							
								
								It's valid to take the blockaddress of a different function, so remove this  
							
							 
							
							... 
							
							
							
							assert in the bitcode writer. No change needed because the ValueEnumerator holds
a whole-module numbering anyhow. Fixes PR9857!
llvm-svn: 131016 
							
						 
						
							2011-05-06 21:09:44 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								18381b4257 
								
							 
						 
						
							
							
								
								Add intrinsics @llvm.arm.neon.vmulls and @llvm.arm.neon.vmullu.* back. Frontends  
							
							 
							
							... 
							
							
							
							was lowering them to sext / uxt + mul instructions. Unfortunately the
optimization passes may hoist the extensions out of the loop and separate them.
When that happens, the long multiplication instructions can be broken into
several scalar instructions, causing significant performance issue.
Note the vmla and vmls intrinsics are not added back. Frontend will codegen them
as intrinsics vmull* + add / sub. Also note the isel optimizations for catching
mul + sext / zext are not changed either.
First part of rdar://8832507, rdar://9203134
llvm-svn: 128502 
							
						 
						
							2011-03-29 23:06:19 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								efb139130f 
								
							 
						 
						
							
							
								
								Testcase for PR8494 (invalid bitcode crashing the bitcode reader).  
							
							 
							
							... 
							
							
							
							llvm-svn: 117552 
							
						 
						
							2010-10-28 15:57:30 +00:00  
						
					 
				
					
						
							
							
								 
								Dale Johannesen
							
						 
						
							 
							
							
							
							
								
							
							
								dd224d2333 
								
							 
						 
						
							
							
								
								Massive rewrite of MMX:  
							
							 
							
							... 
							
							
							
							The x86_mmx type is used for MMX intrinsics, parameters and
return values where these use MMX registers, and is also
supported in load, store, and bitcast.
Only the above operations generate MMX instructions, and optimizations
do not operate on or produce MMX intrinsics. 
MMX-sized vectors <2 x i32> etc. are lowered to XMM or split into
smaller pieces.  Optimizations may occur on these forms and the
result casted back to x86_mmx, provided the result feeds into a
previous existing x86_mmx operation.
The point of all this is prevent optimizations from introducing
MMX operations, which is unsafe due to the EMMS problem.
llvm-svn: 115243 
							
						 
						
							2010-09-30 23:57:10 +00:00  
						
					 
				
					
						
							
							
								 
								Bill Wendling
							
						 
						
							 
							
							
							
							
								
							
							
								e26fffc597 
								
							 
						 
						
							
							
								
								Auto-upgrade the magic ".llvm.eh.catch.all.value" global to  
							
							 
							
							... 
							
							
							
							"llvm.eh.catch.all.value". Only the name needs to be changed.
llvm-svn: 113600 
							
						 
						
							2010-09-10 18:51:56 +00:00  
						
					 
				
					
						
							
							
								 
								Bob Wilson
							
						 
						
							 
							
							
							
							
								
							
							
								f65c9ef720 
								
							 
						 
						
							
							
								
								Replace NEON vabdl, vaba, and vabal intrinsics with combinations of the  
							
							 
							
							... 
							
							
							
							vabd intrinsic and add and/or zext operations.  In the case of vaba, this
also avoids the need for a DAG combine pattern to combine vabd with add.
Update tests.  Auto-upgrade the old intrinsics.
llvm-svn: 112941 
							
						 
						
							2010-09-03 01:35:08 +00:00  
						
					 
				
					
						
							
							
								 
								Bob Wilson
							
						 
						
							 
							
							
							
							
								
							
							
								38ab35a911 
								
							 
						 
						
							
							
								
								Remove NEON vmull, vmlal, and vmlsl intrinsics, replacing them with multiply,  
							
							 
							
							... 
							
							
							
							add, and subtract operations with zero-extended or sign-extended vectors.
Update tests.  Add auto-upgrade support for the old intrinsics.
llvm-svn: 112773 
							
						 
						
							2010-09-01 23:50:19 +00:00  
						
					 
				
					
						
							
							
								 
								Bob Wilson
							
						 
						
							 
							
							
							
							
								
							
							
								4cd8a126c3 
								
							 
						 
						
							
							
								
								Remove NEON vmovn intrinsic, replacing it with vector truncate operations.  
							
							 
							
							... 
							
							
							
							Auto-upgrade the old intrinsic and update tests.
llvm-svn: 112507 
							
						 
						
							2010-08-30 20:02:30 +00:00  
						
					 
				
					
						
							
							
								 
								Bob Wilson
							
						 
						
							 
							
							
							
							
								
							
							
								d0c054886c 
								
							 
						 
						
							
							
								
								Remove NEON vaddl, vaddw, vsubl, and vsubw intrinsics.  Instead, use llvm  
							
							 
							
							... 
							
							
							
							IR add/sub operations with one or both operands sign- or zero-extended.
Auto-upgrade the old intrinsics.
llvm-svn: 112416 
							
						 
						
							2010-08-29 05:57:34 +00:00  
						
					 
				
					
						
							
							
								 
								Bob Wilson
							
						 
						
							 
							
							
							
							
								
							
							
								edf722add3 
								
							 
						 
						
							
							
								
								Add alignment arguments to all the NEON load/store intrinsics.  
							
							 
							
							... 
							
							
							
							Update all the tests using those intrinsics and add support for
auto-upgrading bitcode files with the old versions of the intrinsics.
llvm-svn: 112271 
							
						 
						
							2010-08-27 17:13:24 +00:00  
						
					 
				
					
						
							
							
								 
								Bob Wilson
							
						 
						
							 
							
							
							
							
								
							
							
								9a511c07e4 
								
							 
						 
						
							
							
								
								Replace the arm.neon.vmovls and vmovlu intrinsics with vector sign-extend and  
							
							 
							
							... 
							
							
							
							zero-extend operations.
llvm-svn: 111614 
							
						 
						
							2010-08-20 04:54:02 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c239eb79bd 
								
							 
						 
						
							
							
								
								reapply 'reject forward references to functions whose type don't match'  
							
							 
							
							... 
							
							
							
							now that the testsuite has been updated.
llvm-svn: 101866 
							
						 
						
							2010-04-20 04:49:11 +00:00  
						
					 
				
					
						
							
							
								 
								Eric Christopher
							
						 
						
							 
							
							
							
							
								
							
							
								64831c6a4c 
								
							 
						 
						
							
							
								
								Remove the palignr intrinsics now that we lower them to vector shuffles,  
							
							 
							
							... 
							
							
							
							shifts and null vectors. Autoupgrade these to what we'd lower them to.
Add a testcase to exercise this.
llvm-svn: 101851 
							
						 
						
							2010-04-20 00:59:54 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Dunbar
							
						 
						
							 
							
							
							
							
								
							
							
								c459a0ff81 
								
							 
						 
						
							
							
								
								Revert "reject forward references to functions whose type don't match", because DJG told me to!  
							
							 
							
							... 
							
							
							
							llvm-svn: 101675 
							
						 
						
							2010-04-17 21:24:55 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5a44950aae 
								
							 
						 
						
							
							
								
								reject forward references to functions whose type don't match  
							
							 
							
							... 
							
							
							
							up with the definition (and fix a broken testcase).  PR6491.
llvm-svn: 101670 
							
						 
						
							2010-04-17 20:45:56 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3ae2dd2ba5 
								
							 
						 
						
							
							
								
								add newlines at the end of files.  
							
							 
							
							... 
							
							
							
							llvm-svn: 100705 
							
						 
						
							2010-04-07 22:53:17 +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  
						
					 
				
					
						
							
							
								 
								Eric Christopher
							
						 
						
							 
							
							
							
							
								
							
							
								6ad8167714 
								
							 
						 
						
							
							
								
								Remove the pmulld intrinsic and autoupdate it as a vector multiply.  
							
							 
							
							... 
							
							
							
							Rewrite the pmulld patterns, and make sure that they fold in loads of
arguments into the instruction.
llvm-svn: 99910 
							
						 
						
							2010-03-30 18:49:01 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								00f4747bad 
								
							 
						 
						
							
							
								
								Fix the bitcode reader to deserialize nuw/nsw/etc. bits properly in the case  
							
							 
							
							... 
							
							
							
							of a forward-reference, which doesn't use an "abbrev" encoding.
llvm-svn: 94454 
							
						 
						
							2010-01-25 21:55:39 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								1880092722 
								
							 
						 
						
							
							
								
								Change tests from "opt %s" to "opt < %s" so that opt doesn't see the  
							
							 
							
							... 
							
							
							
							input filename so that opt doesn't print the input filename in the
output so that grep lines in the tests don't unintentionally match
strings in the input filename.
llvm-svn: 81537 
							
						 
						
							2009-09-11 18:01:28 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								9737a63ed8 
								
							 
						 
						
							
							
								
								Change these tests to feed the assembly files to opt directly, instead  
							
							 
							
							... 
							
							
							
							of using llvm-as, now that opt supports this.
llvm-svn: 81226 
							
						 
						
							2009-09-08 16:50:01 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								0d4bbf2c4a 
								
							 
						 
						
							
							
								
								Remove obsolete -f flags.  
							
							 
							
							... 
							
							
							
							llvm-svn: 79992 
							
						 
						
							2009-08-25 15:38:29 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								05eb617da5 
								
							 
						 
						
							
							
								
								Use separate ValueList for metadata.  
							
							 
							
							... 
							
							
							
							This fixes PR4666.
llvm-svn: 78056 
							
						 
						
							2009-08-04 06:00:18 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								8cca7b4abe 
								
							 
						 
						
							
							
								
								Revert recent bitcode writer patches.  
							
							 
							
							... 
							
							
							
							llvm-svn: 78053 
							
						 
						
							2009-08-04 05:01:35 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								8abe6bc291 
								
							 
						 
						
							
							
								
								Constants and Metadata share ValueList. This means they must be emitted interleaved (using appropriate BLOCK_IDs) otherwise ValuePtrs index gets out of sync.  
							
							 
							
							... 
							
							
							
							llvm-svn: 78033 
							
						 
						
							2009-08-04 02:26:56 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								a879819918 
								
							 
						 
						
							
							
								
								Don't remove aggregate-typed module level constants before encoding functions  
							
							 
							
							... 
							
							
							
							since functions may contain aggregate constants too.
llvm-svn: 73220 
							
						 
						
							2009-06-12 05:20:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fa4e35aca7 
								
							 
						 
						
							
							
								
								fix a bitcode reader bug where it can't handle extractelement correctly:  
							
							 
							
							... 
							
							
							
							the index of the value being extracted is always an i32.  This fixes PR3465
llvm-svn: 63597 
							
						 
						
							2009-02-03 02:11:28 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								91a2e56b06 
								
							 
						 
						
							
							
								
								Eliminate x86.sse2.punpckh.qdq and x86.sse2.punpckl.qdq.  
							
							 
							
							... 
							
							
							
							llvm-svn: 51533 
							
						 
						
							2008-05-24 02:56:30 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								2146270c9b 
								
							 
						 
						
							
							
								
								Eliminate x86.sse2.movs.d, x86.sse2.shuf.pd, x86.sse2.unpckh.pd, and x86.sse2.unpckl.pd intrinsics. These will be lowered into shuffles.  
							
							 
							
							... 
							
							
							
							llvm-svn: 51531 
							
						 
						
							2008-05-24 02:14:05 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								5065932276 
								
							 
						 
						
							
							
								
								Autoupgrade x86.sse2.loadh.pd and x86.sse2.loadl.pd.  
							
							 
							
							... 
							
							
							
							llvm-svn: 51523 
							
						 
						
							2008-05-24 00:08:39 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								d01c562e48 
								
							 
						 
						
							
							
								
								Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit.  
							
							 
							
							... 
							
							
							
							llvm-svn: 51357 
							
						 
						
							2008-05-20 22:07:21 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								1e427c3264 
								
							 
						 
						
							
							
								
								sabre brings to my attention that the 'tr' suffix is also obsolete  
							
							 
							
							... 
							
							
							
							llvm-svn: 51349 
							
						 
						
							2008-05-20 21:00:03 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								f45ff35bfe 
								
							 
						 
						
							
							
								
								Rename the last test with .llx extension to .ll, resolve duplicate test by renaming to isnan2. Now that no test has llx ending there is no need to search for them from dg.exp too.  
							
							 
							
							... 
							
							
							
							llvm-svn: 51328 
							
						 
						
							2008-05-20 19:52:04 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								aec0914c80 
								
							 
						 
						
							
							
								
								fix this test.  
							
							 
							
							... 
							
							
							
							llvm-svn: 47232 
							
						 
						
							2008-02-17 00:15:25 +00:00  
						
					 
				
					
						
							
							
								 
								Tanya Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c36fefedf5 
								
							 
						 
						
							
							
								
								Remove llvm-upgrade.  
							
							 
							
							... 
							
							
							
							llvm-svn: 47230 
							
						 
						
							2008-02-17 00:13:09 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								0e179d015f 
								
							 
						 
						
							
							
								
								Bring back int_x86_sse2_movl_dq intrinsic for backward compatibility. Make sure  
							
							 
							
							... 
							
							
							
							it's auto-upgraded to a shufflevector instruction.
llvm-svn: 45131 
							
						 
						
							2007-12-17 22:33:23 +00:00  
						
					 
				
					
						
							
							
								 
								Chandler Carruth
							
						 
						
							 
							
							
							
							
								
							
							
								7132e00de7 
								
							 
						 
						
							
							
								
								This is the patch to provide clean intrinsic function overloading support in LLVM. It cleans up the intrinsic definitions and generally smooths the process for more complicated intrinsic writing. It will be used by the upcoming atomic intrinsics as well as vector and float intrinsics in the future.  
							
							 
							
							... 
							
							
							
							This also changes the syntax for llvm.bswap, llvm.part.set, llvm.part.select, and llvm.ct* intrinsics. They are automatically upgraded by both the LLVM ASM reader and the bitcode reader. The test cases have been updated, with special tests added to ensure the automatic upgrading is supported.
llvm-svn: 40807 
							
						 
						
							2007-08-04 01:51:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chandler Carruth
							
						 
						
							 
							
							
							
							
								
							
							
								fb95b0ea19 
								
							 
						 
						
							
							
								
								Moving regression test to reflect move in source and headers to Bitcode.  
							
							 
							
							... 
							
							
							
							llvm-svn: 40488 
							
						 
						
							2007-07-25 19:47:31 +00:00