- 15 Oct, 2020 1 commit
-
-
Ng Zhi An authored
Prefixed opcodes have a 1 byte prefix, followed by LEB-encoded u32. This changes all prefixed opcodes (gc, numeric, atomic), to that. (Simd was already so.) We can clean up read_prefix_opcode to return the total number of bytes, 1 byte prefix + leb encoded, that will be in a future patch. Bug: v8:10810,v8:10994 Change-Id: Ia74604acc059c1336b87e9f477598732de219ca9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2465057Reviewed-by: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#70544}
-
- 13 Oct, 2020 1 commit
-
-
Clemens Backes authored
We now remember whether the memory was 64 bit, in in this case force the index value to be an i64 instead of an i32. This is only the decoding part of this change. TurboFan and Liftoff will have to be fixed separately to handle the i64 values correctly. R=manoskouk@chromium.org Bug: v8:10949 Change-Id: Ia504e7eb5a2a55caf8dfdbd0833481ef590c55bf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2461239 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/master@{#70473}
-
- 08 Oct, 2020 1 commit
-
-
Clemens Backes authored
Remove one "mode" of LEB decoding by eliminating the {AdvancePCFlag}, and doing the PC advance in the caller instead. The returned length is now always zero in case of an error, thus remove the respective checks from the unit tests. The returned length does not really matter if we ran into an error. R=thibaudm@chromium.org Change-Id: Ibfd94dd981cefa2fc24c7af560c85afd1c826f2c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2449972Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70404}
-
- 05 Oct, 2020 1 commit
-
-
Manos Koukoutos authored
We used not to emit canonical indexes for arrays and structs into WasmModule::signature_ids, which resulted in signature_ids not referring to the correct type indices in a WasmModule. Changes: - Rename signature_ids to canonical_type_ids. - Emit trivial canonical type ids for structs and arrays. - Add a test to catch the existing bug. - Improve DCHECKs for module type accessors. Bug: v8:7748 Change-Id: I67ad58865e35b459b21db12557564b652035db75 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2444989 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#70318}
-
- 01 Oct, 2020 1 commit
-
-
Manos Koukoutos authored
Decoding of gc/reference type instructions assumed that popping a value from the stack would either throw an error or return a value of the expected type. This is not true in unreachable contexts, where a bottom-typed value can be returned. This CL fixes this problem, adds tests which expose it, and improves AddFunction() in the infrastructure of function-body-decoder-unittest.cc. Bug: v8:7748 Change-Id: I7e9d0caa9ba1687b68a5cdad7b99c054285d9f0e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2440577 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#70246}
-
- 30 Sep, 2020 1 commit
-
-
Clemens Backes authored
As a preparation to add a "boolean validation" mode, rename the existing flags. This removes many unrelated changes from the follow-up change and makes it easier to review. R=thibaudm@chromium.org Bug: v8:10969 Change-Id: I5f71405b525a7caa91be46c035e31d4d960e4e4c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2440036Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70224}
-
- 29 Sep, 2020 1 commit
-
-
Manos Koukoutos authored
Change-Id: I7bca3ed949a5dd036c3255cc5853819312387cce Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2436330Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/master@{#70190}
-
- 28 Sep, 2020 1 commit
-
-
Manos Koukoutos authored
Changes: - Add current global index argument to consume_init_expr. - Inline DecodeGlobalInModule. Move the check for undefined global indexes into into consume_init_expr. Note: This fixes a bug where the index wasn't checked for nested global.get. - Under --experimental-wasm-gc, allow global initializers to reference already defined globals in the same module. - Rename ModuleDecoderImpl::DecodeInitExpr -> DecodeInitExprForTesting. Remove redundant "start" argument. - Add tests for global initializers. Remove a redundant test. Bug: v8:7748 Change-Id: Ieb4a768f8cfdd423e5f439bb3467700068f240b7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2428596 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#70181}
-
- 25 Sep, 2020 1 commit
-
-
Adam Klein authored
These instructions were changed from "s8x16" to "i8x16" prefixes in https://github.com/WebAssembly/simd/pull/321. This CL updates all V8 code, including arch-specific code, to match. Bug: v8:10946, v8:10933 Change-Id: I26ef9ad77571f94501d42c1d65f57380fd507f3d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2432068Reviewed-by: Zhi An Ng <zhin@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#70143}
-
- 24 Sep, 2020 2 commits
-
-
Manos Koukoutos authored
Changes: - Add dedicated exception for call_ref invoking a WasmJSFunction. - Small restructuring of read_value_type. - Change HeapType::kLastSentinel to point to the last valid type, update is_valid(). - Remove redundant DCHECK from ValueType constructors. - Rename a few section-related macros in module-decoder-unittest.cc, add a small test. - Rename "Simd128" -> "s128" in error message. - Write some documentation, mostly in value-type.h and wasm-subtyping.h. Bug: v8:7748 Change-Id: I4fc4826fbdeac50e21ef524787c2024d7aa1b3b2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2424139 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#70118}
-
Clemens Backes authored
This is a first small step for implementing the memory64 proposal: 1. Add a feature flag. 2. Add the 0x04 and 0x05 limits flag for memory64. 3. Read memory limits as LEB-encoded u64 (instead of u32) if a memory64 limit flag was read. 4. Unify {MaximumFlag} and {MemoryFlag}, which was used inconsistently before. 5. Add test for memory limits encoded with >5 bytes. 6. Move some macros from module-decoder-unittest.cc to wasm-macro-gen.h. Note that still the same limits for the maximum number of pages applies as before, i.e. you cannot specify a memory >4GB yet. But you can encode that small number in >5 bytes. R=manoskouk@chromium.org Bug: v8:10949 Change-Id: I90a4f08426ae714a67440281785eb00cfc24a349 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2423712 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/master@{#70110}
-
- 23 Sep, 2020 1 commit
-
-
Manos Koukoutos authored
This fixes a bug caused by StartFunction() being called for an invalid module. Bug: v8:7748 Change-Id: I47a3f3573355d87554b123dd1edc7c829bb43d0e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2423710 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#70081}
-
- 21 Sep, 2020 2 commits
-
-
Manos Koukoutos authored
Changes: - When checking if a table is a function table, check for subtyping to funcref instead of equality. - Add WasmModuleObject argument to GetFunctionTableEntry. - Implement WasmTableObject::Get/Set for all legal table types. - Factor out SetFunctionTableEntry from WasmTableObject::Set. - Write unittests and JS tests. Bug: v8:9495 Change-Id: I4f0c7a7013f17c561afb3039c5e0811634a4d313 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2416387 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#70032}
-
Manos Koukoutos authored
Drive-by: add const modifier to some StructType fields Bug: v8:7748 Change-Id: Ic0b4bb51ed01502f19d082c669683f69b85e76e7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2419015 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#70029}
-
- 18 Sep, 2020 1 commit
-
-
Manos Koukoutos authored
Changes: - Rename IsSignatureEqual -> MatchesSignature for consistency - Add WasmInstanceObject field to WasmTableObject. - Improve some error messages related to tables in function-body-decoder-impl.h. - Introduce WasmTable::IsValidTableType. Use it wherever appropriate. - Overload equality operators in HeapType to work with HeapType::Representation. - Rename DynamicTypeCheckRef -> TypecheckJSObject. - Handle WasmCapiFunctions in TypecheckJSObject. - Use TypecheckJSObject in WasmTableObject::IsValidElement. - A few more minor improvements. Bug: v8:9495 Change-Id: I2867dd3486d7c31717ac26b87a50e15cf2b898be Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2416491 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#70001}
-
- 16 Sep, 2020 1 commit
-
-
Thibaud Michaud authored
For "else" and "catch" statements, the Ref to the end label should only be added if the current block is unreachable, not the parent block. In the added regression test, the "true" block ends in an unreachable state with a stack height less than the target height of the end label. This is valid due to the semantics of unreachable code, but we should not add the Ref in this case because its stack height is invalid. R=clemensb@chromium.org Fixed: chromium:1092130 Change-Id: Iebaf5e7d6516278ccd3c8268ac331069e109d882 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2412181 Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#69934}
-
- 11 Sep, 2020 1 commit
-
-
Jakob Kummerow authored
Bug: v8:7748 Change-Id: I463c7472ebaa5b4092b7f0e69e259abbf9c3bc06 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2390769 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/master@{#69853}
-
- 09 Sep, 2020 1 commit
-
-
Manos Koukoutos authored
Additional changes: - Add tests. - Rename some subtyping functions. Bug: v8:7748 Change-Id: I3635e93ea6bbab1942f927a8e414afc8efd31f69 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2389983 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#69784}
-
- 17 Aug, 2020 1 commit
-
-
Emanuel Ziegler authored
Add an event for recording metrics related to decoding Wasm modules. R=clemensb@chromium.org Bug: chromium:1092417 Change-Id: Id60560d8eb8c14edb5b863857b18c1c82f48e7e7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2351672 Commit-Queue: Emanuel Ziegler <ecmziegler@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#69425}
-
- 13 Aug, 2020 1 commit
-
-
Jakob Kummerow authored
This fixes a case where we hit a DCHECK in Debug mode, or silently discarded bogus data in Release mode without rejecting the module. Fixed: chromium:1108815 Change-Id: I928ff244a54b016cd8470be1ec4b5faf2c7e3994 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2349768 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/master@{#69391}
-
- 10 Aug, 2020 1 commit
-
-
Jakob Kummerow authored
Bug: v8:7748 Change-Id: If876c9499373f091067299fe333e7b59d6cefb41 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2343077Reviewed-by: Manos Koukoutos <manoskouk@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#69305}
-
- 05 Aug, 2020 1 commit
-
-
Manos Koukoutos authored
Changes: - Remove restriction that function types cannot be used as ref types. - Introduce WasmModule::has_type(). - Remove deferred signature checks in module-decoder. Instead, check if type indices are out of bounds in consume_value_type (was bugged before). - Remove obsolete GetCanonicalRttIndex. - Refine type of ref.func. - Statically check immediate type against table type for call_indirect. - Dynamic check for call_indirect should only happen when for funcref (currently the only function supertype). - Allocate a different map per function signature (with Map::Copy). - Introduce function type equivalence and (trivial) subtyping. - Add a few elementary tests. Bug: v8:7748 Change-Id: If57d0bfd856c9eb3784191f3de423f53dfd26ef1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2335190 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#69250}
-
- 04 Aug, 2020 2 commits
-
-
Ng Zhi An authored
Swizzles are shuffles that only use values from 1 operand, e.g. v8x16.shuffle 0 1 2 3 0 0 0 0 4 5 6 7 0 0 0 0 (all the values are < 16). Match such patterns and emit an optimized codegen that uses less registers and instructions. Only implemented for x64 for now, the other backends will come in follow-up patches. Bug: v8:10696 Change-Id: Iffa694b04c97313eab7d138e4bdad7c0c85cda89 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2335419Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#69231}
-
Manos Koukoutos authored
Changes: - Fix error message typo in function-body-decoder. - Generalize wasm test macros related to reference types. - Change wasm-gc test API to return bytes. - Add unittests for ref.test/cast. Bug: v8:7748 Change-Id: I361987e0b6ac90c4e89a49a8abc125757a5fc8d0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2317319 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#69220}
-
- 31 Jul, 2020 4 commits
-
-
Ng Zhi An authored
Also add some simple unittests for these functions. Bug: v8:10696 Change-Id: Ic7607780b4eaf275b20d0937bf214846bf51d539 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2330806Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#69183}
-
Igor Sheludko authored
This is a reland of 13141c8a ... with a fix for an UB issue of passing null pointers to memcpy() when size is zero. TBR=leszeks@chromium.org Original change's description: > [zone-compr] Introduce ZoneTypeTraits and ZoneCompression > > Also move zone compression flags to src/common/globals.h. > > Bug: v8:9923 > Change-Id: Id0a77720e735e2669a1e5eef48e1b4866ad99480 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2324255 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Commit-Queue: Igor Sheludko <ishell@chromium.org> > Cr-Commit-Position: refs/heads/master@{#69160} Bug: v8:9923 Change-Id: I2245b81516c39ccea262c282c659ef601af57abf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2332165 Commit-Queue: Igor Sheludko (OOO Aug 3-17) <ishell@chromium.org> Reviewed-by: Igor Sheludko (OOO Aug 3-17) <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#69166}
-
Nico Hartmann authored
This reverts commit 13141c8a. Reason for revert: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20UBSan/12253? Original change's description: > [zone-compr] Introduce ZoneTypeTraits and ZoneCompression > > Also move zone compression flags to src/common/globals.h. > > Bug: v8:9923 > Change-Id: Id0a77720e735e2669a1e5eef48e1b4866ad99480 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2324255 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Commit-Queue: Igor Sheludko <ishell@chromium.org> > Cr-Commit-Position: refs/heads/master@{#69160} TBR=leszeks@chromium.org,ishell@chromium.org Change-Id: I01fc05b33d01c19f9a9432d4b2dd73cf8b38b972 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9923 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2332163Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/master@{#69162}
-
Igor Sheludko authored
Also move zone compression flags to src/common/globals.h. Bug: v8:9923 Change-Id: Id0a77720e735e2669a1e5eef48e1b4866ad99480 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2324255Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#69160}
-
- 30 Jul, 2020 1 commit
-
-
Ng Zhi An authored
These are no longer tied to instruction-selector, so move them out into their own unittests. We can then remove the *ForTesting methods. Bug: v8:10696 Change-Id: I387cf38290d9602b011ee1d13ee5285ac660f208 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2326951Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#69149}
-
- 24 Jul, 2020 3 commits
-
-
Ng Zhi An authored
Using uint8_t[] causes decay to pointer issue, which manifests in copying garbage values in the call to WriteLittleEndianValue. Change it to use a std::array, which doesn't have the decaying behavior. Also add a regression test from comment#6 of the linked bug. Bug: v8:10731 Change-Id: I4a1ca69fe99806642e9931625ca7aeab6663f955 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2316465Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#69052}
-
Manos Koukoutos authored
Change-Id: I920a7b8aeda0d92eb0301962589a78e0258f33e5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2315986Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/master@{#69040}
-
Manos Koukoutos authored
Change-Id: I6a2ef3d1c46ea57b17234d050b8f0be12e27a197 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2315985Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/master@{#69037}
-
- 21 Jul, 2020 2 commits
-
-
Ng Zhi An authored
v128.const (kExprS128) is the only constant expression supported (similar to the other value types). Bug: v8:10731 Change-Id: I9b11b47a851903dfd79d3590eff67b615057f81c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2308389 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68975}
-
Manos Koukoutos authored
They have been replaced with {array,struct}.new_with_rtt. Also, rework tests that used those instructions. Bug: v8:7748 Change-Id: I2aaccb1958bf2b8d6cad4969abc612216856393d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2307318 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#68961}
-
- 16 Jul, 2020 1 commit
-
-
Jakob Kummerow authored
Bug: v8:7748 Change-Id: I30eb7b08b40159e399730eef5866e1f0fbf706e1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2299368 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68892}
-
- 10 Jul, 2020 2 commits
-
-
Jakob Kummerow authored
Bug: v8:7748 Change-Id: I925be7942f4825aeac7364bc7c899b6bef8001c3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2284985 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#68811}
-
Igor Sheludko authored
... by migrating old-style code MyObject* obj = new (zone) MyObject(...) to the new style MyObject* obj = zone->New<MyObject>(...) Bug: v8:10689 Change-Id: I2fc4a44ea05e4d087565811f343893f0e97dc660 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2288857 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68789}
-
- 09 Jul, 2020 2 commits
-
-
Manos Koukoutos authored
Motivation: With rtt.sub now allowed in constant expressions, we have to generalize WasmInitExpr to be able to handle expressions with operands. This is the second CL that prepares the ground for this change. Changes: - Remove the error from read-value-type when reading a generic rtt. - Add validation for HeapTypeImmediate in ModuleDecoder. Use it to validate null constants immediates, which was missing. Add tests. - Change ValueType::name to print rtt depths as integers. - Move global initializer building in wasm-module-builder to its own function. Bug: v8:7748 Change-Id: Ic041e1c7d032f2a1063a21fec1bfe96cb0d8120e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2284983 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#68767}
-
Manos Koukoutos authored
Motivation: With rtt.sub now allowed in constant expressions, we have to generalize WasmInitExpr to be able to handle expressions with operands. This CL prepares the ground for this change and adds no functionality. Changes: - ValueType::heap_representation and HeapType::representation now return HeapType::Representation. - Add ValueType::is_rtt(). - WasmInitExpr: - Make kind private. Rename val -> operator, make it private. Add accessors. - Rename kGlobalIndex -> kGlobalGet. - Squash global_index and function_index into index. - Add heap_type Immediate. Use it for RefNullConst. TypeOf in module-decoder.cc can now fully determine the type of a WasmInitExpr. - Add class constructors/static method constructors for each Operator kind. - Delete copy constructor. WasmInitExpr will use std::unique_ptr for its operands. - consume_init_expr now uses a stack. - A few minor improvements. Bug: v8:7748 Change-Id: I3ba3ee7ac2d6bc58e887790c37110ceb80658985 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2284483 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68759}
-
- 07 Jul, 2020 1 commit
-
-
Manos Koukoutos authored
Bug: v8:7748 Change-Id: I6793133d7b05c3b8dbece80a51a7a6e5e250e8b1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2284482 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#68717}
-