dev-lang/spidermonkey: Fix for CONFIG_ARM64_VA_BITS_48

Fixes runtime errors like these on arm64:

  polkitd[2760]: unhandled level 1 translation fault (11) at 0x7fff8c304108, esr 0x90000005

Signed-off-by: Geoff Levand <geoff@infradead.org>
This commit is contained in:
Geoff Levand 2016-07-07 16:21:25 -07:00
parent 44f8558976
commit b6d11b2fab
2 changed files with 24 additions and 0 deletions

View File

@ -0,0 +1,21 @@
Fix for CONFIG_ARM64_VA_BITS_48=y
https://bugzilla.redhat.com/show_bug.cgi?id=1242326
--- a/js/src/jsval.h.old
+++ b/js/src/jsval.h
@@ -236,8 +236,14 @@
#elif JS_BITS_PER_WORD == 64
+#if defined(__aarch64__)
+#define JSVAL_PAYLOAD_MASK 0x0000FFFFFFFFFFFFLL
+#define JSVAL_TAG_MASK 0xFFFF000000000000LL
+#else
#define JSVAL_PAYLOAD_MASK 0x00007FFFFFFFFFFFLL
#define JSVAL_TAG_MASK 0xFFFF800000000000LL
+#endif
+
#define JSVAL_TYPE_TO_TAG(type) ((JSValueTag)(JSVAL_TAG_MAX_DOUBLE | (type)))
#define JSVAL_TYPE_TO_SHIFTED_TAG(type) (((uint64)JSVAL_TYPE_TO_TAG(type)) << JSVAL_TAG_SHIFT)

View File

@ -60,6 +60,9 @@ src_prepare() {
epatch "${FILESDIR}"/${PN}-perl-defined-array-check.patch
# fix builds for alternate $ROOT locations
epatch "${FILESDIR}"/${P}-no-link-lib-deps.patch
# Fix for CONFIG_ARM64_VA_BITS_48=y
# https://bugzilla.redhat.com/show_bug.cgi?id=1242326
epatch "${FILESDIR}/${P}-fix-arm64-va-48.patch"
epatch_user