1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 19:12:56 +02:00
Go to file
Chris Lattner 496f872969 Fix PR4533, which is about buggy codegen in x86-64 -static mode.
Basically, using:
  lea symbol(%rip), %rax

is not valid in -static mode, because the current RIP may not be
within 32-bits of "symbol" when an app is built partially pic and
partially static.  The fix for this is to compile it to:

  lea symbol, %rax

It would be better to codegen this as:

  movq $symbol, %rax

but that will come next.


The hard part of fixing this bug was fixing abi-isel, which was actively
testing for the wrong behavior.  Also, the RUN lines are completely impossible
to understand what they are testing.  To help with this, convert the -static 
x86-64 codegen tests to use filecheck.  This is much more stable and makes it
more clear what the codegen is expected to be.

llvm-svn: 75382
2009-07-11 20:29:19 +00:00
autoconf Add a --with-oprofile flag to configure, which uses OProfile's agent 2009-07-10 21:08:20 +00:00
bindings Fix the Ocaml bindings for the ExecutionEngine: with the change to build 2009-06-24 21:09:18 +00:00
cmake Add a portable strerror*() wrapper, llvm::sys::StrError(). This includes the 2009-07-01 18:11:20 +00:00
docs Regenerate. 2009-07-11 19:28:00 +00:00
examples This started as a small change, I swear. Unfortunately, lots of things call the [I|F]CmpInst constructors. Who knew!? 2009-07-09 23:48:35 +00:00
include Fix comment. 2009-07-11 20:13:58 +00:00
lib Fix PR4533, which is about buggy codegen in x86-64 -static mode. 2009-07-11 20:29:19 +00:00
projects remove dead makefile flags. 2009-06-24 05:29:56 +00:00
runtime Drop toy GC runtime. 2009-03-02 03:46:48 +00:00
test Fix PR4533, which is about buggy codegen in x86-64 -static mode. 2009-07-11 20:29:19 +00:00
tools Update documentation. 2009-07-11 19:27:40 +00:00
unittests Fix handling of max and full set. 2009-07-11 19:22:21 +00:00
utils Stub out assembly matcher (.s -> MCInst) tblgen backend. 2009-07-11 19:39:44 +00:00
website Prepare for "core" website. 2007-08-03 05:43:35 +00:00
win32 Add a new codegen pass that normalizes dwarf exception handling 2009-05-22 20:36:31 +00:00
Xcode Remove Stacker.html from Xcode project. 2008-10-14 23:23:59 +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 bug 4524: Add MSP430 to the cmake build. 2009-07-09 20:27:09 +00:00
configure Regenerate configure after r75279. 2009-07-10 21:09:55 +00:00
CREDITS.TXT Conform... 2009-07-08 17:55:48 +00:00
LICENSE.TXT Now that we have atomics support properly detected by configure, 2009-05-19 00:08:29 +00:00
llvm.spec.in * llvm.spec.in: update blurb 2007-07-13 09:48:29 +00:00
Makefile Introduce new headers whose inclusion forces linking and 2009-06-16 20:12:29 +00:00
Makefile.common Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
Makefile.config.in LLVMC can be now compiled w/o dynamic plugin support. 2009-07-04 03:55:25 +00:00
Makefile.rules Add --enable-llvmc-dynamic configure option. 2009-07-03 03:52:47 +00:00
ModuleInfo.txt Patch to build llvm with srcdir != objdir from 2009-01-23 08:42:38 +00:00
README.txt README.txt: test commit w/blank line appended 2009-03-23 21:00:45 +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.