1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 19:12:56 +02:00
llvm-mirror/lib
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
..
Analysis assert(0) -> LLVM_UNREACHABLE. 2009-07-11 20:10:48 +00:00
Archive Make the use of const with respect to LLVMContext sane. Hopefully this is the last time, for the 2009-07-01 23:13:44 +00:00
AsmParser assert(0) -> LLVM_UNREACHABLE. 2009-07-11 20:10:48 +00:00
Bitcode assert(0) -> LLVM_UNREACHABLE. 2009-07-11 20:10:48 +00:00
CodeGen assert(0) -> LLVM_UNREACHABLE. 2009-07-11 20:10:48 +00:00
CompilerDriver Delete the temp dir even when '--temp-dir' is specified. 2009-07-11 19:27:07 +00:00
Debugger Make the use of const with respect to LLVMContext sane. Hopefully this is the last time, for the 2009-07-01 23:13:44 +00:00
ExecutionEngine assert(0) -> LLVM_UNREACHABLE. 2009-07-11 20:10:48 +00:00
Linker assert(0) -> LLVM_UNREACHABLE. 2009-07-11 20:10:48 +00:00
MC assert(0) -> LLVM_UNREACHABLE. 2009-07-11 20:10:48 +00:00
Support assert(0) -> LLVM_UNREACHABLE. 2009-07-11 20:10:48 +00:00
System eraseFromDisk no longer throws. 2009-07-09 16:17:28 +00:00
Target Fix PR4533, which is about buggy codegen in x86-64 -static mode. 2009-07-11 20:29:19 +00:00
Transforms assert(0) -> LLVM_UNREACHABLE. 2009-07-11 20:10:48 +00:00
VMCore assert(0) -> LLVM_UNREACHABLE. 2009-07-11 20:10:48 +00:00
Makefile LLVMC doesn't need ENABLE_PIC to build now. 2009-07-04 03:54:54 +00:00