commit:     384241bd020004027ead51783278621f27e2036e
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 21 11:00:08 2020 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Mon Sep 21 11:00:08 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=384241bd

dev-lang/spidermonkey: restore missing patches for 1.x

Fixes: 5c80805 ("dev-lang/spidermonkey: drop old")
Closes: https://bugs.gentoo.org/743886
Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 .../files/spidermonkey-1.8.5-LTO.patch             | 58 ++++++++++++++++++++++
 .../spidermonkey-perl-defined-array-check.patch    | 11 ++++
 2 files changed, 69 insertions(+)

diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-LTO.patch 
b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-LTO.patch
new file mode 100644
index 00000000000..7c36b5525b0
--- /dev/null
+++ b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-LTO.patch
@@ -0,0 +1,58 @@
+From 6ff7ad09daf98e5b804cf73c066c382a76e74e8c Mon Sep 17 00:00:00 2001
+From: Alexander Miller <[email protected]>
+Date: Wed, 12 Jun 2019 00:29:23 -0500
+Subject: [PATCH] Fix breakage with lto builds
+
+<artificial>:(.text+0x7a): undefined reference to `PopActiveVMFrame'
+collect2: error: ld returned 1 exit status
+
+Signed-off-by: Alexander Miller <[email protected]>
+---
+ js/src/methodjit/InvokeHelpers.cpp | 2 +-
+ js/src/methodjit/MethodJIT.cpp     | 6 +++---
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/js/src/methodjit/InvokeHelpers.cpp 
b/js/src/methodjit/InvokeHelpers.cpp
+index d017c2a..abde396 100644
+--- a/js/src/methodjit/InvokeHelpers.cpp
++++ b/js/src/methodjit/InvokeHelpers.cpp
+@@ -500,7 +500,7 @@ stubs::PutActivationObjects(VMFrame &f)
+     js::PutActivationObjects(f.cx, f.fp());
+ }
+ 
+-extern "C" void *
++extern "C" void * __attribute__((used))
+ js_InternalThrow(VMFrame &f)
+ {
+     JSContext *cx = f.cx;
+diff --git a/js/src/methodjit/MethodJIT.cpp b/js/src/methodjit/MethodJIT.cpp
+index 4feefbc..66099e6 100644
+--- a/js/src/methodjit/MethodJIT.cpp
++++ b/js/src/methodjit/MethodJIT.cpp
+@@ -120,20 +120,20 @@ static uint32 StubCallsForOp[STUB_CALLS_FOR_OP_COUNT];
+ 
+ extern "C" void JaegerTrampolineReturn();
+ 
+-extern "C" void JS_FASTCALL
++extern "C" void JS_FASTCALL __attribute__((used))
+ PushActiveVMFrame(VMFrame &f)
+ {
+     f.entryfp->script()->compartment->jaegerCompartment->pushActiveFrame(&f);
+     f.regs.fp->setNativeReturnAddress(JS_FUNC_TO_DATA_PTR(void*, 
JaegerTrampolineReturn));
+ }
+ 
+-extern "C" void JS_FASTCALL
++extern "C" void JS_FASTCALL __attribute__((used))
+ PopActiveVMFrame(VMFrame &f)
+ {
+     f.entryfp->script()->compartment->jaegerCompartment->popActiveFrame();
+ }
+ 
+-extern "C" void JS_FASTCALL
++extern "C" void JS_FASTCALL __attribute__((used))
+ SetVMFrameRegs(VMFrame &f)
+ {
+     f.cx->setCurrentRegs(&f.regs);
+-- 
+2.22.0
+

diff --git 
a/dev-lang/spidermonkey/files/spidermonkey-perl-defined-array-check.patch 
b/dev-lang/spidermonkey/files/spidermonkey-perl-defined-array-check.patch
new file mode 100644
index 00000000000..c3996ae82bb
--- /dev/null
+++ b/dev-lang/spidermonkey/files/spidermonkey-perl-defined-array-check.patch
@@ -0,0 +1,11 @@
+--- a/js/src/config/milestone.pl       2013-02-11 17:33:22.000000000 -0500
++++ b/js/src/config/milestone.pl       2015-07-15 10:44:31.676153600 -0400
+@@ -55,7 +55,7 @@
+ #
+ my $milestone = Moz::Milestone::getOfficialMilestone($MILESTONE_FILE);
+ 
+-if (defined(@TEMPLATE_FILE)) {
++if (@TEMPLATE_FILE) {
+   my $TFILE;
+ 
+   foreach $TFILE (@TEMPLATE_FILE) {

Reply via email to