v8/test/cctest
Ross McIlroy e9a37bf884 [TurboProp] Add reference map population to fast reg alloc.
Adds support for populating reference maps to the fast
register allocator. In order to calculate whether a stack slot
is live at a given instruction, we use the dominator tree to
build a bitmap of blocks which are dominated by each block.
A variable's spill operand is classed as alive for any blocks that are
dominated by the block it was defined in, until the instruction index
of the spill operand's last use. As such, it may be classified as live
down a branch where the spill operand is never used, however it is safe
since the spill slot won't be re-allocated until after it's last-use
instruction index in any case.

BUG=v8:9684

Change-Id: I772374599ef916f57d82d468f66429e32c712ddf
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2298008
Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
Reviewed-by: Georg Neis <neis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#69108}
2020-07-28 15:28:31 +00:00
..
compiler [TurboProp] Add reference map population to fast reg alloc. 2020-07-28 15:28:31 +00:00
heap [heap] More explicit fast path for new space allocation 2020-07-27 08:56:58 +00:00
interpreter [compiler] Make is_compiled_scope take an explicit Isolate 2020-07-06 15:49:55 +00:00
libplatform [cpu-profiler] Remove hi-res options via tracing category 2020-05-14 15:30:04 +00:00
libsampler [cpu-profiler] Only record SIGPROF-based samples for samplers that request samples 2019-02-13 09:29:38 +00:00
parsing Fix tests to work with single generation heap 2020-07-07 09:30:57 +00:00
torque [tests] Fix parameter indices in test-code-generator and test-torque 2020-07-16 14:26:15 +00:00
wasm [wasm-gc][tests] Add supertype argument to WASM_RTT_SUB 2020-07-24 09:06:35 +00:00
assembler-helper-arm.cc [cleanup] Drop some dead (Macro)Assembler code 2019-05-27 08:53:28 +00:00
assembler-helper-arm.h Move handles-related files to src/handles 2019-05-23 06:00:15 +00:00
BUILD.gn [turbofan] Concurrent ScriptContextTable access 2020-07-22 07:59:13 +00:00
cctest.cc [zone-compr] Add kCompressGraphZone constant 2020-07-24 08:50:11 +00:00
cctest.h [zone-compr] Add kCompressGraphZone constant 2020-07-24 08:50:11 +00:00
cctest.status [infra] Add and enable nci_as_highest_tier variant 2020-07-21 10:53:31 +00:00
collector.h Move remaining files in src/ 2019-05-24 18:24:36 +00:00
DEPS Reland "[tracing] Roll perfetto @ 28b633cd" 2019-09-06 13:42:02 +00:00
disasm-regex-helper.cc [turbofan] Improve load poisoning tests. 2019-07-02 17:55:04 +00:00
disasm-regex-helper.h [turbofan] Improve load poisoning tests. 2019-07-02 17:55:04 +00:00
expression-type-collector-macros.h [cleanup] Fix remaining (D)CHECK macro usages 2017-10-18 10:12:31 +00:00
gay-fixed.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
gay-fixed.h Move utility code to src/utils 2019-05-23 14:13:34 +00:00
gay-precision.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
gay-precision.h Move utility code to src/utils 2019-05-23 14:13:34 +00:00
gay-shortest.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
gay-shortest.h Move utility code to src/utils 2019-05-23 14:13:34 +00:00
manually-externalized-buffer.h [api] Deprecate [Shared]ArrayBuffer::Externalize/GetContents and constructors 2019-10-29 22:01:54 +00:00
OWNERS [owners] Remove redundant OWNERS files in test/ 2019-06-24 12:44:32 +00:00
print-extension.cc Use nullptr instead of NULL where possible 2017-10-13 17:21:49 +00:00
print-extension.h [cleanup] Mark test/ methods in subclasses with override. 2018-09-17 07:40:00 +00:00
profiler-extension.cc Reland "[Compile] Ensure we don't access the native context during bytecode finalization." 2018-10-26 22:33:56 +00:00
profiler-extension.h [cleanup] Mark test/ methods in subclasses with override. 2018-09-17 07:40:00 +00:00
scope-test-helper.h [parser] Various Scope and Context speedups 2019-01-28 13:06:03 +00:00
setup-isolate-for-tests.cc [interpreter] Always put bytecode handlers in builtins table 2018-09-20 09:58:15 +00:00
setup-isolate-for-tests.h Move initialization code into src/init 2019-05-16 12:36:15 +00:00
test-access-checks.cc Replace CHECK(false) by UNREACHABLE() 2017-12-19 18:58:07 +00:00
test-accessor-assembler.cc [tests] Fix parameter indices in test-code-stub-assembler 2020-07-15 15:44:51 +00:00
test-accessors.cc [api] Create v8::String::NewFromLiteral that returns Local<String> 2020-03-09 12:02:07 +00:00
test-allocation.cc [zone-compr] Initial support for zone pointer compression 2020-07-24 08:27:21 +00:00
test-api-accessors.cc [Respect] Rename lists 2020-06-22 15:15:31 +00:00
test-api-array-buffer.cc [arraybuffer][test] Test creating a BackingStore with nullptr 2020-07-27 14:04:40 +00:00
test-api-icu.cc Correct typo of Chinese locale zn_CN to zh_CN 2020-04-21 08:05:43 +00:00
test-api-interceptors.cc Rename and retype Symbol name to description 2019-10-30 10:38:55 +00:00
test-api-stack-traces.cc [api] Create v8::String::NewFromLiteral that returns Local<String> 2020-03-09 12:02:07 +00:00
test-api-typed-array.cc [api] Deprecate [Shared]ArrayBuffer::Externalize/GetContents and constructors 2019-10-29 22:01:54 +00:00
test-api-wasm.cc [wasm-simd] Add use counter for SIMD opcodes 2020-05-08 19:14:00 +00:00
test-api.cc [ukm] Add framework for collecting event-based metrics 2020-07-28 12:09:21 +00:00
test-api.h [test-api] Extract arraybufs and typed arrays 2019-06-17 15:27:01 +00:00
test-array-list.cc Move more relevant files to src/objects 2019-05-23 08:52:30 +00:00
test-assembler-arm64.cc [arm64] Only run FJCVTZS test when the instruction is available 2020-06-16 14:38:42 +00:00
test-assembler-arm.cc [wasm-simd] Fix unsigned narrow instructions 2019-11-19 18:51:09 +00:00
test-assembler-ia32.cc [cleanup] Remove V8_2PART_UINT64_C macro 2020-07-20 11:52:17 +00:00
test-assembler-mips64.cc [mips][codegen] Correct safepoint record and CheckTrampolinePool. 2020-06-30 06:55:43 +00:00
test-assembler-mips.cc [mips][codegen] Correct safepoint record and CheckTrampolinePool. 2020-06-30 06:55:43 +00:00
test-assembler-ppc.cc Move architecture dependent files 2019-05-28 14:02:15 +00:00
test-assembler-s390.cc [s390]tm family test: change a label name 2019-07-22 20:05:10 +00:00
test-assembler-x64.cc [cleanup] Remove V8_2PART_UINT64_C macro 2020-07-20 11:52:17 +00:00
test-atomicops.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-backing-store.cc Reland x6 [arraybuffer] Rearchitect backing store ownership 2019-09-09 13:07:42 +00:00
test-bignum-dtoa.cc [cleanup] Remove V8_2PART_UINT64_C macro 2020-07-20 11:52:17 +00:00
test-bignum.cc [cleanup] Remove V8_2PART_UINT64_C macro 2020-07-20 11:52:17 +00:00
test-bit-vector.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-circular-queue.cc Reland "[d8] Remove maximum workers limitation" 2019-07-30 07:56:17 +00:00
test-code-layout.cc Move more relevant files to src/objects 2019-05-23 08:52:30 +00:00
test-code-pages.cc Separate metadata from code in the embedded data blob 2020-07-22 09:50:27 +00:00
test-code-stub-assembler.cc [tests] Fix parameter indices in test-code-stub-assembler 2020-07-15 15:44:51 +00:00
test-compiler.cc [nci] Consume cached code 2020-07-15 08:44:40 +00:00
test-concurrent-descriptor-array.cc [compiler] Test to search TransitionArrays on background and main thread 2020-07-14 11:55:24 +00:00
test-concurrent-prototype.cc [compiler] Don't serialize BytecodeArrayData's source_positions_ 2020-07-14 11:01:44 +00:00
test-concurrent-script-context-table.cc [turbofan] More ScriptContextTable concurrency 2020-07-22 09:23:37 +00:00
test-concurrent-transition-array.cc [compiler] Test transition from Uninitialized to kFullTransitionArray 2020-07-28 13:03:31 +00:00
test-constantpool.cc [ptr-compr][ppc] Implement pointer compression 2020-05-06 19:06:32 +00:00
test-conversions.cc [cleanup] Remove V8_2PART_UINT64_C macro 2020-07-20 11:52:17 +00:00
test-cpu-profiler.cc [cpu-profiler] Remove hi-res options via tracing category 2020-05-14 15:30:04 +00:00
test-date.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-debug-helper.cc Reland "[heap] Make ReadOnlySpace use bump pointer allocation" 2020-06-18 11:48:38 +00:00
test-debug.cc [debugger] clarify purpose of test case 2020-04-29 10:42:21 +00:00
test-decls.cc [api] Create v8::String::NewFromLiteral that returns Local<String> 2020-03-09 12:02:07 +00:00
test-deoptimization.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-dictionary.cc [objects] Pass isolate to HashTable accesses 2020-07-09 08:11:08 +00:00
test-disasm-arm64.cc [arm64] Use B instruction key for return address signing 2020-06-16 11:02:59 +00:00
test-disasm-arm.cc [wasm-simd][arm] Prototype f32x4.nearest 2020-06-24 20:40:24 +00:00
test-disasm-ia32.cc [wasm][ia32][liftoff] Implement AtomicAdd except AtomicAddU64 2020-06-09 07:48:49 +00:00
test-disasm-mips64.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-disasm-mips.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-disasm-ppc.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-disasm-s390.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-disasm-x64.cc Reland "[wasm-simd] Prototype f64x2 rounding instructions" 2020-06-10 20:51:21 +00:00
test-diy-fp.cc [cleanup] Remove V8_2PART_UINT64_C macro 2020-07-20 11:52:17 +00:00
test-double.cc [cleanup] Remove V8_2PART_UINT64_C macro 2020-07-20 11:52:17 +00:00
test-dtoa.cc [cleanup] Remove V8_2PART_UINT64_C macro 2020-07-20 11:52:17 +00:00
test-elements-kind.cc [compiler][cleanup] Move Make(String|Name) helper methods to cctest.h 2020-05-26 15:26:28 +00:00
test-factory.cc heap: Avoid allocating a code range when running in jitless mode 2020-02-21 12:41:50 +00:00
test-fast-dtoa.cc [cleanup] Remove V8_2PART_UINT64_C macro 2020-07-20 11:52:17 +00:00
test-feedback-vector.cc [Turbofan] Allow CallIC to be polymorphic for same SharedFunctionInfos 2020-02-29 09:09:42 +00:00
test-feedback-vector.h [compiler] Make is_compiled_scope take an explicit Isolate 2020-07-06 15:49:55 +00:00
test-field-type-tracking.cc [compiler][cleanup] Move Make(String|Name) helper methods to cctest.h 2020-05-26 15:26:28 +00:00
test-fixed-dtoa.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-flags.cc [wasm] Remove the --wasm-interpret-all flag 2020-04-28 08:14:52 +00:00
test-func-name-inference.cc [api] Create v8::String::NewFromLiteral that returns Local<String> 2020-03-09 12:02:07 +00:00
test-fuzz-arm64.cc Move architecture dependent files 2019-05-28 14:02:15 +00:00
test-global-handles.cc Fix tests to work with single generation heap 2020-07-07 09:30:57 +00:00
test-global-object.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-hashcode.cc [ptr-compr] Pass Isolate to JSObject::NormalizeProperties() 2019-06-11 11:11:10 +00:00
test-hashmap.cc [cleanup] Replace function typedefs by using declarations 2019-05-28 08:35:08 +00:00
test-heap-profiler.cc [api] Create v8::String::NewFromLiteral that returns Local<String> 2020-03-09 12:02:07 +00:00
test-icache.cc [arm64] Use BTI instructions for forward CFI 2020-03-17 17:52:28 +00:00
test-identity-map.cc Fix tests to work with single generation heap 2020-07-07 09:30:57 +00:00
test-inobject-slack-tracking.cc Use consistent capitalization rules for instance types 2019-10-09 17:44:42 +00:00
test-inspector.cc Implement protocol::Binary to/from base64 conversion 2020-04-30 08:46:05 +00:00
test-intl.cc [lookup] Refactor LookupIterator "property or element" creation 2020-01-09 18:39:11 +00:00
test-javascript-arm64.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-js-arm64-variables.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-js-weak-refs.cc [weakrefs] Make unregister_token undefined on popped WeakCells 2020-07-07 17:24:31 +00:00
test-liveedit.cc Add quotes around unexpected token SyntaxError 2019-06-11 06:11:58 +00:00
test-local-handles.cc [heap] Allow thread's own LocalHandles to be dereferenced 2020-07-27 11:02:38 +00:00
test-lockers.cc Replace base::make_unique by std::make_unique 2019-09-10 11:21:51 +00:00
test-log-stack-tracer.cc [cleanup] Remove unused TickSample class from the public API 2019-08-22 07:27:35 +00:00
test-log.cc Revert "s390: [arm] Add missing RELATIVE_CODE_TARGET iteration" 2020-05-12 15:13:59 +00:00
test-macro-assembler-arm64.cc [ptr-compr][arm64] Use ldr_w to load on 32 bits for CompressedHeapConstants 2019-06-21 07:37:04 +00:00
test-macro-assembler-arm.cc [cleanup] Remove 'typedef struct' and 'typedef enum' 2019-05-28 12:17:35 +00:00
test-macro-assembler-mips64.cc [mips64][codegen] Remove dead argument to Assember::stop 2019-07-12 12:06:27 +00:00
test-macro-assembler-mips.cc [cleanup] Replace function typedefs by using declarations 2019-05-28 08:35:08 +00:00
test-macro-assembler-x64.cc Revert "[ptr-compr] Fix 32-bit smis on non-ptr-compr builds" 2020-02-27 11:22:12 +00:00
test-managed.cc Move more relevant files to src/objects 2019-05-23 08:52:30 +00:00
test-mementos.cc Move more relevant files to src/objects 2019-05-23 08:52:30 +00:00
test-modules.cc [runtime] Use TLA in more tests 2020-03-16 14:43:53 +00:00
test-object.cc Make ToInteger always truncate -0 2020-03-02 20:40:01 +00:00
test-orderedhashtable.cc [offthread] Deisolatify dictionaries 2020-03-03 20:08:54 +00:00
test-parsing.cc [zone] Cleanup zone allocations in src/ast and tests 2020-07-10 13:48:20 +00:00
test-persistent-handles.cc [compiler] Don't serialize BytecodeArrayData's source_positions_ 2020-07-14 11:01:44 +00:00
test-platform.cc s390: Edited Generate_CEntry to correctly return buffer when built with clang 2018-09-05 07:01:16 +00:00
test-pointer-auth-arm64.cc [arm64] Add support for pointer authentication instructions 2019-07-24 17:00:26 +00:00
test-poison-disasm-arm64.cc [arm64] Intentionally corrupt the upper half of decompressed SMIs 2019-11-19 12:14:12 +00:00
test-poison-disasm-arm.cc Reland "[TurboProp] Add MidTierMachineLoweringPhase to avoid Late/MemoryOptimizationPhases" 2019-09-26 16:39:15 +00:00
test-profile-generator.cc [cpu-profiler] Rename RecordTickSample to SymbolizeTickSample 2020-05-18 07:13:59 +00:00
test-random-number-generator.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-regexp.cc [zone] Cleanup zone allocations in src/regexp and tests 2020-07-10 10:30:05 +00:00
test-representation.cc Move relevant files to src/objects 2019-05-20 08:57:47 +00:00
test-roots.cc [heap] Use BasicMemoryChunk::FromHeapObject more 2020-06-17 14:05:48 +00:00
test-sampler-api.cc Reland "[arm64] Protect return addresses stored on stack" 2020-02-13 12:26:25 +00:00
test-serialize.cc Reland "[snapshot] rehash JSMap and JSSet during deserialization" 2020-05-27 08:49:38 +00:00
test-smi-lexicographic-compare.cc [cleanup] Eliminate non-const reference parameters 2019-09-10 09:31:07 +00:00
test-stack-unwinding-win64.cc Unwind V8 frames correctly on Windows ARM64 2019-07-31 06:24:45 +00:00
test-strings.cc Fix tests to work with single generation heap 2020-07-07 09:30:57 +00:00
test-strtod.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-symbols.cc Move utility code to src/utils 2019-05-23 14:13:34 +00:00
test-sync-primitives-arm64.cc [arm64] Use BTI instructions for forward CFI 2020-03-17 17:52:28 +00:00
test-sync-primitives-arm.cc Reland "[d8] Remove maximum workers limitation" 2019-07-30 07:56:17 +00:00
test-thread-termination.cc [weakrefs] Call Isolate::ClearKeptObjects() as part of microtask checkpoint 2020-02-19 02:25:34 +00:00
test-threads.cc Replace base::make_unique by std::make_unique 2019-09-10 11:21:51 +00:00
test-trace-event.cc Replace base::make_unique by std::make_unique 2019-09-10 11:21:51 +00:00
test-traced-value.cc [tracing] Improve tracing signals for compilation/optimization. 2019-03-25 14:49:08 +00:00
test-transitions.cc [ptr-compr] Isolatify Map::MigrateToMap() and friends 2019-07-03 08:08:05 +00:00
test-transitions.h [compiler] Test transition from Uninitialized to kFullTransitionArray 2020-07-28 13:03:31 +00:00
test-typedarrays.cc [api] Deprecate [Shared]ArrayBuffer::Externalize/GetContents and constructors 2019-10-29 22:01:54 +00:00
test-types.cc [turbofan] Normalize types for Oddball constants 2020-03-12 14:28:52 +00:00
test-unboxed-doubles.cc [compiler][cleanup] Move Make(String|Name) helper methods to cctest.h 2020-05-26 15:26:28 +00:00
test-unscopables-hidden-prototype.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-unwinder-code-pages.cc Reland "[arm64] Protect return addresses stored on stack" 2020-02-13 12:26:25 +00:00
test-unwinder.cc Reland "[arm64] Protect return addresses stored on stack" 2020-02-13 12:26:25 +00:00
test-usecounters.cc Adding counters for elements on Array.prototype and Object.prototype 2020-02-04 00:07:49 +00:00
test-utils-arm64.cc [arm64][cleanup] Remove CPURegister::Is and CPURegister::is 2019-11-14 12:58:09 +00:00
test-utils-arm64.h Move architecture dependent files 2019-05-28 14:02:15 +00:00
test-utils.cc [cleanup] Split out bit-field.h and bounds.h from utils/utils.h 2019-11-15 13:00:08 +00:00
test-v8windbg.cc [tools] Add v8windbg, a WinDbg extension for V8 2020-02-18 19:16:18 +00:00
test-version.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-weakmaps.cc Fix tests to work with single generation heap 2020-07-07 09:30:57 +00:00
test-weaksets.cc [objects] rename kSize to kHeaderSize for JSObject subclasses 2019-11-18 15:17:52 +00:00
testcfg.py Reland "Preparing v8 to use with python3 /test" 2019-03-20 09:56:06 +00:00
trace-extension.cc [api] Create v8::String::NewFromLiteral that returns Local<String> 2020-03-09 12:02:07 +00:00
trace-extension.h [cleanup] Remove unused TickSample class from the public API 2019-08-22 07:27:35 +00:00
unicode-helpers.cc Move string-related files to src/strings 2019-05-21 07:17:48 +00:00
unicode-helpers.h Move string-related files to src/strings 2019-05-21 07:17:48 +00:00