webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Protected Attributes | Friends | List of all members
JSC::CodeBlock Class Reference

#include <CodeBlock.h>

Inheritance diagram for JSC::CodeBlock:
JSC::JSCell JSC::JSCell JSC::HeapCell JSC::HeapCell JSC::HeapCell JSC::HeapCell JSC::FunctionCodeBlock JSC::GlobalCodeBlock JSC::EvalCodeBlock JSC::ModuleProgramCodeBlock JSC::ProgramCodeBlock

Classes

struct  RareData
 

Public Types

enum  CopyParsedBlockTag { CopyParsedBlock, CopyParsedBlock }
 
enum  ShrinkMode { EarlyShrink, LateShrink, EarlyShrink, LateShrink }
 
enum  SteppingMode { SteppingModeDisabled, SteppingModeEnabled, SteppingModeDisabled, SteppingModeEnabled }
 
enum  CopyParsedBlockTag { CopyParsedBlock, CopyParsedBlock }
 
enum  ShrinkMode { EarlyShrink, LateShrink, EarlyShrink, LateShrink }
 
enum  SteppingMode { SteppingModeDisabled, SteppingModeEnabled, SteppingModeDisabled, SteppingModeEnabled }
 
typedef JSC::Instruction Instruction
 
typedef RefCountedArray< Instruction > & UnpackedInstructions
 
typedef HashMap< Structure *, Bag< LLIntPrototypeLoadAdaptiveStructureWatchpoint > > StructureWatchpointMap
 
typedef JSC::Instruction Instruction
 
typedef RefCountedArray< Instruction > & UnpackedInstructions
 
typedef HashMap< Structure *, Bag< LLIntPrototypeLoadAdaptiveStructureWatchpoint > > StructureWatchpointMap
 
- Public Types inherited from JSC::JSCell
enum  CreatingEarlyCellTag { CreatingEarlyCell, CreatingEarlyCell }
 
enum  CreatingEarlyCellTag { CreatingEarlyCell, CreatingEarlyCell }
 
- Public Types inherited from JSC::HeapCell
enum  Kind : int8_t { JSCell, Auxiliary, JSCell, Auxiliary }
 
enum  Kind : int8_t { JSCell, Auxiliary, JSCell, Auxiliary }
 

Public Member Functions

JS_EXPORT_PRIVATE ~CodeBlock ()
 
UnlinkedCodeBlockunlinkedCodeBlock () const
 
CString inferredName () const
 
CodeBlockHash hash () const
 
bool hasHash () const
 
bool isSafeToComputeHash () const
 
CString hashAsStringIfPossible () const
 
CString sourceCodeForTools () const
 
CString sourceCodeOnOneLine () const
 
void dumpAssumingJITType (PrintStream &, JITCode::JITType) const
 
JS_EXPORT_PRIVATE void dump (PrintStream &) const
 
int numParameters () const
 
void setNumParameters (int newValue)
 
int numCalleeLocals () const
 
int * addressOfNumParameters ()
 
CodeBlockalternative () const
 
void setAlternative (VM &, CodeBlock *)
 
template<typename Functor >
void forEachRelatedCodeBlock (Functor &&functor)
 
CodeSpecializationKind specializationKind () const
 
CodeBlockalternativeForJettison ()
 
JS_EXPORT_PRIVATE CodeBlockbaselineAlternative ()
 
CodeBlockbaselineVersion ()
 
void visitChildren (SlotVisitor &)
 
void visitWeakly (SlotVisitor &)
 
void clearVisitWeaklyHasBeenCalled ()
 
void dumpSource ()
 
void dumpSource (PrintStream &)
 
void dumpBytecode ()
 
void dumpBytecode (PrintStream &)
 
void dumpBytecode (PrintStream &out, const Instruction *begin, const Instruction *&it, const StubInfoMap &=StubInfoMap(), const CallLinkInfoMap &=CallLinkInfoMap())
 
void dumpBytecode (PrintStream &out, unsigned bytecodeOffset, const StubInfoMap &=StubInfoMap(), const CallLinkInfoMap &=CallLinkInfoMap())
 
void dumpExceptionHandlers (PrintStream &)
 
void printStructures (PrintStream &, const Instruction *)
 
void printStructure (PrintStream &, const char *name, const Instruction *, int operand)
 
void dumpMathICStats ()
 
bool isStrictMode () const
 
ECMAMode ecmaMode () const
 
bool isKnownNotImmediate (int index)
 
ALWAYS_INLINE bool isTemporaryRegisterIndex (int index)
 
HandlerInfohandlerForBytecodeOffset (unsigned bytecodeOffset, RequiredHandler=RequiredHandler::AnyHandler)
 
HandlerInfohandlerForIndex (unsigned, RequiredHandler=RequiredHandler::AnyHandler)
 
void removeExceptionHandlerForCallSite (CallSiteIndex)
 
unsigned lineNumberForBytecodeOffset (unsigned bytecodeOffset)
 
unsigned columnNumberForBytecodeOffset (unsigned bytecodeOffset)
 
void expressionRangeForBytecodeOffset (unsigned bytecodeOffset, int &divot, int &startOffset, int &endOffset, unsigned &line, unsigned &column) const
 
std::optional< unsigned > bytecodeOffsetFromCallSiteIndex (CallSiteIndex)
 
void getStubInfoMap (const ConcurrentJSLocker &, StubInfoMap &result)
 
void getStubInfoMap (StubInfoMap &result)
 
void getCallLinkInfoMap (const ConcurrentJSLocker &, CallLinkInfoMap &result)
 
void getCallLinkInfoMap (CallLinkInfoMap &result)
 
void getByValInfoMap (const ConcurrentJSLocker &, ByValInfoMap &result)
 
void getByValInfoMap (ByValInfoMap &result)
 
void unlinkIncomingCalls ()
 
void linkIncomingCall (ExecState *callerFrame, LLIntCallLinkInfo *)
 
void setJITCodeMap (std::unique_ptr< CompactJITCodeMap > jitCodeMap)
 
CompactJITCodeMapjitCodeMap ()
 
unsigned bytecodeOffset (Instruction *returnAddress)
 
unsigned numberOfInstructions () const
 
RefCountedArray< Instruction > & instructions ()
 
const RefCountedArray< Instruction > & instructions () const
 
size_t predictedMachineCodeSize ()
 
bool usesOpcode (OpcodeID)
 
unsigned instructionCount () const
 
CodeBlocknewReplacement ()
 
void setJITCode (Ref< JITCode > &&code)
 
RefPtr< JITCodejitCode ()
 
JITCode::JITType jitType () const
 
bool hasBaselineJITProfiling () const
 
void jettison (Profiler::JettisonReason, ReoptimizationMode=DontCountReoptimization, const FireDetail *=nullptr)
 
ExecutableBaseownerExecutable () const
 
ScriptExecutableownerScriptExecutable () const
 
VMvm () const
 
void setThisRegister (VirtualRegister thisRegister)
 
VirtualRegister thisRegister () const
 
bool usesEval () const
 
void setScopeRegister (VirtualRegister scopeRegister)
 
VirtualRegister scopeRegister () const
 
CodeType codeType () const
 
PutPropertySlot::Context putByIdContext () const
 
SourceProvidersource () const
 
unsigned sourceOffset () const
 
unsigned firstLineColumnOffset () const
 
size_t numberOfJumpTargets () const
 
unsigned jumpTarget (int index) const
 
String nameForRegister (VirtualRegister)
 
unsigned numberOfArgumentValueProfiles ()
 
ValueProfilevalueProfileForArgument (unsigned argumentIndex)
 
unsigned numberOfValueProfiles ()
 
ValueProfilevalueProfile (int index)
 
ValueProfilevalueProfileForBytecodeOffset (int bytecodeOffset)
 
SpeculatedType valueProfilePredictionForBytecodeOffset (const ConcurrentJSLocker &locker, int bytecodeOffset)
 
unsigned totalNumberOfValueProfiles ()
 
ValueProfilegetFromAllValueProfiles (unsigned index)
 
RareCaseProfileaddRareCaseProfile (int bytecodeOffset)
 
unsigned numberOfRareCaseProfiles ()
 
RareCaseProfilerareCaseProfileForBytecodeOffset (int bytecodeOffset)
 
unsigned rareCaseProfileCountForBytecodeOffset (int bytecodeOffset)
 
bool likelyToTakeSlowCase (int bytecodeOffset)
 
bool couldTakeSlowCase (int bytecodeOffset)
 
ArithProfilearithProfileForBytecodeOffset (int bytecodeOffset)
 
ArithProfilearithProfileForPC (Instruction *)
 
bool couldTakeSpecialFastCase (int bytecodeOffset)
 
unsigned numberOfArrayProfiles () const
 
const ArrayProfileVectorarrayProfiles ()
 
ArrayProfileaddArrayProfile (const ConcurrentJSLocker &, unsigned bytecodeOffset)
 
ArrayProfileaddArrayProfile (unsigned bytecodeOffset)
 
ArrayProfilegetArrayProfile (const ConcurrentJSLocker &, unsigned bytecodeOffset)
 
ArrayProfilegetArrayProfile (unsigned bytecodeOffset)
 
ArrayProfilegetOrAddArrayProfile (const ConcurrentJSLocker &, unsigned bytecodeOffset)
 
ArrayProfilegetOrAddArrayProfile (unsigned bytecodeOffset)
 
size_t numberOfExceptionHandlers () const
 
HandlerInfoexceptionHandler (int index)
 
bool hasExpressionInfo ()
 
size_t numberOfIdentifiers () const
 
const Identifieridentifier (int index) const
 
Vector< WriteBarrier< Unknown > > & constants ()
 
Vector< SourceCodeRepresentation > & constantsSourceCodeRepresentation ()
 
unsigned addConstant (JSValue v)
 
unsigned addConstantLazily ()
 
const Vector< WriteBarrier< Unknown > > & constantRegisters ()
 
WriteBarrier< Unknown > & constantRegister (int index)
 
ALWAYS_INLINE JSValue getConstant (int index) const
 
ALWAYS_INLINE SourceCodeRepresentation constantSourceCodeRepresentation (int index) const
 
FunctionExecutablefunctionDecl (int index)
 
int numberOfFunctionDecls ()
 
FunctionExecutablefunctionExpr (int index)
 
RegExpregexp (int index) const
 
unsigned numberOfRegExps () const
 
const Vector< BitVector > & bitVectors () const
 
const BitVector & bitVector (size_t i)
 
unsigned numberOfConstantBuffers () const
 
unsigned addConstantBuffer (const Vector< JSValue > &buffer)
 
Vector< JSValue > & constantBufferAsVector (unsigned index)
 
JSValueconstantBuffer (unsigned index)
 
Heapheap () const
 
JSGlobalObjectglobalObject ()
 
JSGlobalObjectglobalObjectFor (CodeOrigin)
 
BytecodeLivenessAnalysislivenessAnalysis ()
 
void validate ()
 
size_t numberOfSwitchJumpTables () const
 
SimpleJumpTableaddSwitchJumpTable ()
 
SimpleJumpTableswitchJumpTable (int tableIndex)
 
void clearSwitchJumpTables ()
 
size_t numberOfStringSwitchJumpTables () const
 
StringJumpTableaddStringSwitchJumpTable ()
 
StringJumpTablestringSwitchJumpTable (int tableIndex)
 
DirectEvalCodeCachedirectEvalCodeCache ()
 
void shrinkToFit (ShrinkMode)
 
bool checkIfJITThresholdReached ()
 
void dontJITAnytimeSoon ()
 
int32_t thresholdForJIT (int32_t threshold)
 
void jitAfterWarmUp ()
 
void jitSoon ()
 
const BaselineExecutionCounterllintExecuteCounter () const
 
StructureWatchpointMapllintGetByIdWatchpointMap ()
 
JS_EXPORT_PRIVATE unsigned reoptimizationRetryCounter () const
 
void countReoptimization ()
 
void optimizeAfterWarmUp ()
 
unsigned numberOfDFGCompiles ()
 
bool shouldOptimizeNow ()
 
void updateAllValueProfilePredictions ()
 
void updateAllArrayPredictions ()
 
void updateAllPredictions ()
 
unsigned frameRegisterCount ()
 
int stackPointerOffset ()
 
bool hasOpDebugForLineAndColumn (unsigned line, unsigned column)
 
bool hasDebuggerRequests () const
 
voiddebuggerRequestsAddress ()
 
void addBreakpoint (unsigned numBreakpoints)
 
void removeBreakpoint (unsigned numBreakpoints)
 
void setSteppingMode (SteppingMode)
 
void clearDebuggerRequests ()
 
bool wasCompiledWithDebuggingOpcodes () const
 
void beginValidationDidFail ()
 
NO_RETURN_DUE_TO_CRASH void endValidationDidFail ()
 
void clearExceptionHandlers ()
 
void appendExceptionHandler (const HandlerInfo &handler)
 
CallSiteIndex newExceptionHandlingCallSiteIndex (CallSiteIndex originalCallSite)
 
JS_EXPORT_PRIVATE ~CodeBlock ()
 
UnlinkedCodeBlockunlinkedCodeBlock () const
 
CString inferredName () const
 
CodeBlockHash hash () const
 
bool hasHash () const
 
bool isSafeToComputeHash () const
 
CString hashAsStringIfPossible () const
 
CString sourceCodeForTools () const
 
CString sourceCodeOnOneLine () const
 
void dumpAssumingJITType (PrintStream &, JITCode::JITType) const
 
JS_EXPORT_PRIVATE void dump (PrintStream &) const
 
int numParameters () const
 
void setNumParameters (int newValue)
 
int numCalleeLocals () const
 
int * addressOfNumParameters ()
 
CodeBlockalternative () const
 
void setAlternative (VM &, CodeBlock *)
 
template<typename Functor >
void forEachRelatedCodeBlock (Functor &&functor)
 
CodeSpecializationKind specializationKind () const
 
CodeBlockalternativeForJettison ()
 
JS_EXPORT_PRIVATE CodeBlockbaselineAlternative ()
 
CodeBlockbaselineVersion ()
 
void visitChildren (SlotVisitor &)
 
void visitWeakly (SlotVisitor &)
 
void clearVisitWeaklyHasBeenCalled ()
 
void dumpSource ()
 
void dumpSource (PrintStream &)
 
void dumpBytecode ()
 
void dumpBytecode (PrintStream &)
 
void dumpBytecode (PrintStream &out, const Instruction *begin, const Instruction *&it, const StubInfoMap &=StubInfoMap(), const CallLinkInfoMap &=CallLinkInfoMap())
 
void dumpBytecode (PrintStream &out, unsigned bytecodeOffset, const StubInfoMap &=StubInfoMap(), const CallLinkInfoMap &=CallLinkInfoMap())
 
void dumpExceptionHandlers (PrintStream &)
 
void printStructures (PrintStream &, const Instruction *)
 
void printStructure (PrintStream &, const char *name, const Instruction *, int operand)
 
void dumpMathICStats ()
 
bool isStrictMode () const
 
ECMAMode ecmaMode () const
 
bool isKnownNotImmediate (int index)
 
ALWAYS_INLINE bool isTemporaryRegisterIndex (int index)
 
HandlerInfohandlerForBytecodeOffset (unsigned bytecodeOffset, RequiredHandler=RequiredHandler::AnyHandler)
 
HandlerInfohandlerForIndex (unsigned, RequiredHandler=RequiredHandler::AnyHandler)
 
void removeExceptionHandlerForCallSite (CallSiteIndex)
 
unsigned lineNumberForBytecodeOffset (unsigned bytecodeOffset)
 
unsigned columnNumberForBytecodeOffset (unsigned bytecodeOffset)
 
void expressionRangeForBytecodeOffset (unsigned bytecodeOffset, int &divot, int &startOffset, int &endOffset, unsigned &line, unsigned &column) const
 
std::optional< unsigned > bytecodeOffsetFromCallSiteIndex (CallSiteIndex)
 
void getStubInfoMap (const ConcurrentJSLocker &, StubInfoMap &result)
 
void getStubInfoMap (StubInfoMap &result)
 
void getCallLinkInfoMap (const ConcurrentJSLocker &, CallLinkInfoMap &result)
 
void getCallLinkInfoMap (CallLinkInfoMap &result)
 
void getByValInfoMap (const ConcurrentJSLocker &, ByValInfoMap &result)
 
void getByValInfoMap (ByValInfoMap &result)
 
void unlinkIncomingCalls ()
 
void linkIncomingCall (ExecState *callerFrame, LLIntCallLinkInfo *)
 
void setJITCodeMap (std::unique_ptr< CompactJITCodeMap > jitCodeMap)
 
CompactJITCodeMapjitCodeMap ()
 
unsigned bytecodeOffset (Instruction *returnAddress)
 
unsigned numberOfInstructions () const
 
RefCountedArray< Instruction > & instructions ()
 
const RefCountedArray< Instruction > & instructions () const
 
size_t predictedMachineCodeSize ()
 
bool usesOpcode (OpcodeID)
 
unsigned instructionCount () const
 
CodeBlocknewReplacement ()
 
void setJITCode (Ref< JITCode > &&code)
 
RefPtr< JITCodejitCode ()
 
JITCode::JITType jitType () const
 
bool hasBaselineJITProfiling () const
 
void jettison (Profiler::JettisonReason, ReoptimizationMode=DontCountReoptimization, const FireDetail *=nullptr)
 
ExecutableBaseownerExecutable () const
 
ScriptExecutableownerScriptExecutable () const
 
VMvm () const
 
void setThisRegister (VirtualRegister thisRegister)
 
VirtualRegister thisRegister () const
 
bool usesEval () const
 
void setScopeRegister (VirtualRegister scopeRegister)
 
VirtualRegister scopeRegister () const
 
CodeType codeType () const
 
PutPropertySlot::Context putByIdContext () const
 
SourceProvidersource () const
 
unsigned sourceOffset () const
 
unsigned firstLineColumnOffset () const
 
size_t numberOfJumpTargets () const
 
unsigned jumpTarget (int index) const
 
String nameForRegister (VirtualRegister)
 
unsigned numberOfArgumentValueProfiles ()
 
ValueProfilevalueProfileForArgument (unsigned argumentIndex)
 
unsigned numberOfValueProfiles ()
 
ValueProfilevalueProfile (int index)
 
ValueProfilevalueProfileForBytecodeOffset (int bytecodeOffset)
 
SpeculatedType valueProfilePredictionForBytecodeOffset (const ConcurrentJSLocker &locker, int bytecodeOffset)
 
unsigned totalNumberOfValueProfiles ()
 
ValueProfilegetFromAllValueProfiles (unsigned index)
 
RareCaseProfileaddRareCaseProfile (int bytecodeOffset)
 
unsigned numberOfRareCaseProfiles ()
 
RareCaseProfilerareCaseProfileForBytecodeOffset (int bytecodeOffset)
 
unsigned rareCaseProfileCountForBytecodeOffset (int bytecodeOffset)
 
bool likelyToTakeSlowCase (int bytecodeOffset)
 
bool couldTakeSlowCase (int bytecodeOffset)
 
ArithProfilearithProfileForBytecodeOffset (int bytecodeOffset)
 
ArithProfilearithProfileForPC (Instruction *)
 
bool couldTakeSpecialFastCase (int bytecodeOffset)
 
unsigned numberOfArrayProfiles () const
 
const ArrayProfileVectorarrayProfiles ()
 
ArrayProfileaddArrayProfile (const ConcurrentJSLocker &, unsigned bytecodeOffset)
 
ArrayProfileaddArrayProfile (unsigned bytecodeOffset)
 
ArrayProfilegetArrayProfile (const ConcurrentJSLocker &, unsigned bytecodeOffset)
 
ArrayProfilegetArrayProfile (unsigned bytecodeOffset)
 
ArrayProfilegetOrAddArrayProfile (const ConcurrentJSLocker &, unsigned bytecodeOffset)
 
ArrayProfilegetOrAddArrayProfile (unsigned bytecodeOffset)
 
size_t numberOfExceptionHandlers () const
 
HandlerInfoexceptionHandler (int index)
 
bool hasExpressionInfo ()
 
size_t numberOfIdentifiers () const
 
const Identifieridentifier (int index) const
 
Vector< WriteBarrier< Unknown > > & constants ()
 
Vector< SourceCodeRepresentation > & constantsSourceCodeRepresentation ()
 
unsigned addConstant (JSValue v)
 
unsigned addConstantLazily ()
 
const Vector< WriteBarrier< Unknown > > & constantRegisters ()
 
WriteBarrier< Unknown > & constantRegister (int index)
 
ALWAYS_INLINE JSValue getConstant (int index) const
 
ALWAYS_INLINE SourceCodeRepresentation constantSourceCodeRepresentation (int index) const
 
FunctionExecutablefunctionDecl (int index)
 
int numberOfFunctionDecls ()
 
FunctionExecutablefunctionExpr (int index)
 
RegExpregexp (int index) const
 
unsigned numberOfRegExps () const
 
const Vector< BitVector > & bitVectors () const
 
const BitVector & bitVector (size_t i)
 
unsigned numberOfConstantBuffers () const
 
unsigned addConstantBuffer (const Vector< JSValue > &buffer)
 
Vector< JSValue > & constantBufferAsVector (unsigned index)
 
JSValueconstantBuffer (unsigned index)
 
Heapheap () const
 
JSGlobalObjectglobalObject ()
 
JSGlobalObjectglobalObjectFor (CodeOrigin)
 
BytecodeLivenessAnalysislivenessAnalysis ()
 
void validate ()
 
size_t numberOfSwitchJumpTables () const
 
SimpleJumpTableaddSwitchJumpTable ()
 
SimpleJumpTableswitchJumpTable (int tableIndex)
 
void clearSwitchJumpTables ()
 
size_t numberOfStringSwitchJumpTables () const
 
StringJumpTableaddStringSwitchJumpTable ()
 
StringJumpTablestringSwitchJumpTable (int tableIndex)
 
DirectEvalCodeCachedirectEvalCodeCache ()
 
void shrinkToFit (ShrinkMode)
 
bool checkIfJITThresholdReached ()
 
void dontJITAnytimeSoon ()
 
int32_t thresholdForJIT (int32_t threshold)
 
void jitAfterWarmUp ()
 
void jitSoon ()
 
const BaselineExecutionCounterllintExecuteCounter () const
 
StructureWatchpointMapllintGetByIdWatchpointMap ()
 
JS_EXPORT_PRIVATE unsigned reoptimizationRetryCounter () const
 
void countReoptimization ()
 
void optimizeAfterWarmUp ()
 
unsigned numberOfDFGCompiles ()
 
bool shouldOptimizeNow ()
 
void updateAllValueProfilePredictions ()
 
void updateAllArrayPredictions ()
 
void updateAllPredictions ()
 
unsigned frameRegisterCount ()
 
int stackPointerOffset ()
 
bool hasOpDebugForLineAndColumn (unsigned line, unsigned column)
 
bool hasDebuggerRequests () const
 
voiddebuggerRequestsAddress ()
 
void addBreakpoint (unsigned numBreakpoints)
 
void removeBreakpoint (unsigned numBreakpoints)
 
void setSteppingMode (SteppingMode)
 
void clearDebuggerRequests ()
 
bool wasCompiledWithDebuggingOpcodes () const
 
void beginValidationDidFail ()
 
NO_RETURN_DUE_TO_CRASH void endValidationDidFail ()
 
void clearExceptionHandlers ()
 
void appendExceptionHandler (const HandlerInfo &handler)
 
CallSiteIndex newExceptionHandlingCallSiteIndex (CallSiteIndex originalCallSite)
 
- Public Member Functions inherited from JSC::JSCell
 JSCell (CreatingEarlyCellTag)
 
bool isString () const
 
bool isSymbol () const
 
bool isObject () const
 
bool isAnyWasmCallee (VM &) const
 
bool isGetterSetter () const
 
bool isCustomGetterSetter () const
 
bool isProxy () const
 
bool inherits (VM &, const ClassInfo *) const
 
bool isAPIValueWrapper () const
 
void lock ()
 
bool tryLock ()
 
void unlock ()
 
bool isLocked () const
 
JSType type () const
 
IndexingType indexingTypeAndMisc () const
 
IndexingType indexingType () const
 
StructureID structureID () const
 
Structurestructure () const
 
Structurestructure (VM &) const
 
void setStructure (VM &, Structure *)
 
void setStructureIDDirectly (StructureID id)
 
void clearStructure ()
 
TypeInfo::InlineTypeFlags inlineTypeFlags () const
 
const char * className (VM &) const
 
JS_EXPORT_PRIVATE bool getString (ExecState *, String &) const
 
JS_EXPORT_PRIVATE String getString (ExecState *) const
 
JS_EXPORT_PRIVATE JSObjectgetObject ()
 
const JSObjectgetObject () const
 
JS_EXPORT_PRIVATE JSValue toPrimitive (ExecState *, PreferredPrimitiveType) const
 
bool getPrimitiveNumber (ExecState *, double &number, JSValue &) const
 
bool toBoolean (ExecState *) const
 
TriState pureToBoolean () const
 
JS_EXPORT_PRIVATE double toNumber (ExecState *) const
 
JSObjecttoObject (ExecState *, JSGlobalObject *) const
 
void dump (PrintStream &) const
 
size_t estimatedSizeInBytes () const
 
const ClassInfoclassInfo (VM &) const
 
const MethodTablemethodTable () const
 
const MethodTablemethodTable (VM &) const
 
JSValue fastGetOwnProperty (VM &, Structure &, PropertyName)
 
CellState cellState () const
 
void setCellState (CellState data) const
 
bool atomicCompareExchangeCellStateWeakRelaxed (CellState oldState, CellState newState)
 
CellState atomicCompareExchangeCellStateStrong (CellState oldState, CellState newState)
 
void callDestructor (VM &)
 
 JSCell (CreatingEarlyCellTag)
 
bool isString () const
 
bool isSymbol () const
 
bool isObject () const
 
bool isAnyWasmCallee (VM &) const
 
bool isGetterSetter () const
 
bool isCustomGetterSetter () const
 
bool isProxy () const
 
bool inherits (VM &, const ClassInfo *) const
 
bool isAPIValueWrapper () const
 
void lock ()
 
bool tryLock ()
 
void unlock ()
 
bool isLocked () const
 
JSType type () const
 
IndexingType indexingTypeAndMisc () const
 
IndexingType indexingType () const
 
StructureID structureID () const
 
Structurestructure () const
 
Structurestructure (VM &) const
 
void setStructure (VM &, Structure *)
 
void setStructureIDDirectly (StructureID id)
 
void clearStructure ()
 
TypeInfo::InlineTypeFlags inlineTypeFlags () const
 
const char * className (VM &) const
 
JS_EXPORT_PRIVATE bool getString (ExecState *, String &) const
 
JS_EXPORT_PRIVATE String getString (ExecState *) const
 
JS_EXPORT_PRIVATE JSObjectgetObject ()
 
const JSObjectgetObject () const
 
JS_EXPORT_PRIVATE JSValue toPrimitive (ExecState *, PreferredPrimitiveType) const
 
bool getPrimitiveNumber (ExecState *, double &number, JSValue &) const
 
bool toBoolean (ExecState *) const
 
TriState pureToBoolean () const
 
JS_EXPORT_PRIVATE double toNumber (ExecState *) const
 
JSObjecttoObject (ExecState *, JSGlobalObject *) const
 
void dump (PrintStream &) const
 
size_t estimatedSizeInBytes () const
 
const ClassInfoclassInfo (VM &) const
 
const MethodTablemethodTable () const
 
const MethodTablemethodTable (VM &) const
 
JSValue fastGetOwnProperty (VM &, Structure &, PropertyName)
 
CellState cellState () const
 
void setCellState (CellState data) const
 
bool atomicCompareExchangeCellStateWeakRelaxed (CellState oldState, CellState newState)
 
CellState atomicCompareExchangeCellStateStrong (CellState oldState, CellState newState)
 
void callDestructor (VM &)
 
- Public Member Functions inherited from JSC::HeapCell
 HeapCell ()
 
void zap ()
 
bool isZapped () const
 
bool isLargeAllocation () const
 
CellContainer cellContainer () const
 
MarkedBlockmarkedBlock () const
 
LargeAllocationlargeAllocation () const
 
Heapheap () const
 
VMvm () const
 
size_t cellSize () const
 
AllocatorAttributes allocatorAttributes () const
 
DestructionMode destructionMode () const
 
Kind cellKind () const
 
 HeapCell ()
 
void zap ()
 
bool isZapped () const
 
bool isLargeAllocation () const
 
CellContainer cellContainer () const
 
MarkedBlockmarkedBlock () const
 
LargeAllocationlargeAllocation () const
 
Heapheap () const
 
VMvm () const
 
size_t cellSize () const
 
AllocatorAttributes allocatorAttributes () const
 
DestructionMode destructionMode () const
 
Kind cellKind () const
 

Static Public Member Functions

static ptrdiff_t offsetOfNumParameters ()
 
static size_t estimatedSize (JSCell *)
 
static void visitChildren (JSCell *, SlotVisitor &)
 
static void clearLLIntGetByIdCache (Instruction *)
 
static ptrdiff_t jitCodeOffset ()
 
static ALWAYS_INLINE bool isConstantRegisterIndex (int index)
 
static unsigned numberOfLLIntBaselineCalleeSaveRegisters ()
 
static size_t llintBaselineCalleeSaveSpaceAsVirtualRegisters ()
 
static ptrdiff_t offsetOfNumParameters ()
 
static size_t estimatedSize (JSCell *)
 
static void visitChildren (JSCell *, SlotVisitor &)
 
static void clearLLIntGetByIdCache (Instruction *)
 
static ptrdiff_t jitCodeOffset ()
 
static ALWAYS_INLINE bool isConstantRegisterIndex (int index)
 
static unsigned numberOfLLIntBaselineCalleeSaveRegisters ()
 
static size_t llintBaselineCalleeSaveSpaceAsVirtualRegisters ()
 
- Static Public Member Functions inherited from JSC::JSCell
template<typename CellType >
static SubspacesubspaceFor (VM &)
 
static JSCellseenMultipleCalleeObjects ()
 
static JS_EXPORT_PRIVATE CallType getCallData (JSCell *, CallData &)
 
static JS_EXPORT_PRIVATE ConstructType getConstructData (JSCell *, ConstructData &)
 
static JS_EXPORT_PRIVATE void dumpToStream (const JSCell *, PrintStream &)
 
static JS_EXPORT_PRIVATE size_t estimatedSize (JSCell *)
 
static void visitChildren (JSCell *, SlotVisitor &)
 
static void visitOutputConstraints (JSCell *, SlotVisitor &)
 
static JS_EXPORT_PRIVATE void heapSnapshot (JSCell *, HeapSnapshotBuilder &)
 
static bool put (JSCell *, ExecState *, PropertyName, JSValue, PutPropertySlot &)
 
static bool putByIndex (JSCell *, ExecState *, unsigned propertyName, JSValue, bool shouldThrow)
 
static bool deleteProperty (JSCell *, ExecState *, PropertyName)
 
static bool deletePropertyByIndex (JSCell *, ExecState *, unsigned propertyName)
 
static JSValue toThis (JSCell *, ExecState *, ECMAMode)
 
static bool canUseFastGetOwnProperty (const Structure &)
 
static ptrdiff_t structureIDOffset ()
 
static ptrdiff_t typeInfoFlagsOffset ()
 
static ptrdiff_t typeInfoTypeOffset ()
 
static ptrdiff_t indexingTypeAndMiscOffset ()
 
static ptrdiff_t cellStateOffset ()
 
template<typename CellType >
static SubspacesubspaceFor (VM &)
 
static JSCellseenMultipleCalleeObjects ()
 
static JS_EXPORT_PRIVATE CallType getCallData (JSCell *, CallData &)
 
static JS_EXPORT_PRIVATE ConstructType getConstructData (JSCell *, ConstructData &)
 
static JS_EXPORT_PRIVATE void dumpToStream (const JSCell *, PrintStream &)
 
static JS_EXPORT_PRIVATE size_t estimatedSize (JSCell *)
 
static void visitChildren (JSCell *, SlotVisitor &)
 
static void visitOutputConstraints (JSCell *, SlotVisitor &)
 
static JS_EXPORT_PRIVATE void heapSnapshot (JSCell *, HeapSnapshotBuilder &)
 
static bool put (JSCell *, ExecState *, PropertyName, JSValue, PutPropertySlot &)
 
static bool putByIndex (JSCell *, ExecState *, unsigned propertyName, JSValue, bool shouldThrow)
 
static bool deleteProperty (JSCell *, ExecState *, PropertyName)
 
static bool deletePropertyByIndex (JSCell *, ExecState *, unsigned propertyName)
 
static JSValue toThis (JSCell *, ExecState *, ECMAMode)
 
static bool canUseFastGetOwnProperty (const Structure &)
 
static ptrdiff_t structureIDOffset ()
 
static ptrdiff_t typeInfoFlagsOffset ()
 
static ptrdiff_t typeInfoTypeOffset ()
 
static ptrdiff_t indexingTypeAndMiscOffset ()
 
static ptrdiff_t cellStateOffset ()
 

Public Attributes

 DECLARE_INFO
 
int m_numCalleeLocals
 
int m_numVars
 
ConcurrentJSLock m_lock
 
bool m_visitWeaklyHasBeenCalled
 
bool m_shouldAlwaysBeInlined
 
bool m_allTransitionsHaveBeenMarked: 1
 
bool m_didFailJITCompilation: 1
 
bool m_didFailFTLCompilation: 1
 
bool m_hasBeenCompiledWithFTL: 1
 
bool m_isConstructor: 1
 
bool m_isStrictMode: 1
 
unsigned m_codeType: 2
 
unsigned m_debuggerRequests
 
unsigned m_hasDebuggerStatement: 1
 
unsigned m_steppingMode: 1
 
unsigned m_numBreakpoints: 30
 

Static Public Attributes

static const unsigned StructureFlags = Base::StructureFlags | StructureIsImmortal
 
- Static Public Attributes inherited from JSC::JSCell
static const unsigned StructureFlags = 0
 
static const bool needsDestruction = false
 
static const TypedArrayType TypedArrayStorageType = NotTypedArray
 

Protected Member Functions

 CodeBlock (VM *, Structure *, CopyParsedBlockTag, CodeBlock &other)
 
 CodeBlock (VM *, Structure *, ScriptExecutable *ownerExecutable, UnlinkedCodeBlock *, JSScope *, RefPtr< SourceProvider > &&, unsigned sourceOffset, unsigned firstLineColumnOffset)
 
void finishCreation (VM &, CopyParsedBlockTag, CodeBlock &other)
 
void finishCreation (VM &, ScriptExecutable *ownerExecutable, UnlinkedCodeBlock *, JSScope *)
 
void finalizeLLIntInlineCaches ()
 
void finalizeBaselineJITInlineCaches ()
 
void tallyFrequentExitSites ()
 
 CodeBlock (VM *, Structure *, CopyParsedBlockTag, CodeBlock &other)
 
 CodeBlock (VM *, Structure *, ScriptExecutable *ownerExecutable, UnlinkedCodeBlock *, JSScope *, RefPtr< SourceProvider > &&, unsigned sourceOffset, unsigned firstLineColumnOffset)
 
void finishCreation (VM &, CopyParsedBlockTag, CodeBlock &other)
 
void finishCreation (VM &, ScriptExecutable *ownerExecutable, UnlinkedCodeBlock *, JSScope *)
 
void finalizeLLIntInlineCaches ()
 
void finalizeBaselineJITInlineCaches ()
 
void tallyFrequentExitSites ()
 
- Protected Member Functions inherited from JSC::JSCell
 JSCell (VM &, Structure *)
 
void finishCreation (VM &)
 
void finishCreation (VM &, Structure *, CreatingEarlyCellTag)
 
 JSCell (VM &, Structure *)
 
void finishCreation (VM &)
 
void finishCreation (VM &, Structure *, CreatingEarlyCellTag)
 

Protected Attributes

WriteBarrier< JSGlobalObjectm_globalObject
 

Friends

class BytecodeLivenessAnalysis
 
class JIT
 
class LLIntOffsetsExtractor
 
class CodeBlockSet
 

Additional Inherited Members

- Static Protected Member Functions inherited from JSC::JSCell
static JS_EXPORT_PRIVATE void destroy (JSCell *)
 
static JSValue defaultValue (const JSObject *, ExecState *, PreferredPrimitiveType)
 
static NO_RETURN_DUE_TO_CRASH void getOwnPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static NO_RETURN_DUE_TO_CRASH void getOwnNonIndexPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static NO_RETURN_DUE_TO_CRASH void getPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static uint32_t getEnumerableLength (ExecState *, JSObject *)
 
static NO_RETURN_DUE_TO_CRASH void getStructurePropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static NO_RETURN_DUE_TO_CRASH void getGenericPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static NO_RETURN_DUE_TO_CRASH bool preventExtensions (JSObject *, ExecState *)
 
static NO_RETURN_DUE_TO_CRASH bool isExtensible (JSObject *, ExecState *)
 
static NO_RETURN_DUE_TO_CRASH bool setPrototype (JSObject *, ExecState *, JSValue, bool)
 
static NO_RETURN_DUE_TO_CRASH JSValue getPrototype (JSObject *, ExecState *)
 
static String className (const JSObject *)
 
static String toStringName (const JSObject *, ExecState *)
 
static JS_EXPORT_PRIVATE bool customHasInstance (JSObject *, ExecState *, JSValue)
 
static bool defineOwnProperty (JSObject *, ExecState *, PropertyName, const PropertyDescriptor &, bool shouldThrow)
 
static bool getOwnPropertySlot (JSObject *, ExecState *, PropertyName, PropertySlot &)
 
static bool getOwnPropertySlotByIndex (JSObject *, ExecState *, unsigned propertyName, PropertySlot &)
 
static JS_EXPORT_PRIVATE ArrayBufferslowDownAndWasteMemory (JSArrayBufferView *)
 
static JS_EXPORT_PRIVATE RefPtr< ArrayBufferViewgetTypedArrayImpl (JSArrayBufferView *)
 
static JS_EXPORT_PRIVATE void destroy (JSCell *)
 
static JSValue defaultValue (const JSObject *, ExecState *, PreferredPrimitiveType)
 
static NO_RETURN_DUE_TO_CRASH void getOwnPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static NO_RETURN_DUE_TO_CRASH void getOwnNonIndexPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static NO_RETURN_DUE_TO_CRASH void getPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static uint32_t getEnumerableLength (ExecState *, JSObject *)
 
static NO_RETURN_DUE_TO_CRASH void getStructurePropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static NO_RETURN_DUE_TO_CRASH void getGenericPropertyNames (JSObject *, ExecState *, PropertyNameArray &, EnumerationMode)
 
static NO_RETURN_DUE_TO_CRASH bool preventExtensions (JSObject *, ExecState *)
 
static NO_RETURN_DUE_TO_CRASH bool isExtensible (JSObject *, ExecState *)
 
static NO_RETURN_DUE_TO_CRASH bool setPrototype (JSObject *, ExecState *, JSValue, bool)
 
static NO_RETURN_DUE_TO_CRASH JSValue getPrototype (JSObject *, ExecState *)
 
static String className (const JSObject *)
 
static String toStringName (const JSObject *, ExecState *)
 
static JS_EXPORT_PRIVATE bool customHasInstance (JSObject *, ExecState *, JSValue)
 
static bool defineOwnProperty (JSObject *, ExecState *, PropertyName, const PropertyDescriptor &, bool shouldThrow)
 
static bool getOwnPropertySlot (JSObject *, ExecState *, PropertyName, PropertySlot &)
 
static bool getOwnPropertySlotByIndex (JSObject *, ExecState *, unsigned propertyName, PropertySlot &)
 
static JS_EXPORT_PRIVATE ArrayBufferslowDownAndWasteMemory (JSArrayBufferView *)
 
static JS_EXPORT_PRIVATE RefPtr< ArrayBufferViewgetTypedArrayImpl (JSArrayBufferView *)
 

Member Typedef Documentation

◆ Instruction [1/2]

◆ Instruction [2/2]

◆ StructureWatchpointMap [1/2]

◆ StructureWatchpointMap [2/2]

◆ UnpackedInstructions [1/2]

◆ UnpackedInstructions [2/2]

Member Enumeration Documentation

◆ CopyParsedBlockTag [1/2]

Enumerator
CopyParsedBlock 
CopyParsedBlock 

◆ CopyParsedBlockTag [2/2]

Enumerator
CopyParsedBlock 
CopyParsedBlock 

◆ ShrinkMode [1/2]

Enumerator
EarlyShrink 
LateShrink 
EarlyShrink 
LateShrink 

◆ ShrinkMode [2/2]

Enumerator
EarlyShrink 
LateShrink 
EarlyShrink 
LateShrink 

◆ SteppingMode [1/2]

Enumerator
SteppingModeDisabled 
SteppingModeEnabled 
SteppingModeDisabled 
SteppingModeEnabled 

◆ SteppingMode [2/2]

Enumerator
SteppingModeDisabled 
SteppingModeEnabled 
SteppingModeDisabled 
SteppingModeEnabled 

Constructor & Destructor Documentation

◆ CodeBlock() [1/4]

JSC::CodeBlock::CodeBlock ( VM vm,
Structure structure,
CopyParsedBlockTag  ,
CodeBlock other 
)
protected

◆ CodeBlock() [2/4]

JSC::CodeBlock::CodeBlock ( VM vm,
Structure structure,
ScriptExecutable ownerExecutable,
UnlinkedCodeBlock unlinkedCodeBlock,
JSScope scope,
RefPtr< SourceProvider > &&  sourceProvider,
unsigned  sourceOffset,
unsigned  firstLineColumnOffset 
)
protected

◆ ~CodeBlock() [1/2]

JSC::CodeBlock::~CodeBlock ( )

◆ CodeBlock() [3/4]

JSC::CodeBlock::CodeBlock ( VM ,
Structure ,
CopyParsedBlockTag  ,
CodeBlock other 
)
protected

◆ CodeBlock() [4/4]

JSC::CodeBlock::CodeBlock ( VM ,
Structure ,
ScriptExecutable ownerExecutable,
UnlinkedCodeBlock ,
JSScope ,
RefPtr< SourceProvider > &&  ,
unsigned  sourceOffset,
unsigned  firstLineColumnOffset 
)
protected

◆ ~CodeBlock() [2/2]

JS_EXPORT_PRIVATE JSC::CodeBlock::~CodeBlock ( )

Member Function Documentation

◆ addArrayProfile() [1/4]

ArrayProfile * JSC::CodeBlock::addArrayProfile ( const ConcurrentJSLocker ,
unsigned  bytecodeOffset 
)

◆ addArrayProfile() [2/4]

ArrayProfile* JSC::CodeBlock::addArrayProfile ( const ConcurrentJSLocker ,
unsigned  bytecodeOffset 
)

◆ addArrayProfile() [3/4]

ArrayProfile* JSC::CodeBlock::addArrayProfile ( unsigned  bytecodeOffset)

◆ addArrayProfile() [4/4]

ArrayProfile * JSC::CodeBlock::addArrayProfile ( unsigned  bytecodeOffset)

◆ addBreakpoint() [1/2]

void JSC::CodeBlock::addBreakpoint ( unsigned  numBreakpoints)

◆ addBreakpoint() [2/2]

void JSC::CodeBlock::addBreakpoint ( unsigned  numBreakpoints)

◆ addConstant() [1/2]

unsigned JSC::CodeBlock::addConstant ( JSValue  v)
inline

◆ addConstant() [2/2]

unsigned JSC::CodeBlock::addConstant ( JSValue  v)
inline

◆ addConstantBuffer() [1/2]

unsigned JSC::CodeBlock::addConstantBuffer ( const Vector< JSValue > &  buffer)
inline

◆ addConstantBuffer() [2/2]

unsigned JSC::CodeBlock::addConstantBuffer ( const Vector< JSValue > &  buffer)
inline

◆ addConstantLazily() [1/2]

unsigned JSC::CodeBlock::addConstantLazily ( )
inline

◆ addConstantLazily() [2/2]

unsigned JSC::CodeBlock::addConstantLazily ( )
inline

◆ addRareCaseProfile() [1/2]

RareCaseProfile* JSC::CodeBlock::addRareCaseProfile ( int  bytecodeOffset)

◆ addRareCaseProfile() [2/2]

RareCaseProfile * JSC::CodeBlock::addRareCaseProfile ( int  bytecodeOffset)

◆ addressOfNumParameters() [1/2]

int* JSC::CodeBlock::addressOfNumParameters ( )
inline

◆ addressOfNumParameters() [2/2]

int* JSC::CodeBlock::addressOfNumParameters ( )
inline

◆ addStringSwitchJumpTable() [1/2]

StringJumpTable& JSC::CodeBlock::addStringSwitchJumpTable ( )
inline

◆ addStringSwitchJumpTable() [2/2]

StringJumpTable& JSC::CodeBlock::addStringSwitchJumpTable ( )
inline

◆ addSwitchJumpTable() [1/2]

SimpleJumpTable& JSC::CodeBlock::addSwitchJumpTable ( )
inline

◆ addSwitchJumpTable() [2/2]

SimpleJumpTable& JSC::CodeBlock::addSwitchJumpTable ( )
inline

◆ alternative() [1/2]

CodeBlock* JSC::CodeBlock::alternative ( ) const
inline

◆ alternative() [2/2]

CodeBlock* JSC::CodeBlock::alternative ( ) const
inline

◆ alternativeForJettison() [1/2]

CodeBlock* JSC::CodeBlock::alternativeForJettison ( )

◆ alternativeForJettison() [2/2]

CodeBlock* JSC::CodeBlock::alternativeForJettison ( )

◆ appendExceptionHandler() [1/2]

void JSC::CodeBlock::appendExceptionHandler ( const HandlerInfo handler)
inline

◆ appendExceptionHandler() [2/2]

void JSC::CodeBlock::appendExceptionHandler ( const HandlerInfo handler)
inline

◆ arithProfileForBytecodeOffset() [1/2]

ArithProfile* JSC::CodeBlock::arithProfileForBytecodeOffset ( int  bytecodeOffset)

◆ arithProfileForBytecodeOffset() [2/2]

ArithProfile * JSC::CodeBlock::arithProfileForBytecodeOffset ( int  bytecodeOffset)

◆ arithProfileForPC() [1/2]

ArithProfile* JSC::CodeBlock::arithProfileForPC ( Instruction )

◆ arithProfileForPC() [2/2]

ArithProfile * JSC::CodeBlock::arithProfileForPC ( Instruction pc)

◆ arrayProfiles() [1/2]

const ArrayProfileVector& JSC::CodeBlock::arrayProfiles ( )
inline

◆ arrayProfiles() [2/2]

const ArrayProfileVector& JSC::CodeBlock::arrayProfiles ( )
inline

◆ baselineAlternative() [1/2]

CodeBlock * JSC::CodeBlock::baselineAlternative ( )

◆ baselineAlternative() [2/2]

JS_EXPORT_PRIVATE CodeBlock* JSC::CodeBlock::baselineAlternative ( )

◆ baselineVersion() [1/2]

CodeBlock * JSC::CodeBlock::baselineVersion ( )

◆ baselineVersion() [2/2]

CodeBlock* JSC::CodeBlock::baselineVersion ( )

◆ beginValidationDidFail() [1/2]

void JSC::CodeBlock::beginValidationDidFail ( )

◆ beginValidationDidFail() [2/2]

void JSC::CodeBlock::beginValidationDidFail ( )

◆ bitVector() [1/2]

const BitVector& JSC::CodeBlock::bitVector ( size_t  i)
inline

◆ bitVector() [2/2]

const BitVector& JSC::CodeBlock::bitVector ( size_t  i)
inline

◆ bitVectors() [1/2]

const Vector<BitVector>& JSC::CodeBlock::bitVectors ( ) const
inline

◆ bitVectors() [2/2]

const Vector<BitVector>& JSC::CodeBlock::bitVectors ( ) const
inline

◆ bytecodeOffset() [1/2]

unsigned JSC::CodeBlock::bytecodeOffset ( Instruction returnAddress)
inline

◆ bytecodeOffset() [2/2]

unsigned JSC::CodeBlock::bytecodeOffset ( Instruction returnAddress)
inline

◆ bytecodeOffsetFromCallSiteIndex() [1/2]

std::optional< unsigned > JSC::CodeBlock::bytecodeOffsetFromCallSiteIndex ( CallSiteIndex  callSiteIndex)

◆ bytecodeOffsetFromCallSiteIndex() [2/2]

std::optional<unsigned> JSC::CodeBlock::bytecodeOffsetFromCallSiteIndex ( CallSiteIndex  )

◆ checkIfJITThresholdReached() [1/2]

bool JSC::CodeBlock::checkIfJITThresholdReached ( )
inline

◆ checkIfJITThresholdReached() [2/2]

bool JSC::CodeBlock::checkIfJITThresholdReached ( )
inline

◆ clearDebuggerRequests() [1/2]

void JSC::CodeBlock::clearDebuggerRequests ( )
inline

◆ clearDebuggerRequests() [2/2]

void JSC::CodeBlock::clearDebuggerRequests ( )
inline

◆ clearExceptionHandlers() [1/2]

void JSC::CodeBlock::clearExceptionHandlers ( )
inline

◆ clearExceptionHandlers() [2/2]

void JSC::CodeBlock::clearExceptionHandlers ( )
inline

◆ clearLLIntGetByIdCache() [1/2]

void JSC::CodeBlock::clearLLIntGetByIdCache ( Instruction instruction)
static

◆ clearLLIntGetByIdCache() [2/2]

static void JSC::CodeBlock::clearLLIntGetByIdCache ( Instruction )
static

◆ clearSwitchJumpTables() [1/2]

void JSC::CodeBlock::clearSwitchJumpTables ( )
inline

◆ clearSwitchJumpTables() [2/2]

void JSC::CodeBlock::clearSwitchJumpTables ( )
inline

◆ clearVisitWeaklyHasBeenCalled() [1/2]

void JSC::CodeBlock::clearVisitWeaklyHasBeenCalled ( )

◆ clearVisitWeaklyHasBeenCalled() [2/2]

void JSC::CodeBlock::clearVisitWeaklyHasBeenCalled ( )
inline

◆ codeType() [1/2]

CodeType JSC::CodeBlock::codeType ( ) const
inline

◆ codeType() [2/2]

CodeType JSC::CodeBlock::codeType ( ) const
inline

◆ columnNumberForBytecodeOffset() [1/2]

unsigned JSC::CodeBlock::columnNumberForBytecodeOffset ( unsigned  bytecodeOffset)

◆ columnNumberForBytecodeOffset() [2/2]

unsigned JSC::CodeBlock::columnNumberForBytecodeOffset ( unsigned  bytecodeOffset)

◆ constantBuffer() [1/2]

JSValue* JSC::CodeBlock::constantBuffer ( unsigned  index)
inline

◆ constantBuffer() [2/2]

JSValue* JSC::CodeBlock::constantBuffer ( unsigned  index)
inline

◆ constantBufferAsVector() [1/2]

Vector<JSValue>& JSC::CodeBlock::constantBufferAsVector ( unsigned  index)
inline

◆ constantBufferAsVector() [2/2]

Vector<JSValue>& JSC::CodeBlock::constantBufferAsVector ( unsigned  index)
inline

◆ constantRegister() [1/2]

WriteBarrier<Unknown>& JSC::CodeBlock::constantRegister ( int  index)
inline

◆ constantRegister() [2/2]

WriteBarrier<Unknown>& JSC::CodeBlock::constantRegister ( int  index)
inline

◆ constantRegisters() [1/2]

const Vector<WriteBarrier<Unknown> >& JSC::CodeBlock::constantRegisters ( )
inline

◆ constantRegisters() [2/2]

const Vector<WriteBarrier<Unknown> >& JSC::CodeBlock::constantRegisters ( )
inline

◆ constants() [1/2]

Vector<WriteBarrier<Unknown> >& JSC::CodeBlock::constants ( )
inline

◆ constants() [2/2]

Vector<WriteBarrier<Unknown> >& JSC::CodeBlock::constants ( )
inline

◆ constantSourceCodeRepresentation() [1/2]

ALWAYS_INLINE SourceCodeRepresentation JSC::CodeBlock::constantSourceCodeRepresentation ( int  index) const
inline

◆ constantSourceCodeRepresentation() [2/2]

ALWAYS_INLINE SourceCodeRepresentation JSC::CodeBlock::constantSourceCodeRepresentation ( int  index) const
inline

◆ constantsSourceCodeRepresentation() [1/2]

Vector<SourceCodeRepresentation>& JSC::CodeBlock::constantsSourceCodeRepresentation ( )
inline

◆ constantsSourceCodeRepresentation() [2/2]

Vector<SourceCodeRepresentation>& JSC::CodeBlock::constantsSourceCodeRepresentation ( )
inline

◆ couldTakeSlowCase() [1/2]

bool JSC::CodeBlock::couldTakeSlowCase ( int  bytecodeOffset)
inline

◆ couldTakeSlowCase() [2/2]

bool JSC::CodeBlock::couldTakeSlowCase ( int  bytecodeOffset)
inline

◆ couldTakeSpecialFastCase() [1/2]

bool JSC::CodeBlock::couldTakeSpecialFastCase ( int  bytecodeOffset)

◆ couldTakeSpecialFastCase() [2/2]

bool JSC::CodeBlock::couldTakeSpecialFastCase ( int  bytecodeOffset)

◆ countReoptimization() [1/2]

void JSC::CodeBlock::countReoptimization ( )

◆ countReoptimization() [2/2]

void JSC::CodeBlock::countReoptimization ( )

◆ debuggerRequestsAddress() [1/2]

void* JSC::CodeBlock::debuggerRequestsAddress ( )
inline

◆ debuggerRequestsAddress() [2/2]

void* JSC::CodeBlock::debuggerRequestsAddress ( )
inline

◆ directEvalCodeCache() [1/2]

DirectEvalCodeCache& JSC::CodeBlock::directEvalCodeCache ( )
inline

◆ directEvalCodeCache() [2/2]

DirectEvalCodeCache& JSC::CodeBlock::directEvalCodeCache ( )
inline

◆ dontJITAnytimeSoon() [1/2]

void JSC::CodeBlock::dontJITAnytimeSoon ( )
inline

◆ dontJITAnytimeSoon() [2/2]

void JSC::CodeBlock::dontJITAnytimeSoon ( )
inline

◆ dump() [1/2]

void JSC::CodeBlock::dump ( PrintStream &  out) const

◆ dump() [2/2]

JS_EXPORT_PRIVATE void JSC::CodeBlock::dump ( PrintStream &  ) const

◆ dumpAssumingJITType() [1/2]

void JSC::CodeBlock::dumpAssumingJITType ( PrintStream &  ,
JITCode::JITType   
) const

◆ dumpAssumingJITType() [2/2]

void JSC::CodeBlock::dumpAssumingJITType ( PrintStream &  out,
JITCode::JITType  jitType 
) const

◆ dumpBytecode() [1/8]

void JSC::CodeBlock::dumpBytecode ( )

◆ dumpBytecode() [2/8]

void JSC::CodeBlock::dumpBytecode ( )

◆ dumpBytecode() [3/8]

void JSC::CodeBlock::dumpBytecode ( PrintStream &  out)

◆ dumpBytecode() [4/8]

void JSC::CodeBlock::dumpBytecode ( PrintStream &  )

◆ dumpBytecode() [5/8]

void JSC::CodeBlock::dumpBytecode ( PrintStream &  out,
const Instruction begin,
const Instruction *&  it,
const StubInfoMap stubInfos = StubInfoMap(),
const CallLinkInfoMap callLinkInfos = CallLinkInfoMap() 
)

◆ dumpBytecode() [6/8]

void JSC::CodeBlock::dumpBytecode ( PrintStream &  out,
const Instruction begin,
const Instruction *&  it,
const StubInfoMap = StubInfoMap(),
const CallLinkInfoMap = CallLinkInfoMap() 
)

◆ dumpBytecode() [7/8]

void JSC::CodeBlock::dumpBytecode ( PrintStream &  out,
unsigned  bytecodeOffset,
const StubInfoMap stubInfos = StubInfoMap(),
const CallLinkInfoMap callLinkInfos = CallLinkInfoMap() 
)

◆ dumpBytecode() [8/8]

void JSC::CodeBlock::dumpBytecode ( PrintStream &  out,
unsigned  bytecodeOffset,
const StubInfoMap = StubInfoMap(),
const CallLinkInfoMap = CallLinkInfoMap() 
)

◆ dumpExceptionHandlers() [1/2]

void JSC::CodeBlock::dumpExceptionHandlers ( PrintStream &  )

◆ dumpExceptionHandlers() [2/2]

void JSC::CodeBlock::dumpExceptionHandlers ( PrintStream &  )

◆ dumpMathICStats() [1/2]

void JSC::CodeBlock::dumpMathICStats ( )

◆ dumpMathICStats() [2/2]

void JSC::CodeBlock::dumpMathICStats ( )

◆ dumpSource() [1/4]

void JSC::CodeBlock::dumpSource ( )

◆ dumpSource() [2/4]

void JSC::CodeBlock::dumpSource ( )

◆ dumpSource() [3/4]

void JSC::CodeBlock::dumpSource ( PrintStream &  )

◆ dumpSource() [4/4]

void JSC::CodeBlock::dumpSource ( PrintStream &  out)

◆ ecmaMode() [1/2]

ECMAMode JSC::CodeBlock::ecmaMode ( ) const
inline

◆ ecmaMode() [2/2]

ECMAMode JSC::CodeBlock::ecmaMode ( ) const
inline

◆ endValidationDidFail() [1/2]

void JSC::CodeBlock::endValidationDidFail ( )

◆ endValidationDidFail() [2/2]

NO_RETURN_DUE_TO_CRASH void JSC::CodeBlock::endValidationDidFail ( )

◆ estimatedSize() [1/2]

size_t JSC::CodeBlock::estimatedSize ( JSCell cell)
static

◆ estimatedSize() [2/2]

static size_t JSC::CodeBlock::estimatedSize ( JSCell )
static

◆ exceptionHandler() [1/2]

HandlerInfo& JSC::CodeBlock::exceptionHandler ( int  index)
inline

◆ exceptionHandler() [2/2]

HandlerInfo& JSC::CodeBlock::exceptionHandler ( int  index)
inline

◆ expressionRangeForBytecodeOffset() [1/2]

void JSC::CodeBlock::expressionRangeForBytecodeOffset ( unsigned  bytecodeOffset,
int &  divot,
int &  startOffset,
int &  endOffset,
unsigned &  line,
unsigned &  column 
) const

◆ expressionRangeForBytecodeOffset() [2/2]

void JSC::CodeBlock::expressionRangeForBytecodeOffset ( unsigned  bytecodeOffset,
int &  divot,
int &  startOffset,
int &  endOffset,
unsigned &  line,
unsigned &  column 
) const

◆ finalizeBaselineJITInlineCaches() [1/2]

void JSC::CodeBlock::finalizeBaselineJITInlineCaches ( )
protected

◆ finalizeBaselineJITInlineCaches() [2/2]

void JSC::CodeBlock::finalizeBaselineJITInlineCaches ( )
protected

◆ finalizeLLIntInlineCaches() [1/2]

void JSC::CodeBlock::finalizeLLIntInlineCaches ( )
protected

◆ finalizeLLIntInlineCaches() [2/2]

void JSC::CodeBlock::finalizeLLIntInlineCaches ( )
protected

◆ finishCreation() [1/4]

void JSC::CodeBlock::finishCreation ( VM vm,
CopyParsedBlockTag  ,
CodeBlock other 
)
protected

◆ finishCreation() [2/4]

void JSC::CodeBlock::finishCreation ( VM ,
CopyParsedBlockTag  ,
CodeBlock other 
)
protected

◆ finishCreation() [3/4]

void JSC::CodeBlock::finishCreation ( VM vm,
ScriptExecutable ownerExecutable,
UnlinkedCodeBlock unlinkedCodeBlock,
JSScope scope 
)
protected

◆ finishCreation() [4/4]

void JSC::CodeBlock::finishCreation ( VM ,
ScriptExecutable ownerExecutable,
UnlinkedCodeBlock ,
JSScope  
)
protected

◆ firstLineColumnOffset() [1/2]

unsigned JSC::CodeBlock::firstLineColumnOffset ( ) const
inline

◆ firstLineColumnOffset() [2/2]

unsigned JSC::CodeBlock::firstLineColumnOffset ( ) const
inline

◆ forEachRelatedCodeBlock() [1/2]

template<typename Functor >
void JSC::CodeBlock::forEachRelatedCodeBlock ( Functor &&  functor)
inline

◆ forEachRelatedCodeBlock() [2/2]

template<typename Functor >
void JSC::CodeBlock::forEachRelatedCodeBlock ( Functor &&  functor)
inline

◆ frameRegisterCount() [1/2]

unsigned JSC::CodeBlock::frameRegisterCount ( )

◆ frameRegisterCount() [2/2]

unsigned JSC::CodeBlock::frameRegisterCount ( )

◆ functionDecl() [1/2]

FunctionExecutable* JSC::CodeBlock::functionDecl ( int  index)
inline

◆ functionDecl() [2/2]

FunctionExecutable* JSC::CodeBlock::functionDecl ( int  index)
inline

◆ functionExpr() [1/2]

FunctionExecutable* JSC::CodeBlock::functionExpr ( int  index)
inline

◆ functionExpr() [2/2]

FunctionExecutable* JSC::CodeBlock::functionExpr ( int  index)
inline

◆ getArrayProfile() [1/4]

ArrayProfile* JSC::CodeBlock::getArrayProfile ( const ConcurrentJSLocker ,
unsigned  bytecodeOffset 
)

◆ getArrayProfile() [2/4]

ArrayProfile * JSC::CodeBlock::getArrayProfile ( const ConcurrentJSLocker ,
unsigned  bytecodeOffset 
)

◆ getArrayProfile() [3/4]

ArrayProfile* JSC::CodeBlock::getArrayProfile ( unsigned  bytecodeOffset)

◆ getArrayProfile() [4/4]

ArrayProfile * JSC::CodeBlock::getArrayProfile ( unsigned  bytecodeOffset)

◆ getByValInfoMap() [1/4]

void JSC::CodeBlock::getByValInfoMap ( const ConcurrentJSLocker ,
ByValInfoMap result 
)

◆ getByValInfoMap() [2/4]

void JSC::CodeBlock::getByValInfoMap ( const ConcurrentJSLocker ,
ByValInfoMap result 
)

◆ getByValInfoMap() [3/4]

void JSC::CodeBlock::getByValInfoMap ( ByValInfoMap result)

◆ getByValInfoMap() [4/4]

void JSC::CodeBlock::getByValInfoMap ( ByValInfoMap result)

◆ getCallLinkInfoMap() [1/4]

void JSC::CodeBlock::getCallLinkInfoMap ( const ConcurrentJSLocker ,
CallLinkInfoMap result 
)

◆ getCallLinkInfoMap() [2/4]

void JSC::CodeBlock::getCallLinkInfoMap ( const ConcurrentJSLocker ,
CallLinkInfoMap result 
)

◆ getCallLinkInfoMap() [3/4]

void JSC::CodeBlock::getCallLinkInfoMap ( CallLinkInfoMap result)

◆ getCallLinkInfoMap() [4/4]

void JSC::CodeBlock::getCallLinkInfoMap ( CallLinkInfoMap result)

◆ getConstant() [1/2]

ALWAYS_INLINE JSValue JSC::CodeBlock::getConstant ( int  index) const
inline

◆ getConstant() [2/2]

ALWAYS_INLINE JSValue JSC::CodeBlock::getConstant ( int  index) const
inline

◆ getFromAllValueProfiles() [1/2]

ValueProfile* JSC::CodeBlock::getFromAllValueProfiles ( unsigned  index)
inline

◆ getFromAllValueProfiles() [2/2]

ValueProfile* JSC::CodeBlock::getFromAllValueProfiles ( unsigned  index)
inline

◆ getOrAddArrayProfile() [1/4]

ArrayProfile* JSC::CodeBlock::getOrAddArrayProfile ( const ConcurrentJSLocker ,
unsigned  bytecodeOffset 
)

◆ getOrAddArrayProfile() [2/4]

ArrayProfile * JSC::CodeBlock::getOrAddArrayProfile ( const ConcurrentJSLocker locker,
unsigned  bytecodeOffset 
)

◆ getOrAddArrayProfile() [3/4]

ArrayProfile* JSC::CodeBlock::getOrAddArrayProfile ( unsigned  bytecodeOffset)

◆ getOrAddArrayProfile() [4/4]

ArrayProfile * JSC::CodeBlock::getOrAddArrayProfile ( unsigned  bytecodeOffset)

◆ getStubInfoMap() [1/4]

void JSC::CodeBlock::getStubInfoMap ( const ConcurrentJSLocker ,
StubInfoMap result 
)

◆ getStubInfoMap() [2/4]

void JSC::CodeBlock::getStubInfoMap ( const ConcurrentJSLocker ,
StubInfoMap result 
)

◆ getStubInfoMap() [3/4]

void JSC::CodeBlock::getStubInfoMap ( StubInfoMap result)

◆ getStubInfoMap() [4/4]

void JSC::CodeBlock::getStubInfoMap ( StubInfoMap result)

◆ globalObject() [1/2]

JSGlobalObject* JSC::CodeBlock::globalObject ( )
inline

◆ globalObject() [2/2]

JSGlobalObject* JSC::CodeBlock::globalObject ( )
inline

◆ globalObjectFor() [1/2]

JSGlobalObject * JSC::CodeBlock::globalObjectFor ( CodeOrigin  codeOrigin)

◆ globalObjectFor() [2/2]

JSGlobalObject* JSC::CodeBlock::globalObjectFor ( CodeOrigin  )

◆ handlerForBytecodeOffset() [1/2]

HandlerInfo * JSC::CodeBlock::handlerForBytecodeOffset ( unsigned  bytecodeOffset,
RequiredHandler  requiredHandler = RequiredHandler::AnyHandler 
)

◆ handlerForBytecodeOffset() [2/2]

HandlerInfo* JSC::CodeBlock::handlerForBytecodeOffset ( unsigned  bytecodeOffset,
RequiredHandler  = RequiredHandler::AnyHandler 
)

◆ handlerForIndex() [1/2]

HandlerInfo * JSC::CodeBlock::handlerForIndex ( unsigned  index,
RequiredHandler  requiredHandler = RequiredHandler::AnyHandler 
)

◆ handlerForIndex() [2/2]

HandlerInfo* JSC::CodeBlock::handlerForIndex ( unsigned  ,
RequiredHandler  = RequiredHandler::AnyHandler 
)

◆ hasBaselineJITProfiling() [1/2]

bool JSC::CodeBlock::hasBaselineJITProfiling ( ) const
inline

◆ hasBaselineJITProfiling() [2/2]

bool JSC::CodeBlock::hasBaselineJITProfiling ( ) const
inline

◆ hasDebuggerRequests() [1/2]

bool JSC::CodeBlock::hasDebuggerRequests ( ) const
inline

◆ hasDebuggerRequests() [2/2]

bool JSC::CodeBlock::hasDebuggerRequests ( ) const
inline

◆ hasExpressionInfo() [1/2]

bool JSC::CodeBlock::hasExpressionInfo ( )
inline

◆ hasExpressionInfo() [2/2]

bool JSC::CodeBlock::hasExpressionInfo ( )
inline

◆ hash() [1/2]

CodeBlockHash JSC::CodeBlock::hash ( ) const

◆ hash() [2/2]

CodeBlockHash JSC::CodeBlock::hash ( ) const

◆ hasHash() [1/2]

bool JSC::CodeBlock::hasHash ( ) const

◆ hasHash() [2/2]

bool JSC::CodeBlock::hasHash ( ) const

◆ hashAsStringIfPossible() [1/2]

CString JSC::CodeBlock::hashAsStringIfPossible ( ) const

◆ hashAsStringIfPossible() [2/2]

CString JSC::CodeBlock::hashAsStringIfPossible ( ) const

◆ hasOpDebugForLineAndColumn() [1/2]

bool JSC::CodeBlock::hasOpDebugForLineAndColumn ( unsigned  line,
unsigned  column 
)

◆ hasOpDebugForLineAndColumn() [2/2]

bool JSC::CodeBlock::hasOpDebugForLineAndColumn ( unsigned  line,
unsigned  column 
)

◆ heap() [1/2]

Heap* JSC::CodeBlock::heap ( ) const
inline

◆ heap() [2/2]

Heap* JSC::CodeBlock::heap ( ) const
inline

◆ identifier() [1/2]

const Identifier& JSC::CodeBlock::identifier ( int  index) const
inline

◆ identifier() [2/2]

const Identifier& JSC::CodeBlock::identifier ( int  index) const
inline

◆ inferredName() [1/2]

CString JSC::CodeBlock::inferredName ( ) const

◆ inferredName() [2/2]

CString JSC::CodeBlock::inferredName ( ) const

◆ instructionCount() [1/2]

unsigned JSC::CodeBlock::instructionCount ( ) const
inline

◆ instructionCount() [2/2]

unsigned JSC::CodeBlock::instructionCount ( ) const
inline

◆ instructions() [1/4]

RefCountedArray<Instruction>& JSC::CodeBlock::instructions ( )
inline

◆ instructions() [2/4]

RefCountedArray<Instruction>& JSC::CodeBlock::instructions ( )
inline

◆ instructions() [3/4]

const RefCountedArray<Instruction>& JSC::CodeBlock::instructions ( ) const
inline

◆ instructions() [4/4]

const RefCountedArray<Instruction>& JSC::CodeBlock::instructions ( ) const
inline

◆ isConstantRegisterIndex() [1/2]

static ALWAYS_INLINE bool JSC::CodeBlock::isConstantRegisterIndex ( int  index)
inlinestatic

◆ isConstantRegisterIndex() [2/2]

static ALWAYS_INLINE bool JSC::CodeBlock::isConstantRegisterIndex ( int  index)
inlinestatic

◆ isKnownNotImmediate() [1/2]

bool JSC::CodeBlock::isKnownNotImmediate ( int  index)
inline

◆ isKnownNotImmediate() [2/2]

bool JSC::CodeBlock::isKnownNotImmediate ( int  index)
inline

◆ isSafeToComputeHash() [1/2]

bool JSC::CodeBlock::isSafeToComputeHash ( ) const

◆ isSafeToComputeHash() [2/2]

bool JSC::CodeBlock::isSafeToComputeHash ( ) const

◆ isStrictMode() [1/2]

bool JSC::CodeBlock::isStrictMode ( ) const
inline

◆ isStrictMode() [2/2]

bool JSC::CodeBlock::isStrictMode ( ) const
inline

◆ isTemporaryRegisterIndex() [1/2]

ALWAYS_INLINE bool JSC::CodeBlock::isTemporaryRegisterIndex ( int  index)
inline

◆ isTemporaryRegisterIndex() [2/2]

ALWAYS_INLINE bool JSC::CodeBlock::isTemporaryRegisterIndex ( int  index)
inline

◆ jettison() [1/2]

void JSC::CodeBlock::jettison ( Profiler::JettisonReason  reason,
ReoptimizationMode  mode = DontCountReoptimization,
const FireDetail detail = nullptr 
)

◆ jettison() [2/2]

void JSC::CodeBlock::jettison ( Profiler::JettisonReason  ,
ReoptimizationMode  = DontCountReoptimization,
const FireDetail = nullptr 
)

◆ jitAfterWarmUp() [1/2]

void JSC::CodeBlock::jitAfterWarmUp ( )

◆ jitAfterWarmUp() [2/2]

void JSC::CodeBlock::jitAfterWarmUp ( )

◆ jitCode() [1/2]

RefPtr<JITCode> JSC::CodeBlock::jitCode ( )
inline

◆ jitCode() [2/2]

RefPtr<JITCode> JSC::CodeBlock::jitCode ( )
inline

◆ jitCodeMap() [1/2]

CompactJITCodeMap* JSC::CodeBlock::jitCodeMap ( )
inline

◆ jitCodeMap() [2/2]

CompactJITCodeMap* JSC::CodeBlock::jitCodeMap ( )
inline

◆ jitCodeOffset() [1/2]

static ptrdiff_t JSC::CodeBlock::jitCodeOffset ( )
inlinestatic

◆ jitCodeOffset() [2/2]

static ptrdiff_t JSC::CodeBlock::jitCodeOffset ( )
inlinestatic

◆ jitSoon() [1/2]

void JSC::CodeBlock::jitSoon ( )

◆ jitSoon() [2/2]

void JSC::CodeBlock::jitSoon ( )

◆ jitType() [1/2]

JITCode::JITType JSC::CodeBlock::jitType ( ) const
inline

◆ jitType() [2/2]

JITCode::JITType JSC::CodeBlock::jitType ( ) const
inline

◆ jumpTarget() [1/2]

unsigned JSC::CodeBlock::jumpTarget ( int  index) const
inline

◆ jumpTarget() [2/2]

unsigned JSC::CodeBlock::jumpTarget ( int  index) const
inline

◆ likelyToTakeSlowCase() [1/2]

bool JSC::CodeBlock::likelyToTakeSlowCase ( int  bytecodeOffset)
inline

◆ likelyToTakeSlowCase() [2/2]

bool JSC::CodeBlock::likelyToTakeSlowCase ( int  bytecodeOffset)
inline

◆ lineNumberForBytecodeOffset() [1/2]

unsigned JSC::CodeBlock::lineNumberForBytecodeOffset ( unsigned  bytecodeOffset)

◆ lineNumberForBytecodeOffset() [2/2]

unsigned JSC::CodeBlock::lineNumberForBytecodeOffset ( unsigned  bytecodeOffset)

◆ linkIncomingCall() [1/2]

void JSC::CodeBlock::linkIncomingCall ( ExecState callerFrame,
LLIntCallLinkInfo incoming 
)

◆ linkIncomingCall() [2/2]

void JSC::CodeBlock::linkIncomingCall ( ExecState callerFrame,
LLIntCallLinkInfo  
)

◆ livenessAnalysis() [1/2]

BytecodeLivenessAnalysis& JSC::CodeBlock::livenessAnalysis ( )
inline

◆ livenessAnalysis() [2/2]

BytecodeLivenessAnalysis& JSC::CodeBlock::livenessAnalysis ( )
inline

◆ llintBaselineCalleeSaveSpaceAsVirtualRegisters() [1/2]

static size_t JSC::CodeBlock::llintBaselineCalleeSaveSpaceAsVirtualRegisters ( )
inlinestatic

◆ llintBaselineCalleeSaveSpaceAsVirtualRegisters() [2/2]

static size_t JSC::CodeBlock::llintBaselineCalleeSaveSpaceAsVirtualRegisters ( )
inlinestatic

◆ llintExecuteCounter() [1/2]

const BaselineExecutionCounter& JSC::CodeBlock::llintExecuteCounter ( ) const
inline

◆ llintExecuteCounter() [2/2]

const BaselineExecutionCounter& JSC::CodeBlock::llintExecuteCounter ( ) const
inline

◆ llintGetByIdWatchpointMap() [1/2]

StructureWatchpointMap& JSC::CodeBlock::llintGetByIdWatchpointMap ( )
inline

◆ llintGetByIdWatchpointMap() [2/2]

StructureWatchpointMap& JSC::CodeBlock::llintGetByIdWatchpointMap ( )
inline

◆ nameForRegister() [1/2]

String JSC::CodeBlock::nameForRegister ( VirtualRegister  )

◆ nameForRegister() [2/2]

String JSC::CodeBlock::nameForRegister ( VirtualRegister  virtualRegister)

◆ newExceptionHandlingCallSiteIndex() [1/2]

CallSiteIndex JSC::CodeBlock::newExceptionHandlingCallSiteIndex ( CallSiteIndex  originalCallSite)

◆ newExceptionHandlingCallSiteIndex() [2/2]

CallSiteIndex JSC::CodeBlock::newExceptionHandlingCallSiteIndex ( CallSiteIndex  originalCallSite)

◆ newReplacement() [1/2]

CodeBlock * JSC::CodeBlock::newReplacement ( )

◆ newReplacement() [2/2]

CodeBlock* JSC::CodeBlock::newReplacement ( )

◆ numberOfArgumentValueProfiles() [1/2]

unsigned JSC::CodeBlock::numberOfArgumentValueProfiles ( )
inline

◆ numberOfArgumentValueProfiles() [2/2]

unsigned JSC::CodeBlock::numberOfArgumentValueProfiles ( )
inline

◆ numberOfArrayProfiles() [1/2]

unsigned JSC::CodeBlock::numberOfArrayProfiles ( ) const
inline

◆ numberOfArrayProfiles() [2/2]

unsigned JSC::CodeBlock::numberOfArrayProfiles ( ) const
inline

◆ numberOfConstantBuffers() [1/2]

unsigned JSC::CodeBlock::numberOfConstantBuffers ( ) const
inline

◆ numberOfConstantBuffers() [2/2]

unsigned JSC::CodeBlock::numberOfConstantBuffers ( ) const
inline

◆ numberOfDFGCompiles() [1/2]

unsigned JSC::CodeBlock::numberOfDFGCompiles ( )
inline

◆ numberOfDFGCompiles() [2/2]

unsigned JSC::CodeBlock::numberOfDFGCompiles ( )
inline

◆ numberOfExceptionHandlers() [1/2]

size_t JSC::CodeBlock::numberOfExceptionHandlers ( ) const
inline

◆ numberOfExceptionHandlers() [2/2]

size_t JSC::CodeBlock::numberOfExceptionHandlers ( ) const
inline

◆ numberOfFunctionDecls() [1/2]

int JSC::CodeBlock::numberOfFunctionDecls ( )
inline

◆ numberOfFunctionDecls() [2/2]

int JSC::CodeBlock::numberOfFunctionDecls ( )
inline

◆ numberOfIdentifiers() [1/2]

size_t JSC::CodeBlock::numberOfIdentifiers ( ) const
inline

◆ numberOfIdentifiers() [2/2]

size_t JSC::CodeBlock::numberOfIdentifiers ( ) const
inline

◆ numberOfInstructions() [1/2]

unsigned JSC::CodeBlock::numberOfInstructions ( ) const
inline

◆ numberOfInstructions() [2/2]

unsigned JSC::CodeBlock::numberOfInstructions ( ) const
inline

◆ numberOfJumpTargets() [1/2]

size_t JSC::CodeBlock::numberOfJumpTargets ( ) const
inline

◆ numberOfJumpTargets() [2/2]

size_t JSC::CodeBlock::numberOfJumpTargets ( ) const
inline

◆ numberOfLLIntBaselineCalleeSaveRegisters() [1/2]

static unsigned JSC::CodeBlock::numberOfLLIntBaselineCalleeSaveRegisters ( )
inlinestatic

◆ numberOfLLIntBaselineCalleeSaveRegisters() [2/2]

static unsigned JSC::CodeBlock::numberOfLLIntBaselineCalleeSaveRegisters ( )
inlinestatic

◆ numberOfRareCaseProfiles() [1/2]

unsigned JSC::CodeBlock::numberOfRareCaseProfiles ( )
inline

◆ numberOfRareCaseProfiles() [2/2]

unsigned JSC::CodeBlock::numberOfRareCaseProfiles ( )
inline

◆ numberOfRegExps() [1/2]

unsigned JSC::CodeBlock::numberOfRegExps ( ) const
inline

◆ numberOfRegExps() [2/2]

unsigned JSC::CodeBlock::numberOfRegExps ( ) const
inline

◆ numberOfStringSwitchJumpTables() [1/2]

size_t JSC::CodeBlock::numberOfStringSwitchJumpTables ( ) const
inline

◆ numberOfStringSwitchJumpTables() [2/2]

size_t JSC::CodeBlock::numberOfStringSwitchJumpTables ( ) const
inline

◆ numberOfSwitchJumpTables() [1/2]

size_t JSC::CodeBlock::numberOfSwitchJumpTables ( ) const
inline

◆ numberOfSwitchJumpTables() [2/2]

size_t JSC::CodeBlock::numberOfSwitchJumpTables ( ) const
inline

◆ numberOfValueProfiles() [1/2]

unsigned JSC::CodeBlock::numberOfValueProfiles ( )
inline

◆ numberOfValueProfiles() [2/2]

unsigned JSC::CodeBlock::numberOfValueProfiles ( )
inline

◆ numCalleeLocals() [1/2]

int JSC::CodeBlock::numCalleeLocals ( ) const
inline

◆ numCalleeLocals() [2/2]

int JSC::CodeBlock::numCalleeLocals ( ) const
inline

◆ numParameters() [1/2]

int JSC::CodeBlock::numParameters ( ) const
inline

◆ numParameters() [2/2]

int JSC::CodeBlock::numParameters ( ) const
inline

◆ offsetOfNumParameters() [1/2]

static ptrdiff_t JSC::CodeBlock::offsetOfNumParameters ( )
inlinestatic

◆ offsetOfNumParameters() [2/2]

static ptrdiff_t JSC::CodeBlock::offsetOfNumParameters ( )
inlinestatic

◆ optimizeAfterWarmUp() [1/2]

void JSC::CodeBlock::optimizeAfterWarmUp ( )
inline

◆ optimizeAfterWarmUp() [2/2]

void JSC::CodeBlock::optimizeAfterWarmUp ( )
inline

◆ ownerExecutable() [1/2]

ExecutableBase* JSC::CodeBlock::ownerExecutable ( ) const
inline

◆ ownerExecutable() [2/2]

ExecutableBase* JSC::CodeBlock::ownerExecutable ( ) const
inline

◆ ownerScriptExecutable() [1/2]

ScriptExecutable* JSC::CodeBlock::ownerScriptExecutable ( ) const
inline

◆ ownerScriptExecutable() [2/2]

ScriptExecutable* JSC::CodeBlock::ownerScriptExecutable ( ) const
inline

◆ predictedMachineCodeSize() [1/2]

size_t JSC::CodeBlock::predictedMachineCodeSize ( )

◆ predictedMachineCodeSize() [2/2]

size_t JSC::CodeBlock::predictedMachineCodeSize ( )

◆ printStructure() [1/2]

void JSC::CodeBlock::printStructure ( PrintStream &  ,
const char *  name,
const Instruction ,
int  operand 
)

◆ printStructure() [2/2]

void JSC::CodeBlock::printStructure ( PrintStream &  ,
const char *  name,
const Instruction ,
int  operand 
)

◆ printStructures() [1/2]

void JSC::CodeBlock::printStructures ( PrintStream &  ,
const Instruction  
)

◆ printStructures() [2/2]

void JSC::CodeBlock::printStructures ( PrintStream &  ,
const Instruction  
)

◆ putByIdContext() [1/2]

PutPropertySlot::Context JSC::CodeBlock::putByIdContext ( ) const
inline

◆ putByIdContext() [2/2]

PutPropertySlot::Context JSC::CodeBlock::putByIdContext ( ) const
inline

◆ rareCaseProfileCountForBytecodeOffset() [1/2]

unsigned JSC::CodeBlock::rareCaseProfileCountForBytecodeOffset ( int  bytecodeOffset)

◆ rareCaseProfileCountForBytecodeOffset() [2/2]

unsigned JSC::CodeBlock::rareCaseProfileCountForBytecodeOffset ( int  bytecodeOffset)

◆ rareCaseProfileForBytecodeOffset() [1/2]

RareCaseProfile* JSC::CodeBlock::rareCaseProfileForBytecodeOffset ( int  bytecodeOffset)

◆ rareCaseProfileForBytecodeOffset() [2/2]

RareCaseProfile * JSC::CodeBlock::rareCaseProfileForBytecodeOffset ( int  bytecodeOffset)

◆ regexp() [1/2]

RegExp* JSC::CodeBlock::regexp ( int  index) const
inline

◆ regexp() [2/2]

RegExp* JSC::CodeBlock::regexp ( int  index) const
inline

◆ removeBreakpoint() [1/2]

void JSC::CodeBlock::removeBreakpoint ( unsigned  numBreakpoints)
inline

◆ removeBreakpoint() [2/2]

void JSC::CodeBlock::removeBreakpoint ( unsigned  numBreakpoints)
inline

◆ removeExceptionHandlerForCallSite() [1/2]

void JSC::CodeBlock::removeExceptionHandlerForCallSite ( CallSiteIndex  callSiteIndex)

◆ removeExceptionHandlerForCallSite() [2/2]

void JSC::CodeBlock::removeExceptionHandlerForCallSite ( CallSiteIndex  )

◆ reoptimizationRetryCounter() [1/2]

unsigned JSC::CodeBlock::reoptimizationRetryCounter ( ) const

◆ reoptimizationRetryCounter() [2/2]

JS_EXPORT_PRIVATE unsigned JSC::CodeBlock::reoptimizationRetryCounter ( ) const

◆ scopeRegister() [1/2]

VirtualRegister JSC::CodeBlock::scopeRegister ( ) const
inline

◆ scopeRegister() [2/2]

VirtualRegister JSC::CodeBlock::scopeRegister ( ) const
inline

◆ setAlternative() [1/2]

void JSC::CodeBlock::setAlternative ( VM ,
CodeBlock  
)

◆ setAlternative() [2/2]

void JSC::CodeBlock::setAlternative ( VM vm,
CodeBlock alternative 
)

◆ setJITCode() [1/2]

void JSC::CodeBlock::setJITCode ( Ref< JITCode > &&  code)
inline

◆ setJITCode() [2/2]

void JSC::CodeBlock::setJITCode ( Ref< JITCode > &&  code)
inline

◆ setJITCodeMap() [1/2]

void JSC::CodeBlock::setJITCodeMap ( std::unique_ptr< CompactJITCodeMap jitCodeMap)
inline

◆ setJITCodeMap() [2/2]

void JSC::CodeBlock::setJITCodeMap ( std::unique_ptr< CompactJITCodeMap jitCodeMap)
inline

◆ setNumParameters() [1/2]

void JSC::CodeBlock::setNumParameters ( int  newValue)

◆ setNumParameters() [2/2]

void JSC::CodeBlock::setNumParameters ( int  newValue)

◆ setScopeRegister() [1/2]

void JSC::CodeBlock::setScopeRegister ( VirtualRegister  scopeRegister)
inline

◆ setScopeRegister() [2/2]

void JSC::CodeBlock::setScopeRegister ( VirtualRegister  scopeRegister)
inline

◆ setSteppingMode() [1/2]

void JSC::CodeBlock::setSteppingMode ( CodeBlock::SteppingMode  mode)

◆ setSteppingMode() [2/2]

void JSC::CodeBlock::setSteppingMode ( SteppingMode  )

◆ setThisRegister() [1/2]

void JSC::CodeBlock::setThisRegister ( VirtualRegister  thisRegister)
inline

◆ setThisRegister() [2/2]

void JSC::CodeBlock::setThisRegister ( VirtualRegister  thisRegister)
inline

◆ shouldOptimizeNow() [1/2]

bool JSC::CodeBlock::shouldOptimizeNow ( )

◆ shouldOptimizeNow() [2/2]

bool JSC::CodeBlock::shouldOptimizeNow ( )

◆ shrinkToFit() [1/2]

void JSC::CodeBlock::shrinkToFit ( ShrinkMode  shrinkMode)

◆ shrinkToFit() [2/2]

void JSC::CodeBlock::shrinkToFit ( ShrinkMode  )

◆ source() [1/2]

SourceProvider* JSC::CodeBlock::source ( ) const
inline

◆ source() [2/2]

SourceProvider* JSC::CodeBlock::source ( ) const
inline

◆ sourceCodeForTools() [1/2]

CString JSC::CodeBlock::sourceCodeForTools ( ) const

◆ sourceCodeForTools() [2/2]

CString JSC::CodeBlock::sourceCodeForTools ( ) const

◆ sourceCodeOnOneLine() [1/2]

CString JSC::CodeBlock::sourceCodeOnOneLine ( ) const

◆ sourceCodeOnOneLine() [2/2]

CString JSC::CodeBlock::sourceCodeOnOneLine ( ) const

◆ sourceOffset() [1/2]

unsigned JSC::CodeBlock::sourceOffset ( ) const
inline

◆ sourceOffset() [2/2]

unsigned JSC::CodeBlock::sourceOffset ( ) const
inline

◆ specializationKind() [1/2]

CodeSpecializationKind JSC::CodeBlock::specializationKind ( ) const
inline

◆ specializationKind() [2/2]

CodeSpecializationKind JSC::CodeBlock::specializationKind ( ) const
inline

◆ stackPointerOffset() [1/2]

int JSC::CodeBlock::stackPointerOffset ( )

◆ stackPointerOffset() [2/2]

int JSC::CodeBlock::stackPointerOffset ( )

◆ stringSwitchJumpTable() [1/2]

StringJumpTable& JSC::CodeBlock::stringSwitchJumpTable ( int  tableIndex)
inline

◆ stringSwitchJumpTable() [2/2]

StringJumpTable& JSC::CodeBlock::stringSwitchJumpTable ( int  tableIndex)
inline

◆ switchJumpTable() [1/2]

SimpleJumpTable& JSC::CodeBlock::switchJumpTable ( int  tableIndex)
inline

◆ switchJumpTable() [2/2]

SimpleJumpTable& JSC::CodeBlock::switchJumpTable ( int  tableIndex)
inline

◆ tallyFrequentExitSites() [1/2]

void JSC::CodeBlock::tallyFrequentExitSites ( )
inlineprotected

◆ tallyFrequentExitSites() [2/2]

void JSC::CodeBlock::tallyFrequentExitSites ( )
inlineprotected

◆ thisRegister() [1/2]

VirtualRegister JSC::CodeBlock::thisRegister ( ) const
inline

◆ thisRegister() [2/2]

VirtualRegister JSC::CodeBlock::thisRegister ( ) const
inline

◆ thresholdForJIT() [1/2]

int32_t JSC::CodeBlock::thresholdForJIT ( int32_t  threshold)

◆ thresholdForJIT() [2/2]

int32_t JSC::CodeBlock::thresholdForJIT ( int32_t  threshold)

◆ totalNumberOfValueProfiles() [1/2]

unsigned JSC::CodeBlock::totalNumberOfValueProfiles ( )
inline

◆ totalNumberOfValueProfiles() [2/2]

unsigned JSC::CodeBlock::totalNumberOfValueProfiles ( )
inline

◆ unlinkedCodeBlock() [1/2]

UnlinkedCodeBlock* JSC::CodeBlock::unlinkedCodeBlock ( ) const
inline

◆ unlinkedCodeBlock() [2/2]

UnlinkedCodeBlock* JSC::CodeBlock::unlinkedCodeBlock ( ) const
inline

◆ unlinkIncomingCalls() [1/2]

void JSC::CodeBlock::unlinkIncomingCalls ( )

◆ unlinkIncomingCalls() [2/2]

void JSC::CodeBlock::unlinkIncomingCalls ( )

◆ updateAllArrayPredictions() [1/2]

void JSC::CodeBlock::updateAllArrayPredictions ( )

◆ updateAllArrayPredictions() [2/2]

void JSC::CodeBlock::updateAllArrayPredictions ( )

◆ updateAllPredictions() [1/2]

void JSC::CodeBlock::updateAllPredictions ( )

◆ updateAllPredictions() [2/2]

void JSC::CodeBlock::updateAllPredictions ( )

◆ updateAllValueProfilePredictions() [1/2]

void JSC::CodeBlock::updateAllValueProfilePredictions ( )

◆ updateAllValueProfilePredictions() [2/2]

void JSC::CodeBlock::updateAllValueProfilePredictions ( )

◆ usesEval() [1/2]

bool JSC::CodeBlock::usesEval ( ) const
inline

◆ usesEval() [2/2]

bool JSC::CodeBlock::usesEval ( ) const
inline

◆ usesOpcode() [1/2]

bool JSC::CodeBlock::usesOpcode ( OpcodeID  opcodeID)

◆ usesOpcode() [2/2]

bool JSC::CodeBlock::usesOpcode ( OpcodeID  )

◆ validate() [1/2]

void JSC::CodeBlock::validate ( )

◆ validate() [2/2]

void JSC::CodeBlock::validate ( )

◆ valueProfile() [1/2]

ValueProfile* JSC::CodeBlock::valueProfile ( int  index)
inline

◆ valueProfile() [2/2]

ValueProfile* JSC::CodeBlock::valueProfile ( int  index)
inline

◆ valueProfileForArgument() [1/2]

ValueProfile* JSC::CodeBlock::valueProfileForArgument ( unsigned  argumentIndex)
inline

◆ valueProfileForArgument() [2/2]

ValueProfile* JSC::CodeBlock::valueProfileForArgument ( unsigned  argumentIndex)
inline

◆ valueProfileForBytecodeOffset() [1/2]

ValueProfile * JSC::CodeBlock::valueProfileForBytecodeOffset ( int  bytecodeOffset)

◆ valueProfileForBytecodeOffset() [2/2]

ValueProfile* JSC::CodeBlock::valueProfileForBytecodeOffset ( int  bytecodeOffset)

◆ valueProfilePredictionForBytecodeOffset() [1/2]

SpeculatedType JSC::CodeBlock::valueProfilePredictionForBytecodeOffset ( const ConcurrentJSLocker locker,
int  bytecodeOffset 
)
inline

◆ valueProfilePredictionForBytecodeOffset() [2/2]

SpeculatedType JSC::CodeBlock::valueProfilePredictionForBytecodeOffset ( const ConcurrentJSLocker locker,
int  bytecodeOffset 
)
inline

◆ visitChildren() [1/4]

static void JSC::CodeBlock::visitChildren ( JSCell ,
SlotVisitor  
)
static

◆ visitChildren() [2/4]

void JSC::CodeBlock::visitChildren ( JSCell cell,
SlotVisitor visitor 
)
static

◆ visitChildren() [3/4]

void JSC::CodeBlock::visitChildren ( SlotVisitor visitor)

◆ visitChildren() [4/4]

void JSC::CodeBlock::visitChildren ( SlotVisitor )

◆ visitWeakly() [1/2]

void JSC::CodeBlock::visitWeakly ( SlotVisitor )

◆ visitWeakly() [2/2]

void JSC::CodeBlock::visitWeakly ( SlotVisitor visitor)

◆ vm() [1/2]

VM* JSC::CodeBlock::vm ( ) const
inline

◆ vm() [2/2]

VM* JSC::CodeBlock::vm ( ) const
inline

◆ wasCompiledWithDebuggingOpcodes() [1/2]

bool JSC::CodeBlock::wasCompiledWithDebuggingOpcodes ( ) const
inline

◆ wasCompiledWithDebuggingOpcodes() [2/2]

bool JSC::CodeBlock::wasCompiledWithDebuggingOpcodes ( ) const
inline

Friends And Related Function Documentation

◆ BytecodeLivenessAnalysis

◆ CodeBlockSet

CodeBlockSet
friend

◆ JIT

JIT
friend

◆ LLIntOffsetsExtractor

Member Data Documentation

◆ DECLARE_INFO

JSC::CodeBlock::DECLARE_INFO

◆ m_allTransitionsHaveBeenMarked

bool JSC::CodeBlock::m_allTransitionsHaveBeenMarked

◆ m_codeType

unsigned JSC::CodeBlock::m_codeType

◆ m_debuggerRequests

unsigned JSC::CodeBlock::m_debuggerRequests

◆ m_didFailFTLCompilation

bool JSC::CodeBlock::m_didFailFTLCompilation

◆ m_didFailJITCompilation

bool JSC::CodeBlock::m_didFailJITCompilation

◆ m_globalObject

WriteBarrier< JSGlobalObject > JSC::CodeBlock::m_globalObject
protected

◆ m_hasBeenCompiledWithFTL

bool JSC::CodeBlock::m_hasBeenCompiledWithFTL

◆ m_hasDebuggerStatement

unsigned JSC::CodeBlock::m_hasDebuggerStatement

◆ m_isConstructor

bool JSC::CodeBlock::m_isConstructor

◆ m_isStrictMode

bool JSC::CodeBlock::m_isStrictMode

◆ m_lock

ConcurrentJSLock JSC::CodeBlock::m_lock
mutable

◆ m_numBreakpoints

unsigned JSC::CodeBlock::m_numBreakpoints

◆ m_numCalleeLocals

int JSC::CodeBlock::m_numCalleeLocals

◆ m_numVars

int JSC::CodeBlock::m_numVars

◆ m_shouldAlwaysBeInlined

bool JSC::CodeBlock::m_shouldAlwaysBeInlined

◆ m_steppingMode

unsigned JSC::CodeBlock::m_steppingMode

◆ m_visitWeaklyHasBeenCalled

bool JSC::CodeBlock::m_visitWeaklyHasBeenCalled

◆ StructureFlags

static const unsigned JSC::CodeBlock::StructureFlags = Base::StructureFlags | StructureIsImmortal
static

The documentation for this class was generated from the following files: