Diff
Modified: trunk/ChangeLog (286059 => 286060)
--- trunk/ChangeLog 2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/ChangeLog 2021-11-19 15:01:50 UTC (rev 286060)
@@ -1,3 +1,16 @@
+2021-11-19 Angelos Oikonomopoulos <ange...@igalia.com>
+
+ [JSC] Workaround for failing mips tests
+ https://bugs.webkit.org/show_bug.cgi?id=233359
+
+ Reviewed by Adrian Perez de Castro.
+
+ Add a compiler flag on GCC+mips to work around a code generation bug
+ resulting in SIGBUS. This only manifests when running 32-bit mips code
+ on mips64 hardware (which the buildbots do).
+
+ * Source/cmake/WebKitCompilerFlags.cmake:
+
2021-11-18 Yoshiaki Jitsukawa <yoshiaki.jitsuk...@sony.com>
Implement JPEG XL image decoder using libjxl
Modified: trunk/JSTests/ChangeLog (286059 => 286060)
--- trunk/JSTests/ChangeLog 2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/JSTests/ChangeLog 2021-11-19 15:01:50 UTC (rev 286060)
@@ -1,3 +1,19 @@
+2021-11-19 Angelos Oikonomopoulos <ange...@igalia.com>
+
+ [JSC] Workaround for failing mips tests
+ https://bugs.webkit.org/show_bug.cgi?id=233359
+
+ Reviewed by Adrian Perez de Castro.
+
+ Re-enable tests skipped on mips after adding workaround.
+
+ * stress/call-varargs-double-new-array-buffer.js:
+ * stress/callee-save-fpr.js:
+ * stress/forward-varargs-double-new-array-buffer.js:
+ * stress/new-array-with-spread-cow-double.js:
+ * stress/new-array-with-spread-double-new-array-buffer.js:
+ * stress/spread-escapes-but-new-array-buffer-does-not-double.js:
+
2021-11-17 Yusuke Suzuki <ysuz...@apple.com>
[JSC] TypedArray GetArrayLength should not use Reuse
Modified: trunk/JSTests/stress/call-varargs-double-new-array-buffer.js (286059 => 286060)
--- trunk/JSTests/stress/call-varargs-double-new-array-buffer.js 2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/JSTests/stress/call-varargs-double-new-array-buffer.js 2021-11-19 15:01:50 UTC (rev 286060)
@@ -1,4 +1,3 @@
-//@ skip if ["mips"].include?($architecture)
function assert(b, m = "") {
if (!b)
throw new Error("Bad assert: " + m);
Modified: trunk/JSTests/stress/callee-save-fpr.js (286059 => 286060)
--- trunk/JSTests/stress/callee-save-fpr.js 2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/JSTests/stress/callee-save-fpr.js 2021-11-19 15:01:50 UTC (rev 286060)
@@ -1,4 +1,3 @@
-//@ skip if ["mips"].include?($architecture)
'use strict';
function _f(a1, a2, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) {
Modified: trunk/JSTests/stress/forward-varargs-double-new-array-buffer.js (286059 => 286060)
--- trunk/JSTests/stress/forward-varargs-double-new-array-buffer.js 2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/JSTests/stress/forward-varargs-double-new-array-buffer.js 2021-11-19 15:01:50 UTC (rev 286060)
@@ -1,4 +1,3 @@
-//@ skip if ["mips"].include?($architecture)
"use strict";
function assert(b, m="") {
Modified: trunk/JSTests/stress/new-array-with-spread-cow-double.js (286059 => 286060)
--- trunk/JSTests/stress/new-array-with-spread-cow-double.js 2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/JSTests/stress/new-array-with-spread-cow-double.js 2021-11-19 15:01:50 UTC (rev 286060)
@@ -1,4 +1,3 @@
-//@ skip if ["mips"].include?($architecture)
function shouldBe(actual, expected) {
if (actual !== expected)
throw new Error('bad value: ' + actual);
Modified: trunk/JSTests/stress/new-array-with-spread-double-new-array-buffer.js (286059 => 286060)
--- trunk/JSTests/stress/new-array-with-spread-double-new-array-buffer.js 2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/JSTests/stress/new-array-with-spread-double-new-array-buffer.js 2021-11-19 15:01:50 UTC (rev 286060)
@@ -1,4 +1,3 @@
-//@ skip if ["mips"].include?($architecture)
function shouldBe(actual, expected)
{
if (actual !== expected)
Modified: trunk/JSTests/stress/spread-escapes-but-new-array-buffer-does-not-double.js (286059 => 286060)
--- trunk/JSTests/stress/spread-escapes-but-new-array-buffer-does-not-double.js 2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/JSTests/stress/spread-escapes-but-new-array-buffer-does-not-double.js 2021-11-19 15:01:50 UTC (rev 286060)
@@ -1,4 +1,3 @@
-//@ skip if ["mips"].include?($architecture)
function assert(b) {
if (!b)
throw new Error;
Modified: trunk/PerformanceTests/ARES-6/Basic/basic-tests.yaml (286059 => 286060)
--- trunk/PerformanceTests/ARES-6/Basic/basic-tests.yaml 2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/PerformanceTests/ARES-6/Basic/basic-tests.yaml 2021-11-19 15:01:50 UTC (rev 286060)
@@ -24,10 +24,5 @@
- path: .
tests:
- stress-test.js
- cmd: |
- if ["mips"].include?($architecture)
- skip
- else
- defaultRunNoisyTest unless parseRunCommands
- end
+ cmd: defaultRunNoisyTest unless parseRunCommands
Modified: trunk/PerformanceTests/ChangeLog (286059 => 286060)
--- trunk/PerformanceTests/ChangeLog 2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/PerformanceTests/ChangeLog 2021-11-19 15:01:50 UTC (rev 286060)
@@ -1,3 +1,14 @@
+2021-11-19 Angelos Oikonomopoulos <ange...@igalia.com>
+
+ [JSC] Workaround for failing mips tests
+ https://bugs.webkit.org/show_bug.cgi?id=233359
+
+ Reviewed by Adrian Perez de Castro.
+
+ Re-enable tests skipped on mips after adding workaround.
+
+ * ARES-6/Basic/basic-tests.yaml:
+
2021-11-15 Angelos Oikonomopoulos <ange...@igalia.com>
Skip tests newly-failing on mips
Modified: trunk/Source/cmake/WebKitCompilerFlags.cmake (286059 => 286060)
--- trunk/Source/cmake/WebKitCompilerFlags.cmake 2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/Source/cmake/WebKitCompilerFlags.cmake 2021-11-19 15:01:50 UTC (rev 286060)
@@ -326,3 +326,11 @@
endif ()
unset(CMAKE_REQUIRED_FLAGS)
endif ()
+
+if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND WTF_CPU_MIPS)
+ # Work around https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78176.
+ # This only manifests when executing 32-bit code on a 64-bit
+ # processor. This is a workaround and does not cover all cases
+ # (see comment #28 in the link above).
+ WEBKIT_PREPEND_GLOBAL_COMPILER_FLAGS(-mno-lxc1-sxc1)
+endif ()