[webkit-dev] multithreading in JSC

Gavin Barraclough barraclough at apple.com
Fri Dec 2 16:29:30 PST 2011

On Dec 2, 2011, at 12:10 PM, venkeng koon wrote:

> Hi! 
> I have started to invistigate SFX  and now have some information about it.
> But I have still had some quetions and will be very gratefull if you could help me.
> First. Does SFX support multithreading? Can he compile several funcotion at once?

JSC supports the web workers API, which allows for concurrent execution but only over separate heaps of JavaScript objects (communication between threads limited to message passing).

A number of additional threads also exist within the engine for internal usage, but no execution of JS code takes place on these threads (e.g. parallel GC, reaping unused memory pages from by the C heap).

Compilation is currently synchronous on the thread that will be executing the code.

On Dec 2, 2011, at 2:05 PM, vahagvahag wrote:

> Hi.
> How can I get native code of function cause I wanna disassemble it to see
> generated assebler.
> I know that machine code goes trough AssemblerBuffer::executableCopy

On Dec 2, 2011, at 12:10 PM, venkeng koon wrote:

> Second. Now I'm working to dump assembler from native code. I have found the executableCopy function and think that  can dump native code from this function and disassemble it, though working on this for several days I still have no result.

JSC does not currently have a built in disassembler (though this is not necessarily a bad idea).  You may be able to dump the code in a debugger.  'executableCopy' is basically just a memcpy of the code (moving generated code from a temporary non-executable buffer into an executable region of memory).


More information about the webkit-dev mailing list