aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Stakenvicius <axs@gentoo.org>2014-05-06 14:05:11 -0400
committerIan Stakenvicius <axs@gentoo.org>2014-05-06 14:05:11 -0400
commit705a6221b13ea69a355dcfe8b860fb417c3bd1e0 (patch)
tree091a30e4e94d12d24540e5d1919a9fcd1a427e52 /dev-lang
parentseamonkey: added compile fix with USE="system-cairo" (diff)
downloadmozilla-705a6221b13ea69a355dcfe8b860fb417c3bd1e0.tar.gz
mozilla-705a6221b13ea69a355dcfe8b860fb417c3bd1e0.tar.bz2
mozilla-705a6221b13ea69a355dcfe8b860fb417c3bd1e0.zip
fix hppa bug 497900
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/spidermonkey/files/spidermonkey-24-upward-growing-stack.patch41
-rw-r--r--dev-lang/spidermonkey/spidermonkey-24.2.0-r1.ebuild1
2 files changed, 42 insertions, 0 deletions
diff --git a/dev-lang/spidermonkey/files/spidermonkey-24-upward-growing-stack.patch b/dev-lang/spidermonkey/files/spidermonkey-24-upward-growing-stack.patch
new file mode 100644
index 00000000..70963627
--- /dev/null
+++ b/dev-lang/spidermonkey/files/spidermonkey-24-upward-growing-stack.patch
@@ -0,0 +1,41 @@
+diff -Naur mozjs-24.2.0/js/src/gc/RootMarking.cpp mozjs-24.2.0.new/js/src/gc/RootMarking.cpp
+--- mozjs-24.2.0/js/src/gc/RootMarking.cpp 2013-10-29 16:40:26.000000000 -0400
++++ mozjs-24.2.0.new/js/src/gc/RootMarking.cpp 2014-05-05 16:16:15.570098309 -0400
+@@ -320,7 +320,7 @@
+
+ uintptr_t *stackMin, *stackEnd;
+ #if JS_STACK_GROWTH_DIRECTION > 0
+- stackMin = rt->nativeStackBase;
++ stackMin = reinterpret_cast<uintptr_t *>(rt->nativeStackBase);
+ stackEnd = cgcd->nativeStackTop;
+ #else
+ stackMin = cgcd->nativeStackTop + 1;
+diff -Naur mozjs-24.2.0/js/src/jsapi.cpp mozjs-24.2.0.new/js/src/jsapi.cpp
+--- mozjs-24.2.0/js/src/jsapi.cpp 2013-12-06 17:52:35.000000000 -0500
++++ mozjs-24.2.0.new/js/src/jsapi.cpp 2014-05-05 16:17:01.330099145 -0400
+@@ -863,10 +863,6 @@
+
+ PodZero(&debugHooks);
+ PodZero(&atomState);
+-
+-#if JS_STACK_GROWTH_DIRECTION > 0
+- nativeStackLimit = UINTPTR_MAX;
+-#endif
+ }
+
+ bool
+diff -Naur mozjs-24.2.0/js/src/jsfriendapi.cpp mozjs-24.2.0.new/js/src/jsfriendapi.cpp
+--- mozjs-24.2.0/js/src/jsfriendapi.cpp 2013-10-29 16:40:20.000000000 -0400
++++ mozjs-24.2.0.new/js/src/jsfriendapi.cpp 2014-05-05 16:18:30.350100769 -0400
+@@ -32,7 +32,11 @@
+ PerThreadDataFriendFields::RuntimeMainThreadOffset);
+
+ PerThreadDataFriendFields::PerThreadDataFriendFields()
++#if JS_STACK_GROWTH_DIRECTION > 0
++ : nativeStackLimit(UINTPTR_MAX)
++#else
+ : nativeStackLimit(0)
++#endif
+ {
+ #if defined(JSGC_ROOT_ANALYSIS) || defined(JSGC_USE_EXACT_ROOTING)
+ PodArrayZero(thingGCRooters);
diff --git a/dev-lang/spidermonkey/spidermonkey-24.2.0-r1.ebuild b/dev-lang/spidermonkey/spidermonkey-24.2.0-r1.ebuild
index 3fe37dd3..7a9be92e 100644
--- a/dev-lang/spidermonkey/spidermonkey-24.2.0-r1.ebuild
+++ b/dev-lang/spidermonkey/spidermonkey-24.2.0-r1.ebuild
@@ -43,6 +43,7 @@ pkg_setup(){
src_prepare() {
epatch "${FILESDIR}"/${PN}-${SLOT}-system-icu.patch
epatch "${FILESDIR}"/${PN}-24.2.0-fix-file-permissions.patch
+ epatch "${FILESDIR}"/${PN}-${SLOT}-upward-growing-stack.patch
epatch_user
if [[ ${CHOST} == *-freebsd* ]]; then