v8/test/cctest
Leszek Swirski 57afd0bb07 Reland: [ignition] Add call bytecodes for undefined receiver
Adds a collection of call bytecodes which have an implicit undefined
receiver argument, for cases such as global calls where we know that the
receiver has to be undefined. This way we can skip an LdaUndefined,
decrease bytecode register pressure, and set a more accurate
ConvertReceiverMode on the interpreter and TurboFan call.

As a side effect, the "normal" Call bytecode now becomes a rare case
(only with calls and super property calls), so we get rid of its 0-2
argument special cases and modify CallProperty[N] to use the
NotNullOrUndefined ConvertReceiverMode.

Reland of https://chromium-review.googlesource.com/c/463287 after fixing
tests in https://codereview.chromium.org/2813873002.

Change-Id: I314d69c7643ceec6a5750ffdab60dad38dad09e5
Reviewed-on: https://chromium-review.googlesource.com/474752
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#44582}
2017-04-11 15:52:37 +00:00
..
asmjs Do NOT get isolate from ParseInfo in compiler.cc 2017-03-28 08:12:48 +00:00
compiler [csa] Fix CSA::ToUint32 rounding for negative HeapNumbers 2017-04-07 12:50:15 +00:00
ffi [iwyu] Pre-work for removing unallowed include macro-assembler.h -> assembler-inl.h 2017-02-23 12:10:21 +00:00
heap [heap] Start concurrent marking simultaneously with incremental marking. 2017-04-10 14:22:31 +00:00
interpreter Reland: [ignition] Add call bytecodes for undefined receiver 2017-04-11 15:52:37 +00:00
libplatform [Tracing] Support multi-categories group list. 2016-12-08 00:28:18 +00:00
libsampler Include only stuff you need, part 6: Fix cctest.h. 2016-09-01 12:02:16 +00:00
parsing [parser] Introduce 'contextual keyword tokens'. 2017-03-28 12:43:23 +00:00
wasm MIPS[64]: Support for some SIMD operations (3) 2017-04-11 11:11:26 +00:00
ast-types-fuzz.h Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
BUILD.gn Reland "[snapshot] Move builtins generation into mksnapshot" 2017-04-07 13:31:29 +00:00
cctest_exe.isolate [Swarming] Isolate perf tests. 2016-02-15 11:17:18 +00:00
cctest.cc [wasm] Initial signal handler 2017-03-13 22:12:23 +00:00
cctest.gyp Reland "[snapshot] Move builtins generation into mksnapshot" 2017-04-07 13:31:29 +00:00
cctest.h [api] fix incorrect parameter end position in CompileFunctionInContext 2017-04-03 14:16:57 +00:00
cctest.isolate [Interpreter] Refactor bytecode generator test suite. 2016-02-25 12:07:19 +00:00
cctest.status Reland "[snapshot] Move builtins generation into mksnapshot" 2017-04-07 13:31:29 +00:00
DEPS Add DEPS files and run checkdeps in presubmit check 2014-06-03 13:39:42 +00:00
expression-type-collector-macros.h Make typing-asm match spec more closely around load/store, add more tests. 2015-11-30 21:11:47 +00:00
gay-fixed.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
gay-fixed.h [presubmit] Enable readability/namespace linter checking. 2015-09-30 13:47:11 +00:00
gay-precision.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
gay-precision.h [presubmit] Enable readability/namespace linter checking. 2015-09-30 13:47:11 +00:00
gay-shortest.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
gay-shortest.h [presubmit] Enable readability/namespace linter checking. 2015-09-30 13:47:11 +00:00
log-eq-of-logging-and-traversal.js Fix test-log/EquivalenceOfLoggingAndTraversal 2013-08-26 14:56:23 +00:00
OWNERS [wasm] Drop old typing-asm and its tests. 2016-07-14 00:06:34 +00:00
print-extension.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
print-extension.h Remove deprecated functions the smaller half of the remaing tests 2015-11-17 12:42:44 +00:00
profiler-extension.cc Introduce v8::CpuProfiler::New and v8::CpuProfiler::Dispose API. 2016-07-08 15:01:10 +00:00
profiler-extension.h Introduce v8::CpuProfiler::New and v8::CpuProfiler::Dispose API. 2016-07-08 15:01:10 +00:00
scope-test-helper.h [parser] Skipping inner funcs: collect data needed for allocation, not the allocation result. 2017-03-07 14:23:14 +00:00
setup-isolate-for-tests.cc Reland "[snapshot] Move builtins generation into mksnapshot" 2017-04-07 13:31:29 +00:00
setup-isolate-for-tests.h Reland "[snapshot] Move builtins generation into mksnapshot" 2017-04-07 13:31:29 +00:00
test-access-checks.cc Fix receiver checks for v8::Function on a remote context receiver. 2017-02-22 10:13:24 +00:00
test-accessor-assembler.cc [ic] Cleanup accessor handling, fix cached property on global, remove cache-on-prototype support 2017-03-15 16:42:51 +00:00
test-accessors.cc [test] Make CHECK_EQ calls in cctest consistent. 2017-02-07 14:20:02 +00:00
test-api-accessors.cc Remove experimental fast accessor builder API 2017-03-14 08:14:48 +00:00
test-api-interceptors.cc Drop UniqueId from include/v8.h 2017-03-06 10:58:01 +00:00
test-api.cc [v8] v8::StackTrace::AsArray returns correct array 2017-04-11 15:30:50 +00:00
test-api.h Include only stuff you need, part 6: Fix cctest.h. 2016-09-01 12:02:16 +00:00
test-array-list.cc Rename TypeFeedbackVector to FeedbackVector. 2017-02-07 14:46:36 +00:00
test-assembler-arm64.cc Revert "ARM64: Add NEON support" 2017-03-31 12:33:57 +00:00
test-assembler-arm.cc [ARM] Implement D-register versions of vzip, vuzp, and vtrn. 2017-04-10 21:41:02 +00:00
test-assembler-ia32.cc [test] Make CHECK_EQ calls in cctest consistent. 2017-02-07 14:20:02 +00:00
test-assembler-mips64.cc [test] Make CHECK_EQ calls in cctest consistent. 2017-02-07 14:20:02 +00:00
test-assembler-mips.cc MIPS: Move ldc1/sdc1 to macro-assembler. 2017-03-21 11:35:40 +00:00
test-assembler-ppc.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-assembler-s390.cc s390: use new mul instruction 2017-02-13 18:50:35 +00:00
test-assembler-x64.cc [iwyu] Pre-work for removing unallowed include macro-assembler.h -> assembler-inl.h 2017-02-23 12:10:21 +00:00
test-assembler-x87.cc [test] Make CHECK_EQ calls in cctest consistent. 2017-02-07 14:20:02 +00:00
test-ast-types.cc Rename TypeFeedbackVector to FeedbackVector. 2017-02-07 14:46:36 +00:00
test-ast.cc [Parser] Introduce AstStringConstants to share constants across AstValueFactory 2017-01-17 10:20:47 +00:00
test-atomicops.cc Reland Update implementation of atomics with latest Chromium version but use compiler builtin atomics 2016-10-21 10:05:42 +00:00
test-bignum-dtoa.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-bignum.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-bit-vector.cc Named all zones in the project 2016-10-17 12:12:42 +00:00
test-circular-queue.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-code-cache.cc [ic] Cleanup accessor handling, fix cached property on global, remove cache-on-prototype support 2017-03-15 16:42:51 +00:00
test-code-layout.cc Rename TypeFeedbackVector to FeedbackVector. 2017-02-07 14:46:36 +00:00
test-code-stub-assembler.cc [csa] Fix CSA::ToUint32 rounding for negative HeapNumbers 2017-04-07 12:50:15 +00:00
test-code-stubs-arm64.cc [iwyu|arm64] Pre-work for removing the illegal include macro-assembler.h -> assembler-inl.h 2017-03-15 12:08:50 +00:00
test-code-stubs-arm.cc [iwyu|arm] Pre-work for removing unallowed include macro-assembler.h -> assembler-inl.h 2017-02-28 13:31:30 +00:00
test-code-stubs-ia32.cc [RegisterConfiguration] Streamline access to arch defaults, simplify Registers. 2016-06-27 15:31:31 +00:00
test-code-stubs-mips64.cc [RegisterConfiguration] Streamline access to arch defaults, simplify Registers. 2016-06-27 15:31:31 +00:00
test-code-stubs-mips.cc MIPS: Move ldc1/sdc1 to macro-assembler. 2017-03-21 11:35:40 +00:00
test-code-stubs-x64.cc [iwyu] Pre-work for removing unallowed include macro-assembler.h -> assembler-inl.h 2017-02-23 12:10:21 +00:00
test-code-stubs-x87.cc [RegisterConfiguration] Streamline access to arch defaults, simplify Registers. 2016-06-27 15:31:31 +00:00
test-code-stubs.cc [iwyu] Pre-work for removing unallowed include macro-assembler.h -> assembler-inl.h 2017-02-23 12:10:21 +00:00
test-code-stubs.h Introduce x87 port 2014-05-23 16:37:27 +00:00
test-compiler.cc [api] Fix harmony formatting for CompileFunctionInContext 2017-04-03 20:05:06 +00:00
test-constantpool.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-conversions.cc Rename TypeFeedbackVector to FeedbackVector. 2017-02-07 14:46:36 +00:00
test-cpu-profiler.cc Revert of [profiler] reduce incorrectly unaccounted ticks. (patchset #4 id:60001 of https://codereview.chromium.org/2799603005/ ) 2017-04-07 08:23:42 +00:00
test-date.cc Include only stuff you need, part 6: Fix cctest.h. 2016-09-01 12:02:16 +00:00
test-debug.cc [debug] introduce precise binary code coverage. 2017-03-23 17:23:17 +00:00
test-decls.cc [runtime] Intercept function declarations. 2016-09-15 15:48:34 +00:00
test-deoptimization.cc [iwyu] Pre-work for removing unallowed include macro-assembler.h -> assembler-inl.h 2017-02-23 12:10:21 +00:00
test-dictionary.cc [iwyu] Pre-work for removing unallowed include macro-assembler.h -> assembler-inl.h 2017-02-23 12:10:21 +00:00
test-disasm-arm64.cc Revert "ARM64: Add NEON support" 2017-03-31 12:33:57 +00:00
test-disasm-arm.cc [ARM] Implement D-register versions of vzip, vuzp, and vtrn. 2017-04-10 21:41:02 +00:00
test-disasm-ia32.cc [ia32] Add minps/maxps and AVX v_ps/v_pd for add/sub/mul/div/min/max 2017-03-15 02:01:05 +00:00
test-disasm-mips64.cc MIPS[64]: Support for MSA instructions 2017-03-27 13:20:35 +00:00
test-disasm-mips.cc MIPS[64]: Support for MSA instructions 2017-03-27 13:20:35 +00:00
test-disasm-ppc.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-disasm-s390.cc S390: Initial test changes and files checkin. 2016-03-15 18:09:36 +00:00
test-disasm-x64.cc Add pshufw instruction, fix inconsistencies with pextrw instruction. 2017-03-22 20:49:27 +00:00
test-disasm-x87.cc [ic] Split LoadIC into LoadGlobalIC and LoadIC. 2016-06-14 13:21:28 +00:00
test-diy-fp.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-double.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-dtoa.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-elements-kind.cc [iwyu] Pre-work for removing unallowed include macro-assembler.h -> assembler-inl.h 2017-02-23 12:10:21 +00:00
test-experimental-extra.js Add experimental, non-snapshotted V8 extras 2015-08-20 00:01:14 +00:00
test-extra.js Add isPromise V8 extras util 2017-04-06 13:16:35 +00:00
test-fast-dtoa.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-feedback-vector.cc [ic] Split StoreIC into StoreGlobalIC and StoreIC. 2017-03-24 07:45:14 +00:00
test-feedback-vector.h Link type feedback vectors to the shared function info. 2017-02-08 08:33:33 +00:00
test-field-type-tracking.cc [runtime] Prototype const-to-mutable field migrations without deprecating maps. 2017-03-09 12:26:12 +00:00
test-fixed-dtoa.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-flags.cc [test] Make CHECK_EQ calls in cctest consistent. 2017-02-07 14:20:02 +00:00
test-func-name-inference.cc [iwyu] Remove include debug.h -> arguments.h 2017-02-09 09:19:23 +00:00
test-fuzz-arm64.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-global-handles.cc Drop UniqueId from include/v8.h 2017-03-06 10:58:01 +00:00
test-global-object.cc include fixing: api.h shouldn't include objects-inl.h 2017-01-09 13:43:28 +00:00
test-hashing.cc [iwyu|arm64] Pre-work for removing the illegal include macro-assembler.h -> assembler-inl.h 2017-03-15 12:08:50 +00:00
test-hashmap.cc Instead of having a hashmap with a function pointer defining its 2016-09-30 16:17:06 +00:00
test-heap-profiler.cc Remove unused Box type 2017-02-17 10:06:22 +00:00
test-hydrogen-types.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-identity-map.cc [IdentityMap] Remove ability to delete entries during iteration. 2017-03-06 21:15:20 +00:00
test-inobject-slack-tracking.cc [runtime] Feed back normalization to constructors (behind flag) 2017-02-27 13:56:14 +00:00
test-javascript-arm64.cc include fixing: api.h shouldn't include objects-inl.h 2017-01-09 13:43:28 +00:00
test-js-arm64-variables.cc include fixing: api.h shouldn't include objects-inl.h 2017-01-09 13:43:28 +00:00
test-list.cc Include only stuff you need, part 6: Fix cctest.h. 2016-09-01 12:02:16 +00:00
test-liveedit.cc include fixing: api.h shouldn't include objects-inl.h 2017-01-09 13:43:28 +00:00
test-lockers.cc include fixing: api.h shouldn't include objects-inl.h 2017-01-09 13:43:28 +00:00
test-log-stack-tracer.cc [iwyu] Pre-work for removing unallowed include macro-assembler.h -> assembler-inl.h 2017-02-23 12:10:21 +00:00
test-log.cc [profiler] Web UI: add summary of opts/deopts. 2017-03-22 16:02:25 +00:00
test-macro-assembler-arm.cc Implement remaining Boolean SIMD operations on ARM. 2017-03-02 19:50:33 +00:00
test-macro-assembler-ia32.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-macro-assembler-mips64.cc [test] Make CHECK_EQ calls in cctest consistent. 2017-02-07 14:20:02 +00:00
test-macro-assembler-mips.cc MIPS: Move ldc1/sdc1 to macro-assembler. 2017-03-21 11:35:40 +00:00
test-macro-assembler-x64.cc [iwyu] Pre-work for removing unallowed include macro-assembler.h -> assembler-inl.h 2017-02-23 12:10:21 +00:00
test-macro-assembler-x87.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-managed.cc [wasm] Managed<T> ensures T's lifetime does not leak past Isolate's 2017-02-21 17:23:38 +00:00
test-mementos.cc Rename TypeFeedbackVector to FeedbackVector. 2017-02-07 14:46:36 +00:00
test-modules.cc Fix completion value of class declarations. 2017-02-28 19:36:45 +00:00
test-object.cc Remove SIMD.js from V8. 2017-02-14 06:57:25 +00:00
test-parsing.cc [parser] Introduce 'contextual keyword tokens'. 2017-03-28 12:43:23 +00:00
test-platform-linux.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-platform-win32.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-platform.cc S390:Update inline asm constraint in test-platform 2016-07-16 15:36:45 +00:00
test-profile-generator.cc [debugger] remove debugger statement support from FCG/CS. 2017-02-22 08:45:09 +00:00
test-random-number-generator.cc Include only stuff you need, part 6: Fix cctest.h. 2016-09-01 12:02:16 +00:00
test-regexp.cc [regexp] Fold repeated assertions 2017-03-22 09:28:28 +00:00
test-representation.cc [turbofan] put src/types.[h/cc] into src/compiler/types.[h/cc] 2016-09-05 15:58:45 +00:00
test-run-wasm-relocation-arm64.cc Disentangle assembler from isolate. 2017-03-17 11:18:06 +00:00
test-run-wasm-relocation-arm.cc Disentangle assembler from isolate. 2017-03-17 11:18:06 +00:00
test-run-wasm-relocation-ia32.cc Disentangle assembler from isolate. 2017-03-17 11:18:06 +00:00
test-run-wasm-relocation-x64.cc Disentangle assembler from isolate. 2017-03-17 11:18:06 +00:00
test-run-wasm-relocation-x87.cc [wasm] Fix code specialization for empty memory buffer 2017-03-06 13:39:54 +00:00
test-sampler-api.cc Include only stuff you need, part 6: Fix cctest.h. 2016-09-01 12:02:16 +00:00
test-serialize.cc [snapshot] encode resource before serializing. 2017-04-11 05:46:46 +00:00
test-simulator-arm64.cc [iwyu|arm64] Pre-work for removing the illegal include macro-assembler.h -> assembler-inl.h 2017-03-15 12:08:50 +00:00
test-simulator-arm.cc Revert "Revert of [Atomics] Implement ldaxr/stlxr instructions in ARM64 simulator (patchset #8 id:140001 of https://codereview.chromium.org/2711473002/ )" 2017-02-28 03:31:39 +00:00
test-strings.cc Remove Factory::NewStringFromASCII method. 2017-03-17 17:52:50 +00:00
test-strtod.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-symbols.cc Rename TypeFeedbackVector to FeedbackVector. 2017-02-07 14:46:36 +00:00
test-thread-termination.cc Assert that context creation doesn't throw 2017-01-17 13:01:03 +00:00
test-threads.cc Include only stuff you need, part 6: Fix cctest.h. 2016-09-01 12:02:16 +00:00
test-trace-event.cc [tracing] Avoid Gcc compilation fail by declaring AddTraceEvent function in Class derived from Platform Class. 2016-09-28 08:47:33 +00:00
test-traced-value.cc [tracing] Use locale independent writer for FP values. 2017-01-12 08:08:57 +00:00
test-transitions.cc [runtime][ic] Constant field tracking support. 2017-02-10 08:05:25 +00:00
test-typedarrays.cc include fixing: api.h shouldn't include objects-inl.h 2017-01-09 13:43:28 +00:00
test-types.cc Rename TypeFeedbackVector to FeedbackVector. 2017-02-07 14:46:36 +00:00
test-unbound-queue.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-unboxed-doubles.cc [heap] Enforce explicit MarkingState 2017-03-24 18:54:04 +00:00
test-unique.cc Rename TypeFeedbackVector to FeedbackVector. 2017-02-07 14:46:36 +00:00
test-unscopables-hidden-prototype.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-usecounters.cc [counters] Add UseCounters for 'f() = 0' syntax 2016-12-27 17:48:40 +00:00
test-utils-arm64.cc Revert "ARM64: Add NEON support" 2017-03-31 12:33:57 +00:00
test-utils-arm64.h Revert "ARM64: Add NEON support" 2017-03-31 12:33:57 +00:00
test-utils.cc Allow C++11 in unittests. 2017-03-10 06:35:51 +00:00
test-version.cc Revert of [build] Introduce an embedder version string (patchset #3 id:40001 of https://codereview.chromium.org/2619213002/ ) 2017-01-21 22:36:54 +00:00
test-weakmaps.cc Rename TypeFeedbackVector to FeedbackVector. 2017-02-07 14:46:36 +00:00
test-weaksets.cc Rename TypeFeedbackVector to FeedbackVector. 2017-02-07 14:46:36 +00:00
testcfg.py [test] Fix deterministic test shards. 2016-03-31 07:38:22 +00:00
trace-extension.cc Expose TickSample and its APIs in v8-profiler.h 2016-07-06 18:40:31 +00:00
trace-extension.h Expose TickSample and its APIs in v8-profiler.h 2016-07-06 18:40:31 +00:00
types-fuzz.h [turbofan] HeapConstant types should compare by handle address 2016-10-08 16:51:53 +00:00
unicode-helpers.h [parser/test] Move cctest/PreParserScopeAnalysis into a new file. 2017-02-07 10:11:01 +00:00