llvm-capstone/llvm
Bob Wilson acfc01dedf Fix SROA to avoid unnecessary scalar conversions for 1-element vectors.
When a 1-element vector alloca is promoted, a store instruction can often be
rewritten without converting the value to a scalar and using an insertelement
instruction to stuff it into the new alloca.  This patch just adds a check
to skip that conversion when it is unnecessary.  This turns out to be really
important for some ARM Neon operations where <1 x i64> is used to get around
the fact that i64 is not a legal type.

llvm-svn: 184870
2013-06-25 19:09:50 +00:00
..
autoconf Add an autoconf option for turning on -gsplit-dwarf by default 2013-06-25 01:12:25 +00:00
bindings
cmake
docs Add a release note for removing the simplify-libcalls pass. 2013-06-21 03:08:23 +00:00
examples
include [PowerPC] Support @got modifier 2013-06-25 16:49:50 +00:00
lib Fix SROA to avoid unnecessary scalar conversions for 1-element vectors. 2013-06-25 19:09:50 +00:00
projects Filter out dragonegg when checked out into a projects subdirectory. 2013-06-24 07:21:35 +00:00
runtime
test Fix SROA to avoid unnecessary scalar conversions for 1-element vectors. 2013-06-25 19:09:50 +00:00
tools Move GetEXESuffix to the one place it is used. 2013-06-25 14:42:30 +00:00
unittests [APFloat] Removed trailing whitespace from unittests. 2013-06-24 09:58:09 +00:00
utils keep only the StringRef version of getFileOrSTDIN. 2013-06-25 05:28:34 +00:00
.arcconfig
.gitignore
CMakeLists.txt Look for Python 2 before Python 3 in CMakeLists.txt 2013-06-24 13:21:16 +00:00
CODE_OWNERS.TXT
configure Add an autoconf option for turning on -gsplit-dwarf by default 2013-06-25 01:12:25 +00:00
CREDITS.TXT Identify me on IRC. 2013-06-18 22:09:36 +00:00
LICENSE.TXT
llvm.spec.in
LLVMBuild.txt
Makefile
Makefile.common
Makefile.config.in Add an autoconf option for turning on -gsplit-dwarf by default 2013-06-25 01:12:25 +00:00
Makefile.rules Add an autoconf option for turning on -gsplit-dwarf by default 2013-06-25 01:12:25 +00:00
README.txt

Low Level Virtual Machine (LLVM)
================================

This directory and its subdirectories contain source code for the Low Level
Virtual Machine, a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments.

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the documentation provided in docs/ for further
assistance with LLVM, and in particular docs/GettingStarted.rst for getting
started with LLVM and docs/README.txt for an overview of LLVM's
documentation setup.

If you're writing a package for LLVM, see docs/Packaging.rst for our
suggestions.