Fork of llvm with experimental commits and workarounds for RPCS3
Go to file
Bob Wilson a8b566d854 Fix pr6543: svn r88806 changed MachineJumpTableInfo::getJumpTableIndex() to
always create a new jump table.  The intention was to avoid merging jump
tables in SelectionDAGBuilder, and to wait for the branch folding pass to
merge tables.  Unfortunately, the same getJumpTableIndex() method is also
used to merge tables in branch folding, so as a result of this change
branch tables are never merged.  Worse, the branch folding code is expecting
getJumpTableIndex to always return the index of an existing table, but with
this change, it never does so.  In at least some cases, e.g., pr6543, this
creates references to non-existent tables.

I've fixed the problem by adding a new createJumpTableIndex function, which
will always create a new table, and I've changed getJumpTableIndex to only
look at existing tables.

llvm-svn: 98845
2010-03-18 18:42:41 +00:00
autoconf Tell Valgrind when we modify already-executed machine code so it knows 2010-03-15 04:57:55 +00:00
bindings Add OCaml tutorial to the examples. 2010-03-08 19:32:27 +00:00
cmake Tell Valgrind when we modify already-executed machine code so it knows 2010-03-15 04:57:55 +00:00
docs Adding MicroBlaze as an experimental backend in the release notes 2010-03-18 14:31:30 +00:00
examples Don't always run the ocaml kaleidoscope tutorials. 2010-03-08 20:07:32 +00:00
include Fix pr6543: svn r88806 changed MachineJumpTableInfo::getJumpTableIndex() to 2010-03-18 18:42:41 +00:00
lib Fix pr6543: svn r88806 changed MachineJumpTableInfo::getJumpTableIndex() to 2010-03-18 18:42:41 +00:00
projects Testing subversion commit access 2010-02-23 15:11:17 +00:00
runtime disable this for mingw as well, we really need a 'has no dynamic linking' predicate. 2010-03-06 18:54:37 +00:00
test add a special relocation type for movq loads for object 2010-03-18 18:10:56 +00:00
tools Changed install_name for libEnhancedDisassembly.dylib on 2010-03-17 22:01:36 +00:00
unittests feedback from Nick 2010-03-17 19:27:31 +00:00
utils Add an extra newline to separate PP directives from the contents 2010-03-18 13:16:38 +00:00
website Prepare for "core" website. 2007-08-03 05:43:35 +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 CMake: Add options for using static runtime on MSVC++ build. 2010-03-18 13:52:05 +00:00
configure Tell Valgrind when we modify already-executed machine code so it knows 2010-03-15 04:57:55 +00:00
CREDITS.TXT Adding the MicroBlaze backend. 2010-02-23 19:15:24 +00:00
LICENSE.TXT 2010 is upon us. 2010-01-09 18:40:31 +00:00
llvm.spec.in * llvm.spec.in: update blurb 2007-07-13 09:48:29 +00:00
Makefile Try r96559 for the third time. This time the shared library is only built if 2010-02-25 06:34:33 +00:00
Makefile.common Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
Makefile.config.in Rewrite makefiles to explicitly reference DESTDIR to fix bug 3153. 2010-03-04 20:56:19 +00:00
Makefile.rules remove arm mode workaround for ARM host 2010-03-17 21:28:19 +00:00
ModuleInfo.txt Patch to build llvm with srcdir != objdir from 2009-01-23 08:42:38 +00:00
README.txt Give packagers some advice about how to build LLVM so it's useful to 2010-02-26 00:54:42 +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.