1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/test
Chad Rosier a588421976 When performing a truncating store, it's possible to rearrange the data
in-register, such that we can use a single vector store rather then a 
series of scalar stores.

For func_4_8 the generated code

	vldr	d16, LCPI0_0
	vmov	d17, r0, r1
	vadd.i16	d16, d17, d16
	vmov.u16	r0, d16[3]
	strb	r0, [r2, #3]
	vmov.u16	r0, d16[2]
	strb	r0, [r2, #2]
	vmov.u16	r0, d16[1]
	strb	r0, [r2, #1]
	vmov.u16	r0, d16[0]
	strb	r0, [r2]
	bx	lr

becomes

	vldr	d16, LCPI0_0
	vmov	d17, r0, r1
	vadd.i16	d16, d17, d16
	vuzp.8	d16, d17
	vst1.32	{d16[0]}, [r2, :32]
	bx	lr

I'm not fond of how this combine pessimizes 2012-03-13-DAGCombineBug.ll,
but I couldn't think of a way to judiciously apply this combine.

This

	ldrh	r0, [r0, #4]
	strh	r0, [r1]

becomes

	vldr	d16, [r0]
	vmov.u16	r0, d16[2]
	vmov.32	d16[0], r0
	vuzp.16	d16, d17
	vst1.32	{d16[0]}, [r1, :32]

PR11158
rdar://10703339

llvm-svn: 154340
2012-04-09 20:32:02 +00:00
..
Analysis SCEV: When expanding a GEP the final addition to the base pointer has NUW but not NSW. 2012-04-07 17:19:26 +00:00
Archive Replace all instances of dg.exp file with lit.local.cfg, since all tests are run with LIT now and now Dejagnu. dg.exp is no longer needed. 2012-02-16 06:28:33 +00:00
Assembler Remove old 'grep' lines. 2012-04-08 11:53:54 +00:00
Bindings/Ocaml Continue cleanup of LIT, getting rid of the remaining artifacts from dejagnu 2012-03-25 09:02:19 +00:00
Bitcode FileCheckize these testcases. 2012-04-08 11:00:38 +00:00
BugPoint Replace all instances of dg.exp file with lit.local.cfg, since all tests are run with LIT now and now Dejagnu. dg.exp is no longer needed. 2012-02-16 06:28:33 +00:00
CodeGen When performing a truncating store, it's possible to rearrange the data 2012-04-09 20:32:02 +00:00
DebugInfo Patch to set is_stmt a little better for prologue lines in a function. 2012-04-05 20:39:05 +00:00
ExecutionEngine Revert r153694. It was causing failures in the buildbots. 2012-03-29 23:23:59 +00:00
Feature This file is no longer needed (DejaGNU-isms removed from code) 2012-03-25 12:43:54 +00:00
Instrumentation [tsan] treat vtable pointer updates in a special way (requires tbaa); fix a bug (forgot to return true after instrumenting); make sure the tsan tests are run 2012-03-26 17:35:03 +00:00
Integer Replace all instances of dg.exp file with lit.local.cfg, since all tests are run with LIT now and now Dejagnu. dg.exp is no longer needed. 2012-02-16 06:28:33 +00:00
Linker Add back removed code. It still causes LLVM to miscompile. But not having it breaks other things. 2012-02-27 23:48:30 +00:00
MC Add the tests that were supposed to go with r153935 that I forgot svn add 2012-04-06 07:09:59 +00:00
Object Continue cleanup of LIT, getting rid of the remaining artifacts from dejagnu 2012-03-25 09:02:19 +00:00
Other Continue cleanup of LIT, getting rid of the remaining artifacts from dejagnu 2012-03-25 09:02:19 +00:00
Scripts
TableGen Fix infinite loop in nested multiclasses. 2012-03-07 16:39:35 +00:00
Transforms Teach InstCombine to nuke a common alloca pattern -- an alloca which has 2012-04-08 14:36:56 +00:00
Unit
Verifier First part of PR12251. Add documentation and verifier support for the range 2012-03-24 00:14:51 +00:00
YAMLParser Add YAML parser to Support. 2012-04-03 23:09:22 +00:00
CMakeLists.txt Revert r153694. It was causing failures in the buildbots. 2012-03-29 23:23:59 +00:00
lit.cfg Continue cleanup of LIT, getting rid of the remaining artifacts from dejagnu 2012-03-25 09:02:19 +00:00
lit.site.cfg.in Revert r153694. It was causing failures in the buildbots. 2012-03-29 23:23:59 +00:00
Makefile Revert r153694. It was causing failures in the buildbots. 2012-03-29 23:23:59 +00:00
Makefile.tests
site.exp.in
TestRunner.sh