webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
JSC::UnlinkedProgramCodeBlock Class Referencefinal

#include <UnlinkedProgramCodeBlock.h>

Inheritance diagram for JSC::UnlinkedProgramCodeBlock:
JSC::UnlinkedGlobalCodeBlock JSC::UnlinkedGlobalCodeBlock JSC::UnlinkedCodeBlock JSC::UnlinkedCodeBlock JSC::UnlinkedCodeBlock JSC::UnlinkedCodeBlock JSC::JSCell JSC::JSCell JSC::JSCell JSC::JSCell JSC::JSCell JSC::JSCell JSC::JSCell JSC::JSCell

Public Types

typedef UnlinkedGlobalCodeBlock Base
 
typedef UnlinkedGlobalCodeBlock Base
 
- Public Types inherited from JSC::UnlinkedGlobalCodeBlock
typedef UnlinkedCodeBlock Base
 
typedef UnlinkedCodeBlock Base
 
- Public Types inherited from JSC::UnlinkedCodeBlock
enum  { CallFunction, ApplyFunction }
 
enum  { CallFunction, ApplyFunction }
 
typedef JSCell Base
 
typedef UnlinkedInstruction Instruction
 
typedef Vector< UnlinkedInstruction, 0, UnsafeVectorOverflow > UnpackedInstructions
 
typedef Vector< JSValueConstantBuffer
 
typedef JSCell Base
 
typedef UnlinkedInstruction Instruction
 
typedef Vector< UnlinkedInstruction, 0, UnsafeVectorOverflow > UnpackedInstructions
 
typedef Vector< JSValueConstantBuffer
 
- 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

void setVariableDeclarations (const VariableEnvironment &environment)
 
const VariableEnvironmentvariableDeclarations () const
 
void setLexicalDeclarations (const VariableEnvironment &environment)
 
const VariableEnvironmentlexicalDeclarations () const
 
void setVariableDeclarations (const VariableEnvironment &environment)
 
const VariableEnvironmentvariableDeclarations () const
 
void setLexicalDeclarations (const VariableEnvironment &environment)
 
const VariableEnvironmentlexicalDeclarations () const
 
- Public Member Functions inherited from JSC::UnlinkedCodeBlock
bool isConstructor () const
 
bool isStrictMode () const
 
bool usesEval () const
 
SourceParseMode parseMode () const
 
bool isArrowFunction () const
 
DerivedContextType derivedContextType () const
 
EvalContextType evalContextType () const
 
bool isArrowFunctionContext () const
 
bool isClassContext () const
 
void addExpressionInfo (unsigned instructionOffset, int divot, int startOffset, int endOffset, unsigned line, unsigned column)
 
void addTypeProfilerExpressionInfo (unsigned instructionOffset, unsigned startDivot, unsigned endDivot)
 
bool hasExpressionInfo ()
 
const Vector< ExpressionRangeInfo > & expressionInfo ()
 
void setThisRegister (VirtualRegister thisRegister)
 
void setScopeRegister (VirtualRegister scopeRegister)
 
bool usesGlobalObject () const
 
void setGlobalObjectRegister (VirtualRegister globalObjectRegister)
 
VirtualRegister globalObjectRegister () const
 
void setNumParameters (int newValue)
 
void addParameter ()
 
unsigned numParameters () const
 
unsigned addRegExp (RegExp *r)
 
unsigned numberOfRegExps () const
 
RegExpregexp (int index) const
 
size_t numberOfIdentifiers () const
 
void addIdentifier (const Identifier &i)
 
const Identifieridentifier (int index) const
 
const Vector< Identifier > & identifiers () const
 
const Vector< BitVector > & bitVectors () const
 
BitVector & bitVector (size_t i)
 
unsigned addBitVector (BitVector &&bitVector)
 
unsigned addConstant (JSValue v, SourceCodeRepresentation sourceCodeRepresentation=SourceCodeRepresentation::Other)
 
unsigned addConstant (LinkTimeConstant type)
 
unsigned registerIndexForLinkTimeConstant (LinkTimeConstant type)
 
const Vector< WriteBarrier< Unknown > > & constantRegisters ()
 
const WriteBarrier< Unknown > & constantRegister (int index) const
 
ALWAYS_INLINE bool isConstantRegisterIndex (int index) const
 
ALWAYS_INLINE JSValue getConstant (int index) const
 
const Vector< SourceCodeRepresentation > & constantsSourceCodeRepresentation ()
 
size_t numberOfJumpTargets () const
 
void addJumpTarget (unsigned jumpTarget)
 
unsigned jumpTarget (int index) const
 
unsigned lastJumpTarget () const
 
UnlinkedHandlerInfohandlerForBytecodeOffset (unsigned bytecodeOffset, RequiredHandler=RequiredHandler::AnyHandler)
 
UnlinkedHandlerInfohandlerForIndex (unsigned, RequiredHandler=RequiredHandler::AnyHandler)
 
bool isBuiltinFunction () const
 
ConstructorKind constructorKind () const
 
SuperBinding superBinding () const
 
JSParserScriptMode scriptMode () const
 
void shrinkToFit ()
 
void setInstructions (std::unique_ptr< UnlinkedInstructionStream >)
 
const UnlinkedInstructionStreaminstructions () const
 
int numCalleeLocals () const
 
size_t numberOfSwitchJumpTables () const
 
UnlinkedSimpleJumpTableaddSwitchJumpTable ()
 
UnlinkedSimpleJumpTableswitchJumpTable (int tableIndex)
 
size_t numberOfStringSwitchJumpTables () const
 
UnlinkedStringJumpTableaddStringSwitchJumpTable ()
 
UnlinkedStringJumpTablestringSwitchJumpTable (int tableIndex)
 
unsigned addFunctionDecl (UnlinkedFunctionExecutable *n)
 
UnlinkedFunctionExecutablefunctionDecl (int index)
 
size_t numberOfFunctionDecls ()
 
unsigned addFunctionExpr (UnlinkedFunctionExecutable *n)
 
UnlinkedFunctionExecutablefunctionExpr (int index)
 
size_t numberOfFunctionExprs ()
 
size_t numberOfExceptionHandlers () const
 
void addExceptionHandler (const UnlinkedHandlerInfo &handler)
 
UnlinkedHandlerInfoexceptionHandler (int index)
 
UnlinkedArrayProfile addArrayProfile ()
 
unsigned numberOfArrayProfiles ()
 
UnlinkedArrayAllocationProfile addArrayAllocationProfile ()
 
unsigned numberOfArrayAllocationProfiles ()
 
UnlinkedObjectAllocationProfile addObjectAllocationProfile ()
 
unsigned numberOfObjectAllocationProfiles ()
 
UnlinkedValueProfile addValueProfile ()
 
unsigned numberOfValueProfiles ()
 
UnlinkedLLIntCallLinkInfo addLLIntCallLinkInfo ()
 
unsigned numberOfLLintCallLinkInfos ()
 
CodeType codeType () const
 
VirtualRegister thisRegister () const
 
VirtualRegister scopeRegister () const
 
void addPropertyAccessInstruction (unsigned propertyAccessInstruction)
 
size_t numberOfPropertyAccessInstructions () const
 
const Vector< unsigned > & propertyAccessInstructions () const
 
size_t constantBufferCount ()
 
unsigned addConstantBuffer (unsigned length)
 
const ConstantBufferconstantBuffer (unsigned index) const
 
ConstantBufferconstantBuffer (unsigned index)
 
bool hasRareData () const
 
int lineNumberForBytecodeOffset (unsigned bytecodeOffset)
 
void expressionRangeForBytecodeOffset (unsigned bytecodeOffset, int &divot, int &startOffset, int &endOffset, unsigned &line, unsigned &column) const
 
bool typeProfilerExpressionInfoForBytecodeOffset (unsigned bytecodeOffset, unsigned &startDivot, unsigned &endDivot)
 
void recordParse (CodeFeatures features, bool hasCapturedVariables, unsigned lineCount, unsigned endColumn)
 
const StringsourceURLDirective () const
 
const StringsourceMappingURLDirective () const
 
void setSourceURLDirective (const String &sourceURL)
 
void setSourceMappingURLDirective (const String &sourceMappingURL)
 
CodeFeatures codeFeatures () const
 
bool hasCapturedVariables () const
 
unsigned lineCount () const
 
ALWAYS_INLINE unsigned startColumn () const
 
unsigned endColumn () const
 
void addOpProfileControlFlowBytecodeOffset (size_t offset)
 
const Vector< size_t > & opProfileControlFlowBytecodeOffsets () const
 
bool hasOpProfileControlFlowBytecodeOffsets () const
 
void dumpExpressionRangeInfo ()
 
bool wasCompiledWithDebuggingOpcodes () const
 
TriState didOptimize () const
 
void setDidOptimize (TriState didOptimize)
 
void dump (PrintStream &) const
 
bool isConstructor () const
 
bool isStrictMode () const
 
bool usesEval () const
 
SourceParseMode parseMode () const
 
bool isArrowFunction () const
 
DerivedContextType derivedContextType () const
 
EvalContextType evalContextType () const
 
bool isArrowFunctionContext () const
 
bool isClassContext () const
 
void addExpressionInfo (unsigned instructionOffset, int divot, int startOffset, int endOffset, unsigned line, unsigned column)
 
void addTypeProfilerExpressionInfo (unsigned instructionOffset, unsigned startDivot, unsigned endDivot)
 
bool hasExpressionInfo ()
 
const Vector< ExpressionRangeInfo > & expressionInfo ()
 
void setThisRegister (VirtualRegister thisRegister)
 
void setScopeRegister (VirtualRegister scopeRegister)
 
bool usesGlobalObject () const
 
void setGlobalObjectRegister (VirtualRegister globalObjectRegister)
 
VirtualRegister globalObjectRegister () const
 
void setNumParameters (int newValue)
 
void addParameter ()
 
unsigned numParameters () const
 
unsigned addRegExp (RegExp *r)
 
unsigned numberOfRegExps () const
 
RegExpregexp (int index) const
 
size_t numberOfIdentifiers () const
 
void addIdentifier (const Identifier &i)
 
const Identifieridentifier (int index) const
 
const Vector< Identifier > & identifiers () const
 
const Vector< BitVector > & bitVectors () const
 
BitVector & bitVector (size_t i)
 
unsigned addBitVector (BitVector &&bitVector)
 
unsigned addConstant (JSValue v, SourceCodeRepresentation sourceCodeRepresentation=SourceCodeRepresentation::Other)
 
unsigned addConstant (LinkTimeConstant type)
 
unsigned registerIndexForLinkTimeConstant (LinkTimeConstant type)
 
const Vector< WriteBarrier< Unknown > > & constantRegisters ()
 
const WriteBarrier< Unknown > & constantRegister (int index) const
 
ALWAYS_INLINE bool isConstantRegisterIndex (int index) const
 
ALWAYS_INLINE JSValue getConstant (int index) const
 
const Vector< SourceCodeRepresentation > & constantsSourceCodeRepresentation ()
 
size_t numberOfJumpTargets () const
 
void addJumpTarget (unsigned jumpTarget)
 
unsigned jumpTarget (int index) const
 
unsigned lastJumpTarget () const
 
UnlinkedHandlerInfohandlerForBytecodeOffset (unsigned bytecodeOffset, RequiredHandler=RequiredHandler::AnyHandler)
 
UnlinkedHandlerInfohandlerForIndex (unsigned, RequiredHandler=RequiredHandler::AnyHandler)
 
bool isBuiltinFunction () const
 
ConstructorKind constructorKind () const
 
SuperBinding superBinding () const
 
JSParserScriptMode scriptMode () const
 
void shrinkToFit ()
 
void setInstructions (std::unique_ptr< UnlinkedInstructionStream >)
 
const UnlinkedInstructionStreaminstructions () const
 
int numCalleeLocals () const
 
size_t numberOfSwitchJumpTables () const
 
UnlinkedSimpleJumpTableaddSwitchJumpTable ()
 
UnlinkedSimpleJumpTableswitchJumpTable (int tableIndex)
 
size_t numberOfStringSwitchJumpTables () const
 
UnlinkedStringJumpTableaddStringSwitchJumpTable ()
 
UnlinkedStringJumpTablestringSwitchJumpTable (int tableIndex)
 
unsigned addFunctionDecl (UnlinkedFunctionExecutable *n)
 
UnlinkedFunctionExecutablefunctionDecl (int index)
 
size_t numberOfFunctionDecls ()
 
unsigned addFunctionExpr (UnlinkedFunctionExecutable *n)
 
UnlinkedFunctionExecutablefunctionExpr (int index)
 
size_t numberOfFunctionExprs ()
 
size_t numberOfExceptionHandlers () const
 
void addExceptionHandler (const UnlinkedHandlerInfo &handler)
 
UnlinkedHandlerInfoexceptionHandler (int index)
 
UnlinkedArrayProfile addArrayProfile ()
 
unsigned numberOfArrayProfiles ()
 
UnlinkedArrayAllocationProfile addArrayAllocationProfile ()
 
unsigned numberOfArrayAllocationProfiles ()
 
UnlinkedObjectAllocationProfile addObjectAllocationProfile ()
 
unsigned numberOfObjectAllocationProfiles ()
 
UnlinkedValueProfile addValueProfile ()
 
unsigned numberOfValueProfiles ()
 
UnlinkedLLIntCallLinkInfo addLLIntCallLinkInfo ()
 
unsigned numberOfLLintCallLinkInfos ()
 
CodeType codeType () const
 
VirtualRegister thisRegister () const
 
VirtualRegister scopeRegister () const
 
void addPropertyAccessInstruction (unsigned propertyAccessInstruction)
 
size_t numberOfPropertyAccessInstructions () const
 
const Vector< unsigned > & propertyAccessInstructions () const
 
size_t constantBufferCount ()
 
unsigned addConstantBuffer (unsigned length)
 
const ConstantBufferconstantBuffer (unsigned index) const
 
ConstantBufferconstantBuffer (unsigned index)
 
bool hasRareData () const
 
int lineNumberForBytecodeOffset (unsigned bytecodeOffset)
 
void expressionRangeForBytecodeOffset (unsigned bytecodeOffset, int &divot, int &startOffset, int &endOffset, unsigned &line, unsigned &column) const
 
bool typeProfilerExpressionInfoForBytecodeOffset (unsigned bytecodeOffset, unsigned &startDivot, unsigned &endDivot)
 
void recordParse (CodeFeatures features, bool hasCapturedVariables, unsigned lineCount, unsigned endColumn)
 
const StringsourceURLDirective () const
 
const StringsourceMappingURLDirective () const
 
void setSourceURLDirective (const String &sourceURL)
 
void setSourceMappingURLDirective (const String &sourceMappingURL)
 
CodeFeatures codeFeatures () const
 
bool hasCapturedVariables () const
 
unsigned lineCount () const
 
ALWAYS_INLINE unsigned startColumn () const
 
unsigned endColumn () const
 
void addOpProfileControlFlowBytecodeOffset (size_t offset)
 
const Vector< size_t > & opProfileControlFlowBytecodeOffsets () const
 
bool hasOpProfileControlFlowBytecodeOffsets () const
 
void dumpExpressionRangeInfo ()
 
bool wasCompiledWithDebuggingOpcodes () const
 
TriState didOptimize () const
 
void setDidOptimize (TriState didOptimize)
 
void dump (PrintStream &) const
 
- 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 UnlinkedProgramCodeBlockcreate (VM *vm, const ExecutableInfo &info, DebuggerMode debuggerMode)
 
static void destroy (JSCell *)
 
static void visitChildren (JSCell *, SlotVisitor &)
 
static StructurecreateStructure (VM &vm, JSGlobalObject *globalObject, JSValue proto)
 
static UnlinkedProgramCodeBlockcreate (VM *vm, const ExecutableInfo &info, DebuggerMode debuggerMode)
 
static void destroy (JSCell *)
 
static void visitChildren (JSCell *, SlotVisitor &)
 
static StructurecreateStructure (VM &vm, JSGlobalObject *globalObject, JSValue proto)
 
- 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
 
- Public Attributes inherited from JSC::UnlinkedCodeBlock
int m_numVars
 
int m_numCapturedVars
 
int m_numCalleeLocals
 
 DECLARE_INFO
 

Static Public Attributes

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

Additional Inherited Members

- Protected Member Functions inherited from JSC::UnlinkedGlobalCodeBlock
 UnlinkedGlobalCodeBlock (VM *vm, Structure *structure, CodeType codeType, const ExecutableInfo &info, DebuggerMode debuggerMode)
 
 UnlinkedGlobalCodeBlock (VM *vm, Structure *structure, CodeType codeType, const ExecutableInfo &info, DebuggerMode debuggerMode)
 
- Protected Member Functions inherited from JSC::UnlinkedCodeBlock
 UnlinkedCodeBlock (VM *, Structure *, CodeType, const ExecutableInfo &, DebuggerMode)
 
 ~UnlinkedCodeBlock ()
 
void finishCreation (VM &vm)
 
 UnlinkedCodeBlock (VM *, Structure *, CodeType, const ExecutableInfo &, DebuggerMode)
 
 ~UnlinkedCodeBlock ()
 
void finishCreation (VM &vm)
 
- 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)
 
- Static Protected Member Functions inherited from JSC::UnlinkedCodeBlock
static void visitChildren (JSCell *, SlotVisitor &)
 
static size_t estimatedSize (JSCell *)
 
static void visitChildren (JSCell *, SlotVisitor &)
 
static size_t estimatedSize (JSCell *)
 
- 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

◆ Base [1/2]

◆ Base [2/2]

Member Function Documentation

◆ create() [1/2]

static UnlinkedProgramCodeBlock* JSC::UnlinkedProgramCodeBlock::create ( VM vm,
const ExecutableInfo info,
DebuggerMode  debuggerMode 
)
inlinestatic

◆ create() [2/2]

static UnlinkedProgramCodeBlock* JSC::UnlinkedProgramCodeBlock::create ( VM vm,
const ExecutableInfo info,
DebuggerMode  debuggerMode 
)
inlinestatic

◆ createStructure() [1/2]

static Structure* JSC::UnlinkedProgramCodeBlock::createStructure ( VM vm,
JSGlobalObject globalObject,
JSValue  proto 
)
inlinestatic

◆ createStructure() [2/2]

static Structure* JSC::UnlinkedProgramCodeBlock::createStructure ( VM vm,
JSGlobalObject globalObject,
JSValue  proto 
)
inlinestatic

◆ destroy() [1/2]

void JSC::UnlinkedProgramCodeBlock::destroy ( JSCell cell)
static

◆ destroy() [2/2]

static void JSC::UnlinkedProgramCodeBlock::destroy ( JSCell )
static

◆ lexicalDeclarations() [1/2]

const VariableEnvironment& JSC::UnlinkedProgramCodeBlock::lexicalDeclarations ( ) const
inline

◆ lexicalDeclarations() [2/2]

const VariableEnvironment& JSC::UnlinkedProgramCodeBlock::lexicalDeclarations ( ) const
inline

◆ setLexicalDeclarations() [1/2]

void JSC::UnlinkedProgramCodeBlock::setLexicalDeclarations ( const VariableEnvironment environment)
inline

◆ setLexicalDeclarations() [2/2]

void JSC::UnlinkedProgramCodeBlock::setLexicalDeclarations ( const VariableEnvironment environment)
inline

◆ setVariableDeclarations() [1/2]

void JSC::UnlinkedProgramCodeBlock::setVariableDeclarations ( const VariableEnvironment environment)
inline

◆ setVariableDeclarations() [2/2]

void JSC::UnlinkedProgramCodeBlock::setVariableDeclarations ( const VariableEnvironment environment)
inline

◆ variableDeclarations() [1/2]

const VariableEnvironment& JSC::UnlinkedProgramCodeBlock::variableDeclarations ( ) const
inline

◆ variableDeclarations() [2/2]

const VariableEnvironment& JSC::UnlinkedProgramCodeBlock::variableDeclarations ( ) const
inline

◆ visitChildren() [1/2]

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

◆ visitChildren() [2/2]

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

Member Data Documentation

◆ DECLARE_INFO

JSC::UnlinkedProgramCodeBlock::DECLARE_INFO

◆ StructureFlags

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

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