llvm-project/llvm
Hal Finkel 19be506a5e [PowerPC] Add subregister classes for f64 VSX values
We had stored both f64 values and v2f64, etc. values in the VSX registers. This
worked, but was suboptimal because we would always spill 16-byte values even
through we almost always had scalar 8-byte values. This resulted in an
increase in stack-size use, extra memory bandwidth, etc. To fix this, I've
added 64-bit subregisters of the Altivec registers, and combined those with the
existing scalar floating-point registers to form a class of VSX scalar
floating-point registers. The ABI code has also been enhanced to use this
register class and some other necessary improvements have been made.

llvm-svn: 205075
2014-03-29 05:29:01 +00:00
..
autoconf Remove projects/sample. 2014-03-12 22:40:22 +00:00
bindings [python-bindings] Remove some cruft that snuck in. 2014-02-23 04:43:26 +00:00
cmake Win installer: provide a pretty icon 2014-03-27 20:48:37 +00:00
docs Exception handling docs: Clarify how the llvm.eh.* intrinsics are used 2014-03-28 17:08:57 +00:00
examples Fix warnings about an variable only used in asserts. 2014-03-06 06:35:46 +00:00
include Support: Functions for writing endian specific data to streams. 2014-03-28 19:14:43 +00:00
lib [PowerPC] Add subregister classes for f64 VSX values 2014-03-29 05:29:01 +00:00
projects Remove projects/sample. 2014-03-12 22:40:22 +00:00
test [PowerPC] Add subregister classes for f64 VSX values 2014-03-29 05:29:01 +00:00
tools Windows: canonicalise the default windows triple 2014-03-29 01:08:53 +00:00
unittests Canonicalise Windows target triple spellings 2014-03-27 22:50:05 +00:00
utils Intrinsics: expand semantics of LLVMExtendedVectorType (& trunc) 2014-03-28 12:31:39 +00:00
.arcconfig
.clang-format Test commit. 2014-03-02 13:08:46 +00:00
.gitignore Remove projects/sample. 2014-03-12 22:40:22 +00:00
CMakeLists.txt Win installer: provide a pretty icon 2014-03-27 20:48:37 +00:00
CODE_OWNERS.TXT Update my e-mail address in CODE_OWNERS.TXT 2014-03-13 18:04:41 +00:00
CREDITS.TXT Fix documentation typos 2013-12-20 00:33:39 +00:00
LICENSE.TXT Remove projects/sample. 2014-03-12 22:40:22 +00:00
LLVMBuild.txt
Makefile [configure/make] Propagate names of build host tools when making BuildTools 2014-03-25 21:45:41 +00:00
Makefile.common
Makefile.config.in Add a --enable-clang-plugin-support option to configure. 2014-03-10 16:58:35 +00:00
Makefile.rules Use -std=gnu++11 on cygwin and mingw. 2014-03-12 20:01:15 +00:00
README.txt
configure Remove projects/sample. 2014-03-12 22:40:22 +00:00
llvm.spec.in

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.