v8/test/cctest/interpreter
Matt Gardner 803ad32414 Reland "Optimize in operator"
The original was reverted for breaking webkit layout tests:
https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8-Blink%20Linux%2064/30270

It also caused the following clusterfuzz failures:

chromium:935832
This was a correctness bug due to not properly handling the case of arrays with prototypes other
than Array.prototype. Accesses that were TheHole were not being handled property, both in bounds
holes in holey arrays and out of bounds on either holey or packed arrays. Handling was incorrect
both in access-assembler and in Turbofan.

chromium:935932
This bug was that there was no handling for Has checks on the global object. Turbofan was emitting
code for a store (the 'else' condition on 'access_mode == AccessMode::kLoad'). It hit a DCHECK in
debug builds but in release could show up in different places. This is the bug that caused the
webkit layout test failure that led to the revert.

Both bugs are fixed by in CL, and tests are added for those cases.

Bug: v8:8733, chromium:935932, chromium:935832
Change-Id: Iba0dfcfce6e15d2c0815a7670ece67bc13ba1925
Reviewed-on: https://chromium-review.googlesource.com/c/1493132
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Sigurd Schneider <sigurds@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Matt Gardner <magardn@microsoft.com>
Cr-Commit-Position: refs/heads/master@{#59958}
2019-03-01 09:01:18 +00:00
..
bytecode_expectations Reland "Optimize in operator" 2019-03-01 09:01:18 +00:00
bytecode-expectations-printer.cc [cleanup] Fix kPointerSize in tests 2019-02-14 15:29:52 +00:00
bytecode-expectations-printer.h [ubsan] Port Name/String/Symbol to the new design 2018-11-27 01:42:36 +00:00
generate-bytecode-expectations.cc Bytecode expectation rebaseline autodiscovery should work on Window 2019-02-05 16:33:33 +00:00
interpreter-tester.cc [cleanup] #include heap-inl.h less often 2019-02-15 06:22:53 +00:00
interpreter-tester.h [reland] Don't allocate feedback vectors and feedback metadata in lite mode 2018-12-19 14:29:30 +00:00
source-position-matcher.cc [cleanup] Fix remaining (D)CHECK macro usages 2017-10-18 10:12:31 +00:00
source-position-matcher.h Use source position table for unoptimized code. 2016-06-28 05:52:52 +00:00
test-bytecode-generator.cc [compile] Add support for lazy generation of source position tables 2019-02-14 11:26:35 +00:00
test-interpreter-intrinsics.cc [cleanup] #include heap-inl.h less often 2019-02-15 06:22:53 +00:00
test-interpreter.cc Reland "Optimize in operator" 2019-03-01 09:01:18 +00:00
test-source-positions.cc [compile] Add support for lazy generation of source position tables 2019-02-14 11:26:35 +00:00