Bug#505974: llvm patch needed for opengtl
Jonathan Riddell
jriddell at ubuntu.com
Mon Nov 17 10:47:06 UTC 2008
Package: llvm
This patch is needed for llvm to be able to compile opengtl on amd64.
Also it needs to be compiled with -fPIC.
Patch by Cyrille Berger.
Jonathan
-------------- next part --------------
--- a/lib/Target/X86/X86JITInfo.cpp.orig 2008-07-02 09:41:02.000000000 +0200
+++ b/lib/Target/X86/X86JITInfo.cpp 2008-07-02 09:41:51.000000000 +0200
@@ -25,8 +25,10 @@
// Determine the platform we're running on
#if defined (__x86_64__) || defined (_M_AMD64)
# define X86_64_JIT
+# define ASMSUFFIX "@PLT"
#elif defined(__i386__) || defined(i386) || defined(_M_IX86)
# define X86_32_JIT
+# define ASMSUFFIX
#endif
void X86JITInfo::replaceMachineCodeForFunction(void *Old, void *New) {
@@ -112,7 +114,7 @@
// JIT callee
"movq %rbp, %rdi\n" // Pass prev frame and return address
"movq 8(%rbp), %rsi\n"
- "call " ASMPREFIX "X86CompilationCallback2\n"
+ "call " ASMPREFIX "X86CompilationCallback2" ASMSUFFIX "\n"
// Restore all XMM arg registers
"movaps 112(%rsp), %xmm7\n"
"movaps 96(%rsp), %xmm6\n"
@@ -186,7 +188,7 @@
"movl 4(%ebp), %eax\n" // Pass prev frame and return address
"movl %eax, 4(%esp)\n"
"movl %ebp, (%esp)\n"
- "call " ASMPREFIX "X86CompilationCallback2\n"
+ "call " ASMPREFIX "X86CompilationCallback2" ASMSUFFIX "\n"
"movl %ebp, %esp\n" // Restore ESP
CFI(".cfi_def_cfa_register %esp\n")
"subl $12, %esp\n"
@@ -240,7 +242,7 @@
"movl 4(%ebp), %eax\n" // Pass prev frame and return address
"movl %eax, 4(%esp)\n"
"movl %ebp, (%esp)\n"
- "call " ASMPREFIX "X86CompilationCallback2\n"
+ "call " ASMPREFIX "X86CompilationCallback2" ASMSUFFIX "\n"
"addl $16, %esp\n"
"movaps 48(%esp), %xmm3\n"
CFI(".cfi_restore %xmm3\n")
-------------- next part --------------
--- debian/llvm-2.3/debian/rules 2008-11-17 10:32:13.000000000 +0000
+++ llvm-2.3/debian/rules 2008-11-17 10:32:48.000000000 +0000
@@ -42,7 +42,7 @@
confargs_gcc := $(confargs)
confargs_llvm += \
- --prefix=$(PF)
+ --prefix=$(PF) --enable-pic --with-pic
confargs_gcc += \
--prefix=$(PF)/gcc-$(gcc_version) \
More information about the Pkg-llvm-team
mailing list