searching for reviewer(lth)
f7f0363c1875c3773e5f6210fa46edd1d3e5fd5c: Bug 1740263 - Block WASM code generation by CSP. r=lth,jandem
Tom Schuster <tschuster@mozilla.com> - Thu, 19 May 2022 14:13:49 +0000 - rev 618242
Push 39720 by nbeleuzu@mozilla.com at Thu, 19 May 2022 18:03:18 +0000
Bug 1740263 - Block WASM code generation by CSP. r=lth,jandem I put the CSP check in the 5 WASM function that V8 also uses: https://source.chromium.org/search?q=IsWasmCodegenAllowed Is there somewhere else we might be generating WASM code? Some kind of caching etc. Differential Revision: https://phabricator.services.mozilla.com/D141978
e34ba774b3f84147dd9a0099e267cb5f5ac99f19: Bug 1740263 - Block WASM code generation by CSP. r=lth,jandem
Tom Schuster <tschuster@mozilla.com> - Wed, 18 May 2022 21:39:28 +0000 - rev 618173
Push 39718 by ccozmuta@mozilla.com at Thu, 19 May 2022 09:37:29 +0000
Bug 1740263 - Block WASM code generation by CSP. r=lth,jandem I put the CSP check in the 5 WASM function that V8 also uses: https://source.chromium.org/search?q=IsWasmCodegenAllowed Is there somewhere else we might be generating WASM code? Some kind of caching etc. Differential Revision: https://phabricator.services.mozilla.com/D141978
e44dbe2fab8b5edaf6168fb552fe67d92981bf16: Bug 1764646 - Prototype relaxed SIMD dot instructions. r=lth
Yury Delendik <ydelendik@mozilla.com> - Tue, 10 May 2022 13:33:06 +0000 - rev 616852
Push 39678 by ctuns@mozilla.com at Tue, 10 May 2022 21:39:54 +0000
Bug 1764646 - Prototype relaxed SIMD dot instructions. r=lth Implement i16x8.dot_i8x16_i7x16_s and i32x4.dot_i8x16_i7x16_add_s Differential Revision: https://phabricator.services.mozilla.com/D144199
c0965740a2b1cd21668baca15bd09ead090abfa6: Bug 1759580 - wasm: Rename misc tls references. r=lth
Ryan Hunt <rhunt@eqrion.net> - Thu, 05 May 2022 21:49:49 +0000 - rev 616373
Push 39657 by imoraru@mozilla.com at Fri, 06 May 2022 09:50:52 +0000
Bug 1759580 - wasm: Rename misc tls references. r=lth Differential Revision: https://phabricator.services.mozilla.com/D145276
c234e682cce63834cf987b80501d3790ef2cddd3: Bug 1759580 - wasm: Rename WasmTlsData.h header. r=lth
Ryan Hunt <rhunt@eqrion.net> - Thu, 05 May 2022 21:49:48 +0000 - rev 616372
Push 39657 by imoraru@mozilla.com at Fri, 06 May 2022 09:50:52 +0000
Bug 1759580 - wasm: Rename WasmTlsData.h header. r=lth Differential Revision: https://phabricator.services.mozilla.com/D145275
769bfc4f4dca8c09fe4a2f26e013deb53c958c7c: Bug 1759580 - wasm: Rename slots on JSFunction. r=lth
Ryan Hunt <rhunt@eqrion.net> - Thu, 05 May 2022 21:49:48 +0000 - rev 616371
Push 39657 by imoraru@mozilla.com at Fri, 06 May 2022 09:50:52 +0000
Bug 1759580 - wasm: Rename slots on JSFunction. r=lth Differential Revision: https://phabricator.services.mozilla.com/D145274
015e7fd966940c7d8efaa337f8552ac6d39ea3c4: Bug 1759580 - wasm: Rename reference to tls in WasmStubs.cpp. r=lth
Ryan Hunt <rhunt@eqrion.net> - Thu, 05 May 2022 21:49:48 +0000 - rev 616370
Push 39657 by imoraru@mozilla.com at Fri, 06 May 2022 09:50:52 +0000
Bug 1759580 - wasm: Rename reference to tls in WasmStubs.cpp. r=lth Differential Revision: https://phabricator.services.mozilla.com/D145273
f761a171c009af338ea97f1a70cfaf2940925ea4: Bug 1759580 - wasm: Rename references to tls in baseline compile. r=lth
Ryan Hunt <rhunt@eqrion.net> - Thu, 05 May 2022 21:49:47 +0000 - rev 616369
Push 39657 by imoraru@mozilla.com at Fri, 06 May 2022 09:50:52 +0000
Bug 1759580 - wasm: Rename references to tls in baseline compile. r=lth Differential Revision: https://phabricator.services.mozilla.com/D145272
d5848a52ccd8f8677305ac5ef3a05ca0e342a1a0: Bug 1759580 - wasm: Rename references to tls in js/src/jit. r=lth
Ryan Hunt <rhunt@eqrion.net> - Thu, 05 May 2022 21:49:47 +0000 - rev 616368
Push 39657 by imoraru@mozilla.com at Fri, 06 May 2022 09:50:52 +0000
Bug 1759580 - wasm: Rename references to tls in js/src/jit. r=lth Differential Revision: https://phabricator.services.mozilla.com/D145271
b8656f201b57d17de2bbcb587cdcdcd23c3facaf: Bug 1766806 - Avoid checkIntegrity failure in f32.copysign wasm instruction. r=lth
Yury Delendik <ydelendik@mozilla.com> - Tue, 03 May 2022 16:32:07 +0000 - rev 615976
Push 39645 by imoraru@mozilla.com at Wed, 04 May 2022 03:39:47 +0000
Bug 1766806 - Avoid checkIntegrity failure in f32.copysign wasm instruction. r=lth Differential Revision: https://phabricator.services.mozilla.com/D145009
a62e456e827ef513149f44be80eedb09f570d374: Bug 1693490 - Remove zeroSimd128. r=lth
Yury Delendik <ydelendik@mozilla.com> - Wed, 27 Apr 2022 13:29:40 +0000 - rev 615454
Push 39622 by apavel@mozilla.com at Wed, 27 Apr 2022 21:34:31 +0000
Bug 1693490 - Remove zeroSimd128. r=lth The zeroSimd128 is not used -- removing it. Differential Revision: https://phabricator.services.mozilla.com/D144636
8a34f80be3721ba54f87dba846b9c88520c40729: Bug 1690471 - [x64/x86] Better code for iNxM.all_true. r=lth
Yury Delendik <ydelendik@mozilla.com> - Mon, 25 Apr 2022 20:27:19 +0000 - rev 615250
Push 39615 by ncsoregi@mozilla.com at Tue, 26 Apr 2022 09:46:09 +0000
Bug 1690471 - [x64/x86] Better code for iNxM.all_true. r=lth Differential Revision: https://phabricator.services.mozilla.com/D143774
e922c3afe45fed734984a78b43b6bb22f468037e: Bug 1708743 - Enable AVX support by default in release. r=lth
Yury Delendik <ydelendik@mozilla.com> - Thu, 21 Apr 2022 12:43:20 +0000 - rev 614956
Push 39598 by nfay@mozilla.com at Fri, 22 Apr 2022 03:39:15 +0000
Bug 1708743 - Enable AVX support by default in release. r=lth Differential Revision: https://phabricator.services.mozilla.com/D144215
2ed4b7048825c5f6c0f6999d070ce82abb3c7e3c: Bug 1693482 - [x64/x86] inline constant load in various instructions. r=lth
Yury Delendik <ydelendik@mozilla.com> - Thu, 21 Apr 2022 01:12:06 +0000 - rev 614856
Push 39595 by ncsoregi@mozilla.com at Thu, 21 Apr 2022 09:43:46 +0000
Bug 1693482 - [x64/x86] inline constant load in various instructions. r=lth Final review of loadConstantSimd128xxx and its equivalents usages: - for compareInt8x16, compareInt16x8, and compareInt32x4 - unsignedConvertInt32x4ToFloat64x2 - truncSatFloat64x2ToInt32x4 - unsignedTruncSatFloat64x2ToInt32x4 - convertUInt64ToDouble - Misc comments to confirm proper use of scratch Differential Revision: https://phabricator.services.mozilla.com/D143948
53b0297b7573943417a24c28931ea8e1aff839ac: Bug 1752606 - wasm: Load pending exception in landing pad, not pre-pad blocks. r=lth
Ryan Hunt <rhunt@eqrion.net> - Tue, 12 Apr 2022 01:24:40 +0000 - rev 614008
Push 39552 by mlaza@mozilla.com at Tue, 12 Apr 2022 09:43:07 +0000
Bug 1752606 - wasm: Load pending exception in landing pad, not pre-pad blocks. r=lth There is one landing pad for each try-catch construct. Currently, every local throw or catchable call jumps to a pre-pad block which jumps to the landing pad. The pre-pad block for local throws just sets the slots correctly to the pending exception and tag. The pre-pad block for catchable calls loads the pending exception and tag from Instance, and stores them in slots. The landing pad then can get the pending exception and tag from its slots. This design biases code size in favor of local throws, when really catchable calls are far more common. This commit does the following changes: 1. The landing pad always loads the pending exception/tag from Instance and initializes its slots. 2. The pre-pad blocks for catchable calls now need to do nothing but jump to the landing pad. They still must exist, or else they would be critical edges which when split would cause there to be a block between MWasmCallCatchable and its MWasmCallLandingPad. This breaks invariants and would hit an assertion. 3. The current block when a local throw instruction is hit now becomes the pre-pad block and will store the exception and tag into Instance before jumping to the landing pad. Differential Revision: https://phabricator.services.mozilla.com/D142466
c9a3661cb9f2bc12d871b37fd5bcb33aea701dbd: Bug 1752606 - wasm: Don't emit load-compare-branch after catchable calls in ion. r=lth,nbp
Ryan Hunt <rhunt@eqrion.net> - Tue, 12 Apr 2022 01:24:40 +0000 - rev 614007
Push 39552 by mlaza@mozilla.com at Tue, 12 Apr 2022 09:43:07 +0000
Bug 1752606 - wasm: Don't emit load-compare-branch after catchable calls in ion. r=lth,nbp This commit drops the load-compare-branch after catchable calls in ion, and replaces them with a scheme where MWasmCall may be a control instruction and therefore the unwinding path can jump directly to the pre pad successor block. This is done with several steps. 1. MVariadicControlInstruction is added 2. MWasmCall is split into: - MWasmCallBase, a mixin class that does not inherit M*Instruction. Almost all state and logic for MWasmCall is kept here. - MWasmCallCatchable, inheriting MVariadicControlInstruction and MWasmCallBase. A control instruction with two successors: fallthrough and the pre pad. - MWasmCallUncatchable, inheriting from MVariadicInstruction and MWasmCallBase. 3. Lowering for the two instruction is done identically, and there is still a single LWasmCall. Not a LWasmCallCatchable/Uncatchable. This was chosen to share code, and because at this point I cannot see any purpose in having two separate instructions. 4. Codegen of LWasmCatch continues to have some special logic for catchable calls before and after the call. 5. WasmIonCompile invokes a catchableCall() when performing a direct, indirect, or import call. This determines whether the call is catchable, constructs the correct instruction type, and sets up the fallthrough and pre-pad blocks. 6. A MWasmCallLandingPad marker instruction is added. This instruction emits no code, but sets up the try note entry point. It also performs release asserts for correctness. 7. The responsibility for creating a try note is moved from CodeGenerator ::visitWasmCall to FunctionCompiler, as the try note is needed in MWasmCallCatchable and MWasmCallLandingPad. 8. The documentation block is updated as best I can. I've removed the large diagram as I'm having a hard time keeping it up to date and don't find it very useful. Differential Revision: https://phabricator.services.mozilla.com/D139657
62b1090431b069f8a7129659d86b64416b53fe03: Bug 1762899 - Fix {f32,f64}.copysign for Aarch64. r=lth
Yury Delendik <ydelendik@mozilla.com> - Wed, 06 Apr 2022 18:42:42 +0000 - rev 613542
Push 39530 by nfay@mozilla.com at Thu, 07 Apr 2022 09:29:59 +0000
Bug 1762899 - Fix {f32,f64}.copysign for Aarch64. r=lth Using defineReuseInput in LIRGenerator to prevents rhs == output && lhs != output, which is the case that would clobber the rhs in copySignDouble(). Differential Revision: https://phabricator.services.mozilla.com/D142994
8aa921dbad44ebcb5a7d7d76635a1311986a6dba: Bug 1762413 - Optimize emscripten's sequence for _mm_maddubs_epi16. r=lth
Yury Delendik <ydelendik@mozilla.com> - Tue, 05 Apr 2022 15:33:07 +0000 - rev 613412
Push 39523 by ctuns@mozilla.com at Tue, 05 Apr 2022 21:23:13 +0000
Bug 1762413 - Optimize emscripten's sequence for _mm_maddubs_epi16. r=lth Differential Revision: https://phabricator.services.mozilla.com/D142587
8c7ce56c181bb521dd74a9754fcac855fc26fe32: Bug 1761606 - wasm: Clean up debug filter allocation. r=lth
Ryan Hunt <rhunt@eqrion.net> - Mon, 28 Mar 2022 22:05:03 +0000 - rev 612639
Push 39488 by nfay@mozilla.com at Tue, 29 Mar 2022 09:56:04 +0000
Bug 1761606 - wasm: Clean up debug filter allocation. r=lth Differential Revision: https://phabricator.services.mozilla.com/D142157
238cb293027b05ec1c90d5385e34bbd34e461108: Bug 1719615 - Add observeWasm in addition to observeAsmJS. r=lth
Yury Delendik <ydelendik@mozilla.com> - Thu, 24 Mar 2022 21:03:41 +0000 - rev 611848
Push 39470 by nfay@mozilla.com at Fri, 25 Mar 2022 09:38:14 +0000
Bug 1719615 - Add observeWasm in addition to observeAsmJS. r=lth Differential Revision: https://phabricator.services.mozilla.com/D123626
82ac83afeaeaa3665037ea587c614fddaa8b648d: Bug 1642412 - wasm: Don't read a call site line in operations that AsmJS won't emit one for. r=lth
Ryan Hunt <rhunt@eqrion.net> - Thu, 24 Mar 2022 17:56:53 +0000 - rev 611821
Push 39468 by imoraru@mozilla.com at Thu, 24 Mar 2022 21:54:20 +0000
Bug 1642412 - wasm: Don't read a call site line in operations that AsmJS won't emit one for. r=lth AsmJS will emit a call site line number for call, call indirect, and math builtins. We currently read from the call site line number array for more operations than these. This is normally fine, as long as the operations that try the read are never emitted from AsmJS. If that is not the case, we will get out of sync and can read outside of the array. This caused an issue when I added a use of readCallSiteOrBytecode() in TeeGlobal, copying from SetGlobal. This commit fixes this. Differential Revision: https://phabricator.services.mozilla.com/D141030
ce799cb566ac0fb95468118608132be11db6a359: Bug 1642412 - wasm: Rollup of inline table.get/set for anyref. r=lth
Ryan Hunt <rhunt@eqrion.net> - Thu, 24 Mar 2022 17:56:50 +0000 - rev 611816
Push 39468 by imoraru@mozilla.com at Thu, 24 Mar 2022 21:54:20 +0000
Bug 1642412 - wasm: Rollup of inline table.get/set for anyref. r=lth Rollup of the previous inline table.get/set patches. Differential Revision: https://phabricator.services.mozilla.com/D141024
b5b0bc72eb89cac510b8b268b3997fe6bd4c7a55: Bug 1759580 - wasm: Fix cranelift interface for recent changes. r=lth
Ryan Hunt <rhunt@eqrion.net> - Wed, 23 Mar 2022 14:52:56 +0000 - rev 611645
Push 39462 by abutkovits@mozilla.com at Wed, 23 Mar 2022 21:48:10 +0000
Bug 1759580 - wasm: Fix cranelift interface for recent changes. r=lth * Rename references of tls to instance * Fix instance call protocol to use the vmctx as the instance pointer instead of loading an instance pointer from it * Fix offsetof calculations to use the encapsulated methods on Instance Differential Revision: https://phabricator.services.mozilla.com/D141698
01bd43398a5735d24b9d5c30937a65b7f712eeb9: Bug 1759217 - wasm: Let exception-handling ride the trains. r=lth
Ryan Hunt <rhunt@eqrion.net> - Wed, 23 Mar 2022 14:52:50 +0000 - rev 611644
Push 39462 by abutkovits@mozilla.com at Wed, 23 Mar 2022 21:48:10 +0000
Bug 1759217 - wasm: Let exception-handling ride the trains. r=lth Differential Revision: https://phabricator.services.mozilla.com/D141700
0d1d9fa72512cf8da0bc8c0fdd63f3fb3ff0a468: Bug 1642412 - wasm: Don't read a call site line in operations that AsmJS won't emit one for. r=lth
Ryan Hunt <rhunt@eqrion.net> - Tue, 22 Mar 2022 19:59:07 +0000 - rev 611529
Push 39458 by smolnar@mozilla.com at Wed, 23 Mar 2022 04:09:13 +0000
Bug 1642412 - wasm: Don't read a call site line in operations that AsmJS won't emit one for. r=lth AsmJS will emit a call site line number for call, call indirect, and math builtins. We currently read from the call site line number array for more operations than these. This is normally fine, as long as the operations that try the read are never emitted from AsmJS. If that is not the case, we will get out of sync and can read outside of the array. This caused an issue when I added a use of readCallSiteOrBytecode() in TeeGlobal, copying from SetGlobal. This commit fixes this. Differential Revision: https://phabricator.services.mozilla.com/D141030
25adf505426d21f67e15d146f879b0ea53d343a7: Bug 1642412 - wasm: Rollup of inline table.get/set for anyref. r=lth
Ryan Hunt <rhunt@eqrion.net> - Tue, 22 Mar 2022 19:59:05 +0000 - rev 611524
Push 39458 by smolnar@mozilla.com at Wed, 23 Mar 2022 04:09:13 +0000
Bug 1642412 - wasm: Rollup of inline table.get/set for anyref. r=lth Rollup of the previous inline table.get/set patches. Differential Revision: https://phabricator.services.mozilla.com/D141024
fc27e9ecafb6aee78c50823eceb542fb32e4737a: Bug 1760358 - Implement Relaxed SIMD i16x8.q15mulr_s instruction. r=lth
Yury Delendik <ydelendik@mozilla.com> - Tue, 22 Mar 2022 13:20:11 +0000 - rev 611460
Push 39457 by csabou@mozilla.com at Tue, 22 Mar 2022 21:46:32 +0000
Bug 1760358 - Implement Relaxed SIMD i16x8.q15mulr_s instruction. r=lth See https://github.com/WebAssembly/relaxed-simd/pull/59 Differential Revision: https://phabricator.services.mozilla.com/D141686
d4e2d15df0ec7311eb0b6e4c5c1089b85ac760df: Bug 1760535 - [loong64][mips64] Implement insertBreakablePoint and insertBreakpointStub functions. r=lth
Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> - Tue, 22 Mar 2022 08:02:16 +0000 - rev 611429
Push 39457 by csabou@mozilla.com at Tue, 22 Mar 2022 21:46:32 +0000
Bug 1760535 - [loong64][mips64] Implement insertBreakablePoint and insertBreakpointStub functions. r=lth Port D140851 to MIPS64 and LoongArch64 platform. Differential Revision: https://phabricator.services.mozilla.com/D141569
418a74ac096dd995b16738f24396e8baf4e64352: Bug 1760349 - Update names and codes for Relaxed SIMD instructions. r=lth
Yury Delendik <ydelendik@mozilla.com> - Mon, 21 Mar 2022 13:09:34 +0000 - rev 611322
Push 39453 by ctuns@mozilla.com at Tue, 22 Mar 2022 04:27:58 +0000
Bug 1760349 - Update names and codes for Relaxed SIMD instructions. r=lth See https://github.com/WebAssembly/relaxed-simd/pull/66 Differential Revision: https://phabricator.services.mozilla.com/D141522
6f30be8d9fe79a47d32542344464fdb49c73b6fa: Bug 1759580 - wasm: Rename WasmFrameIter::instance_ and instance(). r=lth
Ryan Hunt <rhunt@eqrion.net> - Sun, 20 Mar 2022 17:00:03 +0000 - rev 611059
Push 39448 by mlaza@mozilla.com at Sun, 20 Mar 2022 21:39:21 +0000
Bug 1759580 - wasm: Rename WasmFrameIter::instance_ and instance(). r=lth Differential Revision: https://phabricator.services.mozilla.com/D141158
cfcd3cb6891d7c452af87113d28bf92e69a36017: Bug 1759580 - wasm: Rename JitActivation::wasmExitTls(). r=lth
Ryan Hunt <rhunt@eqrion.net> - Sun, 20 Mar 2022 17:00:03 +0000 - rev 611058
Push 39448 by mlaza@mozilla.com at Sun, 20 Mar 2022 21:39:21 +0000
Bug 1759580 - wasm: Rename JitActivation::wasmExitTls(). r=lth Differential Revision: https://phabricator.services.mozilla.com/D141157
927c2910dd1acc271980d4e6cd7a8262a3b4b732: Bug 1759580 - wasm: Rename switchToWasmTlsRealm() and loadWasmPinnedRegsFromTls(). r=lth
Ryan Hunt <rhunt@eqrion.net> - Sun, 20 Mar 2022 17:00:02 +0000 - rev 611057
Push 39448 by mlaza@mozilla.com at Sun, 20 Mar 2022 21:39:21 +0000
Bug 1759580 - wasm: Rename switchToWasmTlsRealm() and loadWasmPinnedRegsFromTls(). r=lth Differential Revision: https://phabricator.services.mozilla.com/D141156
74e14ae6bb6468f7e81138e82c6a09e308d3fc73: Bug 1759580 - wasm: Rename FuncImportTls, TableTls, and fields. r=lth
Ryan Hunt <rhunt@eqrion.net> - Sun, 20 Mar 2022 17:00:01 +0000 - rev 611056
Push 39448 by mlaza@mozilla.com at Sun, 20 Mar 2022 21:39:21 +0000
Bug 1759580 - wasm: Rename FuncImportTls, TableTls, and fields. r=lth Differential Revision: https://phabricator.services.mozilla.com/D141155
ab64e2573ce5b987ed5e164893c0238631cba942: Bug 1759580 - wasm: Rename GetNearestEffectiveTls. r=lth
Ryan Hunt <rhunt@eqrion.net> - Sun, 20 Mar 2022 17:00:01 +0000 - rev 611055
Push 39448 by mlaza@mozilla.com at Sun, 20 Mar 2022 21:39:21 +0000
Bug 1759580 - wasm: Rename GetNearestEffectiveTls. r=lth Completely mechanical, no functional changes. Differential Revision: https://phabricator.services.mozilla.com/D141154
980655a05602192e5b87b83d83f2ff373fcf126f: Bug 1759580 - wasm: Rename types and methods of FrameWithTls. r=lth
Ryan Hunt <rhunt@eqrion.net> - Sun, 20 Mar 2022 17:00:00 +0000 - rev 611054
Push 39448 by mlaza@mozilla.com at Sun, 20 Mar 2022 21:39:21 +0000
Bug 1759580 - wasm: Rename types and methods of FrameWithTls. r=lth Completely mechanical, no functional change. Differential Revision: https://phabricator.services.mozilla.com/D141153
90319e554ec0add417d20a0920d57bfe2896498a: Bug 1759580 - wasm: Rename WasmTlsReg to InstanceReg. r=lth
Ryan Hunt <rhunt@eqrion.net> - Sun, 20 Mar 2022 16:59:59 +0000 - rev 611053
Push 39448 by mlaza@mozilla.com at Sun, 20 Mar 2022 21:39:21 +0000
Bug 1759580 - wasm: Rename WasmTlsReg to InstanceReg. r=lth Mechanical, no functional change. Differential Revision: https://phabricator.services.mozilla.com/D141267
cb15fd0add8cce82f1001c7b6bdc41ad290ad45f: Bug 1759909 - Replace --enable-avx in tests with --no-avx variants. r=lth
Yury Delendik <ydelendik@mozilla.com> - Fri, 18 Mar 2022 15:07:32 +0000 - rev 610964
Push 39441 by apavel@mozilla.com at Fri, 18 Mar 2022 21:29:51 +0000
Bug 1759909 - Replace --enable-avx in tests with --no-avx variants. r=lth Depends on D141265 Differential Revision: https://phabricator.services.mozilla.com/D141432
c703a2b98261ac8aebe01eb790410fd10de7af1a: Bug 1759909 - Enable AVX support for Wasm SIMD by default in Nightly. r=lth
Yury Delendik <ydelendik@mozilla.com> - Fri, 18 Mar 2022 15:07:31 +0000 - rev 610963
Push 39441 by apavel@mozilla.com at Fri, 18 Mar 2022 21:29:51 +0000
Bug 1759909 - Enable AVX support for Wasm SIMD by default in Nightly. r=lth Differential Revision: https://phabricator.services.mozilla.com/D141265
d3bd8664b4e34dd5d1925417a47f7854c4fa9390: Bug 1754701 - wasm: Handle OOM in array construction better. r=lth
Ryan Hunt <rhunt@eqrion.net> - Thu, 17 Mar 2022 23:20:38 +0000 - rev 610919
Push 39436 by smolnar@mozilla.com at Fri, 18 Mar 2022 04:08:44 +0000
Bug 1754701 - wasm: Handle OOM in array construction better. r=lth There are two issues with array construction through the arrayNew builtin: 1. Returns nullptr due to OOM, but doesn't set a pending exception. 2. Does not initialize data_ pointer on OOM, leading to crash in finalize method. This commit fixes the two above, and re-organizes the create methods so that the role of reporting errors is clear, and invald entry points to object creation are no longer possible. Some unrelated comments and method organization is also performed. Differential Revision: https://phabricator.services.mozilla.com/D141002
2c3fabcd44b83b3d3d430a9920797f09240794c1: Bug 1759403 - [loong64] Remove two useless functions. r=lth
Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> - Thu, 17 Mar 2022 06:30:59 +0000 - rev 610832
Push 39433 by imoraru@mozilla.com at Thu, 17 Mar 2022 16:48:24 +0000
Bug 1759403 - [loong64] Remove two useless functions. r=lth Differential Revision: https://phabricator.services.mozilla.com/D140940
9a571b126118431c0ee7bd25bbf7137b070c2d3a: Bug 1759281 - wasm: Fix build bustage. r=lth
Ryan Hunt <rhunt@eqrion.net> - Tue, 15 Mar 2022 19:47:50 +0000 - rev 610708
Push 39424 by nbeleuzu@mozilla.com at Wed, 16 Mar 2022 04:13:25 +0000
Bug 1759281 - wasm: Fix build bustage. r=lth Rebasing left an unused setPendingException method that somehow didn't cause an error, until it causes compile errors without exception handling. There's also offsetof methods that need conditional compilation. Differential Revision: https://phabricator.services.mozilla.com/D140992
30534620399d8d88caf427764ea261d9df2725d9: Bug 1753692 - wasm: Re-order Instance fields and add assert for compact encodings. r=lth
Ryan Hunt <rhunt@eqrion.net> - Fri, 11 Mar 2022 15:58:31 +0000 - rev 610401
Push 39402 by ctuns@mozilla.com at Fri, 11 Mar 2022 21:51:10 +0000
Bug 1753692 - wasm: Re-order Instance fields and add assert for compact encodings. r=lth This re-orders some Instance fields for clarity, and adds comments and assertions that the first fields of Instance are reserved for critical data that should be accessable using compact encodings. Differential Revision: https://phabricator.services.mozilla.com/D140232
d25caad491880c9560eeca7cae07c7ca5dc574ec: Bug 1753692 - wasm: Avoid redundant load of instance from tls in JIT. r=lth
Ryan Hunt <rhunt@eqrion.net> - Fri, 11 Mar 2022 15:58:31 +0000 - rev 610400
Push 39402 by ctuns@mozilla.com at Fri, 11 Mar 2022 21:51:10 +0000
Bug 1753692 - wasm: Avoid redundant load of instance from tls in JIT. r=lth Stop loading tls->instance() and just use instance, as they are now the same thing. No functional changes. Differential Revision: https://phabricator.services.mozilla.com/D139541
f4192317dd413b42ace7fab6706b34361b1fc4b5: Bug 1753692 - wasm: Replace 'tlsData->instance()' with just 'tlsData'. r=lth
Ryan Hunt <rhunt@eqrion.net> - Fri, 11 Mar 2022 15:58:31 +0000 - rev 610399
Push 39402 by ctuns@mozilla.com at Fri, 11 Mar 2022 21:51:10 +0000
Bug 1753692 - wasm: Replace 'tlsData->instance()' with just 'tlsData'. r=lth Update all use-sites that get a Instance from a TlsData to just use the Instance they have. No functional changes. Differential Revision: https://phabricator.services.mozilla.com/D139540
26289a2d4b03264c4eb30dbee911b91479a43e0b: Bug 1753692 - wasm: Replace 'instance->tlsData()' with just 'instance'. r=lth
Ryan Hunt <rhunt@eqrion.net> - Fri, 11 Mar 2022 15:58:30 +0000 - rev 610398
Push 39402 by ctuns@mozilla.com at Fri, 11 Mar 2022 21:51:10 +0000
Bug 1753692 - wasm: Replace 'instance->tlsData()' with just 'instance'. r=lth Update all use-sites that need a TlsData from an Instance to just use the instance they have. No functional changes. Differential Revision: https://phabricator.services.mozilla.com/D139539
a18404abc2716d355826425482affaa95b2c2193: Bug 1753692 - wasm: Remove stub TlsData type and point references to Instance. r=lth
Ryan Hunt <rhunt@eqrion.net> - Fri, 11 Mar 2022 15:58:30 +0000 - rev 610397
Push 39402 by ctuns@mozilla.com at Fri, 11 Mar 2022 21:51:10 +0000
Bug 1753692 - wasm: Remove stub TlsData type and point references to Instance. r=lth Clean up the hack from the previous commit by removing the stub TlsData type and changing all references to point to wasm::Instance. No functional changes. Differential Revision: https://phabricator.services.mozilla.com/D139538
0942b789d2eb725a93e0319bf3d11efbce2aa5cf: Bug 1753692 - wasm: Merge TlsData into Instance. r=lth
Ryan Hunt <rhunt@eqrion.net> - Fri, 11 Mar 2022 15:58:29 +0000 - rev 610396
Push 39402 by ctuns@mozilla.com at Fri, 11 Mar 2022 21:51:10 +0000
Bug 1753692 - wasm: Merge TlsData into Instance. r=lth 1. Move fields and accessors from TlsData to Instance 2. Allocate Instance using extra alignment and extra space at end 3. Leave TlsData as a subtype of Instance with no fields - This leaves all references to TlsData as valid - The TlsData stub type is never constructed, only used to resolve static members through its super type. This is a quick hack and is removed in a following commit. 4. Leave instance->tlsData() and tls->instance() as identity operations to be removed in a following commit. The net result is that TlsData and wasm::Instance are the same object in memory, just with different names. Differential Revision: https://phabricator.services.mozilla.com/D139537
a961313a61ee763a2030fc6f7e6c4e2efa960308: Bug 1753692 - wasm: Protect members of TlsData in preparation to be moved to Instance. r=lth
Ryan Hunt <rhunt@eqrion.net> - Fri, 11 Mar 2022 15:58:29 +0000 - rev 610395
Push 39402 by ctuns@mozilla.com at Fri, 11 Mar 2022 21:51:10 +0000
Bug 1753692 - wasm: Protect members of TlsData in preparation to be moved to Instance. r=lth wasm::Instance is a class with protected members. Change TlsData and it's uses be similar in preparation for them to be merged. Differential Revision: https://phabricator.services.mozilla.com/D139536
a430610af717cf3b5d1b07bef87c2d22e54f2fc2: Bug 1753692 - wasm: Reduce cost of WasmInstance.h for when it is transitively needed in more places. r=lth
Ryan Hunt <rhunt@eqrion.net> - Fri, 11 Mar 2022 15:58:28 +0000 - rev 610394
Push 39402 by ctuns@mozilla.com at Fri, 11 Mar 2022 21:51:10 +0000
Bug 1753692 - wasm: Reduce cost of WasmInstance.h for when it is transitively needed in more places. r=lth The masm loadWasmPinnedRegsFromTls() API is moved to MacroAssembler. Differential Revision: https://phabricator.services.mozilla.com/D139535
f137f28d9cb6b686ad512d31788a69aad5130c2f: Bug 1757999 - Disable fetch HTTP wasm caching if wasm debug enabled. r=necko-reviewers,lth,kershaw
Yury Delendik <ydelendik@mozilla.com> - Wed, 09 Mar 2022 21:49:52 +0000 - rev 610144
Push 39395 by smolnar@mozilla.com at Thu, 10 Mar 2022 17:23:56 +0000
Bug 1757999 - Disable fetch HTTP wasm caching if wasm debug enabled. r=necko-reviewers,lth,kershaw Differential Revision: https://phabricator.services.mozilla.com/D140401