Skip to content

Commit c76054f

Browse files
Add base lightup support for most of the WASM intrinsics (#130161)
This does not cover the cases which require more complex codegen/handling or which are dependent on Shuffle, GetElement, or WithElement [Diffs](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1493604&view=ms.vss-build-web.run-extensions-tab) It provides an 11.57% improvement to the WASM throughput for corelib crossgen. The asm output is a regression, namely due to intrinsics APIs actually being intrinsic and not eating the inlining budget, so the other hot code is meaningfully inlined instead. It should balance out more when the rest of the intrinsics are brought online but is itself an improvement in terms of perf and codegen.
1 parent a526847 commit c76054f

11 files changed

Lines changed: 744 additions & 175 deletions

src/coreclr/jit/assertionprop.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -346,6 +346,8 @@ static Range GetRange(Compiler* comp, GenTree* tree, BasicBlock* block, ASSERT_V
346346
case NI_AVX_MoveMask:
347347
case NI_AVX2_MoveMask:
348348
case NI_AVX512_MoveMask:
349+
#elif defined(TARGET_WASM)
350+
case NI_PackedSimd_Bitmask:
349351
#endif
350352
case NI_Vector_ExtractMostSignificantBits:
351353
{

0 commit comments

Comments
 (0)