Fork of llvm with experimental commits and workarounds for RPCS3
Go to file
Jakob Stoklund Olesen 5fdcc970a2 Don't fold insufficiently aligned ldr/str into ldm/stm instructions.
An unaligned ldr causes a trap, and is then emulated by the kernel with
awesome performance. The darwin kernel does not emulate unaligned ldm/stm
Thumb2 instructions, so don't generate them.

This fixes the miscompilation of Multisource/Applications/JM/lencod for Thumb2.

Generating unaligned ldr/str pairs from a 16-bit aligned memcpy is probably
also a bad idea, but that is beyond the scope of this patch.

llvm-svn: 93393
2010-01-14 00:54:10 +00:00
autoconf Proper deduce z/System LLVM target from target triple when 2010-01-05 20:45:13 +00:00
bindings Fix another parallel make race condition. 2009-12-18 20:12:14 +00:00
cmake Update CMake LibDeps 2010-01-04 23:17:24 +00:00
docs Add documentation for llvm.dbg.value intrinsic 2010-01-11 22:53:48 +00:00
examples fix PR5649 by making fib use the JIT instead of the interpreter, patch by Perry Lorier! 2009-12-01 01:56:27 +00:00
include Add getSource() to SuccIterator 2010-01-13 22:21:43 +00:00
lib Don't fold insufficiently aligned ldr/str into ldm/stm instructions. 2010-01-14 00:54:10 +00:00
projects Move DataTypes.h to include/llvm/System, update all users. This breaks the last 2009-10-26 01:35:46 +00:00
runtime remove the random sampling framework, which is not maintained anymore. 2010-01-02 20:07:03 +00:00
test When the visitSub method was split into visitSub and visitFSub, this xform was 2010-01-13 23:23:17 +00:00
tools Reimplement getToken and SplitString as "StringRef helper functions" 2010-01-11 18:03:24 +00:00
unittests NamedMDNode is a collection MDNodes. 2010-01-05 20:41:31 +00:00
utils Erm, previous patch was wrong; Thanks Bill\! 2010-01-14 00:34:53 +00:00
website
Xcode Remove the IA-64 backend. 2009-07-24 00:30:09 +00:00
build-for-llvm-top.sh Patch to build llvm with srcdir != objdir from 2009-01-23 08:42:38 +00:00
CMakeLists.txt Fix CMake build for InstCombine changes 2010-01-04 21:58:55 +00:00
configure Regenerate 2010-01-05 20:45:43 +00:00
CREDITS.TXT Add myself to the blame list. 2009-08-20 15:20:15 +00:00
LICENSE.TXT 2010 is upon us. 2010-01-09 18:40:31 +00:00
llvm.spec.in
Makefile Update install-clang target for clang-cc removal. 2009-12-12 21:17:54 +00:00
Makefile.common Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
Makefile.config.in Fix typos. Thanks to John Tytgat for noticing it! 2009-12-07 00:27:35 +00:00
Makefile.rules Add the rest of the build system logic for optional target disassemblers 2009-11-25 04:46:58 +00:00
ModuleInfo.txt Patch to build llvm with srcdir != objdir from 2009-01-23 08:42:38 +00:00
README.txt First test commit 2009-10-05 22:29:11 +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.