Old fork of llvm-mirror, used on older RPCS3 builds
Go to file
Chris Lattner 1518afddea Implement major new fastisel functionality: the matcher can now handle immediates with
value constraints on them (when defined as ImmLeaf's).  This is particularly important
for X86-64, where almost all reg/imm instructions take a i64immSExt32 immediate operand,
which has a value constraint.  Before this patch we ended up iseling the examples into
such amazing code as:

	movabsq	$7, %rax
	imulq	%rax, %rdi
	movq	%rdi, %rax
	ret

now we produce:

	imulq	$7, %rdi, %rax
	ret

This dramatically shrinks the generated code at -O0 on x86-64.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129691 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-18 06:22:33 +00:00
autoconf Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
bindings Fix compiling the ocaml kaleidoscope tutorials 2011-02-09 18:32:02 +00:00
cmake Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
docs docs: Redefine Heading elements as below; 2011-04-18 01:17:51 +00:00
examples Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
include Make the StringMaps attached to MCContext use the MCContext's allocator; 2011-04-18 05:02:31 +00:00
lib Revert r129688; it's breaking buildbots. 2011-04-18 05:54:54 +00:00
projects Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
runtime Write out uint64_t as i{0..32},i{33..64} instead of i{0..32},0. 2011-04-16 10:25:32 +00:00
test Implement major new fastisel functionality: the matcher can now handle immediates with 2011-04-18 06:22:33 +00:00
tools Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
unittests Implements StringRef::compare with bounds. It is behaves similarly to strncmp(). Unit tests also included. 2011-04-15 17:56:50 +00:00
utils Implement major new fastisel functionality: the matcher can now handle immediates with 2011-04-18 06:22:33 +00:00
website
.gitignore Cleanup and document .gitignore. 2010-12-17 17:22:50 +00:00
build-for-llvm-top.sh
CMakeLists.txt Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
configure Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
CREDITS.TXT Another git svn dcommit test. This time let's hope it doesn't kill my repo. 2010-12-10 14:45:10 +00:00
LICENSE.TXT
llvm.spec.in
Makefile build: Add support for a SHOW_DIAGNOSTICS build variable. 2011-04-11 22:37:39 +00:00
Makefile.common
Makefile.config.in autoconf: Add --disable-embed-stdcxx to suppress linking libstdc++.a into llvm.dll with --enable-shared on Cygming. 2010-12-29 03:59:14 +00:00
Makefile.rules Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
ModuleInfo.txt
README.txt Test commit. 2011-02-11 19:11:57 +00:00

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 HTML documentation provided in docs/index.html for further
assistance with LLVM.

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