Bug 127827 - Enable JIT on Win64 again
Summary: Enable JIT on Win64 again
Status: RESOLVED DUPLICATE of bug 130638
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC Windows 8
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks: 128992
  Show dependency treegraph
 
Reported: 2014-01-28 20:32 PST by Alex Christensen
Modified: 2014-06-05 17:02 PDT (History)
7 users (show)

See Also:


Attachments
Patch (10.59 KB, patch)
2014-01-28 20:49 PST, Alex Christensen
msaboff: review-
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Alex Christensen 2014-01-28 20:32:48 PST
The Apple JavaScript team will never cease to amaze me.  The JIT runs SunSpider without crashing, so that's good enough for me.

I've snuck some accelerated compositing stuff into this patch, too.  I don't want to use it until it works with WebGL, but this is everything else required to build with it.
Comment 1 Alex Christensen 2014-01-28 20:49:11 PST
Created attachment 222552 [details]
Patch
Comment 2 Michael Saboff 2014-01-28 21:10:32 PST
Comment on attachment 222552 [details]
Patch

r-  We are very close to landing a merge from the C Stack branch where we migrating to use the C stack.  That work does not include Windows primarily because the offline assembler used for the LLInt is also used to generate stubs that call JavaScript code.  We want the offline assembler to support windows before re-enabling the JIT on Windows.
Comment 3 Alex Christensen 2014-01-28 21:34:27 PST
I was under the impression that the merge had already happened, based on the WebKit-dev emails. I'll try this again next week.
Comment 4 Michael Saboff 2014-01-28 21:49:46 PST
The long pole to getting the JIT enabled on Win64 is to add a Windows backend to the offline assembler.  Basically take JavaScriptCore/offlineasm/x86.rb, copy it to say x86-win.rb.  Then change the operand order for the opcodes and then add a windows versions of the inline assembly macros at the end of JavaScriptCore/llint/LowLevelInterpreter.cpp.   There are some calling convention differences that need to be factored into the LowLevelInterpreter*.asm files as well.
Comment 5 Alex Christensen 2014-06-05 17:02:59 PDT
This will be done in https://bugs.webkit.org/show_bug.cgi?id=130638

*** This bug has been marked as a duplicate of bug 130638 ***