Ignore:
Timestamp:
Nov 29, 2017, 12:12:32 PM (8 years ago)
Author:
[email protected]
Message:

Source/JavaScriptCore:
[MIPS][JSC] Implement MacroAssembler::probe support on MIPS
https://bugs.webkit.org/show_bug.cgi?id=175447

Patch by Stanislav Ocovaj <[email protected]> on 2017-11-29
Reviewed by Carlos Alberto Lopez Perez.

This patch allows DFG JIT to be enabled on MIPS platforms.

  • Sources.txt:
  • assembler/MIPSAssembler.h:

(JSC::MIPSAssembler::lastSPRegister):
(JSC::MIPSAssembler::numberOfSPRegisters):
(JSC::MIPSAssembler::sprName):

  • assembler/MacroAssemblerMIPS.cpp: Added.

(JSC::MacroAssembler::probe):

  • assembler/ProbeContext.cpp:

(JSC::Probe::executeProbe):

  • assembler/ProbeContext.h:

(JSC::Probe::CPUState::pc):

  • assembler/testmasm.cpp:

(JSC::isSpecialGPR):
(JSC::testProbePreservesGPRS):
(JSC::testProbeModifiesStackPointer):
(JSC::testProbeModifiesStackValues):

Source/WTF:
[DFG][MIPS] Enable DFG JIT on MIPS.
https://bugs.webkit.org/show_bug.cgi?id=175447

Patch by Stanislav Ocovaj <[email protected]> on 2017-11-29
Reviewed by Carlos Alberto Lopez Perez.

  • wtf/Platform.h:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/assembler/MIPSAssembler.h

    • Property svn:executable set to *
    r224623 r225286  
    114114    fexr = 26,
    115115    fenr = 28,
    116     fcsr = 31
     116    fcsr = 31,
     117    pc
    117118} SPRegisterID;
    118119
     
    166167
    167168    static constexpr SPRegisterID firstSPRegister() { return MIPSRegisters::fir; }
    168     static constexpr SPRegisterID lastSPRegister() { return MIPSRegisters::fcsr; }
    169     static constexpr unsigned numberOfSPRegisters() { return 5; }
     169    static constexpr SPRegisterID lastSPRegister() { return MIPSRegisters::pc; }
     170    static constexpr unsigned numberOfSPRegisters() { return lastSPRegister() - firstSPRegister() + 1; }
    170171
    171172    static constexpr FPRegisterID firstFPRegister() { return MIPSRegisters::f0; }
     
    198199        case MIPSRegisters::fcsr:
    199200            return "fcsr";
     201        case MIPSRegisters::pc:
     202            return "pc";
    200203        default:
    201204            RELEASE_ASSERT_NOT_REACHED();
Note: See TracChangeset for help on using the changeset viewer.