Bug 198283 - [JSC] Always use LLInt ASM interpreter in Windows
Summary: [JSC] Always use LLInt ASM interpreter in Windows
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-05-28 00:14 PDT by Yusuke Suzuki
Modified: 2019-05-30 15:41 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Yusuke Suzuki 2019-05-28 00:14:36 PDT
...
Comment 1 Yusuke Suzuki 2019-05-30 15:41:41 PDT
Windows CLoop in MSVC is half-broken state right now. MSVC can compile it, the semantics of the compiled CLoop::execute seems fine. The problem is, not sure why, MSVC compiled CLoop::execute requires massive amount of stack space... I don't check it carefully, but inserting some currentStackPointer() and diffing the values say CLoop::execute takes almost 100KB stack space. It does not make sense, CLoop::execute should take very few amount of stack space.

This leads to very easy stack overflow everywhere. If you call CLoop::execute in a nested manner (maybe) 10 times, then you will see stack-overflow range error will be thrown.

I think we should rather switching to LLInt ASM interpreter for Windows.