Changeset 190546 in webkit for trunk/Source/JavaScriptCore/bytecode/InlineCallFrame.h
- Timestamp:
- Oct 3, 2015, 6:45:21 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/bytecode/InlineCallFrame.h
r190522 r190546 30 30 #include "CodeBlockHash.h" 31 31 #include "CodeOrigin.h" 32 #include "Executable.h" 32 33 #include "ValueRecovery.h" 33 34 #include "WriteBarrier.h" … … 42 43 struct InlineCallFrame; 43 44 class ExecState; 45 class ScriptExecutable; 44 46 class JSFunction; 45 47 … … 173 175 174 176 Vector<ValueRecovery> arguments; // Includes 'this'. 175 WriteBarrier< CodeBlock> baselineCodeBlock;177 WriteBarrier<ScriptExecutable> executable; 176 178 ValueRecovery calleeRecovery; 177 179 CodeOrigin directCaller; … … 208 210 CString hashAsStringIfPossible() const; 209 211 212 CodeBlock* baselineCodeBlock() const; 213 210 214 void setStackOffset(signed offset) 211 215 { … … 216 220 ptrdiff_t callerFrameOffset() const { return stackOffset * sizeof(Register) + CallFrame::callerFrameOffset(); } 217 221 ptrdiff_t returnPCOffset() const { return stackOffset * sizeof(Register) + CallFrame::returnPCOffset(); } 218 219 bool isStrictMode() const { return baselineCodeBlock->isStrictMode(); }220 222 221 223 void dumpBriefFunctionInformation(PrintStream&) const; … … 230 232 { 231 233 RELEASE_ASSERT(inlineCallFrame); 232 return inlineCallFrame->baselineCodeBlock.get(); 234 ScriptExecutable* executable = inlineCallFrame->executable.get(); 235 RELEASE_ASSERT(executable->structure()->classInfo() == FunctionExecutable::info()); 236 return static_cast<FunctionExecutable*>(executable)->baselineCodeBlockFor(inlineCallFrame->specializationKind()); 233 237 } 234 238
Note:
See TracChangeset
for help on using the changeset viewer.