1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 02:52:53 +02:00

In the absence of a linker to build the GOT, use the 32-bit

non_lazy_ptr mechanism on x86-64 Darwin JIT.  Fixes a bunch
of last night's failures.

llvm-svn: 54692
This commit is contained in:
Dale Johannesen 2008-08-12 18:23:48 +00:00
parent f927e9615f
commit 74bf5907fa

View File

@ -251,7 +251,9 @@ static bool isDisp8(int Value) {
}
bool Emitter::gvNeedsLazyPtr(const GlobalValue *GV) {
return !Is64BitMode &&
// For Darwin, simulate the linktime GOT by using the same lazy-pointer
// mechanism as 32-bit mode.
return (!Is64BitMode || TM.getSubtarget<X86Subtarget>().isTargetDarwin()) &&
TM.getSubtarget<X86Subtarget>().GVRequiresExtraLoad(GV, TM, false);
}