llvm-6502/test
Chris Lattner 5d5261c819 Teach basicaa that x|c == x+c when the c bits of x are clear. This
allows us to compile the example in readme.txt into:

LBB1_1:                                                     ## %bb
	movl	4(%rdx,%rax), %ecx
	movl	%ecx, %esi
	imull	(%rdx,%rax), %esi
	imull	%esi, %ecx
	movl	%esi, 8(%rdx,%rax)
	imull	%ecx, %esi
	movl	%ecx, 12(%rdx,%rax)
	movl	%esi, 16(%rdx,%rax)
	imull	%ecx, %esi
	movl	%esi, 20(%rdx,%rax)
	addq	$16, %rax
	cmpq	$4000, %rax
	jne	LBB1_1

instead of:

LBB1_1: 
	movl	(%rdx,%rax), %ecx
	imull	4(%rdx,%rax), %ecx
	movl	%ecx, 8(%rdx,%rax)
	imull	4(%rdx,%rax), %ecx
	movl	%ecx, 12(%rdx,%rax)
	imull	8(%rdx,%rax), %ecx
	movl	%ecx, 16(%rdx,%rax)
	imull	12(%rdx,%rax), %ecx
	movl	%ecx, 20(%rdx,%rax)
	addq	$16, %rax
	cmpq	$4000, %rax
	jne	LBB1_1

GCC (4.2) doesn't seem to be able to eliminate the loads in this 
testcase either, it generates:

L2:
	movl	(%rdx), %eax
	imull	4(%rdx), %eax
	movl	%eax, 8(%rdx)
	imull	4(%rdx), %eax
	movl	%eax, 12(%rdx)
	imull	8(%rdx), %eax
	movl	%eax, 16(%rdx)
	imull	12(%rdx), %eax
	movl	%eax, 20(%rdx)
	addl	$4, %ecx
	addq	$16, %rdx
	cmpl	$1002, %ecx
	jne	L2




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89952 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-26 16:26:43 +00:00
..
Analysis Teach basicaa that x|c == x+c when the c bits of x are clear. This 2009-11-26 16:26:43 +00:00
Archive Merge Archive/extract* tests into one; this avoids a race when tests are run in 2009-09-08 23:44:24 +00:00
Assembler Adjust testcases for msasm -> alignstack. 2009-10-21 23:29:12 +00:00
Bindings/Ocaml Fix test/Bindings/Ocaml/vmcore.ml. When IRBuilder::CreateMalloc was removed, 2009-10-17 23:52:26 +00:00
Bitcode Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
BugPoint Use -output-prefix in bugpoint tests so that outputs go in temp directory (and 2009-09-07 19:26:18 +00:00
CodeGen Test for 89905. 2009-11-26 00:35:01 +00:00
DebugInfo Add missing run line. Devang, please check. 2009-11-11 03:10:03 +00:00
ExecutionEngine Remove test. Execution tests are slow and generally not worth it. 2009-11-08 02:23:15 +00:00
Feature add bitcode reader support for blockaddress. We can now fully 2009-10-28 05:53:48 +00:00
FrontendAda Check that accessing a struct field that occurs before the start 2009-10-22 12:53:25 +00:00
FrontendC Fix -march= name for x86-64. 2009-11-20 02:52:08 +00:00
FrontendC++ Test for llvm-gcc checkin 89898. 2009-11-25 23:50:09 +00:00
FrontendFortran
FrontendObjC These tests now pass. 2009-10-13 20:45:18 +00:00
FrontendObjC++
Integer Eliminate some Tclisms. 2009-09-05 11:34:46 +00:00
lib tests: Add llvm_supports_binding predicate. 2009-09-13 01:41:18 +00:00
Linker When a constant's type is refined, update the constant in place 2009-09-15 15:58:07 +00:00
LLVMC Cleanup some unused RUN lines. 2009-11-08 09:07:42 +00:00
MC Force triple in tests. 2009-10-16 16:30:02 +00:00
Other Update these tests to match what Loop::print now prints. 2009-10-24 23:52:07 +00:00
Scripts Teach macho-dump to dump UUIDs. 2009-10-24 20:32:36 +00:00
TableGen Fix pr5470. Tablegen handles template arguments by temporarily setting their 2009-11-22 03:58:57 +00:00
Transforms Reverting patch in revision 89758, initial attempt at fixing PR5373 has proven to be bogus. 2009-11-25 05:38:41 +00:00
Unit Switch to using 'lit.site.cfg.in' for the site config template for Unit tests, 2009-11-08 09:07:51 +00:00
Verifier Remove obsolete -f flags. 2009-08-25 15:38:29 +00:00
CMakeLists.txt Two small fixes for site.exp for cmake. 2009-11-08 09:29:52 +00:00
lit.cfg Derive the right paths to use during testing instead of passing it in via make. 2009-11-08 09:08:00 +00:00
lit.site.cfg.in Generate lit.site.cfg from a .in file, as clang does. 2009-09-22 07:38:33 +00:00
Makefile Revert the test from r88984. It relies on being able to mmap 16GB of 2009-11-16 23:32:30 +00:00
Makefile.tests Remove obsolete -f flags. 2009-08-25 15:38:29 +00:00
site.exp.in Two small fixes for site.exp for cmake. 2009-11-08 09:29:52 +00:00
TestRunner.sh