<html>
<head>
<base href="https://bugs.webkit.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - Implement calls to JavaScript functions in WebAssembly"
href="https://bugs.webkit.org/show_bug.cgi?id=149093#c2">Comment # 2</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - Implement calls to JavaScript functions in WebAssembly"
href="https://bugs.webkit.org/show_bug.cgi?id=149093">bug 149093</a>
from <span class="vcard"><a class="email" href="mailto:fpizlo@apple.com" title="Filip Pizlo <fpizlo@apple.com>"> <span class="fn">Filip Pizlo</span></a>
</span></b>
<pre>Comment on <span class=""><a href="attachment.cgi?id=261064&action=diff" name="attach_261064" title="Patch">attachment 261064</a> <a href="attachment.cgi?id=261064&action=edit" title="Patch">[details]</a></span>
Patch
View in context: <a href="https://bugs.webkit.org/attachment.cgi?id=261064&action=review">https://bugs.webkit.org/attachment.cgi?id=261064&action=review</a>
<span class="quote">> Source/JavaScriptCore/wasm/WASMModuleParser.cpp:53
> + : m_exec(exec)</span >
We should avoid doing this. ExecState* really means a frame pointer, so it's only valid during execution, and using it here can cause three other problems:
1) Impossible to make this code run concurrently.
2) Too easy to introduce user-observable effects. We usually only pass around ExecState* when we're in a context where it's OK to have user-observed effects.
3) Too easy to make the parser impure - i.e. somehow dependent on the current state of the world.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>