v8/test/cctest
Pierre Langlois f1e979a9c8 [cctest] Test parallel moves with near and far ranges.
The AssembleMove and AssembleSwap tests would only perform moves on stack
parameters. This limits us to testing with slots that are likely to be in range
of loads and stores. As well as only testing memory accesses with positive
offsets relative to the frame pointer.

This patch addresses these limitations by moving half of the stack parameters
into spill slots, to then perform moves on them. Additionally, to increase
ranges, we create articial space between each spilled slot.

As a drive-by, allow giving custom names to code objects created with the
CodeAssemblerTester. It helps a lot inspecting disassembly.

And finally, this CL uncovered a bug where I had forgotten to initialize
FixedArrays, which would make the incremental marker crash.

Bug: v8:6848
Change-Id: Ic1954c1896130f6c55e09a3068bf341cc4c68670
Reviewed-on: https://chromium-review.googlesource.com/980613
Commit-Queue: Pierre Langlois <pierre.langlois@arm.com>
Reviewed-by: Bill Budge <bbudge@chromium.org>
Cr-Commit-Position: refs/heads/master@{#52406}
2018-04-05 17:11:23 +00:00
..
compiler [cctest] Test parallel moves with near and far ranges. 2018-04-05 17:11:23 +00:00
heap Reland "[runtime] Remove the construct_stub field of the SFI" 2018-04-05 12:06:03 +00:00
interpreter [iterpreter] Share feedback slots for global stores to the same variable. 2018-03-20 17:05:38 +00:00
libplatform [tracing] allow embedders to provide own tracing timestamps 2018-01-10 19:36:23 +00:00
libsampler
parsing [runtime] Deduplicate the name between SFI and ScopeInfo 2018-03-16 16:49:42 +00:00
wasm [wasm] Remove obsolete specialization zone. 2018-04-05 14:39:44 +00:00
assembler-helper-arm.cc Replace CALL_GENERATED_CODE by GeneratedCode wrapper 2018-01-09 10:33:36 +00:00
assembler-helper-arm.h Replace CALL_GENERATED_CODE by GeneratedCode wrapper 2018-01-09 10:33:36 +00:00
BUILD.gn Revert "[wasm] Merge the WasmContext into WasmInstanceObject" 2018-04-04 17:08:02 +00:00
cctest.cc [wasm] Add new API for enabling trap handler 2018-03-20 18:06:38 +00:00
cctest.h [V8 Platform] Make CallOnWorkerThread use std::unique_ptr 2018-03-26 17:43:22 +00:00
cctest.status [cctest] Remove from skip list test-run-wasm-simd tests 2018-04-05 09:49:06 +00:00
DEPS
expression-type-collector-macros.h [cleanup] Fix remaining (D)CHECK macro usages 2017-10-18 10:12:31 +00:00
gay-fixed.cc Use nullptr instead of NULL where possible 2017-10-13 17:21:49 +00:00
gay-fixed.h
gay-precision.cc Use nullptr instead of NULL where possible 2017-10-13 17:21:49 +00:00
gay-precision.h
gay-shortest.cc Use nullptr instead of NULL where possible 2017-10-13 17:21:49 +00:00
gay-shortest.h
log-eq-of-logging-and-traversal.js Reland "[logging] Use OFStream for log events" 2017-10-20 22:47:01 +00:00
OWNERS [MIPS] Add Sreten Kovacevic as owner of MIPS files 2018-02-09 15:35:49 +00:00
print-extension.cc Use nullptr instead of NULL where possible 2017-10-13 17:21:49 +00:00
print-extension.h [iwyu] More iwyu fixes (date, execution etc.) 2018-02-26 08:59:59 +00:00
profiler-extension.cc Replace CHECK(false) by UNREACHABLE() 2017-12-19 18:58:07 +00:00
profiler-extension.h
scope-test-helper.h [reland] [parser] Skipping inner funcs: Use less memory for variables. 2017-10-25 08:49:37 +00:00
setup-isolate-for-tests.cc [heap] remove heap init from shipping binary. 2017-09-07 05:24:49 +00:00
setup-isolate-for-tests.h [heap] remove heap init from shipping binary. 2017-09-07 05:24:49 +00:00
test-access-checks.cc Replace CHECK(false) by UNREACHABLE() 2017-12-19 18:58:07 +00:00
test-accessor-assembler.cc Remove ComputeFlags, simply pass in Code::Kind instead of Code::Flags 2017-09-29 15:37:27 +00:00
test-accessors.cc [ic] Properly handle kApiGetter case with null prototype. 2018-03-01 15:18:44 +00:00
test-allocation.cc Fix [Memory] Add OnCriticalMemoryPressure overload to v8::Platform. 2017-12-26 10:55:07 +00:00
test-api-accessors.cc [debug] expose SideEffectType for whitelisting embedder callbacks 2018-04-04 20:08:00 +00:00
test-api-interceptors.cc [debug] expose SideEffectType for whitelisting embedder callbacks 2018-04-04 20:08:00 +00:00
test-api.cc [typedarray] Fix GetBuffer for 0-length off-heap typed arrays. 2018-04-05 11:42:31 +00:00
test-api.h Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-array-list.cc [iwyu] Remove stale TODOs about objects-inl.h inclusion. 2017-10-09 11:14:59 +00:00
test-assembler-arm64.cc [arm64] Fix assembler native test failures. 2018-03-13 11:19:33 +00:00
test-assembler-arm.cc [arm] Introduce UseScratchRegisterScope for VFP registers 2018-02-02 13:05:11 +00:00
test-assembler-ia32.cc Add phaddd/vphaddd, phaddw/vphaddw and vhaddps to ia32 2018-03-01 01:30:59 +00:00
test-assembler-mips64.cc Enable clang's -Wmissing-field-initializers warning. 2018-03-13 15:10:00 +00:00
test-assembler-mips.cc Enable clang's -Wmissing-field-initializers warning. 2018-03-13 15:10:00 +00:00
test-assembler-ppc.cc PPC: Replace CALL_GENERATED_CODE by GeneratedCode wrapper 2018-01-10 20:40:13 +00:00
test-assembler-s390.cc PPC/s390: [assembler] Unify RelocInfo::NONE32 and NONE64 2018-01-23 19:09:25 +00:00
test-assembler-x64.cc [wasm] Remove WASM_TABLE_SIZE_REFERENCE and related 2018-03-14 13:45:03 +00:00
test-atomicops.cc Normalize casing of hexadecimal digits 2017-12-02 01:24:40 +00:00
test-bignum-dtoa.cc [jumbo] add test namespaces for cctest 2017-09-21 08:46:16 +00:00
test-bignum.cc Normalize casing of hexadecimal digits 2017-12-02 01:24:40 +00:00
test-bit-vector.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-circular-queue.cc
test-code-layout.cc Rename Code::instruction_{start,end,size} functions 2018-04-05 11:39:32 +00:00
test-code-stub-assembler.cc [reland] [in-place weak refs] Replace the WeakCell potentially in Map::raw_transitions_. 2018-04-05 16:24:06 +00:00
test-code-stubs-arm64.cc Rename Code::instruction_{start,end,size} functions 2018-04-05 11:39:32 +00:00
test-code-stubs-arm.cc Rename Code::instruction_{start,end,size} functions 2018-04-05 11:39:32 +00:00
test-code-stubs-ia32.cc Rename Code::instruction_{start,end,size} functions 2018-04-05 11:39:32 +00:00
test-code-stubs-mips64.cc Rename Code::instruction_{start,end,size} functions 2018-04-05 11:39:32 +00:00
test-code-stubs-mips.cc Rename Code::instruction_{start,end,size} functions 2018-04-05 11:39:32 +00:00
test-code-stubs-x64.cc Rename Code::instruction_{start,end,size} functions 2018-04-05 11:39:32 +00:00
test-code-stubs.cc Normalize casing of hexadecimal digits 2017-12-02 01:24:40 +00:00
test-code-stubs.h [cctest] Avoid disallowed "using namespace" directive. 2017-09-01 08:28:36 +00:00
test-compiler.cc Add tests for v8::ScriptCompiler::kEagerCompile. 2018-04-03 10:46:52 +00:00
test-constantpool.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-conversions.cc Normalize casing of hexadecimal digits 2017-12-02 01:24:40 +00:00
test-cpu-profiler.cc Rename Code::instruction_{start,end,size} functions 2018-04-05 11:39:32 +00:00
test-date.cc Reland "Implement a new spec for timezone offset calculation" 2018-04-04 22:42:30 +00:00
test-debug.cc Reland "[debug] introduced runtime side effect check" 2018-04-05 03:36:10 +00:00
test-decls.cc Use nullptr instead of NULL where possible 2017-10-13 17:21:49 +00:00
test-deoptimization.cc Pass Isolate pointer to String::Utf8Value/Value constructors 2017-08-28 18:17:08 +00:00
test-dictionary.cc [runtime] Make GetHash and GetOrCreateHash member functions 2017-08-22 00:35:31 +00:00
test-disasm-arm64.cc [arm64] Support CSDB instruction 2018-02-21 10:33:32 +00:00
test-disasm-arm.cc [arm] Support CSDB instruction 2018-02-21 12:14:48 +00:00
test-disasm-ia32.cc Rename Code::instruction_{start,end,size} functions 2018-04-05 11:39:32 +00:00
test-disasm-mips64.cc Normalize casing of hexadecimal digits 2017-12-02 01:24:40 +00:00
test-disasm-mips.cc Normalize casing of hexadecimal digits 2017-12-02 01:24:40 +00:00
test-disasm-ppc.cc [cctest] Avoid disallowed "using namespace" directive. 2017-09-01 08:28:36 +00:00
test-disasm-s390.cc [cctest] Avoid disallowed "using namespace" directive. 2017-09-01 08:28:36 +00:00
test-disasm-x64.cc Rename Code::instruction_{start,end,size} functions 2018-04-05 11:39:32 +00:00
test-diy-fp.cc Normalize casing of hexadecimal digits 2017-12-02 01:24:40 +00:00
test-double.cc Normalize casing of hexadecimal digits 2017-12-02 01:24:40 +00:00
test-dtoa.cc [jumbo] add test namespaces for cctest 2017-09-21 08:46:16 +00:00
test-elements-kind.cc [factory] Simplify JSFunction creation 2017-11-08 13:52:13 +00:00
test-experimental-extra.js
test-extra.js [turbofan] Properly optimize calls to promise extras. 2018-02-16 19:46:30 +00:00
test-fast-dtoa.cc [jumbo] add test namespaces for cctest 2017-09-21 08:46:16 +00:00
test-feedback-vector.cc [iterpreter] Share feedback slots for global stores to the same variable. 2018-03-20 17:05:38 +00:00
test-feedback-vector.h [cleanup] Remove is_constructor param from NewSFI 2018-03-26 08:41:38 +00:00
test-field-type-tracking.cc [Compiler] Split up Unoptimized/Optimized CompilationInfo and CompilationJobs 2018-04-04 21:09:01 +00:00
test-fixed-dtoa.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-flags.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-func-name-inference.cc [cctest] Add FuncNameInferrer coverage for arrow functions 2017-12-14 21:34:39 +00:00
test-fuzz-arm64.cc [cctest] Avoid disallowed "using namespace" directive. 2017-09-01 08:28:36 +00:00
test-global-handles.cc Global handles: More test coverage 2017-11-20 14:48:04 +00:00
test-global-object.cc Pass Isolate pointer to String::Utf8Value/Value constructors 2017-08-28 18:17:08 +00:00
test-hashcode.cc [runtime] Make GetHash and GetOrCreateHash member functions 2017-08-22 00:35:31 +00:00
test-hashmap.cc [cleanup] Fix remaining (D)CHECK macro usages 2017-10-18 10:12:31 +00:00
test-heap-profiler.cc [reland] [in-place weak refs] Replace the WeakCell potentially in Map::raw_transitions_. 2018-04-05 16:24:06 +00:00
test-identity-map.cc [iwyu] Remove stale TODOs about objects-inl.h inclusion. 2017-10-09 11:14:59 +00:00
test-inobject-slack-tracking.cc Reland "[bigint] Add BigInt64Array, BigUint64Array" 2018-02-19 10:23:18 +00:00
test-intl.cc
test-isolate-independent-builtins.cc Revert "[wasm] Merge the WasmContext into WasmInstanceObject" 2018-04-04 17:08:02 +00:00
test-javascript-arm64.cc [jumbo] arm64 cctest fixes 2017-09-30 17:17:23 +00:00
test-js-arm64-variables.cc [jumbo] arm64 cctest fixes 2017-09-30 17:17:23 +00:00
test-liveedit.cc Use nullptr instead of NULL where possible 2017-10-13 17:21:49 +00:00
test-lockers.cc [jumbo] add test namespaces for cctest 2017-09-21 08:46:16 +00:00
test-log-stack-tracer.cc Normalize casing of hexadecimal digits 2017-12-02 01:24:40 +00:00
test-log.cc [wasm] Log wasm codes on module creation. 2018-03-22 13:17:39 +00:00
test-macro-assembler-arm.cc Replace CALL_GENERATED_CODE by GeneratedCode wrapper 2018-01-09 10:33:36 +00:00
test-macro-assembler-mips64.cc MIPS[64]: Rewrite overflow instructions 2018-03-16 10:47:20 +00:00
test-macro-assembler-mips.cc MIPS[64]: Rewrite overflow instructions 2018-03-16 10:47:20 +00:00
test-macro-assembler-x64.cc [assembler] Unify RelocInfo::NONE32 and NONE64 2018-01-22 15:09:32 +00:00
test-managed.cc Refactor Managed construction 2017-09-04 11:37:42 +00:00
test-mementos.cc [iwyu] Remove stale TODOs about objects-inl.h inclusion. 2017-10-09 11:14:59 +00:00
test-modules.cc [api,modules] Allow GetModuleNamespace on unevaluated modules. 2018-01-08 09:01:25 +00:00
test-object.cc [bigint] Encapsulate internals in MutableBigInt 2017-11-17 23:06:52 +00:00
test-orderedhashtable.cc [jumbo] add test namespaces for cctest 2017-09-21 08:46:16 +00:00
test-parsing.cc [numeric separator] Ban implicit octal support 2018-03-15 10:34:56 +00:00
test-platform.cc [Memory] Create memory management API in v8::internal. 2017-12-15 18:49:47 +00:00
test-profile-generator.cc Refactor FATAL macro 2017-12-19 07:57:12 +00:00
test-random-number-generator.cc [cleanup] Fix remaining (D)CHECK macro usages 2017-10-18 10:12:31 +00:00
test-regexp.cc Normalize casing of hexadecimal digits 2017-12-02 01:24:40 +00:00
test-representation.cc Start preparing test/cctest for jumbo compilation 2017-08-14 20:58:10 +00:00
test-run-wasm-relocation-arm64.cc Revert "[wasm] Merge the WasmContext into WasmInstanceObject" 2018-04-04 17:08:02 +00:00
test-run-wasm-relocation-arm.cc Revert "[wasm] Merge the WasmContext into WasmInstanceObject" 2018-04-04 17:08:02 +00:00
test-run-wasm-relocation-ia32.cc Rename Code::instruction_{start,end,size} functions 2018-04-05 11:39:32 +00:00
test-run-wasm-relocation-x64.cc Rename Code::instruction_{start,end,size} functions 2018-04-05 11:39:32 +00:00
test-sampler-api.cc Use nullptr instead of NULL where possible 2017-10-13 17:21:49 +00:00
test-serialize.cc [snapshot] extend code caching support to CompileFunctionInContext. 2018-03-29 12:53:41 +00:00
test-strings.cc Consolidate UTF-8 Vector<char> to uc16 decoding into Iterator 2018-02-20 20:04:41 +00:00
test-strtod.cc Normalize casing of hexadecimal digits 2017-12-02 01:24:40 +00:00
test-symbols.cc [iwyu] Remove stale TODOs about objects-inl.h inclusion. 2017-10-09 11:14:59 +00:00
test-sync-primitives-arm64.cc [simulator] Make Call variadic 2018-01-08 16:53:45 +00:00
test-sync-primitives-arm.cc Replace CALL_GENERATED_CODE by GeneratedCode wrapper 2018-01-09 10:33:36 +00:00
test-thread-termination.cc Fix termination within microtasks. 2018-03-19 15:13:19 +00:00
test-threads.cc Use nullptr instead of NULL where possible 2017-10-13 17:21:49 +00:00
test-trace-event.cc [tracing] implement TRACE_EVENT_ADD_WITH_TIMESTAMP 2018-01-12 16:27:25 +00:00
test-traced-value.cc Avoid octal escape sequences 2017-12-01 15:08:14 +00:00
test-transitions.cc [reland] [in-place weak refs] Replace the WeakCell potentially in Map::raw_transitions_. 2018-04-05 16:24:06 +00:00
test-transitions.h [reland] [in-place weak refs] Replace the WeakCell potentially in Map::raw_transitions_. 2018-04-05 16:24:06 +00:00
test-typedarrays.cc Reland "[bigint] Add BigInt64Array, BigUint64Array" 2018-02-19 10:23:18 +00:00
test-types.cc [compiler] No longer expose the OtherString type. 2018-03-19 15:24:24 +00:00
test-unbound-queue.cc
test-unboxed-doubles.cc Normalize casing of hexadecimal digits 2017-12-02 01:24:40 +00:00
test-unscopables-hidden-prototype.cc
test-usecounters.cc [parser] Remove incorrect UseCounter code for LabeledExpressionStatement 2018-01-06 00:17:43 +00:00
test-utils-arm64.cc [arm64] Remove remaining instances of csp 2018-01-18 18:07:18 +00:00
test-utils-arm64.h [arm64] Remove remaining instances of csp 2018-01-18 18:07:18 +00:00
test-utils.cc Replace CHECK(false) by UNREACHABLE() 2017-12-19 18:58:07 +00:00
test-version.cc [build] Introduce an embedder version string 2017-10-05 07:17:45 +00:00
test-weakmaps.cc [heap] Increase test coverage for embedder tracing 2017-12-07 14:11:51 +00:00
test-weaksets.cc [factory] Simplify JSFunction creation 2017-11-08 13:52:13 +00:00
testcfg.py [test] Remove context usage from test processors 2018-02-01 10:35:02 +00:00
trace-extension.cc Replace CHECK(false) by UNREACHABLE() 2017-12-19 18:58:07 +00:00
trace-extension.h [iwyu] More iwyu fixes (date, execution etc.) 2018-02-26 08:59:59 +00:00
types-fuzz.h
unicode-helpers.h Implement DFA Unicode Decoder 2017-12-11 21:36:13 +00:00