Skip to content
  • commit-queue@webkit.org's avatar
    [Win] JavaScript crashes on 64-bit with JIT enabled. · c5d9e32c
    commit-queue@webkit.org authored
    https://bugs.webkit.org/show_bug.cgi?id=124409
    
    Patch by peavo@outlook.com <peavo@outlook.com> on 2013-11-15
    Reviewed by Michael Saboff.
    
    These are issues found with JIT on 64-bit:
    - The registers rsi and rdi in callToJavaScript needs to be saved and restored. This is required by the Windows 64-bit ABI.
    - The getHostCallReturnValue function needs to be updated according to it's GCC counterpart.
    - The poke argument offset needs to be 20h, because Windows 64-bit ABI requires stack space allocated for the 4 argument registers.
    
    * JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: Re-added JITStubsMSVC64.asm to project.
    * jit/CCallHelpers.h: Set poke argument offset.
    (JSC::CCallHelpers::setupArguments): Compile fix, added needed method.
    * jit/JITStubsMSVC64.asm: Save and restore registers rsi and rdi.
                              Update getHostCallReturnValue according to the GCC version.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159376 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    c5d9e32c