Changeset 108943 in webkit for trunk/Source/JavaScriptCore/runtime/Executable.cpp
- Timestamp:
- Feb 26, 2012, 6:07:34 PM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/runtime/Executable.cpp
r108444 r108943 211 211 JSGlobalObject* lexicalGlobalObject = exec->lexicalGlobalObject(); 212 212 213 if (!!m_evalCodeBlock && m_evalCodeBlock->canProduceCopyWithBytecode()) { 214 BytecodeDestructionBlocker blocker(m_evalCodeBlock.get()); 213 if (!!m_evalCodeBlock) { 215 214 OwnPtr<EvalCodeBlock> newCodeBlock = adoptPtr(new EvalCodeBlock(CodeBlock::CopyParsedBlock, *m_evalCodeBlock)); 216 215 newCodeBlock->setAlternative(static_pointer_cast<CodeBlock>(m_evalCodeBlock.release())); … … 347 346 JSGlobalObject* lexicalGlobalObject = exec->lexicalGlobalObject(); 348 347 349 if (!!m_programCodeBlock && m_programCodeBlock->canProduceCopyWithBytecode()) { 350 BytecodeDestructionBlocker blocker(m_programCodeBlock.get()); 348 if (!!m_programCodeBlock) { 351 349 OwnPtr<ProgramCodeBlock> newCodeBlock = adoptPtr(new ProgramCodeBlock(CodeBlock::CopyParsedBlock, *m_programCodeBlock)); 352 350 newCodeBlock->setAlternative(static_pointer_cast<CodeBlock>(m_programCodeBlock.release())); … … 495 493 FunctionCodeBlock* FunctionExecutable::codeBlockWithBytecodeFor(CodeSpecializationKind kind) 496 494 { 497 FunctionCodeBlock* codeBlock = baselineCodeBlockFor(kind); 498 if (codeBlock->canProduceCopyWithBytecode()) 499 return codeBlock; 500 return 0; 495 return baselineCodeBlockFor(kind); 501 496 } 502 497 503 498 PassOwnPtr<FunctionCodeBlock> FunctionExecutable::produceCodeBlockFor(ScopeChainNode* scopeChainNode, CompilationKind compilationKind, CodeSpecializationKind specializationKind, JSObject*& exception) 504 499 { 505 if (!!codeBlockFor(specializationKind) && codeBlockFor(specializationKind)->canProduceCopyWithBytecode()) { 506 BytecodeDestructionBlocker blocker(codeBlockFor(specializationKind).get()); 500 if (!!codeBlockFor(specializationKind)) 507 501 return adoptPtr(new FunctionCodeBlock(CodeBlock::CopyParsedBlock, *codeBlockFor(specializationKind))); 508 }509 502 510 503 exception = 0;
Note:
See TracChangeset
for help on using the changeset viewer.