pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/lang/spidermonkey17 spidermonkey17: don't reject MIPS ...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/6f252a1fa177
branches:  trunk
changeset: 353319:6f252a1fa177
user:      maya <maya%pkgsrc.org@localhost>
date:      Mon Oct 03 02:46:47 2016 +0000

description:
spidermonkey17: don't reject MIPS ABIs that aren't n32.
switch the use of nops (most likely used to eliminate hazards too) to
ehb/ssnop. nop doesn't eliminate hazards on a superscalar MIPS CPU.

probably helps the report of vague problems on loongson2f.

diffstat:

 lang/spidermonkey17/distinfo                                                 |   4 +-
 lang/spidermonkey17/patches/patch-js_src_assembler_assembler_MIPSAssembler.h |  19 ++++++++++
 lang/spidermonkey17/patches/patch-js_src_assembler_wtf_Platform.h            |  16 ++++++++
 3 files changed, 38 insertions(+), 1 deletions(-)

diffs (61 lines):

diff -r 0dada6c7a169 -r 6f252a1fa177 lang/spidermonkey17/distinfo
--- a/lang/spidermonkey17/distinfo      Sun Oct 02 23:26:39 2016 +0000
+++ b/lang/spidermonkey17/distinfo      Mon Oct 03 02:46:47 2016 +0000
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.3 2016/09/05 11:43:23 jperkin Exp $
+$NetBSD: distinfo,v 1.4 2016/10/03 02:46:47 maya Exp $
 
 SHA1 (mozjs17.0.0.tar.gz) = 7805174898c34e5d3c3b256117af9944ba825c89
 RMD160 (mozjs17.0.0.tar.gz) = 2fa3a891da2a7a09019f67c1555c03bcdc51e6c5
@@ -8,6 +8,8 @@
 SHA1 (patch-as) = c8e3aa309ae5115a8f4c17d477674f93afead538
 SHA1 (patch-bd) = c8ed2110c8b699d6880723dccf62e6976edfa65e
 SHA1 (patch-bf) = 7d18ec3cad441174a71770e7fa22b1cd2029d55b
+SHA1 (patch-js_src_assembler_assembler_MIPSAssembler.h) = 7912848726ec0e7f6181ec70a20c04bcf3ce4ee2
+SHA1 (patch-js_src_assembler_wtf_Platform.h) = 113b746d572f5660cf371f66b69657f6069bab24
 SHA1 (patch-js_src_config_milestone.pl) = 84dbc588e82ba1a6bcc901abe9b77ba316acac15
 SHA1 (patch-js_src_config_system-headers) = a9c5bc2d2c822eb3bd5e8f4ba43407f89b57c009
 SHA1 (patch-js_src_jscpucfg.h) = a65222bcf99e91cd00d6ad40d6fcedd0c3d67ec9
diff -r 0dada6c7a169 -r 6f252a1fa177 lang/spidermonkey17/patches/patch-js_src_assembler_assembler_MIPSAssembler.h
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/spidermonkey17/patches/patch-js_src_assembler_assembler_MIPSAssembler.h      Mon Oct 03 02:46:47 2016 +0000
@@ -0,0 +1,19 @@
+$NetBSD: patch-js_src_assembler_assembler_MIPSAssembler.h,v 1.1 2016/10/03 02:46:47 maya Exp $
+
+blindly convert all nops to EHB / SSNOP
+nop doesn't eliminate hazards in a superscalar CPU
+
+--- js/src/assembler/assembler/MIPSAssembler.h.orig    2013-02-11 22:33:22.000000000 +0000
++++ js/src/assembler/assembler/MIPSAssembler.h
+@@ -243,7 +243,10 @@ public:
+ 
+     void nop()
+     {
+-        emitInst(0x00000000);
++      /* nop is insufficient for eliminating hazards
++       * in a superscalar CPU. blindly convert all to
++       * MIPSNNR6 ehb / ssnop, at a performance cost. */
++        emitInst(0x000000c0);
+     }
+ 
+     /* Need to insert one load data delay nop for mips1.  */
diff -r 0dada6c7a169 -r 6f252a1fa177 lang/spidermonkey17/patches/patch-js_src_assembler_wtf_Platform.h
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/spidermonkey17/patches/patch-js_src_assembler_wtf_Platform.h Mon Oct 03 02:46:47 2016 +0000
@@ -0,0 +1,16 @@
+$NetBSD: patch-js_src_assembler_wtf_Platform.h,v 1.1 2016/10/03 02:46:47 maya Exp $
+
+don't error out for other MIPS ABIs.
+
+--- js/src/assembler/wtf/Platform.h.orig       2013-02-11 22:33:22.000000000 +0000
++++ js/src/assembler/wtf/Platform.h
+@@ -139,8 +139,7 @@
+ 
+ /* WTF_CPU_MIPS - MIPS 32-bit */
+ /* Note: Only O32 ABI is tested, so we enable it for O32 ABI for now.  */
+-#if (defined(mips) || defined(__mips__) || defined(MIPS) || defined(_MIPS_)) \
+-    && defined(_ABIO32)
++#if (defined(mips) || defined(__mips__) || defined(MIPS) || defined(_MIPS_))
+ #define WTF_CPU_MIPS 1
+ #if defined(__MIPSEB__)
+ #define WTF_CPU_BIG_ENDIAN 1



Home | Main Index | Thread Index | Old Index