[webkit-reviews] review denied: [Bug 203861] Use fewer virtual registers in Wasm LLInt : [Attachment 382845] Patch

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Nov 7 18:24:36 PST 2019


Saam Barati <sbarati at apple.com> has denied Tadeu Zagallo <tzagallo at apple.com>'s
request for review:
Bug 203861: Use fewer virtual registers in Wasm LLInt
https://bugs.webkit.org/show_bug.cgi?id=203861

Attachment 382845: Patch

https://bugs.webkit.org/attachment.cgi?id=382845&action=review




--- Comment #3 from Saam Barati <sbarati at apple.com> ---
Comment on attachment 382845
  --> https://bugs.webkit.org/attachment.cgi?id=382845
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=382845&action=review

> Source/JavaScriptCore/llint/WebAssembly.asm:611
> +	   loadq -offset - 8 - CalleeSaveSpaceAsVirtualRegisters * 8[cfr], gpr
>      end)
>      forEachArgumentFPR(macro (offset, fpr)
> -	   loadd offset[ws1], fpr
> +	   loadd -offset - 8 - CalleeSaveSpaceAsVirtualRegisters * 8[cfr], fpr

This works because of the code you have in callInformationFor, right?

> Source/JavaScriptCore/wasm/WasmLLIntGenerator.cpp:354
> +	   for (uint32_t i = gprCount + fprCount; i--;)
> +	       registers.append(new
RegisterID(::JSC::virtualRegisterForLocal(numberOfLLIntCalleeSaveRegisters +
i)));

this looks wrong. How do we even know we have this much stack space? Should be
easy to add a test I think.


More information about the webkit-reviews mailing list