v8/test/unittests
Seth Brenith 72d440d97d [torque] Strict verification of weak fields
Now that we can represent specific weak types with Weak<T>, this CL
updates the generated verifier functions so that they permit weak
references only to the specified type. As an example, consider the
verifier emitted for the following field in PrototypeInfo:

  object_create_map: Weak<Map>|Undefined;

We used to emit the following, which allowed any weak reference:

  CHECK(object_create_map__value.IsWeakOrCleared()
      || object_create_map__value.GetHeapObjectOrSmi().IsOddball());

With this change, we emit a stricter check:

  CHECK(object_create_map__value.IsCleared()
      || (!object_create_map__value.IsWeak()
          && object_create_map__value.GetHeapObjectOrSmi().IsOddball())
      || (object_create_map__value.IsWeak()
          && object_create_map__value.GetHeapObjectOrSmi().IsMap()));

Bug: v8:7793
Change-Id: I4be236d97dedbcdd6c98207928aee8bda2a77f00
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1914613
Commit-Queue: Seth Brenith <seth.brenith@microsoft.com>
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#64965}
2019-11-14 18:24:47 +00:00
..
api Replace base::make_unique by std::make_unique 2019-09-10 11:21:51 +00:00
asmjs Move more relevant files to src/objects 2019-05-23 08:52:30 +00:00
assembler [arm64][cleanup] Remove CPURegister::Is and CPURegister::is 2019-11-14 12:58:09 +00:00
base [utils] Move {WhichPowerOf2} to base::bits 2019-11-08 09:45:50 +00:00
codegen [csa] move TNode to separate header 2019-09-12 14:48:03 +00:00
compiler Revert "[turbofan][64] Remove Smi Untagging extra nodes for 31 bit smis" 2019-11-13 11:58:52 +00:00
compiler-dispatcher Replace base::make_unique by std::make_unique 2019-09-10 11:21:51 +00:00
date Reland "[d8] Remove maximum workers limitation" 2019-07-30 07:56:17 +00:00
diagnostics Move unittest files 2019-05-27 08:52:23 +00:00
execution [WeakRefs] Make cleanup callback run as a task 2019-07-30 12:19:39 +00:00
heap [heap] Introduce OffThreadLargeObjectSpace 2019-11-04 10:34:30 +00:00
interpreter [cleanup] Remove sloppy-ness from SetAccumulator 2019-11-14 10:47:59 +00:00
libplatform Reland "Refactor platform tests to avoid deprecated API" 2019-10-21 14:03:21 +00:00
logging Reland "Unconditionally enable snapshot builds and remove 'v8_use_snapshot'" 2019-10-16 06:01:05 +00:00
numbers [cleanup] Replace simple typedefs by using 2019-05-27 12:39:49 +00:00
objects [api] Deprecate [Shared]ArrayBuffer::Externalize/GetContents and constructors 2019-10-29 22:01:54 +00:00
parser Move remaining files in src/ 2019-05-24 18:24:36 +00:00
profiler [cleanup] Replace simple typedefs by using 2019-05-27 12:39:49 +00:00
regress Move relevant files to src/execution 2019-05-22 08:36:33 +00:00
strings [cleanup] Remove 'typedef struct' and 'typedef enum' 2019-05-28 12:17:35 +00:00
tasks Replace base::make_unique by std::make_unique 2019-09-10 11:21:51 +00:00
torque [torque] Strict verification of weak fields 2019-11-14 18:24:47 +00:00
utils [cleanup] Replace simple typedefs by using 2019-05-27 12:39:49 +00:00
wasm [codegen] Reduce kMinimalBufferSize and add kDefaultBufferSize 2019-11-14 15:05:31 +00:00
zone [zone] Remove segment pooling from accounting allocator 2019-03-01 09:25:48 +00:00
BUILD.gn [DevTools] Roll inspector_protocol (v8) (file split) 2019-11-12 10:27:01 +00:00
DEPS Move unit tests to test/unittests. 2014-10-01 08:34:25 +00:00
run-all-unittests.cc Reland "Add test to show the crashing of TimeZone::AdoptDefault" 2019-05-16 09:38:43 +00:00
test-helpers.cc Replace base::make_unique by std::make_unique 2019-09-10 11:21:51 +00:00
test-helpers.h [Compiler] Remove CompilerDispatcherJob and use BackgroundCompileTask directly 2018-10-09 10:39:27 +00:00
test-utils.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
test-utils.h [cleanup] Replace simple typedefs by using 2019-05-27 12:39:49 +00:00
testcfg.py Reland "Preparing v8 to use with python3 /test" 2019-03-20 09:56:06 +00:00
unittests.status [ptr-compr] Added tagged equality cases to DecompressionOptimizer 2019-10-23 13:53:04 +00:00