v8/test/cctest
Maciej Goszczycki 964edc251f [heap] Set read-only space's and its pages' heap_ to null.
Various small changes are required to enable this.

HeapObject::GetReadOnlyRoots no longer uses the Space's heap when
possible (see comment in ReadOnlyHeap::GetReadOnlyRoots definition).
This requires that ReadOnlyRoots be construct-able using a raw pointer
to the read-only space's roots array.

Global read-only heap state is now cleared by tests where appropriate
and extra DCHECKs in ReadOnlyHeap::SetUp should make catching future
issues easier.

String padding is now always cleared just before read-only space is
sealed when not deserializing.

Change-Id: I7d1db1c11567be5df06ff7066f3a699125f8b372
Bug: v8:7464
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1535830
Commit-Queue: Maciej Goszczycki <goszczycki@google.com>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Dan Elphick <delphick@chromium.org>
Cr-Commit-Position: refs/heads/master@{#61188}
2019-05-02 19:11:18 +00:00
..
compiler [turbofan] Don't allocate JSHeapBroker in the zone 2019-05-02 13:02:19 +00:00
heap [heap] Set read-only space's and its pages' heap_ to null. 2019-05-02 19:11:18 +00:00
interpreter [class] Remove flags for class fields 2019-05-01 02:02:51 +00:00
libplatform [tracing] Add missing support for flow events. 2019-03-13 16:01:19 +00:00
libsampler [cpu-profiler] Only record SIGPROF-based samples for samplers that request samples 2019-02-13 09:29:38 +00:00
parsing [class] Remove flags for class fields 2019-05-01 02:02:51 +00:00
torque [torque] add references to HeapObject fields. 2019-04-11 14:11:18 +00:00
wasm [cleanup] Use Vector::begin instead of Vector::start 2019-04-29 12:43:16 +00:00
assembler-helper-arm.cc [cleanup] Switch to CodeBuilder everywhere 2019-04-29 16:48:39 +00:00
assembler-helper-arm.h [arm, arm64] Setup arguments to RecordWriteStub using mov. 2019-03-05 11:07:00 +00:00
BUILD.gn Reland "[heap] Skip ro-space from heap iterators, add CombinedHeapIterator." 2019-05-02 17:35:18 +00:00
cctest.cc Reland "[heap] Skip ro-space from heap iterators, add CombinedHeapIterator." 2019-05-02 17:35:18 +00:00
cctest.h Reland "[heap] Skip ro-space from heap iterators, add CombinedHeapIterator." 2019-05-02 17:35:18 +00:00
cctest.status [test] Stress wasm code gc in "stress_background_compile" 2019-05-02 09:56:05 +00:00
DEPS [torque]: Add the ability to test Torque functionality with cctest 2018-05-13 10:58:56 +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 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 [log] Improve log parsing 2018-06-20 13:40:22 +00:00
OWNERS [MIPS] Set Yu Yin as owner of MIPS files. 2019-03-06 11:46:22 +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 [interpreter] Always put bytecode handlers in builtins table 2018-09-20 09:58:15 +00:00
test-access-checks.cc Replace CHECK(false) by UNREACHABLE() 2017-12-19 18:58:07 +00:00
test-accessor-assembler.cc [ubsan] Port Map to the new design 2018-11-13 06:59:12 +00:00
test-accessors.cc [Test] Add PrepareForOptimization to cctests 2019-04-30 15:49:02 +00:00
test-allocation.cc [zone] Fix peak memory accounting 2019-03-28 13:39:11 +00:00
test-api-accessors.cc [Test] Add PrepareForOptimization to cctests 2019-04-30 15:49:02 +00:00
test-api-interceptors.cc [Test] Add PrepareForOptimization to cctests 2019-04-30 15:49:02 +00:00
test-api.cc [Test] Add PrepareForOptimization to cctests 2019-04-30 15:49:02 +00:00
test-api.h [ubsan] Replace a few more Object** with alternatives 2018-12-17 14:17:22 +00:00
test-array-list.cc [explicit isolates] Remove GetIsolate from objects.cc 2018-07-13 12:42:14 +00:00
test-assembler-arm64.cc Touch guard pages when allocating stack frames 2019-05-02 17:46:18 +00:00
test-assembler-arm.cc [cleanup] Switch to CodeBuilder everywhere 2019-04-29 16:48:39 +00:00
test-assembler-ia32.cc Touch guard pages when allocating stack frames 2019-05-02 17:46:18 +00:00
test-assembler-mips64.cc [mips] Fix build error after switch to CodeBuilder. 2019-04-30 13:50:03 +00:00
test-assembler-mips.cc [mips] Fix build error after switch to CodeBuilder. 2019-04-30 13:50:03 +00:00
test-assembler-ppc.cc [cleanup] Switch to CodeBuilder everywhere 2019-04-29 16:48:39 +00:00
test-assembler-s390.cc [cleanup] Switch to CodeBuilder everywhere 2019-04-29 16:48:39 +00:00
test-assembler-x64.cc Touch guard pages when allocating stack frames 2019-05-02 17:46:18 +00:00
test-atomicops.cc Normalize casing of hexadecimal digits 2017-12-02 01:24:40 +00:00
test-bignum-dtoa.cc [cleanup] Remove {StrLength} function 2019-04-29 15:55:46 +00:00
test-bignum.cc [cleanup] Remove {StrLength} function 2019-04-29 15:55:46 +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 [cleanup] Mark test/ methods in subclasses with override. 2018-09-17 07:40:00 +00:00
test-code-layout.cc [cleanup] Switch to CodeBuilder everywhere 2019-04-29 16:48:39 +00:00
test-code-stub-assembler.cc [cleanup] Use Vector::begin instead of Vector::start 2019-04-29 12:43:16 +00:00
test-compiler.cc [Test] Add PrepareForOptimization to cctests 2019-04-30 15:49:02 +00:00
test-constantpool.cc [assembler] Move ConstantPools out of src/assembler.h 2018-10-19 11:38:39 +00:00
test-conversions.cc [objects.h splitting] Move HeapNumber to heap-number.h 2018-12-17 17:58:09 +00:00
test-cpu-profiler.cc [Test] Add PrepareForOptimization to cctests 2019-04-30 15:49:02 +00:00
test-date.cc [Intl] Move cachedOrNewService to C++ w/o caching 2018-11-02 07:08:26 +00:00
test-debug.cc [class] Remove flags for class fields 2019-05-01 02:02:51 +00:00
test-decls.cc [Test] Add PrepareForOptimization to cctests 2019-04-30 15:49:02 +00:00
test-deoptimization.cc [cleanup] Use Vector::begin instead of Vector::start 2019-04-29 12:43:16 +00:00
test-dictionary.cc Switch RehashBasedOnMap to use ReadOnlyRoots 2019-02-25 12:28:26 +00:00
test-disasm-arm64.cc Explicitly store the code layout in CodeDesc 2019-01-30 13:17:38 +00:00
test-disasm-arm.cc [cleanup] Use Vector::begin instead of Vector::start 2019-04-29 12:43:16 +00:00
test-disasm-ia32.cc [cleanup] Switch to CodeBuilder everywhere 2019-04-29 16:48:39 +00:00
test-disasm-mips64.cc [cleanup] Use Vector::begin instead of Vector::start 2019-04-29 12:43:16 +00:00
test-disasm-mips.cc [cleanup] Use Vector::begin instead of Vector::start 2019-04-29 12:43:16 +00:00
test-disasm-ppc.cc PPC/s390: [cleanup] Use Vector::begin instead of Vector::start 2019-04-29 21:36:34 +00:00
test-disasm-s390.cc PPC/s390: [cleanup] Use Vector::begin instead of Vector::start 2019-04-29 21:36:34 +00:00
test-disasm-x64.cc [cleanup] Switch to CodeBuilder everywhere 2019-04-29 16:48:39 +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 [cleanup] Remove {StrLength} function 2019-04-29 15:55:46 +00:00
test-elements-kind.cc [cleanup] Use Vector::begin instead of Vector::start 2019-04-29 12:43:16 +00:00
test-extra.js [js] Remove CORE JS Natives (prologue.js), port extra utils to C++/Torque 2019-01-07 11:57:46 +00:00
test-factory.cc [cleanup] Switch to CodeBuilder everywhere 2019-04-29 16:48:39 +00:00
test-fast-dtoa.cc [cleanup] Remove {StrLength} function 2019-04-29 15:55:46 +00:00
test-feedback-vector.cc [lite] Allocate feedback vectors lazily 2019-03-25 16:02:38 +00:00
test-feedback-vector.h [lite] Allocate feedback vectors lazily 2019-03-25 16:02:38 +00:00
test-field-type-tracking.cc [cleanup] Switch to CodeBuilder everywhere 2019-04-29 16:48:39 +00:00
test-fixed-dtoa.cc [cleanup] Use Vector::begin instead of Vector::start 2019-04-29 12:43:16 +00:00
test-flags.cc [flags] Receive length as size_t 2019-04-24 10:43:17 +00:00
test-func-name-inference.cc [fni] Mark computed props as computed, not anonymous function 2019-03-01 20:52:03 +00:00
test-fuzz-arm64.cc Reland "Add Windows ARM64 ABI support to V8" 2018-10-24 19:46:36 +00:00
test-global-handles.cc Reland "[api,heap] Remove deprecated Persistent APIs" 2019-04-24 09:34:27 +00:00
test-global-object.cc [iwyu] api.h iwyu 2018-07-20 11:49:02 +00:00
test-hashcode.cc [cleanup] Free 400 targets from the draconic reign of.. 2019-03-26 10:56:21 +00:00
test-hashmap.cc [ubsan] Fix various cases of undefined behavior 2019-01-10 13:52:04 +00:00
test-heap-profiler.cc [Test] Add PrepareForOptimization to cctests 2019-04-30 15:49:02 +00:00
test-icache.cc PPC: removed AIX function descriptors in tests 2019-03-06 12:55:45 +00:00
test-identity-map.cc [objects.h splitting] Move HeapNumber to heap-number.h 2018-12-17 17:58:09 +00:00
test-inobject-slack-tracking.cc Tweak how v8 preallocates instance fields 2019-04-16 18:07:00 +00:00
test-inspector.cc [cleanup] Refactor inspector to use default members. 2018-09-18 09:13:59 +00:00
test-intl.cc Defer inferring language mode as far as possible 2019-01-25 11:53:19 +00:00
test-javascript-arm64.cc [deprecation] Deprecate ToBoolean(Local<Context>) 2018-09-24 12:02:09 +00:00
test-js-arm64-variables.cc [jumbo] arm64 cctest fixes 2017-09-30 17:17:23 +00:00
test-js-weak-refs.cc [js weak refs] Expand WeakCell::WeakCellVerify + minor fix 2019-01-31 16:50:20 +00:00
test-liveedit.cc [Test] Add PrepareForOptimization to cctests 2019-04-30 15:49:02 +00:00
test-lockers.cc [Test] Add PrepareForOptimization to cctests 2019-04-30 15:49:02 +00:00
test-log-stack-tracer.cc [cleanup] Use Vector::begin instead of Vector::start 2019-04-29 12:43:16 +00:00
test-log.cc [Test] Add PrepareForOptimization to cctests 2019-04-30 15:49:02 +00:00
test-macro-assembler-arm.cc [cleanup] Switch to CodeBuilder everywhere 2019-04-29 16:48:39 +00:00
test-macro-assembler-mips64.cc [mips] Fix build error after switch to CodeBuilder. 2019-04-30 13:50:03 +00:00
test-macro-assembler-mips.cc [mips] Fix build error after switch to CodeBuilder. 2019-04-30 13:50:03 +00:00
test-macro-assembler-x64.cc Touch guard pages when allocating stack frames 2019-05-02 17:46:18 +00:00
test-managed.cc Add size estimate to Managed<T> 2018-05-30 10:26:21 +00:00
test-mementos.cc [cleanup] #include heap-inl.h less often 2019-02-15 06:22:53 +00:00
test-modules.cc [api,modules] Allow GetModuleNamespace on unevaluated modules. 2018-01-08 09:01:25 +00:00
test-object.cc [runtime] Simplify/unify utf8 handling 2019-04-26 15:44:31 +00:00
test-orderedhashtable.cc [dict] Add more useful methods 2019-01-07 19:39:34 +00:00
test-parsing.cc [class] Remove flags for class fields 2019-05-01 02:02:51 +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-poison-disasm-arm.cc [Test] Add PrepareForOptimization to cctests 2019-04-30 15:49:02 +00:00
test-profile-generator.cc [Test] Add PrepareForOptimization to cctests 2019-04-30 15:49:02 +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 Remove sorting methods from Vector 2019-04-30 10:18:06 +00:00
test-representation.cc [cleanup] Remove obsolete representations. 2019-02-21 06:07:06 +00:00
test-roots.cc [cleanup] #include heap-inl.h less often 2019-02-15 06:22:53 +00:00
test-sampler-api.cc PPC/s390: [Profiler] Ensure ticks in frameless bytecode handlers are interpreted frames. 2019-05-02 14:22:13 +00:00
test-serialize.cc [heap] Set read-only space's and its pages' heap_ to null. 2019-05-02 19:11:18 +00:00
test-smi-lexicographic-compare.cc [ubsan] Port Smi to the new design 2018-11-05 20:52:51 +00:00
test-stack-unwinding-x64.cc [Test] Add PrepareForOptimization to cctests 2019-04-30 15:49:02 +00:00
test-strings.cc [cleanup] Remove {StrLength} function 2019-04-29 15:55:46 +00:00
test-strtod.cc [cleanup] Remove {StrLength} function 2019-04-29 15:55:46 +00:00
test-symbols.cc [cleanup] Remove Isolate parameter from object print 2018-07-12 11:31:57 +00:00
test-sync-primitives-arm64.cc [cleanup] Switch to CodeBuilder everywhere 2019-04-29 16:48:39 +00:00
test-sync-primitives-arm.cc [base] Introduce MutexGuard as typedef for LockGuard<Mutex> 2018-10-12 15:44:51 +00:00
test-thread-termination.cc [regexp] Implement interrupt support in the interpreter 2019-03-12 13:44:12 +00:00
test-threads.cc Clean up ThreadId 2019-03-11 10:37:05 +00:00
test-trace-event.cc [cleanup] Clean up trace event tests by removing macros 2019-03-25 13:46:58 +00:00
test-traced-value.cc [tracing] Improve tracing signals for compilation/optimization. 2019-03-25 14:49:08 +00:00
test-transitions.cc [cleanup] Use Vector::begin instead of Vector::start 2019-04-29 12:43:16 +00:00
test-transitions.h [ubsan] Port Map to the new design 2018-11-13 06:59:12 +00:00
test-typedarrays.cc Remove always-true --harmony-bigint runtime flag 2018-10-01 11:31:13 +00:00
test-types.cc Add target for common test headers 2019-02-12 09:30:01 +00:00
test-unboxed-doubles.cc [cleanup] Use Vector::begin instead of Vector::start 2019-04-29 12:43:16 +00:00
test-unscopables-hidden-prototype.cc [api] Mark SetHiddenPrototype as DEPRECATED 2019-02-08 14:49:30 +00:00
test-unwinder.cc [Test] Add PrepareForOptimization to cctests 2019-04-30 15:49:02 +00:00
test-usecounters.cc [counters] remove "override mistake" use counters 2019-01-18 19:27:29 +00:00
test-utils-arm64.cc Reland "[arm64] Cleanup TODO around handling of x18" 2019-04-29 12:31:16 +00:00
test-utils-arm64.h Reland "[arm64] Cleanup TODO around handling of x18" 2019-04-29 12:31:16 +00:00
test-utils.cc [cleanup] Remove {StrLength} function 2019-04-29 15:55:46 +00:00
test-version.cc [cleanup] Use Vector::begin instead of Vector::start 2019-04-29 12:43:16 +00:00
test-weakmaps.cc Reland "[heap] Clean-up keys of oldspace weakmaps during scavenge" 2019-04-01 13:59:56 +00:00
test-weaksets.cc Retire PretenureFlag and use AllocationType everywhere. 2019-03-12 08:10:44 +00:00
testcfg.py Reland "Preparing v8 to use with python3 /test" 2019-03-20 09:56:06 +00:00
trace-extension.cc [ubsan] Port Smi to the new design 2018-11-05 20:52:51 +00:00
trace-extension.h [cleanup] Mark test/ methods in subclasses with override. 2018-09-17 07:40:00 +00:00
unicode-helpers.cc Fix & reland "[utf8] Rewrite NewStringFromUtf8 using Utf8::ValueOfIncremental" 2019-02-06 13:11:11 +00:00
unicode-helpers.h [Parser] Add support for Zone allocated ConsumedPreParsingScopeData. 2018-09-07 10:28:40 +00:00