summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernard Cafarelli <voyageur@gentoo.org>2012-04-13 10:52:10 +0000
committerBernard Cafarelli <voyageur@gentoo.org>2012-04-13 10:52:10 +0000
commit8831d46e80f74be7fa4f6d2dc646c24764860957 (patch)
tree7880ed3f11a66b8457879daa2e855c40226f6787 /sys-devel
parentAllow darcs 2.5.2-r2 to build with mtl-2.1 (diff)
downloadgentoo-2-8831d46e80f74be7fa4f6d2dc646c24764860957.tar.gz
gentoo-2-8831d46e80f74be7fa4f6d2dc646c24764860957.tar.bz2
gentoo-2-8831d46e80f74be7fa4f6d2dc646c24764860957.zip
Fix TEXTREL on ppc, patch by and thanks to Kimura Masaru <hiyuh.root@gmail.com> in bug #403519
(Portage version: 2.2.0_alpha100/cvs/Linux x86_64)
Diffstat (limited to 'sys-devel')
-rw-r--r--sys-devel/llvm/ChangeLog7
-rw-r--r--sys-devel/llvm/files/llvm-3.0-PPCCompilationCallbackC_static.patch27
-rw-r--r--sys-devel/llvm/llvm-3.0-r2.ebuild3
3 files changed, 35 insertions, 2 deletions
diff --git a/sys-devel/llvm/ChangeLog b/sys-devel/llvm/ChangeLog
index e97df64053ae..553d8d22c7e1 100644
--- a/sys-devel/llvm/ChangeLog
+++ b/sys-devel/llvm/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for sys-devel/llvm
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/ChangeLog,v 1.65 2012/03/27 08:06:03 voyageur Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/ChangeLog,v 1.66 2012/04/13 10:52:10 voyageur Exp $
+
+ 13 Apr 2012; Bernard Cafarelli <voyageur@gentoo.org> llvm-3.0-r2.ebuild,
+ +files/llvm-3.0-PPCCompilationCallbackC_static.patch:
+ Fix TEXTREL on ppc, patch by and thanks to Kimura Masaru
+ <hiyuh.root@gmail.com> in bug #403519
*llvm-3.0-r2 (27 Mar 2012)
diff --git a/sys-devel/llvm/files/llvm-3.0-PPCCompilationCallbackC_static.patch b/sys-devel/llvm/files/llvm-3.0-PPCCompilationCallbackC_static.patch
new file mode 100644
index 000000000000..04e40245c671
--- /dev/null
+++ b/sys-devel/llvm/files/llvm-3.0-PPCCompilationCallbackC_static.patch
@@ -0,0 +1,27 @@
+https://bugs.gentoo.org/show_bug.cgi?id=403519
+http://llvm.org/viewvc/llvm-project?view=rev&revision=153938
+
+--- llvm/trunk/lib/Target/PowerPC/PPCJITInfo.cpp 2011/06/15 15:29:47 133059
++++ llvm/trunk/lib/Target/PowerPC/PPCJITInfo.cpp 2012/04/03 06:59:28 153938
+@@ -291,9 +291,10 @@
+ }
+ #endif
+
+-extern "C" void *PPCCompilationCallbackC(unsigned *StubCallAddrPlus4,
+- unsigned *OrigCallAddrPlus4,
+- bool is64Bit) {
++extern "C" {
++static void* LLVM_ATTRIBUTE_USED PPCCompilationCallbackC(unsigned *StubCallAddrPlus4,
++ unsigned *OrigCallAddrPlus4,
++ bool is64Bit) {
+ // Adjust the pointer to the address of the call instruction in the stub
+ // emitted by emitFunctionStub, rather than the instruction after it.
+ unsigned *StubCallAddr = StubCallAddrPlus4 - 1;
+@@ -337,6 +338,7 @@
+ // stack after we restore all regs.
+ return Target;
+ }
++}
+
+
+
diff --git a/sys-devel/llvm/llvm-3.0-r2.ebuild b/sys-devel/llvm/llvm-3.0-r2.ebuild
index 4af0b33980c7..86e940e520c9 100644
--- a/sys-devel/llvm/llvm-3.0-r2.ebuild
+++ b/sys-devel/llvm/llvm-3.0-r2.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/llvm-3.0-r2.ebuild,v 1.1 2012/03/27 08:06:03 voyageur Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/llvm-3.0-r2.ebuild,v 1.2 2012/04/13 10:52:10 voyageur Exp $
EAPI="3"
PYTHON_DEPEND="2"
@@ -94,6 +94,7 @@ src_prepare() {
epatch "${FILESDIR}"/${PN}-2.9-nodoctargz.patch
epatch "${FILESDIR}"/${P}-ocaml_install.patch
epatch "${FILESDIR}"/${P}-PPC_macro.patch
+ epatch "${FILESDIR}"/${P}-PPCCompilationCallbackC_static.patch
epatch "${FILESDIR}"/${P}-gold_LTO_link.patch
epatch "${FILESDIR}"/${P}-set_soname.patch
}