Ignore:
Timestamp:
Jan 19, 2022, 8:03:12 PM (3 years ago)
Author:
[email protected]
Message:

[JSC] Fix non-JIT Windows LLInt
https://bugs.webkit.org/show_bug.cgi?id=235388

Reviewed by Mark Lam.

We should implement cCall3 which calls llint_link_call etc. from LLInt code.
This implementation needs to work on Windows too, so it requires stack modification.
While we do not have a problem on JIT Windows build, it is required for non JIT Windows
build. (If JIT is enabled, LLInt is fine. But if JIT is entirely disabled, this change
is required.)

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::llint_link_call):
(JSC::LLInt::llint_virtual_call):

  • llint/LLIntSlowPaths.h:
  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • offlineasm/cloop.rb:
  • offlineasm/instructions.rb:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/offlineasm/instructions.rb

    r287512 r288268  
    464464     "cloopCallSlowPath",       # operands: callTarget, currentFrame, currentPC
    465465     "cloopCallSlowPathVoid",   # operands: callTarget, currentFrame, currentPC
     466     "cloopCallSlowPath3",      # operands: callTarget, a0, a1, a2
    466467     "cloopCallSlowPath4",      # operands: callTarget, a0, a1, a2, a3
    467468
Note: See TracChangeset for help on using the changeset viewer.