Changeset 66846 in webkit for trunk/JavaScriptCore/jit/JIT.h


Ignore:
Timestamp:
Sep 6, 2010, 1:29:01 PM (15 years ago)
Author:
[email protected]
Message:

2010-09-06 Chao-ying Fu <[email protected]>

Reviewed by Oliver Hunt.

Support JSVALUE32_64 on MIPS
https://bugs.webkit.org/show_bug.cgi?id=43999

Add missing functions to support JSVALUE32_64 on MIPS.
Remove JSVALUE32 as the default for MIPS.

  • assembler/MIPSAssembler.h: (JSC::MIPSAssembler::divd): (JSC::MIPSAssembler::mthc1): (JSC::MIPSAssembler::cvtwd):
  • assembler/MacroAssemblerMIPS.h: (JSC::MacroAssemblerMIPS::neg32): (JSC::MacroAssemblerMIPS::branchOr32): (JSC::MacroAssemblerMIPS::set8): (JSC::MacroAssemblerMIPS::loadDouble): (JSC::MacroAssemblerMIPS::divDouble): (JSC::MacroAssemblerMIPS::convertInt32ToDouble): (JSC::MacroAssemblerMIPS::branchDouble): (JSC::MacroAssemblerMIPS::branchConvertDoubleToInt32): (JSC::MacroAssemblerMIPS::zeroDouble):
  • jit/JIT.h:
  • jit/JITOpcodes32_64.cpp: (JSC::JIT::privateCompileCTINativeCall):
  • jit/JITPropertyAccess32_64.cpp: (JSC::JIT::privateCompilePutByIdTransition):
  • jit/JITStubs.cpp: (JSC::JITThunks::JITThunks):
  • jit/JITStubs.h:
  • wtf/Platform.h:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/jit/JIT.h

    r66150 r66846  
    449449        static const int sequencePutByIdInstructionSpace = 36;
    450450        static const int sequencePutByIdConstantSpace = 4;
     451#elif CPU(MIPS)
     452#if WTF_MIPS_ISA(1)
     453        static const int patchOffsetPutByIdStructure = 16;
     454        static const int patchOffsetPutByIdExternalLoad = 48;
     455        static const int patchLengthPutByIdExternalLoad = 20;
     456        static const int patchOffsetPutByIdPropertyMapOffset1 = 68;
     457        static const int patchOffsetPutByIdPropertyMapOffset2 = 84;
     458        static const int patchOffsetGetByIdStructure = 16;
     459        static const int patchOffsetGetByIdBranchToSlowCase = 48;
     460        static const int patchOffsetGetByIdExternalLoad = 48;
     461        static const int patchLengthGetByIdExternalLoad = 20;
     462        static const int patchOffsetGetByIdPropertyMapOffset1 = 68;
     463        static const int patchOffsetGetByIdPropertyMapOffset2 = 88;
     464        static const int patchOffsetGetByIdPutResult = 108;
     465#if ENABLE(OPCODE_SAMPLING)
     466        #error "OPCODE_SAMPLING is not yet supported"
     467#else
     468        static const int patchOffsetGetByIdSlowCaseCall = 44;
     469#endif
     470        static const int patchOffsetOpCallCompareToJump = 32;
     471        static const int patchOffsetMethodCheckProtoObj = 32;
     472        static const int patchOffsetMethodCheckProtoStruct = 56;
     473        static const int patchOffsetMethodCheckPutFunction = 88;
     474#else // WTF_MIPS_ISA(1)
     475        static const int patchOffsetPutByIdStructure = 12;
     476        static const int patchOffsetPutByIdExternalLoad = 44;
     477        static const int patchLengthPutByIdExternalLoad = 16;
     478        static const int patchOffsetPutByIdPropertyMapOffset1 = 60;
     479        static const int patchOffsetPutByIdPropertyMapOffset2 = 76;
     480        static const int patchOffsetGetByIdStructure = 12;
     481        static const int patchOffsetGetByIdBranchToSlowCase = 44;
     482        static const int patchOffsetGetByIdExternalLoad = 44;
     483        static const int patchLengthGetByIdExternalLoad = 16;
     484        static const int patchOffsetGetByIdPropertyMapOffset1 = 60;
     485        static const int patchOffsetGetByIdPropertyMapOffset2 = 76;
     486        static const int patchOffsetGetByIdPutResult = 92;
     487#if ENABLE(OPCODE_SAMPLING)
     488        #error "OPCODE_SAMPLING is not yet supported"
     489#else
     490        static const int patchOffsetGetByIdSlowCaseCall = 44;
     491#endif
     492        static const int patchOffsetOpCallCompareToJump = 32;
     493        static const int patchOffsetMethodCheckProtoObj = 32;
     494        static const int patchOffsetMethodCheckProtoStruct = 52;
     495        static const int patchOffsetMethodCheckPutFunction = 84;
     496#endif
    451497#else
    452498#error "JSVALUE32_64 not supported on this platform."
Note: See TracChangeset for help on using the changeset viewer.