Ignore:
Timestamp:
Aug 26, 2010, 4:21:24 PM (15 years ago)
Author:
[email protected]
Message:

Rolling out r64608, this regressed performance.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • assembler/ARMAssembler.cpp:

(JSC::ARMAssembler::executableCopy):

  • assembler/LinkBuffer.h:

(JSC::LinkBuffer::LinkBuffer):
(JSC::LinkBuffer::~LinkBuffer):
(JSC::LinkBuffer::performFinalization):

  • assembler/MIPSAssembler.h:

(JSC::MIPSAssembler::executableCopy):

  • assembler/X86Assembler.h:

(JSC::X86Assembler::executableCopy):

  • bytecode/StructureStubInfo.h:

(JSC::StructureStubInfo::initGetByIdProto):
(JSC::StructureStubInfo::initGetByIdChain):
(JSC::StructureStubInfo::initGetByIdSelfList):
(JSC::StructureStubInfo::initGetByIdProtoList):
(JSC::StructureStubInfo::initPutByIdTransition):

  • jit/ExecutableAllocator.cpp:

(JSC::ExecutablePool::systemAlloc):

  • jit/ExecutableAllocator.h:

(JSC::ExecutablePool::create):
(JSC::ExecutableAllocator::ExecutableAllocator):
(JSC::ExecutableAllocator::poolForSize):
(JSC::ExecutablePool::ExecutablePool):
(JSC::ExecutablePool::poolAllocate):

  • jit/ExecutableAllocatorFixedVMPool.cpp:

(JSC::FixedVMPoolAllocator::allocInternal):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • jit/JIT.h:

(JSC::JIT::compileGetByIdProto):
(JSC::JIT::compileGetByIdSelfList):
(JSC::JIT::compileGetByIdProtoList):
(JSC::JIT::compileGetByIdChainList):
(JSC::JIT::compileGetByIdChain):
(JSC::JIT::compilePutByIdTransition):
(JSC::JIT::compilePatchGetArrayLength):

  • jit/JITOpcodes.cpp:

(JSC::JIT::privateCompileCTIMachineTrampolines):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::privateCompileCTIMachineTrampolines):
(JSC::JIT::privateCompileCTINativeCall):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::privateCompilePutByIdTransition):
(JSC::JIT::privateCompilePatchGetArrayLength):
(JSC::JIT::privateCompileGetByIdProto):
(JSC::JIT::privateCompileGetByIdSelfList):
(JSC::JIT::privateCompileGetByIdProtoList):
(JSC::JIT::privateCompileGetByIdChainList):
(JSC::JIT::privateCompileGetByIdChain):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::privateCompilePutByIdTransition):
(JSC::JIT::privateCompilePatchGetArrayLength):
(JSC::JIT::privateCompileGetByIdProto):
(JSC::JIT::privateCompileGetByIdSelfList):
(JSC::JIT::privateCompileGetByIdProtoList):
(JSC::JIT::privateCompileGetByIdChainList):
(JSC::JIT::privateCompileGetByIdChain):

  • jit/JITStubs.cpp:

(JSC::JITThunks::tryCachePutByID):
(JSC::JITThunks::tryCacheGetByID):
(JSC::DEFINE_STUB_FUNCTION):
(JSC::getPolymorphicAccessStructureListSlot):

  • jit/JITStubs.h:
  • jit/SpecializedThunkJIT.h:

(JSC::SpecializedThunkJIT::finalize):

  • runtime/ExceptionHelpers.cpp:
  • runtime/ExceptionHelpers.h:
  • runtime/Executable.cpp:

(JSC::EvalExecutable::compileInternal):
(JSC::ProgramExecutable::compileInternal):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal):
(JSC::FunctionExecutable::reparseExceptionInfo):
(JSC::EvalExecutable::reparseExceptionInfo):

  • yarr/RegexJIT.cpp:

(JSC::Yarr::RegexGenerator::compile):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/bytecode/StructureStubInfo.h

    r64943 r66150  
    6767        }
    6868
    69         void initGetByIdProto(Structure* baseObjectStructure, Structure* prototypeStructure, CodeLocationLabel routine)
     69        void initGetByIdProto(Structure* baseObjectStructure, Structure* prototypeStructure)
    7070        {
    7171            accessType = access_get_by_id_proto;
     
    7676            u.getByIdProto.prototypeStructure = prototypeStructure;
    7777            prototypeStructure->ref();
    78 
    79             stubRoutine = routine;
    8078        }
    8179
    82         void initGetByIdChain(Structure* baseObjectStructure, StructureChain* chain, CodeLocationLabel routine)
     80        void initGetByIdChain(Structure* baseObjectStructure, StructureChain* chain)
    8381        {
    8482            accessType = access_get_by_id_chain;
     
    8987            u.getByIdChain.chain = chain;
    9088            chain->ref();
    91 
    92             stubRoutine = routine;
    9389        }
    9490
    95         void initGetByIdSelfList(PolymorphicAccessStructureList* structureList)
     91        void initGetByIdSelfList(PolymorphicAccessStructureList* structureList, int listSize)
    9692        {
    9793            accessType = access_get_by_id_self_list;
    9894
    9995            u.getByIdProtoList.structureList = structureList;
    100             u.getByIdProtoList.listSize = 1;
    101 
    102             stubRoutine = CodeLocationLabel();
     96            u.getByIdProtoList.listSize = listSize;
    10397        }
    10498
    105         void initGetByIdProtoList(PolymorphicAccessStructureList* structureList)
     99        void initGetByIdProtoList(PolymorphicAccessStructureList* structureList, int listSize)
    106100        {
    107101            accessType = access_get_by_id_proto_list;
    108102
    109103            u.getByIdProtoList.structureList = structureList;
    110             u.getByIdProtoList.listSize = 1;
    111 
    112             stubRoutine = CodeLocationLabel();
     104            u.getByIdProtoList.listSize = listSize;
    113105        }
    114106
    115107        // PutById*
    116108
    117         void initPutByIdTransition(Structure* previousStructure, Structure* structure, StructureChain* chain, CodeLocationLabel routine)
     109        void initPutByIdTransition(Structure* previousStructure, Structure* structure, StructureChain* chain)
    118110        {
    119111            accessType = access_put_by_id_transition;
     
    127119            u.putByIdTransition.chain = chain;
    128120            chain->ref();
    129 
    130             stubRoutine = routine;
    131121        }
    132122
Note: See TracChangeset for help on using the changeset viewer.