Changeset 39039 in webkit for trunk/JavaScriptCore/interpreter


Ignore:
Timestamp:
Dec 5, 2008, 12:39:57 PM (16 years ago)
Author:
[email protected]
Message:

2008-12-05 Gavin Barraclough <[email protected]>

Reviewed by Geoffrey Garen.

Simplify JIT generated checks for timeout code, by moving more work into the C function.
https://bugs.webkit.org/show_bug.cgi?id=22688

  • interpreter/Interpreter.cpp: (JSC::Interpreter::cti_timeout_check):
  • interpreter/Interpreter.h:
  • jit/JIT.cpp: (JSC::JIT::emitSlowScriptCheck):
Location:
trunk/JavaScriptCore/interpreter
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/interpreter/Interpreter.cpp

    r39038 r39039  
    44084408}
    44094409
    4410 void Interpreter::cti_timeout_check(CTI_ARGS)
    4411 {
    4412     CTI_STACK_HACK();
    4413 
    4414     if (ARG_globalData->interpreter->checkTimeout(ARG_callFrame->dynamicGlobalObject())) {
     4410int Interpreter::cti_timeout_check(CTI_ARGS)
     4411{
     4412    CTI_STACK_HACK();
     4413    Interpreter* interpreter = ARG_globalData->interpreter;
     4414
     4415    if (interpreter->checkTimeout(ARG_callFrame->dynamicGlobalObject())) {
    44154416        ARG_globalData->exception = createInterruptedExecutionException(ARG_globalData);
    44164417        VM_THROW_EXCEPTION_AT_END();
    44174418    }
     4419   
     4420    return interpreter->m_ticksUntilNextTimeoutCheck;
    44184421}
    44194422
  • trunk/JavaScriptCore/interpreter/Interpreter.h

    r38975 r39039  
    171171#if ENABLE(JIT)
    172172
    173         static void SFX_CALL cti_timeout_check(CTI_ARGS);
     173        static int SFX_CALL cti_timeout_check(CTI_ARGS);
    174174        static void SFX_CALL cti_register_file_check(CTI_ARGS);
    175175
Note: See TracChangeset for help on using the changeset viewer.