llvm-6502/lib/Transforms
Chandler Carruth fca3f4021a Teach the new SROA a new trick. Now we zap any memcpy or memmoves which
are in fact identity operations. We detect these and kill their
partitions so that even splitting is unaffected by them. This is
particularly important because Clang relies on emitting identity memcpy
operations for struct copies, and these fold away to constants very
often after inlining.

Fixes the last big performance FIXME I have on my plate.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165285 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-05 01:29:09 +00:00
..
Hello Since the Hello pass is built as a loadable dynamic library, don't try to convert it to new-style registration yet. 2010-10-07 00:31:16 +00:00
InstCombine Surprisingly, we missed a trivial case here. Fix that! 2012-09-28 09:33:53 +00:00
Instrumentation [tsan] add 3 internal flags for fine-grain control of what is instrumented and what is not. 2012-10-04 05:28:50 +00:00
IPO Use method to query for attributes. 2012-10-04 06:58:52 +00:00
Scalar Teach the new SROA a new trick. Now we zap any memcpy or memmoves which 2012-10-05 01:29:09 +00:00
Utils This patch corrects commit 165126 by using an integer bit width instead of 2012-10-04 21:33:40 +00:00
Vectorize Revert 'Fix a typo 'iff' => 'if''. iff is an abreviation of if and only if. See: http://en.wikipedia.org/wiki/If_and_only_if Commit 164767 2012-09-27 10:14:43 +00:00
CMakeLists.txt Add a basic-block autovectorization pass. 2012-02-01 03:51:43 +00:00
LLVMBuild.txt Add a basic-block autovectorization pass. 2012-02-01 03:51:43 +00:00
Makefile Add a basic-block autovectorization pass. 2012-02-01 03:51:43 +00:00