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 160603 160681 160914 160928 161707 161710 161727 161728 161778 163919 163959 164444 164459 164724 165345 165471 165805 166199 166295
Blocks: 146064
  Show dependency treegraph
 
Reported: 2016-07-14 11:47 PDT by Keith Miller
Modified: 2017-01-03 20: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. ***