Bug 159775 - We should support the newer WebAssembly spec.
: We should support the newer WebAssembly spec.
Status: NEW
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore
: WebKit Nightly Build
: Unspecified Unspecified
: P2 Normal
Assigned To: Keith Miller
:
Depends on: 161709 162693 162976 163807 165231 165833 165856 165862 166349 166442 168694 168784 168788 168836 168857 168861 160603 160681 160914 160928 161707 161710 161727 161728 161778 163919 163959 164444 164459 164724 165345 165471 165805 166199 166295 168672 168673 168822
Blocks: 146064
  Show dependency treegraph
 
Reported: 2016-07-14 11:47 PDT by Keith Miller
Modified: 2017-02-24 17:39 PST (History)
14 users (show)

See Also:


Attachments
Patch (31.91 KB, patch)
2016-10-20 13:39 PDT, Keith Miller
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Keith Miller 2016-07-14 11:47:09 PDT
We should totes do this.
Comment 1 Keith Miller 2016-10-20 13:39:04 PDT
Created attachment 292244 [details]
Patch
Comment 2 Keith Miller 2016-10-20 13:42:07 PDT
Crap, I uploaded this to the wrong bug...
Comment 3 Geoffrey Garen 2016-10-20 13:54:56 PDT
Comment on attachment 292244 [details]
Patch

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

> Source/JavaScriptCore/ChangeLog:12
> +        address we need to call to.  For each callsite in the compiling function WASM remembers what

remembers what => remembers

> Source/JavaScriptCore/ChangeLog:14
> +        each functions callsites are linked to the appropriate entrypoint.

each callsite is linked to the appropriate entrypoint

> Source/JavaScriptCore/wasm/WASMB3IRGenerator.cpp:220
> +    Vector<UnlinkedLocationInfo>& m_unlinkedCalls;

UnlinkedLocationInfo holds a single CodeLocationCall. What's the "list of of callsites"?

> Source/JavaScriptCore/wasm/WASMB3IRGenerator.cpp:588
> +                    *callSiteLinkLocation = { linkBuffer.locationOf(call), functionIndex };

If m_unlinkedCalls grows enough before this patchpoint generator runs, callSiteLinkLocation becomes a stale pointer. I think you want an index instead of a pointer.

> Source/JavaScriptCore/wasm/WASMFormat.h:131
> +struct UnlinkedLocationInfo {

Can we call this UnlinkedCall or UnlinkedWASMCall or UnlinkedCallInfo? 'Location' is pretty vague.
Comment 4 JF Bastien 2017-01-03 20:39:10 PST
*** Bug 161728 has been marked as a duplicate of this bug. ***