v8/src
Manos Koukoutos 74d9a7642d [wasm][fuzzer] Complex init. expressions in JS testcase
We enable struct.new and array.init initializer expressions in the JS
testcase generated by --wasm-fuzzer-gen-test. We needed to make some
changes in the WasmInitExpr class, and to implement a new interface for
the WasmFullDecoder, which constructs a WasmInitExpr.
Changes:
- Make WasmInitExpr a ZoneObject. Use a pointer for its operands_ field.
  This is needed so WasmInitExpr is trivially copiable, and thus usable
  as a Value type in WasmFullDecoder.
- Implement a WasmFullDecoder interface in wasm-fuzzer-common that
  constructs a WasmInitExpr. Use it to decode initializers in the
  module generated by the fuzzer.
- Change AppendInitExpr to take a WasmInitExpr as argument.
- Fix an issue with printing of struct definitions.
- Change initializer expression used for structs to struct.new_with_rtt.
  This is consistent with the currently used structural types.

Bug: v8:11954
Change-Id: I65a87cc98701a54f32500be192b3b6eef2ff6c8c
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3257712
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Reviewed-by: Thibaud Michaud <thibaudm@chromium.org>
Commit-Queue: Manos Koukoutos <manoskouk@chromium.org>
Cr-Commit-Position: refs/heads/main@{#77730}
2021-11-05 12:17:48 +00:00
..
api [api][profiler] Surface CpuProfiler memory in HeapCodeStatistics 2021-11-04 11:01:09 +00:00
asmjs [wasm][fuzzer] Complex init. expressions in JS testcase 2021-11-05 12:17:48 +00:00
ast [compiler-dispatcher] Move to full SFI keying 2021-11-04 15:11:44 +00:00
base heap: Enable lazy commits for Fuchsia 2021-10-25 16:31:19 +00:00
baseline ppc/s390: [baseline] Add placeholder for sparkplug 2021-10-29 15:16:27 +00:00
bigint [bigint][cleanup] Fix -Wshadow warning 2021-09-24 14:19:15 +00:00
builtins Remove LayoutDescriptor from Torque 2021-11-04 14:11:32 +00:00
codegen [cleanup] Consistently name flag disabled_optimization_reason 2021-11-05 10:28:26 +00:00
common [ic,baseline] Add KeyedDefineOwnIC_Slow and use StoreOwnICBaseline in baseline 2021-10-28 11:34:23 +00:00
compiler [loong64][mips] Fix safepoint record of CallCFunction 2021-11-04 02:29:29 +00:00
compiler-dispatcher [compiler-dispatcher] Focus API around SFIs, not literals 2021-11-05 10:10:11 +00:00
d8 Reland "[d8] Verify host-defined options" 2021-11-04 22:28:18 +00:00
date [date] Skip leading zeros when parsing date string 2021-10-28 11:49:10 +00:00
debug Introduce NewSlowJSObjectWithNullProto for debugger use 2021-11-03 08:36:23 +00:00
deoptimizer Remove neis@ from owners file 2021-10-26 11:15:20 +00:00
diagnostics [string] Micro-optimize String::Flatten 2021-11-04 10:43:44 +00:00
execution [heap] Introduce GlobalSafepoint and GlobalSafepointScope 2021-11-05 07:46:26 +00:00
extensions [interpreter] Port GetDispatchCountersObject to internal 2021-08-25 09:50:51 +00:00
flags [compiler-dispatcher] Focus API around SFIs, not literals 2021-11-05 10:10:11 +00:00
handles [handles] DCHECK that thread is running in LocalHandleScope constructor 2021-11-03 08:42:20 +00:00
heap [off-thread] Initialise placeholder SFI as full copy 2021-11-05 09:24:37 +00:00
ic [ic] Add StoreOwnIC_Slow 2021-11-04 11:03:39 +00:00
init [heap] Introduce GlobalSafepoint and GlobalSafepointScope 2021-11-05 07:46:26 +00:00
inspector Revert "[inspector] Use side-effect free debug evaluate for inherited accessors." 2021-11-04 14:01:50 +00:00
interpreter [class] use KeyedDefineOwnIC in private brand initialization 2021-11-02 17:38:38 +00:00
json Revert "[runtime] Optimise paired instance type checks" 2021-11-04 10:14:41 +00:00
libplatform Introduce v8_enable_virtual_memory_cage 2021-08-11 16:13:42 +00:00
libsampler Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
logging [cleanup] Consistently name flag disabled_optimization_reason 2021-11-05 10:28:26 +00:00
numbers [cleanup] Fix -Wshadow in src/numbers/ 2021-09-27 07:54:29 +00:00
objects [cleanup] Consistently name flag disabled_optimization_reason 2021-11-05 10:28:26 +00:00
parsing [parser] Only post tasks when there is no error 2021-11-05 11:06:18 +00:00
profiler [cleanup] Consistently name flag disabled_optimization_reason 2021-11-05 10:28:26 +00:00
protobuf Remove petermarshall from OWNERS 2021-03-31 11:00:22 +00:00
regexp [regexp] Update capture name parsing for recent spec changes 2021-11-05 10:09:07 +00:00
roots [wasm] Add WasmApiFunctionRef object 2021-10-27 13:17:32 +00:00
runtime [cleanup] Consistently name flag disabled_optimization_reason 2021-11-05 10:28:26 +00:00
sanitizer Reland "[elements] Avoid racy data reads/writes" 2021-05-06 10:46:52 +00:00
security Introduce CagedPointer 2021-10-29 13:36:07 +00:00
snapshot Adds counter for snapshot decompression time 2021-11-02 16:54:18 +00:00
strings [cleanup] Make PropertyLocation a scoped enum 2021-09-28 18:39:41 +00:00
tasks Remove rmcilroy from OWNERS. 2021-08-19 16:30:27 +00:00
third_party Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
torque Revert "Reland "[torque] Don't generate k(?:Start|End)Of\w+FieldsOffset constants"" 2021-11-03 15:59:49 +00:00
tracing [base] Move utils/vector.h to base/vector.h 2021-06-18 13:33:13 +00:00
trap-handler [trap-handler] Fix -Wshadow warnings 2021-10-15 23:09:46 +00:00
utils [compiler-dispatcher] Move to full SFI keying 2021-11-04 15:11:44 +00:00
wasm [wasm][fuzzer] Complex init. expressions in JS testcase 2021-11-05 12:17:48 +00:00
web-snapshot [web snapshots] Add an experimiental flag for treating scripts as web snapshots 2021-10-14 06:52:13 +00:00
zone [regexp] Release regexp zone memory during JS parsing 2021-11-02 11:56:11 +00:00
DEPS cppgc: Prohibit Oilpan usage from within V8 2021-08-25 08:24:33 +00:00
DIR_METADATA Add DIR_METADATA files to v8. 2020-10-20 22:12:28 +00:00
OWNERS Add DIR_METADATA files to v8. 2020-10-20 22:12:28 +00:00