From 1572edd570c6b78c89f539ff76fd0f5ee1e7da6e Mon Sep 17 00:00:00 2001 From: test262-automation Date: Fri, 30 Nov 2018 19:08:46 +0000 Subject: [PATCH] [javascriptcore-test262-automation] Updated curation log with latest revision sha's from export and changed files. sourceRevisionAtLastExport: e7f9d46220 targetRevisionAtLastExport: 0210918f1e --- .../curation_logs/javascriptcore.json | 4 +-- .../stress/big-int-bitwise-xor-jit.js | 25 ++++++++++++++++++ .../big-int-bitwise-xor-memory-stress.js | 14 ++++++++++ .../stress/big-int-bitwise-xor-untyped.js | 26 +++++++++++++++++++ 4 files changed, 67 insertions(+), 2 deletions(-) create mode 100644 implementation-contributed/javascriptcore/stress/big-int-bitwise-xor-jit.js create mode 100644 implementation-contributed/javascriptcore/stress/big-int-bitwise-xor-memory-stress.js create mode 100644 implementation-contributed/javascriptcore/stress/big-int-bitwise-xor-untyped.js diff --git a/implementation-contributed/curation_logs/javascriptcore.json b/implementation-contributed/curation_logs/javascriptcore.json index 76fda8a3c6..89a1559e81 100644 --- a/implementation-contributed/curation_logs/javascriptcore.json +++ b/implementation-contributed/curation_logs/javascriptcore.json @@ -1,6 +1,6 @@ { - "sourceRevisionAtLastExport": "e7f9d46220", - "targetRevisionAtLastExport": "0210918f1e", + "sourceRevisionAtLastExport": "60ed1be8cd", + "targetRevisionAtLastExport": "31e654a339", "curatedFiles": { "/stress/Number-isNaN-basics.js": "DELETED_IN_TARGET", "/stress/Object_static_methods_Object.getOwnPropertyDescriptors-proxy.js": "DELETED_IN_TARGET", diff --git a/implementation-contributed/javascriptcore/stress/big-int-bitwise-xor-jit.js b/implementation-contributed/javascriptcore/stress/big-int-bitwise-xor-jit.js new file mode 100644 index 0000000000..3c3934b77c --- /dev/null +++ b/implementation-contributed/javascriptcore/stress/big-int-bitwise-xor-jit.js @@ -0,0 +1,25 @@ +//@ runBigIntEnabled + +let assert = { + sameValue: function(i, e) { + if (i !== e) + throw new Error(m); + } +} + +function bigIntBitXor(a, b) { + return (a ^ b) ^ (a ^ 0b11n); + +} +noInline(bigIntBitXor); + +for (let i = 0; i < 10000; i++) { + let r = bigIntBitXor(0b11n, 0b1010n); + assert.sameValue(r, 0b1001n); +} + +for (let i = 0; i < 10000; i++) { + let r = bigIntBitXor(0xfffafafaf19281fefafeafebcn, 0b1010n); + assert.sameValue(r, 0b1001n); +} + diff --git a/implementation-contributed/javascriptcore/stress/big-int-bitwise-xor-memory-stress.js b/implementation-contributed/javascriptcore/stress/big-int-bitwise-xor-memory-stress.js new file mode 100644 index 0000000000..636ad2716a --- /dev/null +++ b/implementation-contributed/javascriptcore/stress/big-int-bitwise-xor-memory-stress.js @@ -0,0 +1,14 @@ +//@ runBigIntEnabled + +function assert(a) { + if (!a) + throw new Error("Bad assertion"); +} + +let a = 0b11n; +for (let i = 0; i < 1000000; i++) { + a ^= 0b01n; +} + +assert(a === 0b11n); + diff --git a/implementation-contributed/javascriptcore/stress/big-int-bitwise-xor-untyped.js b/implementation-contributed/javascriptcore/stress/big-int-bitwise-xor-untyped.js new file mode 100644 index 0000000000..934e099be7 --- /dev/null +++ b/implementation-contributed/javascriptcore/stress/big-int-bitwise-xor-untyped.js @@ -0,0 +1,26 @@ +//@ runBigIntEnabled + +function assert(v, e) { + if (v !== e) + throw new Error("Expected value: " + e + " but got: " + v) +} + +function bigIntOperations(a, b) { + let c = a ^ b; + return a ^ c; +} +noInline(bigIntOperations); + +c = 0; +let o = { valueOf: function () { + c++; + return 0b1111n; +}}; + +for (let i = 0; i < 100000; i++) { + let out = bigIntOperations(o, 0b1010n); + assert(out, 0b1010n); +} + +assert(c, 200000); +