v8/test/webkit/fast/js
Mathias Bynens 35b6aa3849 [js] Remove CHECK_OBJECT_COERCIBLE for Array methods
The spec got rid of `CheckObjectCoercible` a while back, and so should
we. This change is not observable in most of the affected cases since
`ToObject` is up near the top of most Array method algorithms. An
example of an observable effect of this change occurs for the following
input:

    Array.prototype.sort.call(null, 1);

Behavior before applying the patch (incorrect message):

    TypeError: Array.prototype.sort called on null or undefined

Expected behavior:

    TypeError: The comparison function must be either a function or
               undefined

This patch removes `CheckObjectCoercible` and adds tests to ensure the
few observable cases are addressed correctly.

The patch also adds a missing `ToObject(this)` to
`Array.prototype.lastIndexOf` which would otherwise become observable
as a result of `CheckObjectCoercible` being removed.

BUG=v8:3577,v8:6921

Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
Change-Id: Ia086095076c4bf4d8d58dab26bc28df02994ed01
Reviewed-on: https://chromium-review.googlesource.com/718577
Reviewed-by: Adam Klein <adamk@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Commit-Queue: Mathias Bynens <mathias@chromium.org>
Cr-Commit-Position: refs/heads/master@{#48800}
2017-10-20 19:29:36 +00:00
..
kde Fix common misspellings 2017-08-02 09:35:28 +00:00
arguments-expected.txt Pass legacy const runtime flag to preparser appropriately 2016-03-18 01:09:17 +00:00
arguments.js Pass legacy const runtime flag to preparser appropriately 2016-03-18 01:09:17 +00:00
array-bad-time-expected.txt Change test expectations for webkit/fast/js/object-slow-put and friends. 2013-11-06 16:38:40 +00:00
array-bad-time.js Change test expectations for webkit/fast/js/object-slow-put and friends. 2013-11-06 16:38:40 +00:00
array-float-delete-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
array-float-delete.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
array-functions-non-arrays-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
array-functions-non-arrays.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
array-prototype-properties-expected.txt [js] Remove CHECK_OBJECT_COERCIBLE for Array methods 2017-10-20 19:29:36 +00:00
array-prototype-properties.js [js] Remove CHECK_OBJECT_COERCIBLE for Array methods 2017-10-20 19:29:36 +00:00
array-slow-put-expected.txt Change test expectations for webkit/fast/js/object-slow-put and friends. 2013-11-06 16:38:40 +00:00
array-slow-put.js Change test expectations for webkit/fast/js/object-slow-put and friends. 2013-11-06 16:38:40 +00:00
array-tostring-ignore-separator-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
array-tostring-ignore-separator.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
basic-strict-mode-expected.txt [runtime] Create only one instance of %ThrowTypeError%. 2017-07-10 08:26:02 +00:00
basic-strict-mode.js Remove the 'caller' property from the strict-mode arguments map 2016-11-04 14:30:29 +00:00
date-big-setmonth-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
date-big-setmonth.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
date-negative-setmonth-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
date-negative-setmonth.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
date-preserve-milliseconds-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
date-preserve-milliseconds.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
date-toisostring-expected.txt Adjust test expectations to new error on method not found 2014-01-31 17:39:59 +00:00
date-toisostring.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
deep-recursion-test-expected.txt Migrate more tests from blink repository. 2013-07-30 06:36:48 +00:00
deep-recursion-test.js [compiler] Make --debug-code the default in debug builds. 2016-12-02 11:36:55 +00:00
end-in-string-escape-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
end-in-string-escape.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
exception-properties-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
exception-properties.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
exception-registerfile-shrink-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
exception-registerfile-shrink.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
excessive-comma-usage-expected.txt [test] Shorten excessive webkit test. 2015-07-28 10:17:29 +00:00
excessive-comma-usage.js [test] Slim down test that exceeds stack limit 2016-04-21 08:37:20 +00:00
function-apply-expected.txt [es6] Correct Function.prototype.apply, Reflect.construct and Reflect.apply. 2015-12-17 08:41:19 +00:00
function-apply.js [es6] Correct Function.prototype.apply, Reflect.construct and Reflect.apply. 2015-12-17 08:41:19 +00:00
function-constructor-error-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
function-constructor-error.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
function-decompilation-operators-expected.txt Migrate more tests from blink repository. 2013-07-30 06:36:48 +00:00
function-decompilation-operators.js Make sure files end with exactly one new line and police this in presubmit. 2013-11-22 13:50:39 +00:00
function-toString-parentheses-expected.txt Ship ES2015 sloppy-mode const semantics 2016-01-11 23:09:59 +00:00
function-toString-parentheses.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
function-toString-semicolon-insertion-expected.txt Adjust whitespace to make tests oblivious to --harmony-function-tostring 2016-07-22 00:18:41 +00:00
function-toString-semicolon-insertion.js Adjust whitespace to make tests oblivious to --harmony-function-tostring 2016-07-22 00:18:41 +00:00
JSON-parse-reviver-expected.txt JSON.parse: properly deal with reviver result 2015-12-10 12:49:06 +00:00
JSON-parse-reviver.js JSON.parse: properly deal with reviver result 2015-12-10 12:49:06 +00:00
modify-non-references-expected.txt Make invalid LHSs that are calls late errors 2014-04-02 11:03:05 +00:00
modify-non-references.js Make invalid LHSs that are calls late errors 2014-04-02 11:03:05 +00:00
native-error-prototype-expected.txt Support intriscDefaultProto for Error functions 2015-12-09 07:53:34 +00:00
native-error-prototype.js Support intriscDefaultProto for Error functions 2015-12-09 07:53:34 +00:00
number-tofixed-expected.txt [builtins] Increase precision limits for toFixed, etc 2017-07-20 13:05:35 +00:00
number-tofixed.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
number-toprecision-expected.txt [builtins] Increase precision limits for toFixed, etc 2017-07-20 13:05:35 +00:00
number-toprecision.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
number-toString-expected.txt Reimplement Number.prototype.toString with non-default radix. 2016-11-24 10:30:46 +00:00
number-toString.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
numeric-escapes-in-string-literals-expected.txt Change error messages for octal escape sequences 2016-12-07 17:26:42 +00:00
numeric-escapes-in-string-literals.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
object-bad-time-expected.txt Change test expectations for webkit/fast/js/object-slow-put and friends. 2013-11-06 16:38:40 +00:00
object-bad-time.js Change test expectations for webkit/fast/js/object-slow-put and friends. 2013-11-06 16:38:40 +00:00
Object-defineProperty-expected.txt Emit better error message about writable properties 2015-10-14 19:22:27 +00:00
Object-defineProperty.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
object-extra-comma-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
object-extra-comma.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
object-prototype-constructor-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
object-prototype-constructor.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
object-prototype-properties-expected.txt Correctify instanceof and make it optimizable. 2015-08-25 04:48:54 +00:00
object-prototype-properties.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
object-prototype-toLocaleString-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
object-prototype-toLocaleString.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
object-slow-put-expected.txt Change test expectations for webkit/fast/js/object-slow-put and friends. 2013-11-06 16:38:40 +00:00
object-slow-put.js Change test expectations for webkit/fast/js/object-slow-put and friends. 2013-11-06 16:38:40 +00:00
parser-syntax-check-expected.txt Enable --harmony-trailing-commas 2017-01-31 23:30:57 +00:00
parser-syntax-check.js Remove FLAG_min_preparse_length. 2016-11-18 14:06:49 +00:00
primitive-property-access-edge-cases-expected.txt Improving error messages when adding properties to non JSObject receiver in 2015-10-09 09:12:47 +00:00
primitive-property-access-edge-cases.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
Promise-already-rejected-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-already-rejected.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-already-resolved-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-already-resolved.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-catch-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-catch.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-chained-then-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-chained-then.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-exception-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-exception.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-init-callback-receiver-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-init-callback-receiver.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-init-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-init.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-onFulfilled-deep-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-onFulfilled-deep.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-onRejected-deep-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-onRejected-deep.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-reject-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-reject.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-resolve-chain-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-resolve-chain.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-resolve-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-resolve-state-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-resolve-state.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-resolve-with-itself-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-resolve-with-itself.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-resolve-with-then-exception-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-resolve-with-then-exception.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-resolve-with-then-fulfill-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-resolve-with-then-fulfill.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-resolve-with-then-reject-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-resolve-with-then-reject.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-resolve.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-simple-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-simple.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-static-all-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-static-all.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-static-cast-expected.txt Remove Promise.cast 2014-03-18 15:03:35 +00:00
Promise-static-cast.js Remove Promise.cast 2014-03-18 15:03:35 +00:00
Promise-static-race-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-static-race.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-static-reject-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-static-reject.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-static-resolve-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-static-resolve.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-then-callback-receiver-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-then-callback-receiver.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-then-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-then-without-callbacks-expected.txt Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-then-without-callbacks.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
Promise-then.js Import Blink layout tests for Promises. 2014-03-10 12:30:47 +00:00
read-modify-eval-expected.txt Improving error messages when adding properties to non JSObject receiver in 2015-10-09 09:12:47 +00:00
read-modify-eval.js Fix common misspellings 2017-08-02 09:35:28 +00:00
regexp-bol-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-bol-with-multiline-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-bol-with-multiline.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-bol.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-extended-characters-crash-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-extended-characters-crash.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-lastindex-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-lastindex.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-look-ahead-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-look-ahead.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-no-extensions-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-no-extensions.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-non-capturing-groups-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-non-capturing-groups.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-non-greedy-parentheses-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-non-greedy-parentheses.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-range-out-of-order-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-range-out-of-order.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-ranges-and-escaped-hyphens-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-ranges-and-escaped-hyphens.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-stack-overflow-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-stack-overflow.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-unicode-handling-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
regexp-unicode-handling.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
reserved-words-strict-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
reserved-words-strict.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
string-anchor-expected.txt Rebaseline webkit test expectations after r22938. 2014-08-06 15:31:35 +00:00
string-anchor.js Make sure files end with exactly one new line and police this in presubmit. 2013-11-22 13:50:39 +00:00
string-capitalization-expected.txt Turn on icu_case_mapping by default 2017-01-19 21:45:12 +00:00
string-capitalization.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
string-fontcolor-expected.txt Rebaseline webkit test expectations after r22938. 2014-08-06 15:31:35 +00:00
string-fontcolor.js Make sure files end with exactly one new line and police this in presubmit. 2013-11-22 13:50:39 +00:00
string-fontsize-expected.txt Rebaseline webkit test expectations after r22938. 2014-08-06 15:31:35 +00:00
string-fontsize.js Make sure files end with exactly one new line and police this in presubmit. 2013-11-22 13:50:39 +00:00
string-link-expected.txt Rebaseline webkit test expectations after r22938. 2014-08-06 15:31:35 +00:00
string-link.js Make sure files end with exactly one new line and police this in presubmit. 2013-11-22 13:50:39 +00:00
string-split-conformance-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
string-split-conformance.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
string-split-double-empty-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
string-split-double-empty.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
string-split-ignore-case-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
string-split-ignore-case.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
toString-exception-expected.txt Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
toString-exception.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00
toString-number-expected.txt Reimplement Number.prototype.toString with non-default radix. 2016-11-24 10:30:46 +00:00
toString-number.js Make sure files end with exactly one new line and police this in presubmit. 2013-11-22 13:50:39 +00:00
toString-overrides-expected.txt Do not record source positions for non-script or native script compiles. 2016-07-08 08:49:45 +00:00
toString-overrides.js Migrate more tests from blink repository. 2013-07-25 19:54:24 +00:00