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