Ignore:
Timestamp:
May 4, 2022, 10:44:44 AM (3 years ago)
Author:
[email protected]
Message:

Use IterationStatus in more places.
https://bugs.webkit.org/show_bug.cgi?id=239864

Reviewed by Saam Barati.

Source/JavaScriptCore:

There's no need for a StackVisitor::Status and a VMInspector::FunctorStatus which
represent the same idea.

  • API/JSContextRef.cpp:

(BacktraceFunctor::operator() const):

  • bytecode/CodeBlock.cpp:

(JSC::RecursionCheckFunctor::operator() const):

  • debugger/DebuggerCallFrame.cpp:

(JSC::LineAndColumnFunctor::operator() const):

  • inspector/ScriptCallStackFactory.cpp:

(Inspector::CreateScriptCallStackFunctor::operator() const):

  • interpreter/CallFrame.cpp:

(JSC::CallFrame::callerSourceOrigin):
(JSC::CallFrame::globalObjectOfClosestCodeBlock):

  • interpreter/CallFrame.h:
  • interpreter/Interpreter.cpp:

(JSC::GetStackTraceFunctor::operator() const):
(JSC::Interpreter::getStackTrace):
(JSC::GetCatchHandlerFunctor::operator() const):
(JSC::UnwindFunctor::operator() const):

  • interpreter/ShadowChicken.cpp:

(JSC::ShadowChicken::update):

  • interpreter/StackVisitor.h:

(JSC::StackVisitor::visit):
(JSC::CallerFunctor::operator() const):

  • jsc.cpp:

(FunctionJSCStackFunctor::operator() const):
(startTimeoutTimer):

  • runtime/Error.cpp:

(JSC::FindFirstCallerFrameWithCodeblockFunctor::operator() const):

  • runtime/FunctionPrototype.cpp:

(JSC::RetrieveArgumentsFunctor::operator() const):
(JSC::RetrieveCallerFunctionFunctor::operator() const):

  • runtime/JSGlobalObject.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • runtime/NullSetterFunction.cpp:

(JSC::GetCallerStrictnessFunctor::operator() const):

  • tools/HeapVerifier.cpp:

(JSC::HeapVerifier::checkIfRecorded):

  • tools/JSDollarVM.cpp:

(JSC::CallerFrameJITTypeFunctor::operator() const):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • tools/VMInspector.cpp:

(JSC::VMInspector::forEachVM):
(JSC::VMInspector::isValidExecutableMemory):
(JSC::VMInspector::codeBlockForMachinePC):
(JSC::VMInspector::codeBlockForFrame):
(JSC::DumpFrameFunctor::operator() const):
(JSC::VMInspector::dumpRegisters):

  • tools/VMInspector.h:

(JSC::VMInspector::WTF_REQUIRES_LOCK):

Source/WebCore:

  • bindings/js/JSDOMGlobalObject.cpp:

(WebCore::callerGlobalObject):

  • testing/Internals.cpp:

(WebCore::GetCallerCodeBlockFunctor::operator() const):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/tools/JSDollarVM.cpp

    r292929 r293779  
    11/*
    2  * Copyright (C) 2015-2021 Apple Inc. All rights reserved.
     2 * Copyright (C) 2015-2022 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    172172
    173173            if (frameIndex++ != requestedFrameIndex)
    174                 return StackVisitor::Continue;
     174                return IterationStatus::Continue;
    175175
    176176            addProperty(vm, "name"_s, jsString(vm, visitor->functionName()));
     
    187187            isValid = true;
    188188
    189             return StackVisitor::Done;
     189            return IterationStatus::Done;
    190190        });
    191191
     
    23152315    }
    23162316
    2317     StackVisitor::Status operator()(StackVisitor& visitor) const
     2317    IterationStatus operator()(StackVisitor& visitor) const
    23182318    {
    23192319        unsigned index = m_currentFrame++;
     
    23222322            if (visitor->codeBlock())
    23232323                m_jitType = visitor->codeBlock()->jitType();
    2324             return StackVisitor::Done;
     2324            return IterationStatus::Done;
    23252325        }
    2326         return StackVisitor::Continue;
     2326        return IterationStatus::Continue;
    23272327    }
    23282328   
     
    26192619        DollarVMAssertScope assertScope;
    26202620        if (frameIndex++ != requestedFrameIndex)
    2621             return StackVisitor::Continue;
     2621            return IterationStatus::Continue;
    26222622        VMInspector::dumpRegisters(visitor->callFrame());
    2623         return StackVisitor::Done;
     2623        return IterationStatus::Done;
    26242624    });
    26252625
     
    32523252    JSArray* result = constructEmptyArray(globalObject, nullptr);
    32533253    RETURN_IF_EXCEPTION(scope, { });
    3254     StackVisitor::visit(callFrame, vm, [&] (StackVisitor& visitor) -> StackVisitor::Status {
     3254    StackVisitor::visit(callFrame, vm, [&] (StackVisitor& visitor) -> IterationStatus {
    32553255        DollarVMAssertScope assertScope;
    32563256        if (visitor->isInlinedFrame())
    3257             return StackVisitor::Continue;
     3257            return IterationStatus::Continue;
    32583258        if (visitor->isWasmFrame())
    3259             return StackVisitor::Continue;
     3259            return IterationStatus::Continue;
    32603260        result->push(globalObject, jsCast<JSObject*>(visitor->callee().asCell()));
    32613261        scope.releaseAssertNoException(); // This function is only called from tests.
    3262         return StackVisitor::Continue;
     3262        return IterationStatus::Continue;
    32633263    });
    32643264    RETURN_IF_EXCEPTION(scope, { });
Note: See TracChangeset for help on using the changeset viewer.