Ignore:
Timestamp:
Feb 10, 2015, 6:41:20 PM (11 years ago)
Author:
[email protected]
Message:

Split FTL::JSCall into the part that knows about call inline caching and the part that interacts with LLVM patchpoints
https://bugs.webkit.org/show_bug.cgi?id=141455

Reviewed by Mark Lam.

The newly introduced FTL::JSCallBase can be used to build other things, like the FTL portion
of https://bugs.webkit.org/show_bug.cgi?id=141332.

(JSC::CallLinkInfo::specializationKindFor):
(JSC::CallLinkInfo::specializationKind):

  • ftl/FTLJSCall.cpp:

(JSC::FTL::JSCall::JSCall):
(JSC::FTL::JSCall::emit): Deleted.
(JSC::FTL::JSCall::link): Deleted.

  • ftl/FTLJSCall.h:
  • ftl/FTLJSCallBase.cpp: Added.

(JSC::FTL::JSCallBase::JSCallBase):
(JSC::FTL::JSCallBase::emit):
(JSC::FTL::JSCallBase::link):

  • ftl/FTLJSCallBase.h: Added.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/bytecode/CallLinkInfo.h

    r179478 r179912  
    5656        return CallVarargs;
    5757    }
    58        
     58   
    5959    CallLinkInfo()
    6060        : isFTL(false)
     
    7272    }
    7373   
     74    static CodeSpecializationKind specializationKindFor(CallType callType)
     75    {
     76        return specializationFromIsConstruct(callType == Construct || callType == ConstructVarargs);
     77    }
    7478    CodeSpecializationKind specializationKind() const
    7579    {
    76         return specializationFromIsConstruct(callType == Construct || callType == ConstructVarargs);
     80        return specializationKindFor(static_cast<CallType>(callType));
    7781    }
    7882
Note: See TracChangeset for help on using the changeset viewer.