Diff
Modified: trunk/LayoutTests/ChangeLog (281834 => 281835)
--- trunk/LayoutTests/ChangeLog 2021-09-01 00:19:13 UTC (rev 281834)
+++ trunk/LayoutTests/ChangeLog 2021-09-01 00:27:26 UTC (rev 281835)
@@ -1,3 +1,13 @@
+2021-08-31 Yusuke Suzuki <[email protected]>
+
+ [JSC] Enable Object.hasOwn
+ https://bugs.webkit.org/show_bug.cgi?id=229730
+
+ Reviewed by Saam Barati.
+
+ * js/Object-getOwnPropertyNames-expected.txt:
+ * js/script-tests/Object-getOwnPropertyNames.js:
+
2021-08-31 Ayumi Kojima <[email protected]>
[ Monterey GuardMalloc ] accessibility/* tests are timing out.
Modified: trunk/LayoutTests/js/Object-getOwnPropertyNames-expected.txt (281834 => 281835)
--- trunk/LayoutTests/js/Object-getOwnPropertyNames-expected.txt 2021-09-01 00:19:13 UTC (rev 281834)
+++ trunk/LayoutTests/js/Object-getOwnPropertyNames-expected.txt 2021-09-01 00:27:26 UTC (rev 281835)
@@ -42,7 +42,7 @@
PASS getSortedOwnPropertyNames(decodeURIComponent) is ['length', 'name']
PASS getSortedOwnPropertyNames(encodeURI) is ['length', 'name']
PASS getSortedOwnPropertyNames(encodeURIComponent) is ['length', 'name']
-PASS getSortedOwnPropertyNames(Object) is ['assign', 'create', 'defineProperties', 'defineProperty', 'entries', 'freeze', 'fromEntries', 'getOwnPropertyDescriptor', 'getOwnPropertyDescriptors', 'getOwnPropertyNames', 'getOwnPropertySymbols', 'getPrototypeOf', 'is', 'isExtensible', 'isFrozen', 'isSealed', 'keys', 'length', 'name', 'preventExtensions', 'prototype', 'seal', 'setPrototypeOf', 'values']
+PASS getSortedOwnPropertyNames(Object) is ['assign', 'create', 'defineProperties', 'defineProperty', 'entries', 'freeze', 'fromEntries', 'getOwnPropertyDescriptor', 'getOwnPropertyDescriptors', 'getOwnPropertyNames', 'getOwnPropertySymbols', 'getPrototypeOf', 'hasOwn', 'is', 'isExtensible', 'isFrozen', 'isSealed', 'keys', 'length', 'name', 'preventExtensions', 'prototype', 'seal', 'setPrototypeOf', 'values']
PASS getSortedOwnPropertyNames(Object.prototype) is ['__defineGetter__', '__defineSetter__', '__lookupGetter__', '__lookupSetter__', '__proto__', 'constructor', 'hasOwnProperty', 'isPrototypeOf', 'propertyIsEnumerable', 'toLocaleString', 'toString', 'valueOf']
PASS getSortedOwnPropertyNames(Function) is ['length', 'name', 'prototype']
PASS getSortedOwnPropertyNames(Function.prototype) is ['apply', 'arguments', 'bind', 'call', 'caller', 'constructor', 'length', 'name', 'toString']
Modified: trunk/LayoutTests/js/script-tests/Object-getOwnPropertyNames.js (281834 => 281835)
--- trunk/LayoutTests/js/script-tests/Object-getOwnPropertyNames.js 2021-09-01 00:19:13 UTC (rev 281834)
+++ trunk/LayoutTests/js/script-tests/Object-getOwnPropertyNames.js 2021-09-01 00:27:26 UTC (rev 281835)
@@ -51,7 +51,7 @@
"encodeURI": "['length', 'name']",
"encodeURIComponent": "['length', 'name']",
// Built-in ECMA objects
- "Object": "['assign', 'create', 'defineProperties', 'defineProperty', 'entries', 'freeze', 'fromEntries', 'getOwnPropertyDescriptor', 'getOwnPropertyDescriptors', 'getOwnPropertyNames', 'getOwnPropertySymbols', 'getPrototypeOf', 'is', 'isExtensible', 'isFrozen', 'isSealed', 'keys', 'length', 'name', 'preventExtensions', 'prototype', 'seal', 'setPrototypeOf', 'values']",
+ "Object": "['assign', 'create', 'defineProperties', 'defineProperty', 'entries', 'freeze', 'fromEntries', 'getOwnPropertyDescriptor', 'getOwnPropertyDescriptors', 'getOwnPropertyNames', 'getOwnPropertySymbols', 'getPrototypeOf', 'hasOwn', 'is', 'isExtensible', 'isFrozen', 'isSealed', 'keys', 'length', 'name', 'preventExtensions', 'prototype', 'seal', 'setPrototypeOf', 'values']",
"Object.prototype": "['__defineGetter__', '__defineSetter__', '__lookupGetter__', '__lookupSetter__', '__proto__', 'constructor', 'hasOwnProperty', 'isPrototypeOf', 'propertyIsEnumerable', 'toLocaleString', 'toString', 'valueOf']",
"Function": "['length', 'name', 'prototype']",
"Function.prototype": "['apply', 'arguments', 'bind', 'call', 'caller', 'constructor', 'length', 'name', 'toString']",
Modified: trunk/Source/_javascript_Core/ChangeLog (281834 => 281835)
--- trunk/Source/_javascript_Core/ChangeLog 2021-09-01 00:19:13 UTC (rev 281834)
+++ trunk/Source/_javascript_Core/ChangeLog 2021-09-01 00:27:26 UTC (rev 281835)
@@ -1,3 +1,14 @@
+2021-08-31 Yusuke Suzuki <[email protected]>
+
+ [JSC] Enable Object.hasOwn
+ https://bugs.webkit.org/show_bug.cgi?id=229730
+
+ Reviewed by Saam Barati.
+
+ Enable Object.hasOwn implementation. And cleaning up feature flag list.
+
+ * runtime/OptionsList.h:
+
2021-08-31 Saam Barati <[email protected]>
Baseline JIT's in_by_val and emitHasPrivate should load the property before branching on if the base is a cell
Modified: trunk/Source/_javascript_Core/runtime/OptionsList.h (281834 => 281835)
--- trunk/Source/_javascript_Core/runtime/OptionsList.h 2021-09-01 00:19:13 UTC (rev 281834)
+++ trunk/Source/_javascript_Core/runtime/OptionsList.h 2021-09-01 00:27:26 UTC (rev 281835)
@@ -528,21 +528,21 @@
v(Bool, useJITCage, canUseJITCage(), Normal, nullptr) \
v(Bool, dumpBaselineJITSizeStatistics, false, Normal, nullptr) \
v(Bool, dumpDFGJITSizeStatistics, false, Normal, nullptr) \
+ v(Bool, verboseExecutablePoolAllocation, false, Normal, nullptr) \
+ v(Bool, useDataIC, false, Normal, nullptr) \
+ v(Bool, useDataICInOptimizingJIT, false, Normal, nullptr) \
+ v(Bool, useDataICSharing, false, Normal, nullptr) \
\
/* Feature Flags */\
\
- v(Bool, useWebAssemblyTypedFunctionReferences, false, Normal, "Allow function types from the wasm typed function references spec.") \
- v(Bool, useWebAssemblyThreading, true, Normal, "Allow instructions from the wasm threading spec.") \
+ v(Bool, useArrayFindLastMethod, true, Normal, "Expose the findLast() and findLastIndex() methods on Array and %TypedArray%.") \
v(Bool, useAtMethod, true, Normal, "Expose the at() method on Array, %TypedArray%, and String.") \
+ v(Bool, useHasOwn, true, Normal, "Expose the Object.hasOwn method") \
+ v(Bool, useIntlEnumeration, true, Normal, "Expose the Intl enumeration APIs.") \
v(Bool, useSharedArrayBuffer, false, Normal, nullptr) \
- v(Bool, verboseExecutablePoolAllocation, false, Normal, nullptr) \
- v(Bool, useDataIC, false, Normal, nullptr) \
- v(Bool, useDataICInOptimizingJIT, false, Normal, nullptr) \
- v(Bool, useDataICSharing, false, Normal, nullptr) \
v(Bool, useTemporal, false, Normal, "Expose the Temporal object.") \
- v(Bool, useArrayFindLastMethod, true, Normal, "Expose the findLast() and findLastIndex() methods on Array and %TypedArray%.") \
- v(Bool, useIntlEnumeration, true, Normal, "Expose the Intl enumeration APIs.") \
- v(Bool, useHasOwn, false, Normal, "Expose the Object.hasOwn method") \
+ v(Bool, useWebAssemblyThreading, true, Normal, "Allow instructions from the wasm threading spec.") \
+ v(Bool, useWebAssemblyTypedFunctionReferences, false, Normal, "Allow function types from the wasm typed function references spec.") \
enum OptionEquivalence {