- 28 Jul, 2020 2 commits
-
-
Thibaud Michaud authored
Setup the function table exactly like the module's function table, so that we can share most of the call generation logic. R=clemensb@chromium.org Bug: v8:10751 Change-Id: Ie74150af8cf79d00adcc59d6880d2ed3e7cf78f1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2323353 Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#69111}
-
Thibaud Michaud authored
R=clemensb@chromium.org Bug: chromium:1110190 Change-Id: I75c8e47d738266927d717a09670473dc8a7eb210 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2320656Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#69095}
-
- 27 Jul, 2020 1 commit
-
-
Thibaud Michaud authored
If the types allow it, sometimes generate a return call instead of a regular call in the wasm-compile fuzzer. R=clemensb@chromium.org Bug: v8:10693 Change-Id: Ie5e92f2b012f655b9d7d5847dba4a669152635c3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2316297 Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#69063}
-
- 08 Jul, 2020 1 commit
-
-
Ng Zhi An authored
This rounds up all SIMD instructions as included in the proposal as of https://github.com/WebAssembly/simd/commit/9f1295a494b4db98ad7e93cd6368239218233b3e. Bug: v8:10180 Change-Id: Icd4cb0aeddede6a611de6f8f3916dc036977c499 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2285789 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#68746}
-
- 24 Jun, 2020 1 commit
-
-
Clemens Backes authored
This allows the compiler to eliminate more unneeded branches. Since all functions just do a lookup in a static table (either directly, or via compiling a switch to such a lookup), they are also good candidates for inlining, which is made possible by this change. One DCHECK is removed instead of pulling in the inl header, which would require more refactoring since the check is in a non-inl header. R=thibaudm@chromium.org TBR=jkummerow@chromium.org Bug: v8:10576 Change-Id: If0fd25fd62c5f30b896fc67a5458a5ae475a6351 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2259944 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#68508}
-
- 23 Jun, 2020 1 commit
-
-
Clemens Backes authored
The interpreter is not used in production code any more, hence move it from src/wasm to test/common/wasm. It's still used in unit tests, cctests, and in fuzzers. Because of this move, a few more methods had to be exported via V8_EXPORT_PRIVATE. R=ahaas@chromium.org, yangguo@chromium.org Bug: v8:10389 Change-Id: If626b940a721146c596fd7df4faaea633e710272 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2257226 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#68480}
-
- 22 Jun, 2020 1 commit
-
-
Clemens Backes authored
This is a follow-up to https://crrev.com/c/2249928. The arguments for {SubVector} are {from, to}, not {from, size}. R=jkummerow@chromium.org Bug: chromium:1097442 Change-Id: I3c5571ff7f0c6b8e235ecf4164591630dbd05739 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2255465Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68451}
-
- 18 Jun, 2020 3 commits
-
-
Ng Zhi An authored
Bug: v8:10180 Change-Id: Ic341e0de315b7d7b33dbad265c8fda9145a669da Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2243760Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68417}
-
Clemens Backes authored
Instead of creating temporary {std::vector}s (which always allocate on the heap) create more vectors on the stack, via initializer lists. As this is "only" a fuzzer, performance is not really critical, but still has some impact on the efficiency of the whole fuzzer. That said, this CL is mostly a cleanup to replace unwanted code pattern by better code. R=jkummerow@chromium.org Change-Id: I924c15e5d64ed584fc96c85715eef1dca5aef150 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2249928 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#68413}
-
Manos Koukoutos authored
Motivation: Changes to the typed function references and gc proposals solidified the notion of heap type, clarified nullable vs. non-nullable reference types, and introduced rtts, which contain an integer depth field in addition to a heap type. This required us to overhaul our ValueType representation, which results in extensive changes. To keep this CL "small", we do not try to implement the binary encoding as described in the proposals, but rather devise a simpler one of our own (see below). Also, we do not try to implement additional functionality for the new types. Changes: - Introduce HeapType. Move heap types from ValueType to HeapType. - Introduce Nullability for reference types. - Rework ValueType helper methods. - Introduce rtts in ValueType with an integer depth field. Include depth in the ValueType encoding. - Make the constructor of ValueType private, instead expose static functions which explicitly state what they create. - Change every switch statement on ValueType::Kind. Sometimes, we need nested switches. - Introduce temporary constants in ValueTypeCode for nullable types, use them for decoding. - In WasmGlobalObject, split 'flags' into 'raw_type' and 'is_mutable'. - Change IsSubtypeOfRef to IsSubtypeOfHeap and implement changes in subtyping. - kWasmFuncRef initializers are now non-nullable. Initializers are only required to be subtypes of the declared global type. - Change tests and fuzzers as needed. Bug: v8:7748 Change-Id: If41f783bd4128443b07e94188cea7dd53ab0bfa5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2247657 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#68408}
-
- 15 Jun, 2020 1 commit
-
-
Ng Zhi An authored
Bug: v8:10180 Change-Id: I729761b27786d84b0a730e2e001574eb329b7ef9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2243759Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68352}
-
- 09 Jun, 2020 1 commit
-
-
Manos Koukoutos authored
The reference types wasm proposal dropped all subtyping. Subsequently, the 'anyref' type was renamed to externref. This changes all references of the *type* anyref to externref. Additionally, the flag that permits this extension is renamed to "reftypes" to mirror the proposal name. Bug: v8:7748 Change-Id: Icf323f13b9660fd10540e65125af053fca3a03f9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2232941 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Kim-Anh Tran <kimanh@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#68270}
-
- 08 Jun, 2020 1 commit
-
-
Ng Zhi An authored
Bug: v8:10180 Change-Id: I39d0beb3e30cc5810eac32ec203191ec840cd6d9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2225608 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#68240}
-
- 03 Jun, 2020 2 commits
-
-
Ng Zhi An authored
This adds s128 not, and, andnot, or, xor, and select. Bug: v8:10180 Change-Id: Id7f05f7fdc9f082bee1182babbb4a5e4b55d7d47 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2225604Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68155}
-
Ng Zhi An authored
Bug: v8:10180 Change-Id: Ic3dc7394962439adca0482750593a1c22c840054 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2225091Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68123}
-
- 29 May, 2020 1 commit
-
-
Ng Zhi An authored
Bug: v8:10180 Change-Id: I1757975da92f6ebcb19b938ec16623137e541b21 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2219023Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68082}
-
- 27 May, 2020 2 commits
-
-
Ng Zhi An authored
Bug: v8:10180 Change-Id: Idd9a3bbda5163fce480376d2c57c7175b34fa34f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2211228Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68020}
-
Gilang Mentari Hamidy authored
If the return_count is zero, the Generate will be called twice. The recent update in Generate function already handle the case inside the Generate function overload. Change-Id: I49e0ee4a0824db60f157ea288ae6d28978c42db5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2215816Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#68000}
-
- 21 May, 2020 1 commit
-
-
Ng Zhi An authored
The proposal uses the lane shape, e.g. i64x2.anytrue, and we were using s1x2.anytrue in our opcodes. This was a legacy naming, because we were trying to bitpack the booleans. Now that we aren't doing that, rename these to be more consistent with the proposal. This was done with a straightforward sed script, changing both cpp code and also some comments in mjsunit test files. Bug: v8:10506 Change-Id: If077ed805de23520d8580d6b3b1906c80f67b94f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2207915 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#67945}
-
- 20 May, 2020 3 commits
-
-
Richard Stotz authored
Bug: chromium:1084344 Change-Id: I027db944c179a686dd3352dfc4d59b3e92e4ac0c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2210239 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#67925}
-
Thibaud Michaud authored
R=ahaas@chromium.org Bug: v8:10408 Change-Id: I002dbb69e847e871188259d66b2cfddaa6281d93 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2206734 Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67921}
-
Richard Stotz authored
Opcodes for saturated conversions are 2 bytes long, hence EmitWithPrefix is necessary. Bug: chromium:1084344 Change-Id: I7b8821ba952abee6b113f705559f2f3572d0f7c4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2209058 Commit-Queue: Richard Stotz <rstz@chromium.org> Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67918}
-
- 19 May, 2020 1 commit
-
-
Thibaud Michaud authored
Fix underflow when the break type list is empty, and do not try to reuse the first value to generate the wanted type. Bug: chromium:1084452 Change-Id: Ia9855a267730bb9f427518c27157f449475fb6ba Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2208858Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#67895}
-
- 18 May, 2020 3 commits
-
-
Richard Stotz authored
Bug: v8:10520 Change-Id: Iad8d35e58b766a9e4d3013f90fd4d7fb68708fa7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2201577 Commit-Queue: Richard Stotz <rstz@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67866}
-
Richard Stotz authored
Bug: v8:10520 Change-Id: I0b4867d9b705058536b0f4640a9a87059db3aca7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2201576 Commit-Queue: Richard Stotz <rstz@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67858}
-
Thibaud Michaud authored
R=ahaas@chromium.org Bug: v8:10408 Change-Id: I1ca62c1cdf3025dcd0df7cdbe6735cc3491c48e1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2201578 Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67856}
-
- 15 May, 2020 2 commits
-
-
Richard Stotz authored
Bug: v8:10520 Change-Id: Ief1c2565168529f618fe55feacccc66d8d05376a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2196351 Commit-Queue: Richard Stotz <rstz@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67824}
-
Thibaud Michaud authored
The bool specialization of DataRange::get was removed recently as it is not used anymore. Add a static assert to ensure that we do not run into the undefined behavior that this specialization was meant to prevent. R=clemensb@chromium.org Change-Id: I43abfe03c6fa4722b1dafc0025eb0bdff5379337 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202979Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#67816}
-
- 14 May, 2020 2 commits
-
-
Thibaud Michaud authored
R=ahaas@chromium.org Change-Id: I757abd5d0e8e63745482e9bec66abf39a174f0ed Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2201759Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Milad Farazmand <miladfar@ca.ibm.com> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#67804}
-
Thibaud Michaud authored
R=ahaas@chromium.org Bug: v8:10408 Change-Id: Ic5cb2b915584c64656bfc5baf8c9524a7d5bf48c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2196346Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#67790}
-
- 12 May, 2020 1 commit
-
-
Ng Zhi An authored
Bug: v8:10180 Change-Id: I4c1d18c71d1514a561c37fb9ae821617de949d87 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2194175Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#67762}
-
- 08 May, 2020 1 commit
-
-
Ng Zhi An authored
Bug: v8:10180 Change-Id: I830491f9141aba4b9b3165e08620723b5aaefa3c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2185480Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#67692}
-
- 06 May, 2020 1 commit
-
-
Ng Zhi An authored
Bug: v8:10180 Change-Id: Ia7bb052d8f259939f17c7261a5ae3f2475bcf255 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2173945Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#67624}
-
- 05 May, 2020 1 commit
-
-
Ng Zhi An authored
Bug: v8:10180 Change-Id: I8026a25d9b1a62a7c5d7b20b99f6474374333445 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2171551 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#67582}
-
- 30 Apr, 2020 1 commit
-
-
Ng Zhi An authored
Bug: v8:10180 Change-Id: I71a5c63abdcca2b11d29a1d25844cda738384161 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2173815Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#67511}
-
- 29 Apr, 2020 1 commit
-
-
Ng Zhi An authored
Bug: v8:10180 Change-Id: I30d7eb8201701c081dc72f6d47f50133e496bdf9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2169013 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#67484}
-
- 28 Apr, 2020 1 commit
-
-
Ng Zhi An authored
Bug: v8:10180 Change-Id: I58df9f445a67c35b352f5a3058fd8e40d04a3eb0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2168548Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#67457}
-
- 27 Apr, 2020 1 commit
-
-
Gilang Mentari Hamidy authored
- Add template specialization for DataRange::get<bool> to avoid undefined behavior of the template DataRange::get<T> which uses memcpy to assign the result variable Change-Id: I129773251c063ea6863c4b2318dbc18574588d99 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2165728Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#67387}
-
- 09 Apr, 2020 1 commit
-
-
Ng Zhi An authored
Bug: v8:10180 Change-Id: I5e7e83c23b6029cc5b55c2aadee77898173a77f0 Fixed: v8:9543 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2110951Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#67071}
-
- 18 Mar, 2020 1 commit
-
-
Ng Zhi An authored
Bug: v8:10180 Change-Id: I700d10c82f6691bfc9a021fec120779c9d0a08e7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2107647Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66778}
-