• Home
  • Raw
  • Download

Lines Matching refs:JSC

42         (JSC::MarkStack::append):
75 (JSC::MarkStack::deprecatedAppendValues):
76 (JSC::MarkStack::append):
77 (JSC::MarkStack::deprecatedAppend):
80 (JSC::DeprecatedPtr::DeprecatedPtr):
81 (JSC::DeprecatedPtr::get):
82 (JSC::DeprecatedPtr::operator*):
83 (JSC::DeprecatedPtr::operator->):
84 (JSC::DeprecatedPtr::slot):
85 (JSC::DeprecatedPtr::operator UnspecifiedBoolType*):
86 (JSC::DeprecatedPtr::operator!):
87 (JSC::operator==):
120 (JSC::Interpreter::prepareForRepeatCall):
133 (JSC::DFG::SpeculativeJIT::compile):
135 (JSC::DFG::SpeculativeJIT::isDoubleConstantWithInt32Value):
147 (JSC::AbstractMacroAssembler::rewindToLabel):
149 (JSC::AssemblerBuffer::rewindToOffset):
151 (JSC::MacroAssemblerX86Common::branchAdd32):
152 (JSC::MacroAssemblerX86Common::branchSub32):
154 (JSC::X86Assembler::rewindToLabel):
155 (JSC::X86Assembler::X86InstructionFormatter::rewindToLabel):
157 (JSC::DFG::JITCompiler::linkSpeculationChecks):
158 (JSC::DFG::JITCompiler::compileFunction):
161 (JSC::DFG::NonSpeculativeJIT::compile):
163 (JSC::DFG::SpeculativeJIT::compile):
165 (JSC::DFG::SpeculationCheckIndexIterator::SpeculationCheckIndexIterator):
183 JSC no longer builds with Clang due to -Woverloaded-virtual warning
190 (JSC::Structure::addPropertyTransition):
191 (JSC::Structure::addPropertyWithoutTransition):
192 (JSC::Structure::putSpecificValue):
243 (JSC::MarkStack::append):
246 (JSC::DeprecatedPtr::DeprecatedPtr):
247 (JSC::DeprecatedPtr::get):
248 (JSC::DeprecatedPtr::operator*):
249 (JSC::DeprecatedPtr::operator->):
250 (JSC::DeprecatedPtr::slot):
251 (JSC::DeprecatedPtr::operator UnspecifiedBoolType*):
252 (JSC::DeprecatedPtr::operator!):
253 (JSC::operator==):
291 (JSC::MarkStack::append):
304 (JSC::DFG::NonSpeculativeJIT::compile):
306 (JSC::DFG::SpeculativeJIT::compile):
308 (JSC::JIT::privateCompile):
319 (JSC::JSCallbackConstructor::JSCallbackConstructor):
321 (JSC::JSCallbackConstructor::createStructure):
323 (JSC::JSCallbackFunction::createStructure):
325 (JSC::JSCallbackObject::createStructure):
327 (JSC::::JSCallbackObject):
334 (JSC::CodeBlock::~CodeBlock):
335 (JSC::CodeBlock::markStructures):
336 (JSC::CodeBlock::markAggregate):
338 (JSC::MethodCallLinkInfo::setSeen):
339 (JSC::GlobalResolveInfo::GlobalResolveInfo):
341 (JSC::PolymorphicAccessStructureList::PolymorphicStubInfo::set):
342 (JSC::PolymorphicAccessStructureList::PolymorphicAccessStructureList):
343 (JSC::PolymorphicAccessStructureList::markAggregate):
344 (JSC::Instruction::Instruction):
346 (JSC::StructureStubInfo::deref):
347 (JSC::StructureStubInfo::markAggregate):
349 (JSC::StructureStubInfo::initGetByIdSelf):
350 (JSC::StructureStubInfo::initGetByIdProto):
351 (JSC::StructureStubInfo::initGetByIdChain):
352 (JSC::StructureStubInfo::initPutByIdTransition):
353 (JSC::StructureStubInfo::initPutByIdReplace):
355 (JSC::DebuggerActivation::DebuggerActivation):
357 (JSC::DebuggerActivation::createStructure):
360 (JSC::MarkStack::markChildren):
361 (JSC::MarkStack::drain):
363 (JSC::MarkedBlock::MarkedBlock):
364 (JSC::MarkedBlock::sweep):
366 (JSC::Strong::Strong):
367 (JSC::Strong::set):
369 (JSC::Interpreter::resolveGlobal):
370 (JSC::Interpreter::resolveGlobalDynamic):
371 (JSC::Interpreter::tryCachePutByID):
372 (JSC::Interpreter::uncachePutByID):
373 (JSC::Interpreter::tryCacheGetByID):
374 (JSC::Interpreter::uncacheGetByID):
375 (JSC::Interpreter::privateExecute):
378 (JSC::JIT::privateCompilePutByIdTransition):
379 (JSC::JIT::patchMethodCallProto):
380 (JSC::JIT::privateCompileGetByIdProto):
381 (JSC::JIT::privateCompileGetByIdSelfList):
382 (JSC::JIT::privateCompileGetByIdProtoList):
383 (JSC::JIT::privateCompileGetByIdChainList):
384 (JSC::JIT::privateCompileGetByIdChain):
386 (JSC::JIT::privateCompilePutByIdTransition):
387 (JSC::JIT::patchMethodCallProto):
388 (JSC::JIT::privateCompileGetByIdProto):
389 (JSC::JIT::privateCompileGetByIdSelfList):
390 (JSC::JIT::privateCompileGetByIdProtoList):
391 (JSC::JIT::privateCompileGetByIdChainList):
392 (JSC::JIT::privateCompileGetByIdChain):
394 (JSC::JITThunks::tryCachePutByID):
395 (JSC::JITThunks::tryCacheGetByID):
396 (JSC::DEFINE_STUB_FUNCTION):
397 (JSC::getPolymorphicAccessStructureListSlot):
399 (JSC::JSInterfaceJIT::storePtrWithWriteBarrier):
403 (JSC::Arguments::createStructure):
404 (JSC::Arguments::Arguments):
405 (JSC::JSActivation::copyRegisters):
407 (JSC::ArrayConstructor::ArrayConstructor):
408 (JSC::constructArrayWithSizeQuirk):
411 (JSC::ArrayPrototype::ArrayPrototype):
412 (JSC::arrayProtoFuncSplice):
414 (JSC::ArrayPrototype::createStructure):
416 (JSC::BatchedTransitionOptimizer::BatchedTransitionOptimizer):
418 (JSC::BooleanConstructor::BooleanConstructor):
421 (JSC::BooleanObject::BooleanObject):
423 (JSC::BooleanObject::createStructure):
425 (JSC::BooleanPrototype::BooleanPrototype):
428 (JSC::DateConstructor::DateConstructor):
431 (JSC::DateInstance::DateInstance):
433 (JSC::DateInstance::createStructure):
435 (JSC::DatePrototype::DatePrototype):
437 (JSC::DatePrototype::createStructure):
439 (JSC::StrictModeTypeErrorFunction::StrictModeTypeErrorFunction):
441 (JSC::ErrorConstructor::ErrorConstructor):
444 (JSC::ErrorInstance::ErrorInstance):
445 (JSC::ErrorInstance::create):
447 (JSC::ErrorInstance::createStructure):
449 (JSC::ErrorPrototype::ErrorPrototype):
452 (JSC::InterruptedExecutionError::InterruptedExecutionError):
453 (JSC::TerminatedExecutionError::TerminatedExecutionError):
456 (JSC::ExecutableBase::ExecutableBase):
457 (JSC::ExecutableBase::createStructure):
458 (JSC::NativeExecutable::createStructure):
459 (JSC::NativeExecutable::NativeExecutable):
460 (JSC::ScriptExecutable::ScriptExecutable):
461 (JSC::EvalExecutable::createStructure):
462 (JSC::ProgramExecutable::createStructure):
463 (JSC::FunctionExecutable::createStructure):
465 (JSC::FunctionConstructor::FunctionConstructor):
468 (JSC::FunctionPrototype::FunctionPrototype):
470 (JSC::FunctionPrototype::createStructure):
472 (JSC::GetterSetter::GetterSetter):
473 (JSC::GetterSetter::createStructure):
475 (JSC::initializeThreadingOnce):
477 (JSC::InternalFunction::InternalFunction):
479 (JSC::InternalFunction::createStructure):
481 (JSC::JSAPIValueWrapper::createStructure):
482 (JSC::JSAPIValueWrapper::JSAPIValueWrapper):
484 (JSC::JSActivation::JSActivation):
486 (JSC::JSActivation::createStructure):
488 (JSC::JSArray::JSArray):
490 (JSC::JSArray::createStructure):
492 (JSC::JSByteArray::JSByteArray):
493 (JSC::JSByteArray::createStructure):
495 (JSC::JSByteArray::JSByteArray):
497 (JSC::isZombie):
499 (JSC::JSCell::JSCell::JSCell):
500 (JSC::JSCell::JSCell::addressOfStructure):
501 (JSC::JSCell::JSCell::structure):
502 (JSC::JSCell::JSCell::markChildren):
503 (JSC::JSCell::JSValue::isZombie):
505 (JSC::JSFunction::JSFunction):
507 (JSC::JSFunction::createStructure):
509 (JSC::JSGlobalData::storeVPtrs):
510 (JSC::JSGlobalData::JSGlobalData):
511 (JSC::JSGlobalData::clearBuiltinStructures):
512 (JSC::JSGlobalData::createLeaked):
514 (JSC::allocateGlobalHandle):
516 (JSC::JSGlobalObject::reset):
517 (JSC::JSGlobalObject::markChildren):
518 (JSC::JSGlobalObject::copyGlobalsFrom):
520 (JSC::JSGlobalObject::JSGlobalObject):
521 (JSC::JSGlobalObject::createStructure):
522 (JSC::Structure::prototypeChain):
523 (JSC::Structure::isValid):
524 (JSC::constructEmptyArray):
526 (JSC::JSNotAnObject::JSNotAnObject):
527 (JSC::JSNotAnObject::createStructure):
529 (JSC::JSONObject::JSONObject):
531 (JSC::JSONObject::createStructure):
533 (JSC::JSObject::defineGetter):
534 (JSC::JSObject::defineSetter):
535 (JSC::JSObject::seal):
536 (JSC::JSObject::freeze):
537 (JSC::JSObject::preventExtensions):
538 (JSC::JSObject::removeDirect):
539 (JSC::JSObject::createInheritorID):
541 (JSC::JSObject::createStructure):
542 (JSC::JSObject::JSObject):
543 (JSC::JSNonFinalObject::createStructure):
544 (JSC::JSNonFinalObject::JSNonFinalObject):
545 (JSC::JSFinalObject::create):
546 (JSC::JSFinalObject::createStructure):
547 (JSC::JSFinalObject::JSFinalObject):
548 (JSC::constructEmptyObject):
549 (JSC::createEmptyObjectStructure):
550 (JSC::JSObject::~JSObject):
551 (JSC::JSObject::setPrototype):
552 (JSC::JSObject::setStructure):
553 (JSC::JSObject::inheritorID):
554 (JSC::JSObject::putDirectInternal):
555 (JSC::JSObject::transitionTo):
556 (JSC::JSObject::markChildrenDirect):
558 (JSC::JSObjectWithGlobalObject::JSObjectWithGlobalObject):
560 (JSC::JSObjectWithGlobalObject::createStructure):
561 (JSC::JSObjectWithGlobalObject::JSObjectWithGlobalObject):
563 (JSC::JSPropertyNameIterator::JSPropertyNameIterator):
564 (JSC::JSPropertyNameIterator::create):
565 (JSC::JSPropertyNameIterator::get):
567 (JSC::JSPropertyNameIterator::createStructure):
568 (JSC::JSPropertyNameIterator::setCachedStructure):
569 (JSC::Structure::setEnumerationCache):
571 (JSC::JSStaticScopeObject::JSStaticScopeObject):
572 (JSC::JSStaticScopeObject::createStructure):
574 (JSC::RopeBuilder::JSString):
575 (JSC::RopeBuilder::createStructure):
578 (JSC::TypeInfo::TypeInfo):
581 (JSC::JSVariableObject::createStructure):
582 (JSC::JSVariableObject::JSVariableObject):
583 (JSC::JSVariableObject::copyRegisterArray):
585 (JSC::JSWrapperObject::createStructure):
586 (JSC::JSWrapperObject::JSWrapperObject):
589 (JSC::JSZombie::JSZombie):
590 (JSC::JSZombie::createStructure):
592 (JSC::MathObject::MathObject):
594 (JSC::MathObject::createStructure):
596 (JSC::NativeErrorConstructor::NativeErrorConstructor):
597 (JSC::NativeErrorConstructor::markChildren):
598 (JSC::constructWithNativeErrorConstructor):
600 (JSC::NativeErrorConstructor::createStructure):
602 (JSC::NativeErrorPrototype::NativeErrorPrototype):
605 (JSC::NumberConstructor::NumberConstructor):
607 (JSC::NumberConstructor::createStructure):
609 (JSC::NumberObject::NumberObject):
611 (JSC::NumberObject::createStructure):
613 (JSC::NumberPrototype::NumberPrototype):
616 (JSC::ObjectConstructor::ObjectConstructor):
618 (JSC::ObjectConstructor::createStructure):
620 (JSC::ObjectPrototype::ObjectPrototype):
623 (JSC::PropertyTable::PropertyTable):
625 (JSC::RegExpConstructor::RegExpConstructor):
626 (JSC::RegExpMatchesArray::RegExpMatchesArray):
628 (JSC::RegExpConstructor::createStructure):
630 (JSC::RegExpObject::RegExpObject):
632 (JSC::RegExpObject::createStructure):
634 (JSC::RegExpPrototype::RegExpPrototype):
637 (JSC::ScopeChainNode::ScopeChainNode):
638 (JSC::ScopeChainNode::createStructure):
640 (JSC::StrictEvalActivation::StrictEvalActivation):
642 (JSC::StringConstructor::StringConstructor):
645 (JSC::StringObject::StringObject):
647 (JSC::StringObject::createStructure):
649 (JSC::StringObjectThatMasqueradesAsUndefined::StringObjectThatMasqueradesAsUndefined):
650 (JSC::StringObjectThatMasqueradesAsUndefined::createStructure):
652 (JSC::StringPrototype::StringPrototype):
654 (JSC::StringPrototype::createStructure):
656 (JSC::StructureTransitionTable::remove):
657 (JSC::StructureTransitionTable::add):
658 (JSC::Structure::Structure):
659 (JSC::Structure::~Structure):
660 (JSC::Structure::materializePropertyMap):
661 (JSC::Structure::addPropertyTransitionToExistingStructure):
662 (JSC::Structure::addPropertyTransition):
663 (JSC::Structure::removePropertyTransition):
664 (JSC::Structure::changePrototypeTransition):
665 (JSC::Structure::despecifyFunctionTransition):
666 (JSC::Structure::getterSetterTransition):
667 (JSC::Structure::toDictionaryTransition):
668 (JSC::Structure::toCacheableDictionaryTransition):
669 (JSC::Structure::toUncacheableDictionaryTransition):
670 (JSC::Structure::sealTransition):
671 (JSC::Structure::freezeTransition):
672 (JSC::Structure::preventExtensionsTransition):
673 (JSC::Structure::flattenDictionaryStructure):
674 (JSC::Structure::copyPropertyTable):
675 (JSC::Structure::put):
676 (JSC::Structure::markChildren):
678 (JSC::Structure::create):
679 (JSC::Structure::setPrototypeWithoutTransition):
680 (JSC::Structure::createStructure):
681 (JSC::JSCell::createDummyStructure):
682 (JSC::StructureTransitionTable::keyForWeakGCMapFinalizer):
684 (JSC::StructureChain::StructureChain):
685 (JSC::StructureChain::markChildren):
687 (JSC::StructureChain::create):
688 (JSC::StructureChain::head):
689 (JSC::StructureChain::createStructure):
691 (JSC::StructureTransitionTable::WeakGCMapFinalizerCallback::finalizerContextFor):
692 (JSC::StructureTransitionTable::WeakGCMapFinalizerCallback::keyForFinalizer):
693 (JSC::StructureTransitionTable::~StructureTransitionTable):
694 (JSC::StructureTransitionTable::slot):
695 (JSC::StructureTransitionTable::setMap):
696 (JSC::StructureTransitionTable::singleTransition):
697 (JSC::StructureTransitionTable::clearSingleTransition):
698 (JSC::StructureTransitionTable::setSingleTransition):
700 (JSC::DefaultWeakGCMapFinalizerCallback::finalizerContextFor):
701 (JSC::DefaultWeakGCMapFinalizerCallback::keyForFinalizer):
702 (JSC::WeakGCMap::contains):
703 (JSC::WeakGCMap::find):
704 (JSC::WeakGCMap::remove):
705 (JSC::WeakGCMap::add):
706 (JSC::WeakGCMap::set):
707 (JSC::WeakGCMap::finalize):
709 (JSC::writeBarrier):
710 (JSC::WriteBarrierBase::set):
711 (JSC::WriteBarrierBase::operator*):
712 (JSC::WriteBarrierBase::operator->):
713 (JSC::WriteBarrierBase::setWithoutWriteBarrier):
737 (JSC::DFG::ByteCodeParser::setTemporary):
738 (JSC::DFG::ByteCodeParser::addToGraph):
739 (JSC::DFG::ByteCodeParser::parseBlock):
740 (JSC::DFG::ByteCodeParser::parse):
742 (JSC::DFG::Graph::dump):
744 (JSC::DFG::BasicBlock::BasicBlock):
745 (JSC::DFG::BasicBlock::getBytecodeOffset):
746 (JSC::DFG::Graph::blockIndexForBytecodeOffset):
748 (JSC::DFG::JITCodeGenerator::JITCodeGenerator):
749 (JSC::DFG::JITCodeGenerator::addBranch):
750 (JSC::DFG::JITCodeGenerator::linkBranches):
751 (JSC::DFG::JITCodeGenerator::BranchRecord::BranchRecord):
753 (JSC::DFG::Node::Node):
754 (JSC::DFG::Node::isJump):
755 (JSC::DFG::Node::isBranch):
756 (JSC::DFG::Node::takenBytecodeOffset):
757 (JSC::DFG::Node::notTakenBytecodeOffset):
759 (JSC::DFG::NonSpeculativeJIT::compile):
762 (JSC::DFG::SpeculativeJIT::compile):
775 (JSC::DFG::ByteCodeParser::ByteCodeParser):
776 (JSC::DFG::ByteCodeParser::get):
777 (JSC::DFG::ByteCodeParser::set):
778 (JSC::DFG::ByteCodeParser::getVariable):
779 (JSC::DFG::ByteCodeParser::setVariable):
780 (JSC::DFG::ByteCodeParser::getArgument):
781 (JSC::DFG::ByteCodeParser::setArgument):
782 (JSC::DFG::ByteCodeParser::getThis):
783 (JSC::DFG::ByteCodeParser::setThis):
784 (JSC::DFG::ByteCodeParser::VariableRecord::VariableRecord):
785 (JSC::DFG::ByteCodeParser::parseBlock):
787 (JSC::DFG::Graph::dump):
788 (JSC::DFG::Graph::derefChildren):
790 (JSC::DFG::Graph::ref):
791 (JSC::DFG::Graph::deref):
793 (JSC::DFG::Node::hasLocal):
794 (JSC::DFG::Node::local):
796 (JSC::DFG::NonSpeculativeJIT::compile):
798 (JSC::DFG::SpeculativeJIT::compile):
812 (JSC::DFG::ByteCodeParser::ByteCodeParser):
813 (JSC::DFG::ByteCodeParser::get):
814 (JSC::DFG::ByteCodeParser::set):
815 (JSC::DFG::ByteCodeParser::getVariable):
816 (JSC::DFG::ByteCodeParser::setVariable):
817 (JSC::DFG::ByteCodeParser::getTemporary):
818 (JSC::DFG::ByteCodeParser::setTemporary):
819 (JSC::DFG::ByteCodeParser::getArgument):
820 (JSC::DFG::ByteCodeParser::getInt32Constant):
821 (JSC::DFG::ByteCodeParser::getDoubleConstant):
822 (JSC::DFG::ByteCodeParser::getJSConstant):
823 (JSC::DFG::ByteCodeParser::constantUndefined):
824 (JSC::DFG::ByteCodeParser::constantNull):
825 (JSC::DFG::ByteCodeParser::one):
826 (JSC::DFG::ByteCodeParser::parseBlock):
827 (JSC::DFG::ByteCodeParser::parse):
828 (JSC::DFG::parse):
831 (JSC::DFG::ScoreBoard::ScoreBoard):
832 (JSC::DFG::ScoreBoard::~ScoreBoard):
833 (JSC::DFG::ScoreBoard::allocate):
834 (JSC::DFG::ScoreBoard::use):
851 (JSC::JSObjectWithGlobalObject::globalObject):
908 (JSC::DFG::ByteCodeParser::ByteCodeParser):
909 (JSC::DFG::ByteCodeParser::parse):
925 (JSC::DFG::GenerationInfo::needsSpill):
927 (JSC::DFG::Graph::dump):
930 (JSC::DFG::JITCodeGenerator::fillInteger):
931 (JSC::DFG::JITCodeGenerator::fillDouble):
932 (JSC::DFG::JITCodeGenerator::fillJSValue):
934 (JSC::DFG::JITCodeGenerator::initConstantInfo):
936 (JSC::DFG::JITCompiler::fillNumericToDouble):
937 (JSC::DFG::JITCompiler::fillInt32ToInteger):
938 (JSC::DFG::JITCompiler::fillToJS):
940 (JSC::DFG::NonSpeculativeJIT::isKnownInteger):
941 (JSC::DFG::NonSpeculativeJIT::isKnownNumeric):
942 (JSC::DFG::NonSpeculativeJIT::compile):
944 (JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
945 (JSC::DFG::SpeculativeJIT::fillSpeculateCell):
946 (JSC::DFG::SpeculativeJIT::compile):
967 (JSC::ARMAssembler::debugOffset):
969 (JSC::ARMv7Assembler::ARMInstructionFormatter::debugOffset):
971 (JSC::AbstractMacroAssembler::debugOffset):
973 (JSC::AssemblerBuffer::debugOffset):
975 (JSC::LinkBuffer::debugAddress):
977 (JSC::MIPSAssembler::debugOffset):
979 (JSC::MacroAssemblerX86_64::orPtr):
981 (JSC::X86Assembler::debugOffset):
982 (JSC::X86Assembler::X86InstructionFormatter::debugOffset):
984 (JSC::DFG::ByteCodeParser::parse):
987 (JSC::DFG::JITCodeGenerator::fillJSValue):
989 (JSC::DFG::JITCodeGenerator::isConstant):
991 (JSC::DFG::JITCompiler::compileFunction):
993 (JSC::DFG::JITCompiler::isConstant):
995 (JSC::DFG::NonSpeculativeJIT::valueToNumber):
996 (JSC::DFG::NonSpeculativeJIT::valueToInt32):
997 (JSC::DFG::NonSpeculativeJIT::numberToInt32):
998 (JSC::DFG::NonSpeculativeJIT::isKnownInteger):
999 (JSC::DFG::NonSpeculativeJIT::isKnownNumeric):
1000 (JSC::DFG::NonSpeculativeJIT::compile):
1002 (JSC::DFG::NonSpeculativeJIT::silentSpillGPR):
1003 (JSC::DFG::NonSpeculativeJIT::silentSpillFPR):
1004 (JSC::DFG::NonSpeculativeJIT::silentFillGPR):
1005 (JSC::DFG::NonSpeculativeJIT::silentFillFPR):
1006 (JSC::DFG::NonSpeculativeJIT::silentSpillAllRegisters):
1007 (JSC::DFG::NonSpeculativeJIT::silentFillAllRegisters):
1009 (JSC::DFG::SpeculativeJIT::compile):
1023 (JSC::HandleHeap::markWeakHandles): Removed looping from here, since we
1027 (JSC::Heap::markRoots): Moved looping to here, as explained above.
1049 (JSC::HandleHeap::protectedObjectTypeCounts):
1087 (JSC::HandleHeap::copyWeak): New function for copying a weak handle.
1092 (JSC::::set):
1094 (JSC::Strong::set): Added ASSERTs to verify that dead objects are not
1097 (JSC::swap): Added a swap helper, so use of Strong<T> inside a hash table
1101 (JSC::Weak::Weak): Fixed a bug where copying a weak pointer would not
1104 (JSC::Weak::operator=): Added an assignment operator, since the default
1107 (JSC::Weak::set): Added ASSERTs to verify that dead objects are not
1110 (JSC::swap): Added a swap helper, so use of Strong<T> inside a hash table
1133 (JSC::BytecodeGenerator::BytecodeGenerator):
1135 (JSC::appendSourceToError):
1136 (JSC::Interpreter::tryCacheGetByID):
1137 (JSC::Interpreter::privateExecute):
1139 (JSC::JITThunks::tryCacheGetByID):
1140 (JSC::DEFINE_STUB_FUNCTION):
1142 (JSC::BatchedTransitionOptimizer::BatchedTransitionOptimizer):
1144 (JSC::InternalFunction::name):
1145 (JSC::InternalFunction::displayName):
1147 (JSC::JSActivation::getOwnPropertySlot):
1149 (JSC::JSFunction::name):
1150 (JSC::JSFunction::displayName):
1151 (JSC::JSFunction::getOwnPropertySlot):
1153 (JSC::JSGlobalObject::putWithAttributes):
1154 (JSC::JSGlobalObject::reset):
1155 (JSC::JSGlobalObject::resetPrototype):
1158 (JSC::JSObject::put):
1159 (JSC::JSObject::deleteProperty):
1160 (JSC::JSObject::defineGetter):
1161 (JSC::JSObject::defineSetter):
1162 (JSC::JSObject::lookupGetter):
1163 (JSC::JSObject::lookupSetter):
1164 (JSC::JSObject::getPropertySpecificValue):
1165 (JSC::JSObject::getOwnPropertyNames):
1166 (JSC::JSObject::seal):
1167 (JSC::JSObject::freeze):
1168 (JSC::JSObject::preventExtensions):
1169 (JSC::JSObject::removeDirect):
1170 (JSC::JSObject::getOwnPropertyDescriptor):
1171 (JSC::JSObject::defineOwnProperty):
1173 (JSC::JSObject::getDirect):
1174 (JSC::JSObject::getDirectLocation):
1175 (JSC::JSObject::isSealed):
1176 (JSC::JSObject::isFrozen):
1177 (JSC::JSObject::setPrototypeWithCycleCheck):
1178 (JSC::JSObject::setPrototype):
1179 (JSC::JSObject::inlineGetOwnPropertySlot):
1180 (JSC::JSObject::putDirectInternal):
1181 (JSC::JSObject::putDirectWithoutTransition):
1182 (JSC::JSObject::putDirectFunctionWithoutTransition):
1184 (JSC::setUpStaticFunctionSlot):
1186 (JSC::objectConstructorCreate):
1187 (JSC::objectConstructorSeal):
1188 (JSC::objectConstructorFreeze):
1189 (JSC::objectConstructorPreventExtensions):
1190 (JSC::objectConstructorIsSealed):
1191 (JSC::objectConstructorIsFrozen):
1193 (JSC::normalizePrototypeChain):
1195 (JSC::PropertyMapEntry::PropertyMapEntry):
1196 (JSC::PropertyTable::PropertyTable):
1197 (JSC::PropertyTable::copy):
1199 (JSC::Structure::materializePropertyMap):
1200 (JSC::Structure::despecifyDictionaryFunction):
1201 (JSC::Structure::addPropertyTransition):
1202 (JSC::Structure::removePropertyTransition):
1203 (JSC::Structure::changePrototypeTransition):
1204 (JSC::Structure::despecifyFunctionTransition):
1205 (JSC::Structure::getterSetterTransition):
1206 (JSC::Structure::toDictionaryTransition):
1207 (JSC::Structure::toCacheableDictionaryTransition):
1208 (JSC::Structure::toUncacheableDictionaryTransition):
1209 (JSC::Structure::sealTransition):
1210 (JSC::Structure::freezeTransition):
1211 (JSC::Structure::preventExtensionsTransition):
1212 (JSC::Structure::isSealed):
1213 (JSC::Structure::isFrozen):
1214 (JSC::Structure::addPropertyWithoutTransition):
1215 (JSC::Structure::removePropertyWithoutTransition):
1216 (JSC::Structure::copyPropertyTable):
1217 (JSC::Structure::get):
1218 (JSC::Structure::despecifyFunction):
1219 (JSC::Structure::despecifyAllFunctions):
1220 (JSC::Structure::put):
1221 (JSC::Structure::getPropertyNames):
1223 (JSC::Structure::get):
1224 (JSC::Structure::materializePropertyMapIfNecessary):
1264 (JSC::arrayProtoFuncSort):
1265 (JSC::arrayProtoFuncFilter):
1266 (JSC::arrayProtoFuncMap):
1267 (JSC::arrayProtoFuncEvery):
1268 (JSC::arrayProtoFuncForEach):
1269 (JSC::arrayProtoFuncSome):
1270 (JSC::arrayProtoFuncReduce):
1271 (JSC::arrayProtoFuncReduceRight):
1285 (JSC::JSCallbackObjectData::finalize):
1288 (JSC::::init):
1299 (JSC::HandleBase::swap):
1300 (JSC::Handle::Handle):
1301 (JSC::Handle::swap): Implemented swap, so we can rehash efficiently, and
1305 (JSC::Strong::swap): Use new SimpleClassHashTraits to avoid duplication.
1308 (JSC::Weak::isHashTableDeletedValue):
1309 (JSC::Weak::Weak):
1310 (JSC::Weak::swap):
1311 (JSC::Weak::hashTableDeletedValue): Ditto.
1407 (JSC::DFG::NonSpeculativeJIT::compile):
1409 (JSC::DFG::SpeculativeJIT::compile):
1411 (JSC::JIT::emitTagAsBoolImmediate):
1413 (JSC::JIT::emit_op_not):
1414 (JSC::JIT::emit_op_jeq_null):
1415 (JSC::JIT::emit_op_jneq_null):
1416 (JSC::JIT::emit_op_get_pnames):
1417 (JSC::JIT::emit_op_eq_null):
1418 (JSC::JIT::emit_op_neq_null):
1419 (JSC::JIT::emitSlow_op_not):
1423 (JSC::JSValue::encode):
1424 (JSC::JSValue::decode):
1425 (JSC::JSValue::operator==):
1426 (JSC::JSValue::operator!=):
1427 (JSC::JSValue::JSValue):
1428 (JSC::JSValue::operator bool):
1429 (JSC::JSValue::asInt32):
1430 (JSC::JSValue::isUndefinedOrNull):
1431 (JSC::JSValue::isBoolean):
1432 (JSC::JSValue::isCell):
1433 (JSC::JSValue::isInt32):
1434 (JSC::JSValue::asDouble):
1435 (JSC::JSValue::isNumber):
1436 (JSC::JSValue::asCell):
1533 (JSC::BytecodeGenerator::emitLoad):
1536 (JSC::DFG::NonSpeculativeJIT::compile):
1539 (JSC::DFG::SpeculativeJIT::compile):
1542 (JSC::JIT::compileBinaryArithOpSlowCase):
1545 (JSC::JIT::emitJumpIfJSCell):
1546 (JSC::JIT::emitJumpIfNotJSCell):
1547 (JSC::JIT::emitJumpIfImmediateInteger):
1548 (JSC::JIT::emitJumpIfNotImmediateInteger):
1549 (JSC::JIT::emitFastArithDeTagImmediate):
1550 (JSC::JIT::emitFastArithDeTagImmediateJumpIfZero):
1551 (JSC::JIT::emitFastArithReTagImmediate):
1552 (JSC::JIT::emitTagAsBoolImmediate):
1555 (JSC::JIT::emit_op_not):
1556 (JSC::JIT::emit_op_jeq_null):
1557 (JSC::JIT::emit_op_jneq_null):
1558 (JSC::JIT::emit_op_get_pnames):
1559 (JSC::JIT::emit_op_eq_null):
1560 (JSC::JIT::emit_op_neq_null):
1561 (JSC::JIT::emitSlow_op_not):
1579 (JSC::JSValue::toInt32):
1580 (JSC::JSValue::toUInt32):
1581 (JSC::JSValue::isUInt32):
1582 (JSC::JSValue::asUInt32):
1583 (JSC::JSValue::uncheckedGetNumber):
1584 (JSC::JSValue::toJSNumber):
1585 (JSC::jsNaN):
1586 (JSC::JSValue::getNumber):
1587 (JSC::JSValue::getBoolean):
1588 (JSC::JSValue::JSValue):
1589 (JSC::JSValue::encode):
1590 (JSC::JSValue::decode):
1591 (JSC::JSValue::operator bool):
1592 (JSC::JSValue::operator==):
1593 (JSC::JSValue::operator!=):
1594 (JSC::JSValue::isUndefined):
1595 (JSC::JSValue::isNull):
1596 (JSC::JSValue::isUndefinedOrNull):
1597 (JSC::JSValue::isCell):
1598 (JSC::JSValue::isInt32):
1599 (JSC::JSValue::isDouble):
1600 (JSC::JSValue::isTrue):
1601 (JSC::JSValue::isFalse):
1602 (JSC::JSValue::tag):
1603 (JSC::JSValue::payload):
1604 (JSC::JSValue::asInt32):
1605 (JSC::JSValue::asDouble):
1606 (JSC::JSValue::asCell):
1607 (JSC::JSValue::isNumber):
1608 (JSC::JSValue::isBoolean):
1609 (JSC::JSValue::makeImmediate):
1610 (JSC::JSValue::immediateValue):
1611 (JSC::reinterpretDoubleToIntptr):
1612 (JSC::reinterpretIntptrToDouble):
1689 (JSC::HandleBase::operator!):
1690 (JSC::HandleBase::HandleBase):
1691 (JSC::HandleBase::slot):
1692 (JSC::HandleBase::setSlot):
1693 (JSC::Handle::Handle):
1695 (JSC::HandleHeap::markWeakHandles):
1696 (JSC::HandleHeap::finalizeWeakHandles):
1697 (JSC::HandleHeap::isValidWeakNode):
1699 (JSC::HandleHeap::globalData):
1749 (JSC::Strong::Strong):
1750 (JSC::Strong::~Strong):
1751 (JSC::Strong::operator=):
1753 (JSC::Weak::Weak):
1754 (JSC::Weak::~Weak):
1758 (JSC::JITThunks::hostFunctionStub):
1778 (JSC::DFG::ByteCodeParser::parse):
1791 (JSC::DFG::ByteCodeParser::ByteCodeParser):
1792 (JSC::DFG::ByteCodeParser::constantNull):
1793 (JSC::DFG::ByteCodeParser::parse):
1796 (JSC::DFG::JITCodeGenerator::callOperation):
1801 (JSC::DFG::NonSpeculativeJIT::compile):
1804 (JSC::DFG::operationCompareLess):
1805 (JSC::DFG::operationCompareLessEq):
1806 (JSC::DFG::operationCompareEq):
1807 (JSC::DFG::operationCompareStrictEq):
1808 (JSC::DFG::dfgConvertJSValueToBoolean):
1812 (JSC::DFG::SpeculativeJIT::compile):
1815 (JSC::JIT::privateCompileCTIMachineTrampolines):
1818 (JSC::JIT::privateCompilePatchGetArrayLength):
1862 (JSC::Global::Global): Added a null constructor. No need for a special
1865 (JSC::Global::isHashTableDeletedValue):
1866 (JSC::Global::~Global):
1867 (JSC::Global::set):
1868 (JSC::Global::operator=):
1869 (JSC::Global::clear):
1870 (JSC::Global::hashTableDeletedValue): Reordered constructors to be near
1873 (JSC::Global::setWithWriteBarrier): Renamed internalSet to
1878 (JSC::HandleBase::operator!):
1879 (JSC::HandleBase::HandleBase): Removed isEmpty(), since we already have
1882 (JSC::HandleBase::slot):
1883 (JSC::HandleBase::setSlot):
1884 (JSC::Handle::Handle): Added general support for null Handles. This was
1889 (JSC::HandleHeap::markWeakHandles):
1890 (JSC::HandleHeap::finalizeWeakHandles):
1891 (JSC::HandleHeap::isValidWeakNode): Migrated from isValidWeakHandle,
1895 (JSC::HandleHeap::globalData): Added accessor, used by some new set functions.
1900 (JSC::::Local): Updated for removal of invalidate().
1902 (JSC::::operator): Deployed "using" to avoid a lot of this->
1905 (JSC::::setWithSlotCheck): Renamed from internalSet, more specific now.
1908 (JSC::RegisterFile::RegisterFile): Updated to use null constructor.
1911 (JSC::JITThunks::hostFunctionStub):
1914 (JSC::Structure::setEnumerationCache):
1920 (JSC::WeakGCMap::set): Finish initializing our handle before putting it
1927 (JSC::WeakGCPtr::WeakGCPtr):
1928 (JSC::WeakGCPtr::~WeakGCPtr):
1929 (JSC::WeakGCPtr::get):
1930 (JSC::WeakGCPtr::clear):
1931 (JSC::WeakGCPtr::set):
1932 (JSC::WeakGCPtr::setWithWriteBarrier): Removed duplicate code and
1966 (JSC::JIT::emitStoreBool):
1968 (JSC::JIT::emit_op_instanceof):
1969 (JSC::JIT::emit_op_not):
1970 (JSC::JIT::emit_op_jfalse):
1971 (JSC::JIT::emitSlow_op_jfalse):
1972 (JSC::JIT::emit_op_jtrue):
1973 (JSC::JIT::emitSlow_op_jtrue):
1974 (JSC::JIT::emit_op_jeq_null):
1975 (JSC::JIT::emit_op_jneq_null):
1976 (JSC::JIT::emit_op_eq):
1977 (JSC::JIT::emitSlow_op_eq):
1978 (JSC::JIT::emit_op_neq):
1979 (JSC::JIT::emitSlow_op_neq):
1980 (JSC::JIT::compileOpStrictEq):
1981 (JSC::JIT::emit_op_eq_null):
1982 (JSC::JIT::emit_op_neq_null):
1985 (JSC::JSValue::JSValue):
1986 (JSC::JSValue::isTrue):
1987 (JSC::JSValue::isFalse):
1988 (JSC::JSValue::getBoolean):
2021 (JSC::JIT::emit_op_not):
2032 (JSC::JIT::emitTagAsBoolImmediate):
2034 (JSC::JIT::emit_op_not):
2036 (JSC::JSImmediate::makeInt):
2037 (JSC::JSImmediate::makeBool):
2038 (JSC::JSImmediate::intValue):
2039 (JSC::JSImmediate::boolValue):
2040 (JSC::JSImmediate::asInt32):
2041 (JSC::JSImmediate::toDouble):
2042 (JSC::JSValue::asInt32):
2043 (JSC::JSValue::isUInt32):
2044 (JSC::JSValue::asUInt32):
2085 (JSC::JSObject::isUsingInlineStorage):
2086 (JSC::JSObject::JSObject):
2157 (JSC::isValidWeakHandle): Factored out a helper function for ASSERTs.
2159 (JSC::WeakHandleOwner::~WeakHandleOwner): Moved from header to avoid
2162 (JSC::WeakHandleOwner::isReachableFromOpaqueRoots): New callback.
2165 (JSC::WeakHandleOwner::finalize): Switched from pure virtual to a
2169 (JSC::HandleHeap::markWeakHandles): Split updateWeakHandles into two
2175 (JSC::HandleHeap::finalizeWeakHandles): Use new helper function.
2180 (JSC::Heap::destroy):
2181 (JSC::Heap::markRoots):
2182 (JSC::Heap::reset): Split out handle marking from handle finalization.
2185 (JSC::MarkStack::reset):
2187 (JSC::MarkStack::addOpaqueRoot):
2188 (JSC::MarkStack::containsOpaqueRoot):
2189 (JSC::MarkStack::opaqueRootCount):
2190 (JSC::HeapRootMarker::markStack): New helper functions for managing the
2194 (JSC::WeakGCMap::finalize): Renamed to match parent class declaration.
2204 (JSC::Yarr::Parser::CharacterClassParserDelegate::CharacterClassParserDelegate):
2219 REGRESSION (r82849): 85,000+ JSC-related leaks seen on SnowLeopard Intel Leaks
2225 (JSC::StructureStubInfo::deref):
2255 (JSC::ExecutableBase::createStructure):
2256 (JSC::NativeExecutable::createStructure):
2257 (JSC::NativeExecutable::NativeExecutable):
2258 (JSC::EvalExecutable::createStructure):
2259 (JSC::ProgramExecutable::createStructure):
2260 (JSC::FunctionExecutable::createStructure):
2262 (JSC::TypeCounter::typeName):
2264 (JSC::JSGlobalData::JSGlobalData):
2268 (JSC::ScopeChainNode::createStructure):
2271 (JSC::StructureChain::createStructure):
2336 (JSC::JSCell::JSValue::toThisObject):
2340 (JSC::JSCell::isObject):
2341 (JSC::JSCell::isString):
2342 (JSC::JSCell::classInfo):
2343 (JSC::JSCell::createDummyStructure):
2344 (JSC::JSValue::needsThisConversion):
2345 (JSC::MarkStack::internalAppend):
2372 (JSC::RegisterFile::GlobalObjectOwner::finalize):
2373 (JSC::RegisterFile::RegisterFile): Replaced GlobalObjectNotifier with
2377 (JSC::WeakGCPtr::set): Allow set() to take a context argument, since
2434 (JSC::HandleHeap::updateWeakHandles): Updated for rename.
2441 (JSC::Heap::destroy):
2442 (JSC::Heap::markRoots): Updated for rename.
2452 (JSC::HandleHeap::clearWeakPointers): Don't check for null or non-cell
2456 (JSC::HandleHeap::writeBarrier): Standardized on checking for null before
2460 (JSC::HandleHeap::deallocate):
2461 (JSC::HandleHeap::makeWeak): Ditto.
2485 (JSC::HandleHeap::HandleHeap):
2486 (JSC::HandleHeap::clearWeakPointers):
2487 (JSC::HandleHeap::writeBarrier):
2500 (JSC::HandleHeap::clearWeakPointers): Updated for renames. Removed
2506 (JSC::WeakHandleOwner::~WeakHandleOwner):
2507 (JSC::HandleHeap::makeWeak): Updated for renames.
2509 (JSC::HandleHeap::hasWeakOwner): Changed getFinalizer to hasWeakOwner,
2512 (JSC::HandleHeap::Node::Node):
2513 (JSC::HandleHeap::Node::makeWeak):
2514 (JSC::HandleHeap::Node::isWeak):
2515 (JSC::HandleHeap::Node::weakOwner):
2516 (JSC::HandleHeap::Node::weakOwnerContext):
2517 (JSC::HandleHeap::Node::emptyWeakOwner):
2519 (JSC::RegisterFile::globalObjectCollectedNotifier):
2523 (JSC::WeakGCPtr::WeakGCPtr):
2524 (JSC::WeakGCPtr::set): Updated for renames.
2532 (JSC::Interpreter::tryCachePutByID):
2533 (JSC::Interpreter::tryCacheGetByID):
2560 (JSC::CodeBlock::dump):
2561 (JSC::CodeBlock::derefStructures):
2562 (JSC::CodeBlock::refStructures):
2563 (JSC::CodeBlock::markAggregate):
2565 (JSC::PolymorphicAccessStructureList::PolymorphicStubInfo::set):
2566 (JSC::PolymorphicAccessStructureList::PolymorphicAccessStructureList):
2567 (JSC::PolymorphicAccessStructureList::derefStructures):
2568 (JSC::PolymorphicAccessStructureList::markAggregate):
2569 (JSC::Instruction::Instruction):
2571 (JSC::StructureStubInfo::deref):
2572 (JSC::StructureStubInfo::markAggregate):
2574 (JSC::StructureStubInfo::initGetByIdChain):
2575 (JSC::StructureStubInfo::initPutByIdTransition):
2577 (JSC::BytecodeGenerator::emitJumpIfNotFunctionCall):
2578 (JSC::BytecodeGenerator::emitJumpIfNotFunctionApply):
2580 (JSC::HandleConverter::operator->):
2581 (JSC::HandleConverter::operator*):
2583 (JSC::Interpreter::privateExecute):
2585 (JSC::JIT::emit_op_jneq_ptr):
2587 (JSC::JIT::emit_op_jneq_ptr):
2589 (JSC::JIT::privateCompileGetByIdChainList):
2591 (JSC::JIT::privateCompileGetByIdChainList):
2593 (JSC::JITThunks::tryCachePutByID):
2594 (JSC::JITThunks::tryCacheGetByID):
2595 (JSC::getPolymorphicAccessStructureListSlot):
2596 (JSC::DEFINE_STUB_FUNCTION):
2599 (JSC::JSGlobalData::JSGlobalData):
2602 (JSC::markIfNeeded):
2604 (JSC::Structure::prototypeChain):
2606 (JSC::JSObject::putDirectInternal):
2607 (JSC::JSObject::markChildrenDirect):
2609 (JSC::JSPropertyNameIterator::create):
2610 (JSC::JSPropertyNameIterator::get):
2611 (JSC::JSPropertyNameIterator::markChildren):
2613 (JSC::JSPropertyNameIterator::setCachedPrototypeChain):
2615 (JSC::JSZombie::leakedZombieStructure):
2618 (JSC::MarkStack::append):
2620 (JSC::MarkedBlock::sweep):
2622 (JSC::Structure::addPropertyTransition):
2624 (JSC::Structure::markAggregate):
2626 (JSC::StructureChain::StructureChain):
2627 (JSC::StructureChain::~StructureChain):
2628 (JSC::StructureChain::markChildren):
2630 (JSC::StructureChain::create):
2631 (JSC::StructureChain::createStructure):
2633 (JSC::WriteBarrierBase::get):
2634 (JSC::WriteBarrierBase::operator*):
2635 (JSC::WriteBarrierBase::operator->):
2649 (JSC::HandleHeap::clearWeakPointers): Removed the special self-destroying
2654 (JSC::HandleHeap::makeWeak): makeWeak and adding a finalizer are now
2658 (JSC::HandleHeap::Node::Node):
2659 (JSC::HandleHeap::Node::handleHeap): No more flags.
2661 (JSC::HandleHeap::Node::makeWeak):
2662 (JSC::HandleHeap::Node::isWeak): Ditto above. We use a special sentienl
2686 (JSC::Lexer::setOffset): Copied code from Lexer::shift to update m_current, because
2717 (JSC::CodeBlock::dump):
2718 (JSC::CodeBlock::derefStructures):
2719 (JSC::CodeBlock::refStructures):
2720 (JSC::CodeBlock::markAggregate):
2722 (JSC::PolymorphicAccessStructureList::PolymorphicStubInfo::set):
2723 (JSC::PolymorphicAccessStructureList::PolymorphicAccessStructureList):
2724 (JSC::PolymorphicAccessStructureList::derefStructures):
2725 (JSC::Instruction::Instruction):
2727 (JSC::StructureStubInfo::deref):
2729 (JSC::StructureStubInfo::initGetByIdChain):
2730 (JSC::StructureStubInfo::initPutByIdTransition):
2732 (JSC::BytecodeGenerator::emitJumpIfNotFunctionCall):
2733 (JSC::BytecodeGenerator::emitJumpIfNotFunctionApply):
2735 (JSC::Interpreter::privateExecute):
2737 (JSC::JIT::emit_op_jneq_ptr):
2739 (JSC::JIT::emit_op_jneq_ptr):
2741 (JSC::JIT::privateCompileGetByIdChainList):
2743 (JSC::JIT::privateCompileGetByIdChainList):
2745 (JSC::getPolymorphicAccessStructureListSlot):
2746 (JSC::DEFINE_STUB_FUNCTION):
2749 (JSC::JSGlobalData::JSGlobalData):
2752 (JSC::markIfNeeded):
2754 (JSC::Structure::prototypeChain):
2756 (JSC::JSObject::markChildrenDirect):
2758 (JSC::JSPropertyNameIterator::create):
2759 (JSC::JSPropertyNameIterator::get):
2760 (JSC::JSPropertyNameIterator::markChildren):
2762 (JSC::JSPropertyNameIterator::setCachedPrototypeChain):
2764 (JSC::MarkStack::append):
2767 (JSC::StructureChain::StructureChain):
2769 (JSC::StructureChain::create):
2856 (JSC::CodeBlock::dump):
2857 (JSC::CodeBlock::derefStructures):
2858 (JSC::CodeBlock::refStructures):
2859 (JSC::CodeBlock::markAggregate):
2861 (JSC::PolymorphicAccessStructureList::PolymorphicStubInfo::set):
2862 (JSC::PolymorphicAccessStructureList::PolymorphicAccessStructureList):
2863 (JSC::PolymorphicAccessStructureList::derefStructures):
2864 (JSC::PolymorphicAccessStructureList::markAggregate):
2865 (JSC::Instruction::Instruction):
2867 (JSC::StructureStubInfo::deref):
2868 (JSC::StructureStubInfo::markAggregate):
2870 (JSC::StructureStubInfo::initGetByIdChain):
2871 (JSC::StructureStubInfo::initPutByIdTransition):
2873 (JSC::BytecodeGenerator::emitJumpIfNotFunctionCall):
2874 (JSC::BytecodeGenerator::emitJumpIfNotFunctionApply):
2876 (JSC::Interpreter::privateExecute):
2878 (JSC::JIT::emit_op_jneq_ptr):
2880 (JSC::JIT::emit_op_jneq_ptr):
2882 (JSC::JIT::privateCompileGetByIdChainList):
2884 (JSC::JIT::privateCompileGetByIdChainList):
2886 (JSC::getPolymorphicAccessStructureListSlot):
2887 (JSC::DEFINE_STUB_FUNCTION):
2890 (JSC::JSGlobalData::JSGlobalData):
2893 (JSC::markIfNeeded):
2895 (JSC::Structure::prototypeChain):
2897 (JSC::JSObject::markChildrenDirect):
2899 (JSC::JSPropertyNameIterator::create):
2900 (JSC::JSPropertyNameIterator::get):
2901 (JSC::JSPropertyNameIterator::markChildren):
2903 (JSC::JSPropertyNameIterator::setCachedPrototypeChain):
2905 (JSC::MarkStack::append):
2907 (JSC::Structure::cachedPrototypeChainSlot):
2909 (JSC::StructureChain::StructureChain):
2911 (JSC::StructureChain::create):
2912 (JSC::StructureChain::createStructure):
2966 (JSC::DFG::ByteCodeParser::parse):
2981 (JSC::Heap::reset): Make marking proportional to 1X the size of the heap,
3044 (JSC::constructDate):
3045 (JSC::constructWithDateConstructor):
3098 (JSC::constructArrayWithSizeQuirk):
3100 (JSC::constructBoolean):
3101 (JSC::constructBooleanFromImmediateBoolean):
3104 (JSC::constructDate):
3108 (JSC::constructWithErrorConstructor):
3109 (JSC::callErrorConstructor):
3111 (JSC::constructWithFunctionConstructor):
3112 (JSC::callFunctionConstructor):
3113 (JSC::constructFunction):
3116 (JSC::JSCell::getOwnPropertySlot):
3117 (JSC::JSCell::put):
3118 (JSC::JSCell::deleteProperty):
3119 (JSC::JSCell::toThisObject):
3120 (JSC::JSCell::toObject):
3122 (JSC::JSCell::JSValue::toObject):
3124 (JSC::JSNotAnObject::toObject):
3127 (JSC::JSObject::toObject):
3130 (JSC::StringObject::create):
3131 (JSC::JSString::toObject):
3132 (JSC::JSString::toThisObject):
3135 (JSC::JSValue::toObjectSlowCase):
3136 (JSC::JSValue::toThisObjectSlowCase):
3137 (JSC::JSValue::synthesizeObject):
3140 (JSC::constructWithNumberConstructor):
3142 (JSC::constructNumber):
3145 (JSC::constructObject):
3146 (JSC::constructWithObjectConstructor):
3147 (JSC::callObjectConstructor):
3149 (JSC::constructRegExp):
3150 (JSC::constructWithRegExpConstructor):
3151 (JSC::callRegExpConstructor):
3154 (JSC::constructWithStringConstructor):
3167 (JSC::Heap::reportExtraMemoryCostSlowCase): Use highWaterMark(), instead of
3183 (JSC::JIT::privateCompileGetByIdChainList):
3199 (JSC::AbstractMacroAssembler::TrustedImmPtr::TrustedImmPtr):
3200 (JSC::AbstractMacroAssembler::ImmPtr::ImmPtr):
3201 (JSC::AbstractMacroAssembler::TrustedImm32::TrustedImm32):
3202 (JSC::AbstractMacroAssembler::Imm32::Imm32):
3204 (JSC::MacroAssembler::pop):
3205 (JSC::MacroAssembler::poke):
3206 (JSC::MacroAssembler::branchPtr):
3207 (JSC::MacroAssembler::branch32):
3208 (JSC::MacroAssembler::addPtr):
3209 (JSC::MacroAssembler::andPtr):
3210 (JSC::MacroAssembler::orPtr):
3211 (JSC::MacroAssembler::subPtr):
3212 (JSC::MacroAssembler::xorPtr):
3213 (JSC::MacroAssembler::setPtr):
3214 (JSC::MacroAssembler::storePtr):
3215 (JSC::MacroAssembler::branchTestPtr):
3216 (JSC::MacroAssembler::branchSubPtr):
3217 (JSC::MacroAssembler::branchTest8):
3219 (JSC::MacroAssemblerARM::add32):
3220 (JSC::MacroAssemblerARM::and32):
3221 (JSC::MacroAssemblerARM::lshift32):
3222 (JSC::MacroAssemblerARM::mul32):
3223 (JSC::MacroAssemblerARM::or32):
3224 (JSC::MacroAssemblerARM::rshift32):
3225 (JSC::MacroAssemblerARM::urshift32):
3226 (JSC::MacroAssemblerARM::sub32):
3227 (JSC::MacroAssemblerARM::xor32):
3228 (JSC::MacroAssemblerARM::store32):
3229 (JSC::MacroAssemblerARM::push):
3230 (JSC::MacroAssemblerARM::move):
3231 (JSC::MacroAssemblerARM::branch8):
3232 (JSC::MacroAssemblerARM::branch32):
3233 (JSC::MacroAssemblerARM::branch32WithUnalignedHalfWords):
3234 (JSC::MacroAssemblerARM::branch16):
3235 (JSC::MacroAssemblerARM::branchTest8):
3236 (JSC::MacroAssemblerARM::branchTest32):
3237 (JSC::MacroAssemblerARM::branchAdd32):
3238 (JSC::MacroAssemblerARM::branchMul32):
3239 (JSC::MacroAssemblerARM::branchSub32):
3240 (JSC::MacroAssemblerARM::set32Compare32):
3241 (JSC::MacroAssemblerARM::set8Compare32):
3242 (JSC::MacroAssemblerARM::set32Test32):
3243 (JSC::MacroAssemblerARM::set32Test8):
3244 (JSC::MacroAssemblerARM::moveWithPatch):
3245 (JSC::MacroAssemblerARM::branchPtrWithPatch):
3246 (JSC::MacroAssemblerARM::storePtrWithPatch):
3248 (JSC::MacroAssemblerARMv7::add32):
3249 (JSC::MacroAssemblerARMv7::and32):
3250 (JSC::MacroAssemblerARMv7::lshift32):
3251 (JSC::MacroAssemblerARMv7::mul32):
3252 (JSC::MacroAssemblerARMv7::or32):
3253 (JSC::MacroAssemblerARMv7::rshift32):
3254 (JSC::MacroAssemblerARMv7::urshift32):
3255 (JSC::MacroAssemblerARMv7::sub32):
3256 (JSC::MacroAssemblerARMv7::xor32):
3257 (JSC::MacroAssemblerARMv7::load32):
3258 (JSC::MacroAssemblerARMv7::load32WithAddressOffsetPatch):
3259 (JSC::MacroAssemblerARMv7::load16):
3260 (JSC::MacroAssemblerARMv7::store32WithAddressOffsetPatch):
3261 (JSC::MacroAssemblerARMv7::store32):
3262 (JSC::MacroAssemblerARMv7::loadDouble):
3263 (JSC::MacroAssemblerARMv7::storeDouble):
3264 (JSC::MacroAssemblerARMv7::push):
3265 (JSC::MacroAssemblerARMv7::move):
3266 (JSC::MacroAssemblerARMv7::compare32):
3267 (JSC::MacroAssemblerARMv7::test32):
3268 (JSC::MacroAssemblerARMv7::branch32):
3269 (JSC::MacroAssemblerARMv7::branch32WithUnalignedHalfWords):
3270 (JSC::MacroAssemblerARMv7::branch16):
3271 (JSC::MacroAssemblerARMv7::branch8):
3272 (JSC::MacroAssemblerARMv7::branchTest32):
3273 (JSC::MacroAssemblerARMv7::branchTest8):
3274 (JSC::MacroAssemblerARMv7::branchAdd32):
3275 (JSC::MacroAssemblerARMv7::branchMul32):
3276 (JSC::MacroAssemblerARMv7::branchSub32):
3277 (JSC::MacroAssemblerARMv7::nearCall):
3278 (JSC::MacroAssemblerARMv7::call):
3279 (JSC::MacroAssemblerARMv7::set32Compare32):
3280 (JSC::MacroAssemblerARMv7::set8Compare32):
3281 (JSC::MacroAssemblerARMv7::set32Test32):
3282 (JSC::MacroAssemblerARMv7::set32Test8):
3283 (JSC::MacroAssemblerARMv7::moveWithPatch):
3284 (JSC::MacroAssemblerARMv7::branchPtrWithPatch):
3285 (JSC::MacroAssemblerARMv7::storePtrWithPatch):
3286 (JSC::MacroAssemblerARMv7::tailRecursiveCall):
3287 (JSC::MacroAssemblerARMv7::makeJump):
3288 (JSC::MacroAssemblerARMv7::makeBranch):
3289 (JSC::MacroAssemblerARMv7::setupArmAddress):
3290 (JSC::MacroAssemblerARMv7::makeBaseIndexBase):
3291 (JSC::MacroAssemblerARMv7::moveFixedWidthEncoding):
3293 (JSC::MacroAssemblerMIPS::add32):
3294 (JSC::MacroAssemblerMIPS::and32):
3295 (JSC::MacroAssemblerMIPS::lshift32):
3296 (JSC::MacroAssemblerMIPS::mul32):
3297 (JSC::MacroAssemblerMIPS::or32):
3298 (JSC::MacroAssemblerMIPS::rshift32):
3299 (JSC::MacroAssemblerMIPS::urshift32):
3300 (JSC::MacroAssemblerMIPS::sub32):
3301 (JSC::MacroAssemblerMIPS::xor32):
3302 (JSC::MacroAssemblerMIPS::load32):
3303 (JSC::MacroAssemblerMIPS::load32WithAddressOffsetPatch):
3304 (JSC::MacroAssemblerMIPS::store32WithAddressOffsetPatch):
3305 (JSC::MacroAssemblerMIPS::store32):
3306 (JSC::MacroAssemblerMIPS::push):
3307 (JSC::MacroAssemblerMIPS::move):
3308 (JSC::MacroAssemblerMIPS::branch8):
3309 (JSC::MacroAssemblerMIPS::branch32):
3310 (JSC::MacroAssemblerMIPS::branch32WithUnalignedHalfWords):
3311 (JSC::MacroAssemblerMIPS::branch16):
3312 (JSC::MacroAssemblerMIPS::branchTest32):
3313 (JSC::MacroAssemblerMIPS::branchTest8):
3314 (JSC::MacroAssemblerMIPS::branchAdd32):
3315 (JSC::MacroAssemblerMIPS::branchMul32):
3316 (JSC::MacroAssemblerMIPS::branchSub32):
3317 (JSC::MacroAssemblerMIPS::set8Compare32):
3318 (JSC::MacroAssemblerMIPS::set32Compare32):
3319 (JSC::MacroAssemblerMIPS::set32Test8):
3320 (JSC::MacroAssemblerMIPS::set32Test32):
3321 (JSC::MacroAssemblerMIPS::moveWithPatch):
3322 (JSC::MacroAssemblerMIPS::branchPtrWithPatch):
3323 (JSC::MacroAssemblerMIPS::storePtrWithPatch):
3324 (JSC::MacroAssemblerMIPS::tailRecursiveCall):
3325 (JSC::MacroAssemblerMIPS::loadDouble):
3326 (JSC::MacroAssemblerMIPS::storeDouble):
3327 (JSC::MacroAssemblerMIPS::branchTruncateDoubleToInt32):
3329 (JSC::MacroAssemblerX86::add32):
3330 (JSC::MacroAssemblerX86::addWithCarry32):
3331 (JSC::MacroAssemblerX86::and32):
3332 (JSC::MacroAssemblerX86::or32):
3333 (JSC::MacroAssemblerX86::sub32):
3334 (JSC::MacroAssemblerX86::store32):
3335 (JSC::MacroAssemblerX86::branch32):
3336 (JSC::MacroAssemblerX86::moveWithPatch):
3337 (JSC::MacroAssemblerX86::branchPtrWithPatch):
3338 (JSC::MacroAssemblerX86::storePtrWithPatch):
3340 (JSC::MacroAssemblerX86Common::add32):
3341 (JSC::MacroAssemblerX86Common::and32):
3342 (JSC::MacroAssemblerX86Common::lshift32):
3343 (JSC::MacroAssemblerX86Common::mul32):
3344 (JSC::MacroAssemblerX86Common::or32):
3345 (JSC::MacroAssemblerX86Common::rshift32):
3346 (JSC::MacroAssemblerX86Common::urshift32):
3347 (JSC::MacroAssemblerX86Common::sub32):
3348 (JSC::MacroAssemblerX86Common::xor32):
3349 (JSC::MacroAssemblerX86Common::store32):
3350 (JSC::MacroAssemblerX86Common::branchTruncateDoubleToInt32):
3351 (JSC::MacroAssemblerX86Common::push):
3352 (JSC::MacroAssemblerX86Common::move):
3353 (JSC::MacroAssemblerX86Common::branch8):
3354 (JSC::MacroAssemblerX86Common::branch32):
3355 (JSC::MacroAssemblerX86Common::branch32WithUnalignedHalfWords):
3356 (JSC::MacroAssemblerX86Common::branch16):
3357 (JSC::MacroAssemblerX86Common::branchTest32):
3358 (JSC::MacroAssemblerX86Common::branchTest8):
3359 (JSC::MacroAssemblerX86Common::branchAdd32):
3360 (JSC::MacroAssemblerX86Common::branchMul32):
3361 (JSC::MacroAssemblerX86Common::branchSub32):
3362 (JSC::MacroAssemblerX86Common::set8Compare32):
3363 (JSC::MacroAssemblerX86Common::set32Compare32):
3364 (JSC::MacroAssemblerX86Common::set32Test8):
3365 (JSC::MacroAssemblerX86Common::set32Test32):
3367 (JSC::MacroAssemblerX86_64::add32):
3368 (JSC::MacroAssemblerX86_64::and32):
3369 (JSC::MacroAssemblerX86_64::or32):
3370 (JSC::MacroAssemblerX86_64::sub32):
3371 (JSC::MacroAssemblerX86_64::loadDouble):
3372 (JSC::MacroAssemblerX86_64::addDouble):
3373 (JSC::MacroAssemblerX86_64::convertInt32ToDouble):
3374 (JSC::MacroAssemblerX86_64::store32):
3375 (JSC::MacroAssemblerX86_64::call):
3376 (JSC::MacroAssemblerX86_64::tailRecursiveCall):
3377 (JSC::MacroAssemblerX86_64::makeTailRecursiveCall):
3378 (JSC::MacroAssemblerX86_64::addPtr):
3379 (JSC::MacroAssemblerX86_64::andPtr):
3380 (JSC::MacroAssemblerX86_64::orPtr):
3381 (JSC::MacroAssemblerX86_64::subPtr):
3382 (JSC::MacroAssemblerX86_64::xorPtr):
3383 (JSC::MacroAssemblerX86_64::storePtr):
3384 (JSC::MacroAssemblerX86_64::setPtr):
3385 (JSC::MacroAssemblerX86_64::branchPtr):
3386 (JSC::MacroAssemblerX86_64::branchTestPtr):
3387 (JSC::MacroAssemblerX86_64::branchSubPtr):
3388 (JSC::MacroAssemblerX86_64::moveWithPatch):
3389 (JSC::MacroAssemblerX86_64::branchPtrWithPatch):
3390 (JSC::MacroAssemblerX86_64::storePtrWithPatch):
3391 (JSC::MacroAssemblerX86_64::branchTest8):
3393 (JSC::DFG::JITCodeGenerator::callOperation):
3395 (JSC::DFG::JITCompiler::jitAssertIsInt32):
3396 (JSC::DFG::JITCompiler::emitCount):
3398 (JSC::DFG::JITCompiler::emitPutImmediateToCallFrameHeader):
3400 (JSC::DFG::NonSpeculativeJIT::compile):
3402 (JSC::DFG::SpeculativeJIT::fillSpeculateCell):
3403 (JSC::DFG::SpeculativeJIT::compile):
3405 (JSC::JIT::emitTimeoutCheck):
3406 (JSC::JIT::privateCompile):
3409 (JSC::JIT::emit_op_urshift):
3410 (JSC::JIT::emitSlow_op_urshift):
3411 (JSC::JIT::emit_op_post_inc):
3412 (JSC::JIT::emit_op_post_dec):
3413 (JSC::JIT::emit_op_pre_inc):
3414 (JSC::JIT::emit_op_pre_dec):
3415 (JSC::JIT::emit_op_mod):
3417 (JSC::JIT::emit_op_negate):
3418 (JSC::JIT::emit_op_jnless):
3419 (JSC::JIT::emit_op_jless):
3420 (JSC::JIT::emit_op_jlesseq):
3421 (JSC::JIT::emit_op_lshift):
3422 (JSC::JIT::emitRightShift):
3423 (JSC::JIT::emitRightShiftSlowCase):
3424 (JSC::JIT::emit_op_bitand):
3425 (JSC::JIT::emit_op_bitor):
3426 (JSC::JIT::emit_op_bitxor):
3427 (JSC::JIT::emit_op_bitnot):
3428 (JSC::JIT::emit_op_post_inc):
3429 (JSC::JIT::emit_op_post_dec):
3430 (JSC::JIT::emitSlow_op_post_dec):
3431 (JSC::JIT::emit_op_pre_inc):
3432 (JSC::JIT::emit_op_pre_dec):
3433 (JSC::JIT::emit_op_add):
3434 (JSC::JIT::emitAdd32Constant):
3435 (JSC::JIT::emit_op_sub):
3436 (JSC::JIT::emitSub32Constant):
3437 (JSC::JIT::emitBinaryDoubleOp):
3438 (JSC::JIT::emit_op_mul):
3439 (JSC::JIT::emitSlow_op_mul):
3440 (JSC::JIT::emit_op_div):
3441 (JSC::JIT::emit_op_mod):
3443 (JSC::JIT::compileOpCallVarargs):
3444 (JSC::JIT::compileOpCall):
3445 (JSC::JIT::compileOpCallSlowCase):
3447 (JSC::JIT::compileOpCallVarargs):
3448 (JSC::JIT::emit_op_ret_object_or_this):
3449 (JSC::JIT::compileOpCall):
3450 (JSC::JIT::compileOpCallSlowCase):
3452 (JSC::JIT::emitPutCellToCallFrameHeader):
3453 (JSC::JIT::emitPutIntToCallFrameHeader):
3454 (JSC::JIT::emitPutImmediateToCallFrameHeader):
3455 (JSC::JIT::emitLoadCharacterString):
3456 (JSC::JIT::restoreArgumentReferenceForTrampoline):
3457 (JSC::JIT::checkStructure):
3458 (JSC::JIT::setSamplingFlag):
3459 (JSC::JIT::clearSamplingFlag):
3460 (JSC::JIT::emitCount):
3461 (JSC::JIT::sampleInstruction):
3462 (JSC::JIT::sampleCodeBlock):
3463 (JSC::JIT::emitStoreInt32):
3464 (JSC::JIT::emitStoreCell):
3465 (JSC::JIT::emitStoreBool):
3466 (JSC::JIT::emitJumpSlowCaseIfNotJSCell):
3467 (JSC::JIT::emitInitRegister):
3468 (JSC::JIT::emitJumpIfJSCell):
3469 (JSC::JIT::emitJumpIfNotJSCell):
3470 (JSC::JIT::emitJumpIfImmediateInteger):
3471 (JSC::JIT::emitJumpIfNotImmediateInteger):
3472 (JSC::JIT::emitFastArithDeTagImmediate):
3473 (JSC::JIT::emitFastArithDeTagImmediateJumpIfZero):
3474 (JSC::JIT::emitFastArithReTagImmediate):
3475 (JSC::JIT::emitTagAsBoolImmediate):
3477 (JSC::JIT::privateCompileCTIMachineTrampolines):
3478 (JSC::JIT::privateCompileCTINativeCall):
3479 (JSC::JIT::emit_op_check_has_instance):
3480 (JSC::JIT::emit_op_instanceof):
3481 (JSC::JIT::emit_op_ret_object_or_this):
3482 (JSC::JIT::emit_op_resolve):
3483 (JSC::JIT::emit_op_to_primitive):
3484 (JSC::JIT::emit_op_resolve_base):
3485 (JSC::JIT::emit_op_ensure_property_exists):
3486 (JSC::JIT::emit_op_resolve_skip):
3487 (JSC::JIT::emit_op_resolve_global):
3488 (JSC::JIT::emitSlow_op_resolve_global):
3489 (JSC::JIT::emit_op_not):
3490 (JSC::JIT::emit_op_jfalse):
3491 (JSC::JIT::emit_op_jeq_null):
3492 (JSC::JIT::emit_op_jneq_null):
3493 (JSC::JIT::emit_op_jneq_ptr):
3494 (JSC::JIT::emit_op_jsr):
3495 (JSC::JIT::emit_op_resolve_with_base):
3496 (JSC::JIT::emit_op_new_func_exp):
3497 (JSC::JIT::emit_op_jtrue):
3498 (JSC::JIT::emit_op_get_pnames):
3499 (JSC::JIT::emit_op_next_pname):
3500 (JSC::JIT::emit_op_to_jsnumber):
3501 (JSC::JIT::emit_op_push_new_scope):
3502 (JSC::JIT::emit_op_catch):
3503 (JSC::JIT::emit_op_eq_null):
3504 (JSC::JIT::emit_op_neq_null):
3505 (JSC::JIT::emit_op_init_lazy_reg):
3506 (JSC::JIT::emit_op_convert_this):
3507 (JSC::JIT::emit_op_convert_this_strict):
3508 (JSC::JIT::emitSlow_op_not):
3509 (JSC::JIT::emitSlow_op_neq):
3510 (JSC::JIT::emit_op_get_arguments_length):
3511 (JSC::JIT::emitSlow_op_get_arguments_length):
3512 (JSC::JIT::emit_op_get_argument_by_val):
3513 (JSC::JIT::emitSlow_op_resolve_global_dynamic):
3514 (JSC::JIT::emit_op_new_regexp):
3515 (JSC::JIT::emit_op_load_varargs):
3516 (JSC::JIT::emitSlow_op_load_varargs):
3517 (JSC::JIT::emit_op_new_func):
3519 (JSC::JIT::privateCompileCTIMachineTrampolines):
3520 (JSC::JIT::privateCompileCTINativeCall):
3521 (JSC::JIT::emit_op_loop_if_lesseq):
3522 (JSC::JIT::emit_op_check_has_instance):
3523 (JSC::JIT::emit_op_instanceof):
3524 (JSC::JIT::emit_op_get_scoped_var):
3525 (JSC::JIT::emit_op_put_scoped_var):
3526 (JSC::JIT::emit_op_tear_off_activation):
3527 (JSC::JIT::emit_op_tear_off_arguments):
3528 (JSC::JIT::emit_op_resolve):
3529 (JSC::JIT::emit_op_to_primitive):
3530 (JSC::JIT::emit_op_resolve_base):
3531 (JSC::JIT::emit_op_ensure_property_exists):
3532 (JSC::JIT::emit_op_resolve_skip):
3533 (JSC::JIT::emit_op_resolve_global):
3534 (JSC::JIT::emitSlow_op_resolve_global):
3535 (JSC::JIT::emit_op_not):
3536 (JSC::JIT::emit_op_jfalse):
3537 (JSC::JIT::emit_op_jtrue):
3538 (JSC::JIT::emit_op_jeq_null):
3539 (JSC::JIT::emit_op_jneq_null):
3540 (JSC::JIT::emit_op_jneq_ptr):
3541 (JSC::JIT::emit_op_jsr):
3542 (JSC::JIT::emit_op_eq):
3543 (JSC::JIT::emitSlow_op_eq):
3544 (JSC::JIT::emit_op_neq):
3545 (JSC::JIT::emitSlow_op_neq):
3546 (JSC::JIT::compileOpStrictEq):
3547 (JSC::JIT::emit_op_eq_null):
3548 (JSC::JIT::emit_op_neq_null):
3549 (JSC::JIT::emit_op_resolve_with_base):
3550 (JSC::JIT::emit_op_new_func_exp):
3551 (JSC::JIT::emit_op_get_pnames):
3552 (JSC::JIT::emit_op_next_pname):
3553 (JSC::JIT::emit_op_to_jsnumber):
3554 (JSC::JIT::emit_op_push_new_scope):
3555 (JSC::JIT::emit_op_catch):
3556 (JSC::JIT::emit_op_create_activation):
3557 (JSC::JIT::emit_op_create_arguments):
3558 (JSC::JIT::emit_op_convert_this):
3559 (JSC::JIT::emit_op_convert_this_strict):
3560 (JSC::JIT::emit_op_get_arguments_length):
3561 (JSC::JIT::emitSlow_op_get_arguments_length):
3562 (JSC::JIT::emit_op_get_argument_by_val):
3563 (JSC::JIT::softModulo):
3565 (JSC::JIT::stringGetByValStubGenerator):
3566 (JSC::JIT::emit_op_get_by_val):
3567 (JSC::JIT::emitSlow_op_get_by_val):
3568 (JSC::JIT::emit_op_get_by_pname):
3569 (JSC::JIT::emit_op_put_by_val):
3570 (JSC::JIT::emit_op_put_by_index):
3571 (JSC::JIT::emit_op_put_getter):
3572 (JSC::JIT::emit_op_put_setter):
3573 (JSC::JIT::emit_op_del_by_id):
3574 (JSC::JIT::emit_op_get_by_id):
3575 (JSC::JIT::emit_op_put_by_id):
3576 (JSC::JIT::emit_op_method_check):
3577 (JSC::JIT::compileGetByIdHotPath):
3578 (JSC::JIT::compileGetByIdSlowCase):
3579 (JSC::JIT::emitSlow_op_put_by_id):
3580 (JSC::JIT::testPrototype):
3581 (JSC::JIT::privateCompilePutByIdTransition):
3582 (JSC::JIT::privateCompilePatchGetArrayLength):
3583 (JSC::JIT::privateCompileGetByIdProto):
3584 (JSC::JIT::privateCompileGetByIdSelfList):
3585 (JSC::JIT::privateCompileGetByIdProtoList):
3586 (JSC::JIT::privateCompileGetByIdChainList):
3587 (JSC::JIT::privateCompileGetByIdChain):
3589 (JSC::JIT::emit_op_put_getter):
3590 (JSC::JIT::emit_op_put_setter):
3591 (JSC::JIT::emit_op_del_by_id):
3592 (JSC::JIT::emit_op_get_by_id):
3593 (JSC::JIT::emit_op_put_by_id):
3594 (JSC::JIT::emit_op_method_check):
3595 (JSC::JIT::stringGetByValStubGenerator):
3596 (JSC::JIT::emit_op_get_by_val):
3597 (JSC::JIT::emitSlow_op_get_by_val):
3598 (JSC::JIT::emit_op_put_by_val):
3599 (JSC::JIT::compileGetByIdHotPath):
3600 (JSC::JIT::compileGetByIdSlowCase):
3601 (JSC::JIT::emitSlow_op_put_by_id):
3602 (JSC::JIT::testPrototype):
3603 (JSC::JIT::privateCompilePutByIdTransition):
3604 (JSC::JIT::privateCompilePatchGetArrayLength):
3605 (JSC::JIT::privateCompileGetByIdProto):
3606 (JSC::JIT::privateCompileGetByIdSelfList):
3607 (JSC::JIT::privateCompileGetByIdProtoList):
3608 (JSC::JIT::privateCompileGetByIdChainList):
3609 (JSC::JIT::privateCompileGetByIdChain):
3610 (JSC::JIT::emit_op_get_by_pname):
3612 (JSC::JITStubCall::addArgument):
3614 (JSC::getPolymorphicAccessStructureListSlot):
3615 (JSC::DEFINE_STUB_FUNCTION):
3617 (JSC::JSInterfaceJIT::emitJumpIfNotJSCell):
3618 (JSC::JSInterfaceJIT::emitLoadInt32):
3619 (JSC::JSInterfaceJIT::emitLoadDouble):
3621 (JSC::SpecializedThunkJIT::SpecializedThunkJIT):
3622 (JSC::SpecializedThunkJIT::loadJSStringArgument):
3623 (JSC::SpecializedThunkJIT::tagReturnAsInt32):
3624 (JSC::SpecializedThunkJIT::tagReturnAsJSCell):
3626 (JSC::charToString):
3627 (JSC::powThunkGenerator):
3629 (JSC::Yarr::YarrGenerator::matchCharacterClass):
3630 (JSC::Yarr::YarrGenerator::storeToFrame):
3631 (JSC::Yarr::YarrGenerator::storeToFrameWithPatch):
3632 (JSC::Yarr::YarrGenerator::ParenthesesTail::generateCode):
3633 (JSC::Yarr::YarrGenerator::generatePatternCharacterSingle):
3634 (JSC::Yarr::YarrGenerator::generatePatternCharacterFixed):
3635 (JSC::Yarr::YarrGenerator::generatePatternCharacterGreedy):
3636 (JSC::Yarr::YarrGenerator::generatePatternCharacterNonGreedy):
3637 (JSC::Yarr::YarrGenerator::generateCharacterClassFixed):
3638 (JSC::Yarr::YarrGenerator::generateCharacterClassGreedy):
3639 (JSC::Yarr::YarrGenerator::generateCharacterClassNonGreedy):
3640 (JSC::Yarr::YarrGenerator::generateParenthesesSingle):
3641 (JSC::Yarr::YarrGenerator::generateDisjunction):
3673 (JSC::JSObject::defineOwnProperty):
3683 (JSC::JSActivation::symbolTableGet):
3684 (JSC::JSActivation::symbolTablePut):
3685 (JSC::JSActivation::getOwnPropertyNames):
3686 (JSC::JSActivation::symbolTablePutWithAttributes):
3704 (JSC::JSActivation::copyRegisters): Use our own data members instead of
3708 (JSC::JSActivation::JSActivation): Initialize our data members.
3710 (JSC::JSActivation::markChildren):
3711 (JSC::JSActivation::symbolTableGet):
3712 (JSC::JSActivation::symbolTablePut):
3713 (JSC::JSActivation::getOwnPropertyNames):
3714 (JSC::JSActivation::symbolTablePutWithAttributes):
3715 (JSC::JSActivation::isDynamicScope):
3716 (JSC::JSActivation::argumentsGetter): Use our own data members instead of
3727 JSC::createStackOverflowError(JSC::ExecState*) was originally
3794 (JSC::evaluateInGlobalCallFrame):
3796 (JSC::DebuggerCallFrame::evaluate): Removed explicit compilation calls
3801 (JSC::CachedCall::CachedCall): Updated for signature change.
3804 (JSC::Interpreter::execute):
3805 (JSC::Interpreter::executeCall):
3806 (JSC::Interpreter::executeConstruct): Declare our dynamic global object
3810 (JSC::evaluate): Removed explicit compilation calls here because (a)
3815 (JSC::EvalExecutable::compile):
3816 (JSC::ProgramExecutable::compile):
3817 (JSC::FunctionExecutable::compileForCall):
3818 (JSC::FunctionExecutable::compileForConstruct): Added an ASSERT to
3823 (JSC::DynamicGlobalObjectScope::DynamicGlobalObjectScope):
4030 (JSC::DFG::parse):
4032 (JSC::DFG::GenerationInfo::setSpilled):
4034 (JSC::DFG::Graph::dump):
4037 (JSC::DFG::JITCodeGenerator::setupStubArguments):
4039 (JSC::DFG::JITCompiler::compileFunction):
4045 (JSC::DFG::RegisterBank::allocate):
4047 (JSC::DFG::ScoreBoard::~ScoreBoard):
4048 (JSC::DFG::ScoreBoard::allocate):
4050 (JSC::DFG::SpeculativeJIT::compile):
4168 (JSC::AssemblerBuffer::putIntegral):
4169 (JSC::AssemblerBuffer::putIntegralUnchecked):
4235 (JSC::CallIdentifier::Hash::hash):
4237 (JSC::IdentifierCStringTranslator::hash):
4238 (JSC::IdentifierUCharBufferTranslator::hash):
4253 [GTK] JSC crashes in 32bit Release bots after r80743
4260 (JSC::ProfileGenerator::create):
4261 (JSC::ProfileGenerator::ProfileGenerator):
4262 (JSC::ProfileGenerator::willExecute):
4263 (JSC::ProfileGenerator::didExecute):
4265 (JSC::ProfileGenerator::origin): Made ExecState* the first argument,
4266 to match the rest of this class and JSC.
4274 (JSC::Profiler::startProfiling): Updated for change to JSGlobalObject*.
4275 (JSC::Profiler::stopProfiling): New function for stopping all profiles
4279 (JSC::dispatchFunctionToProfiles): Updated for change to JSGlobalObject*.
4283 (JSC::JSGlobalObject::~JSGlobalObject): Ditto.
4293 (JSC::EvalExecutable::EvalExecutable):
4294 (JSC::ProgramExecutable::ProgramExecutable):
4295 (JSC::FunctionExecutable::FunctionExecutable):
4297 (JSC::ExecutableBase::ExecutableBase):
4298 (JSC::NativeExecutable::NativeExecutable):
4299 (JSC::VPtrHackExecutable::VPtrHackExecutable):
4300 (JSC::ScriptExecutable::ScriptExecutable): Use a raw pointer instead of
4312 (JSC::PropertyTable::~PropertyTable): DEref!
4318 Crash in JSC::MarkStack::drain Under Stress
4335 (JSC::BytecodeGenerator::BytecodeGenerator):
4337 (JSC::JSGlobalObject::resizeRegisters):
4347 (JSC::JSGlobalData::storeVPtrs): Take local ownership of the Structure
4357 (JSC::MacroAssemblerX86Common::branchTest8):
4359 (JSC::X86Assembler::testb_rr):
4371 (JSC::getCallReturnOffset):
4372 (JSC::CodeBlock::getStubInfo):
4373 (JSC::CodeBlock::getCallLinkInfo):
4374 (JSC::CodeBlock::getMethodCallLinkInfo):
4375 (JSC::CodeBlock::bytecodeOffset):
4378 (JSC::DFG::ByteCodeParser::ByteCodeParser):
4379 (JSC::DFG::ByteCodeParser::parse):
4380 (JSC::DFG::parse):
4385 (JSC::DFG::Graph::dump):
4388 (JSC::DFG::JITCodeGenerator::JITCodeGenerator):
4391 (JSC::DFG::NonSpeculativeJIT::compile):
4395 (JSC::DFG::operationConvertThis):
4399 (JSC::DFG::SpeculativeJIT::compile):
4403 (JSC::tryDFGCompile):
4416 (JSC::JSGlobalData::storeVPtrs):
4427 (JSC::JSGlobalData::storeVPtrs): Now that we have an executable, we need
4447 (JSC::CodeBlock::hasGlobalResolveInstructionAtBytecodeOffset):
4448 (JSC::CodeBlock::hasGlobalResolveInfoAtBytecodeOffset):
4450 (JSC::CodeBlock::addPropertyAccessInstruction):
4451 (JSC::CodeBlock::addGlobalResolveInstruction):
4452 (JSC::CodeBlock::addStructureStubInfo):
4456 (JSC::BytecodeGenerator::emitResolve):
4457 (JSC::BytecodeGenerator::emitResolveWithBase):
4458 (JSC::BytecodeGenerator::emitGetById):
4459 (JSC::BytecodeGenerator::emitPutById):
4460 (JSC::BytecodeGenerator::emitDirectPutById):
4461 (JSC::BytecodeGenerator::emitCall):
4462 (JSC::BytecodeGenerator::emitConstruct):
4463 (JSC::BytecodeGenerator::emitCatch):
4491 (JSC::Interpreter::privateExecute): Added globalData to inheritorID().
4498 (JSC::Interpreter::resolve):
4499 (JSC::Interpreter::resolveSkip):
4500 (JSC::Interpreter::resolveGlobal):
4501 (JSC::Interpreter::resolveGlobalDynamic):
4502 (JSC::Interpreter::resolveBaseAndProperty):
4503 (JSC::Interpreter::privateExecute):
4540 (JSC::MacroAssemblerMIPS::load32):
4541 (JSC::MacroAssemblerMIPS::store32):
4555 (JSC::CodeBlock::shrinkToFit):
4557 (JSC::CallLinkInfo::CallLinkInfo):
4559 (JSC::JIT::linkCall):
4560 (JSC::JIT::linkConstruct):
4573 (JSC::JSCallbackConstructor::createStructure):
4575 (JSC::JSCallbackFunction::createStructure):
4577 (JSC::JSCallbackObject::createStructure):
4581 (JSC::DebuggerActivation::DebuggerActivation):
4583 (JSC::DebuggerActivation::createStructure):
4585 (JSC::DEFINE_STUB_FUNCTION):
4591 (JSC::Arguments::createStructure):
4593 (JSC::ArrayPrototype::createStructure):
4595 (JSC::BooleanObject::createStructure):
4597 (JSC::DateInstance::createStructure):
4599 (JSC::DatePrototype::createStructure):
4601 (JSC::ErrorInstance::createStructure):
4603 (JSC::ExecutableBase::createStructure):
4604 (JSC::EvalExecutable::createStructure):
4605 (JSC::ProgramExecutable::createStructure):
4606 (JSC::FunctionExecutable::createStructure):
4608 (JSC::FunctionPrototype::createStructure):
4610 (JSC::GetterSetter::createStructure):
4612 (JSC::InternalFunction::createStructure):
4614 (JSC::JSAPIValueWrapper::createStructure):
4616 (JSC::JSActivation::createStructure):
4618 (JSC::JSArray::JSArray):
4620 (JSC::JSArray::createStructure):
4622 (JSC::JSByteArray::createStructure):
4624 (JSC::JSByteArray::JSByteArray):
4626 (JSC::JSCell::JSCell::createDummyStructure):
4628 (JSC::JSFunction::createStructure):
4630 (JSC::JSGlobalData::storeVPtrs):
4631 (JSC::JSGlobalData::JSGlobalData):
4633 (JSC::JSGlobalObject::reset):
4635 (JSC::JSGlobalObject::JSGlobalObject):
4636 (JSC::JSGlobalObject::createStructure):
4638 (JSC::JSNotAnObject::createStructure):
4640 (JSC::JSONObject::createStructure):
4642 (JSC::JSObject::createInheritorID):
4644 (JSC::JSObject::createStructure):
4645 (JSC::JSNonFinalObject::createStructure):
4646 (JSC::JSFinalObject::createStructure):
4647 (JSC::createEmptyObjectStructure):
4648 (JSC::JSObject::inheritorID):
4650 (JSC::JSObjectWithGlobalObject::createStructure):
4652 (JSC::JSPropertyNameIterator::createStructure):
4654 (JSC::JSStaticScopeObject::createStructure):
4656 (JSC::RopeBuilder::createStructure):
4658 (JSC::JSVariableObject::createStructure):
4660 (JSC::JSWrapperObject::createStructure):
4662 (JSC::JSZombie::createStructure):
4664 (JSC::MathObject::createStructure):
4666 (JSC::NativeErrorConstructor::NativeErrorConstructor):
4668 (JSC::NativeErrorConstructor::createStructure):
4670 (JSC::NumberConstructor::createStructure):
4672 (JSC::NumberObject::createStructure):
4674 (JSC::ObjectConstructor::createStructure):
4676 (JSC::RegExpConstructor::createStructure):
4678 (JSC::RegExpObject::createStructure):
4680 (JSC::ScopeChainNode::createStructure):
4682 (JSC::StringObject::createStructure):
4684 (JSC::StringObjectThatMasqueradesAsUndefined::createStructure):
4686 (JSC::StringPrototype::createStructure):
4688 (JSC::Structure::create):
4700 (JSC::RegisterFile::gatherConservativeRoots):
4708 (JSC::ConservativeRoots::add):
4712 (JSC::Heap::markRoots): Separated machine stack conservative roots from
4722 (JSC::MachineThreads::gatherFromCurrentThread):
4723 (JSC::MachineThreads::gatherConservativeRoots):
4727 (JSC::MarkedBlock::firstAtom):
4746 (JSC::MarkStack::markChildren):
4747 (JSC::MarkStack::drain): ...to here. Also, no need to inline drain. It's
4751 (JSC::MarkStack::~MarkStack): Moved near constructor, per style guide.
4752 (JSC::MarkStack::append):
4753 (JSC::MarkStack::deprecatedAppend):
4754 (JSC::MarkStack::internalAppend): Moved to here.
4764 (JSC::HandleHeap::markStrongHandles):
4769 (JSC::Heap::markRoots): Ditto.
4779 (JSC::HandleStack::mark):
4784 (JSC::MarkedArgumentBuffer::markLists):
4785 (JSC::MarkedArgumentBuffer::slowAppend):
4789 (JSC::Heap::markRoots): Added a mark call for marking the handle stack.
4795 (JSC::MarkStack::append): Added a private append for a list of values.
4797 (JSC::HeapRootMarker::mark): Access to the above.
4811 (JSC::evaluateInGlobalCallFrame):
4813 (JSC::DebuggerCallFrame::evaluate):
4815 (JSC::ExecState::exception):
4817 (JSC::DEFINE_STUB_FUNCTION):
4819 (JSC::evaluate): exception is no longer a HeapRoot<T>, so no need to
4823 (JSC::Heap::markProtectedObjects):
4824 (JSC::Heap::markTempSortVectors):
4825 (JSC::Heap::markRoots):
4829 (JSC::JSCell::MarkStack::append): Added private functions for
4835 (JSC::HeapRootMarker::HeapRootMarker):
4836 (JSC::HeapRootMarker::mark): Added private functions for
4840 (JSC::SmallStrings::markChildren): Updated to use HeapRootMarker.
4843 (JSC::SmallStrings::emptyString):
4844 (JSC::SmallStrings::singleCharacterString):
4845 (JSC::SmallStrings::singleCharacterStrings): Updated to use HeapRootMarker.
4859 (JSC::JSGlobalObject::markChildren): Removed a dubious comment that
4889 (JSC::::asObject):
4891 (JSC::HandleStack::HandleStack):
4892 (JSC::HandleStack::mark):
4893 (JSC::HandleStack::grow):
4895 (JSC::HandleStack::enterScope):
4896 (JSC::HandleStack::zapTo):
4897 (JSC::HandleStack::leaveScope):
4898 (JSC::HandleStack::push):
4900 (JSC::Local::internalSet):
4901 (JSC::::Local):
4902 (JSC::::operator):
4903 (JSC::LocalStack::LocalStack):
4904 (JSC::LocalStack::peek):
4905 (JSC::LocalStack::pop):
4906 (JSC::LocalStack::push):
4907 (JSC::LocalStack::isEmpty):
4908 (JSC::LocalStack::size):
4910 (JSC::LocalScope::LocalScope):
4911 (JSC::LocalScope::~LocalScope):
4912 (JSC::LocalScope::release):
4914 (JSC::Heap::markRoots):
4916 (JSC::Heap::allocateLocalHandle):
4917 (JSC::Heap::handleStack):
4919 (JSC::JSCell::::getString):
4921 (JSC::JSGlobalData::JSGlobalData):
4923 (JSC::JSGlobalData::allocateLocalHandle):
4925 (JSC::Stringifier::Stringifier):
4926 (JSC::Stringifier::stringify):
4927 (JSC::Stringifier::appendStringifiedValue):
4928 (JSC::Stringifier::Holder::Holder):
4929 (JSC::Walker::Walker):
4930 (JSC::Walker::walk):
4931 (JSC::JSONProtoFuncParse):
4932 (JSC::JSONProtoFuncStringify):
4933 (JSC::JSONStringify):
4936 (JSC::MarkStack::appendValues):
4937 (JSC::MarkStack::appendSlots):
4948 (JSC::HandlerInfo::HandlerInfo):
4949 (JSC::CodeBlock::addPropertyAccessInfo):
4950 (JSC::CodeBlock::addGlobalResolveInfo):
4951 (JSC::CodeBlock::addCallLinkInfo):
4952 (JSC::CodeBlock::globalResolveInfo):
4956 (JSC::BytecodeGenerator::emitResolve):
4957 (JSC::BytecodeGenerator::emitResolveWithBase):
4958 (JSC::BytecodeGenerator::emitGetById):
4959 (JSC::BytecodeGenerator::emitPutById):
4960 (JSC::BytecodeGenerator::emitDirectPutById):
4961 (JSC::BytecodeGenerator::emitCall):
4962 (JSC::BytecodeGenerator::emitConstruct):
4963 (JSC::BytecodeGenerator::emitCatch):
4972 (JSC::DFG::AliasTracker::recordPutByVal):
5020 (JSC::JSGlobalObject::markChildren): Removed a dubious comment that
5039 (JSC::BooleanObject::BooleanObject):
5041 (JSC::DateInstance::DateInstance): No more need for JSGlobalData, since
5056 (JSC::JSWrapperObject::JSWrapperObject):
5057 (JSC::JSWrapperObject::internalValue):
5058 (JSC::JSWrapperObject::setInternalValue): Resolved a problem where
5065 (JSC::NumberObject::NumberObject): No more need for JSGlobalData, since
5071 (JSC::StringObject::StringObject): No more need for JSGlobalData, since
5097 (JSC::Yarr::Interpreter::matchDisjunction):
5098 (JSC::Yarr::ByteCompiler::uncheckInput):
5099 (JSC::Yarr::ByteCompiler::emitDisjunction):
5101 (JSC::Yarr::ByteTerm::UncheckInput):
5121 The JSC JIT presently generates code directly from the bytecode used by the interpreter.
5213 (JSC::Identifier::add):
5214 (JSC::Identifier::addSlowCase): Use a variable instead of a hard-coded
5221 (JSC::JSString::substringFromRope):
5223 (JSC::jsSingleCharacterString):
5224 (JSC::jsSingleCharacterSubstring):
5225 (JSC::jsString):
5226 (JSC::jsStringWithFinalizer):
5227 (JSC::jsSubstring):
5228 (JSC::jsOwnedString): Use a variable instead of a hard-coded
5232 (JSC::SmallStringsStorage::rep):
5233 (JSC::SmallStringsStorage::SmallStringsStorage):
5234 (JSC::SmallStrings::SmallStrings):
5235 (JSC::SmallStrings::markChildren):
5236 (JSC::SmallStrings::clear):
5237 (JSC::SmallStrings::count): Use a variable instead of a hard-coded
5241 (JSC::SmallStrings::singleCharacterString): Use HeapRoot instead of
5249 (JSC::operator==):
5250 (JSC::WriteBarrier::WriteBarrier):
5251 (JSC::HeapRoot::HeapRoot):
5252 (JSC::HeapRoot::operator=): Added HeapRoot, which is allowed to set
5286 (JSC::JSInterfaceJIT::emitLoadInt32):
5287 (JSC::JSInterfaceJIT::tagFor):
5288 (JSC::JSInterfaceJIT::payloadFor):
5289 (JSC::JSInterfaceJIT::intPayloadFor):
5290 (JSC::JSInterfaceJIT::intTagFor):
5291 (JSC::JSInterfaceJIT::addressFor):
5310 (JSC::Register::withInt):
5311 (JSC::Register::withCallee):
5312 (JSC::Register::operator=):
5313 (JSC::Register::i):
5314 (JSC::Register::activation):
5315 (JSC::Register::function):
5316 (JSC::Register::propertyNameIterator):
5317 (JSC::Register::scopeChain):
5320 (JSC::JIT::compileOpCallInitializeCallFrame):
5321 (JSC::JIT::compileOpCallVarargs):
5322 (JSC::JIT::compileOpCall):
5324 (JSC::JIT::compileOpCallInitializeCallFrame):
5325 (JSC::JIT::compileOpCallVarargs):
5326 (JSC::JIT::compileOpCall):
5327 (JSC::JIT::compileOpCallSlowCase):
5329 (JSC::JIT::emitPutToCallFrameHeader):
5330 (JSC::JIT::emitPutCellToCallFrameHeader):
5331 (JSC::JIT::emitPutIntToCallFrameHeader):
5333 (JSC::JIT::privateCompileCTINativeCall):
5334 (JSC::JIT::emit_op_get_pnames):
5335 (JSC::JIT::emit_op_next_pname):
5336 (JSC::JIT::emit_op_load_varargs):
5337 (JSC::JIT::emitSlow_op_load_varargs):
5339 (JSC::JIT::privateCompileCTINativeCall):
5340 (JSC::JIT::emit_op_get_pnames):
5341 (JSC::JIT::emit_op_next_pname):
5343 (JSC::JSInterfaceJIT::intPayloadFor):
5344 (JSC::JSInterfaceJIT::intTagFor):
5346 (JSC::SpecializedThunkJIT::returnJSValue):
5347 (JSC::SpecializedThunkJIT::returnDouble):
5348 (JSC::SpecializedThunkJIT::returnInt32):
5349 (JSC::SpecializedThunkJIT::returnJSCell):
5362 the fact that this class maintains a set of all threads using JSC.
5378 (JSC::APIEntryShimWithoutLock::APIEntryShimWithoutLock):
5381 (JSC::ConservativeRoots::grow):
5382 (JSC::ConservativeRoots::add):
5384 (JSC::ConservativeRoots::ConservativeRoots):
5385 (JSC::ConservativeRoots::~ConservativeRoots):
5386 (JSC::ConservativeRoots::size):
5387 (JSC::ConservativeRoots::roots):
5389 (JSC::Heap::Heap):
5390 (JSC::Heap::markRoots):
5392 (JSC::Heap::machineThreads):
5394 (JSC::JSGlobalData::makeUsableFromMultipleThreads):
5396 (JSC::MachineThreads::MachineThreads):
5397 (JSC::MachineThreads::~MachineThreads):
5398 (JSC::MachineThreads::makeUsableFromMultipleThreads):
5399 (JSC::MachineThreads::addCurrentThread):
5400 (JSC::MachineThreads::removeThread):
5401 (JSC::MachineThreads::removeCurrentThread):
5402 (JSC::MachineThreads::gatherFromCurrentThreadInternal):
5403 (JSC::MachineThreads::gatherFromCurrentThread):
5404 (JSC::MachineThreads::gatherFromOtherThread):
5405 (JSC::MachineThreads::gatherConservativeRoots):
5408 (JSC::MarkStack::append):
5414 Bug 56270 - The JIT 'friend's many classes in JSC; start unwinding this.
5418 (JSC::MacroAssemblerARMv7::load32): Made void* address argument
5420 (JSC::MacroAssemblerARMv7::store32): Ditto.
5442 (JSC::ConservativeSet::grow):
5444 (JSC::ConservativeSet::~ConservativeSet): Fixed a typo where we calculated
5447 (JSC::ConservativeSet::size):
5448 (JSC::ConservativeSet::set): Use direct pointers, as stated above.
5451 (JSC::Heap::markRoots):
5453 (JSC::MarkStack::append): Created a special case of append for
5468 (JSC::PutPropertySlot::setExistingProperty):
5469 (JSC::PutPropertySlot::setNewProperty):
5470 (JSC::PutPropertySlot::base): Direct pointer is fine for PutPropertySlot,
5494 (JSC::AbstractMacroAssembler::Jump::link):
5495 (JSC::AbstractMacroAssembler::Jump::linkTo):
5497 (JSC::AbstractMacroAssembler::Jump::isSet):
5501 (JSC::FunctionPtr::FunctionPtr):
5504 (JSC::MacroAssemblerX86Common::and32):
5505 (JSC::MacroAssemblerX86Common::lshift32):
5506 (JSC::MacroAssemblerX86Common::or32):
5507 (JSC::MacroAssemblerX86Common::rshift32):
5508 (JSC::MacroAssemblerX86Common::urshift32):
5509 (JSC::MacroAssemblerX86Common::xor32):
5510 (JSC::MacroAssemblerX86Common::moveDouble):
5511 (JSC::MacroAssemblerX86Common::addDouble):
5512 (JSC::MacroAssemblerX86Common::divDouble):
5513 (JSC::MacroAssemblerX86Common::subDouble):
5514 (JSC::MacroAssemblerX86Common::mulDouble):
5515 (JSC::MacroAssemblerX86Common::branchTruncateDoubleToInt32):
5516 (JSC::MacroAssemblerX86Common::branchTest32):
5517 (JSC::MacroAssemblerX86Common::branchTest8):
5518 (JSC::MacroAssemblerX86Common::branchAdd32):
5519 (JSC::MacroAssemblerX86Common::branchMul32):
5520 (JSC::MacroAssemblerX86Common::branchSub32):
5523 (JSC::MacroAssemblerX86_64::addDouble):
5524 (JSC::MacroAssemblerX86_64::convertInt32ToDouble):
5525 (JSC::MacroAssemblerX86_64::loadPtr):
5526 (JSC::MacroAssemblerX86_64::branchTestPtr):
5528 (JSC::X86Assembler::JmpSrc::isSet):
5531 (JSC::X86Assembler::movsd_rr):
5533 (JSC::X86Assembler::linkJump):
5536 (JSC::JIT::emitLoadInt32ToDouble):
5544 (JSC::MacroAssemblerARM::load32):
5550 Bug 56270 - The JIT 'friend's many classes in JSC; start unwinding this.
5600 (JSC::Register::withInt):
5601 (JSC::Register::withCallee):
5602 (JSC::Register::operator=):
5603 (JSC::Register::i):
5604 (JSC::Register::activation):
5605 (JSC::Register::function):
5606 (JSC::Register::propertyNameIterator):
5607 (JSC::Register::scopeChain):
5610 (JSC::JIT::compileOpCallInitializeCallFrame):
5611 (JSC::JIT::compileOpCallVarargs):
5612 (JSC::JIT::compileOpCall):
5614 (JSC::JIT::compileOpCallInitializeCallFrame):
5615 (JSC::JIT::compileOpCallVarargs):
5616 (JSC::JIT::compileOpCall):
5617 (JSC::JIT::compileOpCallSlowCase):
5619 (JSC::JIT::emitPutToCallFrameHeader):
5621 (JSC::JIT::privateCompileCTINativeCall):
5622 (JSC::JIT::emit_op_get_pnames):
5623 (JSC::JIT::emit_op_next_pname):
5624 (JSC::JIT::emit_op_load_varargs):
5625 (JSC::JIT::emitSlow_op_load_varargs):
5627 (JSC::JIT::privateCompileCTINativeCall):
5628 (JSC::JIT::emit_op_get_pnames):
5629 (JSC::JIT::emit_op_next_pname):
5631 (JSC::JSInterfaceJIT::payloadFor):
5633 (JSC::SpecializedThunkJIT::returnJSValue):
5634 (JSC::SpecializedThunkJIT::returnDouble):
5635 (JSC::SpecializedThunkJIT::returnInt32):
5636 (JSC::SpecializedThunkJIT::returnJSCell):
5642 (JSC::asActivation):
5653 (JSC::ExecState::globalThisValue):
5673 (JSC::Register::withInt):
5674 (JSC::Register::withCallee):
5675 (JSC::Register::operator=):
5676 (JSC::Register::i):
5677 (JSC::Register::activation):
5678 (JSC::Register::function):
5679 (JSC::Register::propertyNameIterator):
5680 (JSC::Register::scopeChain):
5683 (JSC::JIT::compileOpCallInitializeCallFrame):
5684 (JSC::JIT::compileOpCallVarargs):
5685 (JSC::JIT::compileOpCall):
5687 (JSC::JIT::compileOpCallInitializeCallFrame):
5688 (JSC::JIT::compileOpCallVarargs):
5689 (JSC::JIT::compileOpCall):
5690 (JSC::JIT::compileOpCallSlowCase):
5692 (JSC::JIT::emitPutToCallFrameHeader):
5693 (JSC::JIT::emitPutCellToCallFrameHeader):
5694 (JSC::JIT::emitPutIntToCallFrameHeader):
5696 (JSC::JIT::privateCompileCTINativeCall):
5697 (JSC::JIT::emit_op_get_pnames):
5698 (JSC::JIT::emit_op_next_pname):
5699 (JSC::JIT::emit_op_load_varargs):
5700 (JSC::JIT::emitSlow_op_load_varargs):
5702 (JSC::JIT::privateCompileCTINativeCall):
5703 (JSC::JIT::emit_op_get_pnames):
5704 (JSC::JIT::emit_op_next_pname):
5706 (JSC::JSInterfaceJIT::intPayloadFor):
5707 (JSC::JSInterfaceJIT::intTagFor):
5709 (JSC::SpecializedThunkJIT::returnJSValue):
5710 (JSC::SpecializedThunkJIT::returnDouble):
5711 (JSC::SpecializedThunkJIT::returnInt32):
5712 (JSC::SpecializedThunkJIT::returnJSCell):
5770 (JSC::HandleHeap::clearWeakPointers):
5772 (JSC::Heap::reset):
5774 (JSC::JSFunction::JSFunction):
5775 (JSC::JSFunction::markChildren):
5777 (JSC::JSValue::decode):
5779 (JSC::JSZombie::leakedZombieStructure):
5781 (JSC::JSZombie::createStructure):
5793 it has its own ways to do JSC threading.
5813 (JSC::RegExpObject::markChildren):
5815 (JSC::regExpObjectLastIndex):
5816 (JSC::setRegExpObjectLastIndex):
5818 (JSC::RegExpObject::match):
5821 (JSC::RegExpObject::setLastIndex):
5822 (JSC::RegExpObject::setLastIndex):
5824 (JSC::RegExpObject::getLastIndex):
5826 (JSC::RegExpObject::RegExpObjectData::RegExpObjectData):
5829 (JSC::RegExpPrototype::RegExpPrototype):
5832 (JSC::stringProtoFuncMatch):
5833 (JSC::stringProtoFuncSearch):
5880 (JSC::CodeBlock::~CodeBlock):
5881 (JSC::CodeBlock::markAggregate):
5883 (JSC::CallLinkInfo::CallLinkInfo):
5884 (JSC::CallLinkInfo::setUnlinked):
5885 (JSC::CodeBlock::addCaller):
5887 (JSC::JIT::privateCompile):
5888 (JSC::JIT::linkCall):
5889 (JSC::JIT::linkConstruct):
5900 …(JSC::Interpreter::privateExecute): Substitute variable callFrame for exec in call to createSyntax…
5912 (JSC::CodeBlock::addRegExp):
5915 (JSC::BytecodeGenerator::addRegExp):
5916 (JSC::BytecodeGenerator::emitNewRegExp):
5920 (JSC::RegExpNode::emitBytecode):
5923 (JSC::Interpreter::privateExecute):
5926 (JSC::DEFINE_STUB_FUNCTION):
5929 (JSC::RegExp::isValid):
5956 (JSC::RegExpNode::emitBytecode):
5959 (JSC::regExpFlags):
5960 (JSC::RegExp::RegExp):
5961 (JSC::RegExp::create):
5964 (JSC::RegExp::global):
5965 (JSC::RegExp::ignoreCase):
5966 (JSC::RegExp::multiline):
5969 (JSC::RegExpCache::lookupOrCreate):
5970 (JSC::RegExpCache::create):
5974 (JSC::constructRegExp):
5977 (JSC::RegExpKey::RegExpKey):
5979 (JSC::RegExpPrototype::RegExpPrototype):
5981 (JSC::regExpProtoFuncCompile):
5984 (JSC::stringProtoFuncMatch):
5985 (JSC::stringProtoFuncSearch):
6001 (JSC::arrayProtoFuncToString):
6002 (JSC::arrayProtoFuncToLocaleString):
6003 (JSC::arrayProtoFuncJoin):
6004 (JSC::arrayProtoFuncPop):
6005 (JSC::arrayProtoFuncPush):
6006 (JSC::arrayProtoFuncReverse):
6007 (JSC::arrayProtoFuncShift):
6008 (JSC::arrayProtoFuncSlice):
6009 (JSC::arrayProtoFuncSort):
6010 (JSC::arrayProtoFuncSplice):
6011 (JSC::arrayProtoFuncUnShift):
6012 (JSC::arrayProtoFuncFilter):
6013 (JSC::arrayProtoFuncMap):
6014 (JSC::arrayProtoFuncEvery):
6015 (JSC::arrayProtoFuncForEach):
6016 (JSC::arrayProtoFuncSome):
6017 (JSC::arrayProtoFuncReduce):
6018 (JSC::arrayProtoFuncReduceRight):
6019 (JSC::arrayProtoFuncIndexOf):
6020 (JSC::arrayProtoFuncLastIndexOf):
6046 (JSC::CodeBlock::dump):
6047 (JSC::CodeBlock::CodeBlock):
6048 (JSC::EvalCodeCache::markAggregate):
6049 (JSC::CodeBlock::markAggregate):
6051 (JSC::CodeBlock::ownerExecutable):
6052 (JSC::CodeBlock::addConstant):
6053 (JSC::CodeBlock::constantRegister):
6054 (JSC::CodeBlock::getConstant):
6055 (JSC::CodeBlock::addFunctionDecl):
6056 (JSC::CodeBlock::addFunctionExpr):
6057 (JSC::GlobalCodeBlock::GlobalCodeBlock):
6058 (JSC::ExecState::r):
6060 (JSC::EvalCodeCache::get):
6062 (JSC::ScriptSampleRecord::ScriptSampleRecord):
6064 (JSC::BytecodeGenerator::addConstantValue):
6065 (JSC::BytecodeGenerator::emitEqualityOp):
6067 (JSC::BytecodeGenerator::makeFunction):
6069 (JSC::evaluateInGlobalCallFrame):
6071 (JSC::DebuggerCallFrame::evaluate):
6073 (JSC::Interpreter::callEval):
6075 (JSC::JIT::emitLoadDouble):
6076 (JSC::JIT::emitLoadInt32ToDouble):
6078 (JSC::JITThunks::JITThunks):
6079 (JSC::JITThunks::hostFunctionStub):
6080 (JSC::JITThunks::clearHostFunctionStubs):
6083 (JSC::checkSyntax):
6084 (JSC::evaluate):
6086 (JSC::EvalExecutable::EvalExecutable):
6087 (JSC::ProgramExecutable::ProgramExecutable):
6088 (JSC::FunctionExecutable::FunctionExecutable):
6089 (JSC::FunctionExecutable::~FunctionExecutable):
6090 (JSC::EvalExecutable::markChildren):
6091 (JSC::ProgramExecutable::markChildren):
6092 (JSC::FunctionExecutable::markChildren):
6093 (JSC::FunctionExecutable::fromGlobalCode):
6095 (JSC::ExecutableBase::ExecutableBase):
6096 (JSC::ExecutableBase::createStructure):
6097 (JSC::NativeExecutable::create):
6098 (JSC::NativeExecutable::NativeExecutable):
6099 (JSC::VPtrHackExecutable::VPtrHackExecutable):
6100 (JSC::ScriptExecutable::ScriptExecutable):
6101 (JSC::EvalExecutable::create):
6102 (JSC::EvalExecutable::createStructure):
6103 (JSC::ProgramExecutable::create):
6104 (JSC::ProgramExecutable::createStructure):
6105 (JSC::FunctionExecutable::create):
6106 (JSC::FunctionExecutable::createStructure):
6108 (JSC::constructFunction):
6110 (JSC::Heap::destroy):
6111 (JSC::Heap::markRoots):
6114 (JSC::JSActivation::JSActivation):
6115 (JSC::JSActivation::markChildren):
6117 (JSC::JSActivation::JSActivationData::JSActivationData):
6120 (JSC::JSFunction::JSFunction):
6121 (JSC::JSFunction::~JSFunction):
6122 (JSC::JSFunction::markChildren):
6125 (JSC::JSGlobalData::storeVPtrs):
6126 (JSC::JSGlobalData::JSGlobalData):
6127 (JSC::JSGlobalData::getHostFunction):
6130 (JSC::globalFuncEval):
6133 (JSC::JSStaticScopeObject::markChildren):
6135 (JSC::JSStaticScopeObject::JSStaticScopeObjectData::JSStaticScopeObjectData):
6136 (JSC::JSStaticScopeObject::JSStaticScopeObject):
6138 (JSC::JSZombie::leakedZombieStructure):
6140 (JSC::JSZombie::createStructure):
6230 (JSC::JSObject::defineOwnProperty):
6240 (JSC::Interpreter::privateExecute):
6296 (JSC::ExecState::objectConstructorTable):
6300 (JSC::JSGlobalData::JSGlobalData):
6301 (JSC::JSGlobalData::~JSGlobalData):
6305 (JSC::JSGlobalObject::reset):
6308 (JSC::JSObject::seal):
6309 (JSC::JSObject::freeze):
6310 (JSC::JSObject::preventExtensions):
6312 (JSC::JSObject::defineOwnProperty):
6315 (JSC::JSObject::isSealed):
6316 (JSC::JSObject::isFrozen):
6317 (JSC::JSObject::isExtensible):
6319 (JSC::JSObject::putDirectInternal):
6322 (JSC::ObjectConstructor::ObjectConstructor):
6323 (JSC::ObjectConstructor::getOwnPropertySlot):
6324 (JSC::ObjectConstructor::getOwnPropertyDescriptor):
6326 (JSC::objectConstructorSeal):
6327 (JSC::objectConstructorFreeze):
6328 (JSC::objectConstructorPreventExtensions):
6329 (JSC::objectConstructorIsSealed):
6330 (JSC::objectConstructorIsFrozen):
6331 (JSC::objectConstructorIsExtensible):
6334 (JSC::ObjectConstructor::createStructure):
6336 (JSC::Structure::Structure):
6338 (JSC::Structure::sealTransition):
6339 (JSC::Structure::freezeTransition):
6340 (JSC::Structure::preventExtensionsTransition):
6342 (JSC::Structure::isSealed):
6343 (JSC::Structure::isFrozen):
6346 (JSC::Structure::isExtensible):
6390 (JSC::JSGlobalObject::copyGlobalsTo): Pass nullptr instead of 0.
6391 … (JSC::JSGlobalObject::resizeRegisters): Ditto; also use OwnArrayPtr instead of a raw pointer.
6393 (JSC::JSGlobalObject::addStaticGlobals): Ditto.
6489 (JSC::Interpreter::unwindCallFrame):
6490 (JSC::Interpreter::privateExecute):
6491 (JSC::Interpreter::retrieveArguments):
6493 (JSC::DEFINE_STUB_FUNCTION):
6495 (JSC::MarkedArgumentBuffer::initialize):
6497 (JSC::Arguments::markChildren):
6498 (JSC::Arguments::copyToRegisters):
6499 (JSC::Arguments::fillArgList):
6500 (JSC::Arguments::getOwnPropertySlot):
6501 (JSC::Arguments::getOwnPropertyDescriptor):
6502 (JSC::Arguments::put):
6504 (JSC::Arguments::setActivation):
6505 (JSC::Arguments::Arguments):
6506 (JSC::Arguments::copyRegisters):
6507 (JSC::JSActivation::copyRegisters):
6509 (JSC::JSActivation::markChildren):
6510 (JSC::JSActivation::symbolTableGet):
6511 (JSC::JSActivation::symbolTablePut):
6512 (JSC::JSActivation::symbolTablePutWithAttributes):
6513 (JSC::JSActivation::put):
6514 (JSC::JSActivation::putWithAttributes):
6515 (JSC::JSActivation::argumentsGetter):
6518 (JSC::JSGlobalObject::put):
6519 (JSC::JSGlobalObject::putWithAttributes):
6520 (JSC::JSGlobalObject::markChildren):
6521 (JSC::JSGlobalObject::copyGlobalsFrom):
6522 (JSC::JSGlobalObject::copyGlobalsTo):
6523 (JSC::JSGlobalObject::resizeRegisters):
6525 (JSC::JSGlobalObject::setRegisters):
6526 (JSC::JSGlobalObject::addStaticGlobals):
6528 (JSC::JSStaticScopeObject::put):
6529 (JSC::JSStaticScopeObject::putWithAttributes):
6531 (JSC::JSVariableObject::symbolTableGet):
6533 (JSC::JSVariableObject::registerAt):
6534 (JSC::JSVariableObject::JSVariableObjectData::JSVariableObjectData):
6535 (JSC::JSVariableObject::symbolTableGet):
6536 (JSC::JSVariableObject::symbolTablePut):
6537 (JSC::JSVariableObject::symbolTablePutWithAttributes):
6538 (JSC::JSVariableObject::copyRegisterArray):
6539 (JSC::JSVariableObject::setRegisters):
6548 (JSC::JSStaticScopeObject::getOwnPropertySlot): Don't mark this function
6565 (JSC::JSCell::MarkedSpace::sizeClassFor): Added an imprecise size class
6579 (JSC::MarkedSpace::MarkedSpace):
6580 (JSC::MarkedSpace::reset):
6612 (JSC::Yarr::YarrPatternConstructor::setupAlternativeBeginTerms):
6613 (JSC::Yarr::YarrPattern::compile):
6651 (JSC::BytecodeGenerator::BytecodeGenerator):
6653 (JSC::Arguments::getOwnPropertySlot):
6655 (JSC::JSActivation::symbolTableGet):
6657 (JSC::JSGlobalObject::symbolTableHasProperty):
6659 (JSC::JSVariableObject::symbolTableGet):
6771 (JSC::Heap::allocateSlowCase):
6774 (JSC::JSCell::MarkedSpace::sizeClassFor):
6775 (JSC::JSCell::Heap::allocate):
6776 (JSC::JSCell::JSCell::operator new):
6779 (JSC::MarkedSpace::MarkedSpace):
6780 (JSC::MarkedSpace::allocateBlock):
6781 (JSC::MarkedSpace::reset):
6783 (JSC::MarkedSpace::SizeClass::SizeClass):
6816 (JSC::Yarr::YarrPattern::compile):
6855 (JSC::JSGlobalData::JSGlobalData): Use the right structure.
6858 (JSC::JSNonFinalObject::JSNonFinalObject):
6859 (JSC::JSFinalObject::JSFinalObject): ASSERT that our structure capacity
6924 (JSC::isPowerOf2):
6925 (JSC::nextPowerOf2):
6927 (JSC::PropertyMapEntry::PropertyMapEntry):
6928 (JSC::PropertyTable::ordered_iterator::operator++):
6929 (JSC::PropertyTable::ordered_iterator::operator==):
6930 (JSC::PropertyTable::ordered_iterator::operator!=):
6931 (JSC::PropertyTable::ordered_iterator::operator*):
6932 (JSC::PropertyTable::ordered_iterator::operator->):
6933 (JSC::PropertyTable::ordered_iterator::ordered_iterator):
6935 (JSC::PropertyTable::PropertyTable):
6936 (JSC::PropertyTable::~PropertyTable):
6939 (JSC::PropertyTable::begin):
6940 (JSC::PropertyTable::end):
6942 (JSC::PropertyTable::find):
6944 (JSC::PropertyTable::add):
6946 (JSC::PropertyTable::remove):
6948 (JSC::PropertyTable::size):
6949 (JSC::PropertyTable::isEmpty):
6951 (JSC::PropertyTable::propertyStorageSize):
6952 (JSC::PropertyTable::clearDeletedOffsets):
6953 (JSC::PropertyTable::hasDeletedOffset):
6954 (JSC::PropertyTable::getDeletedOffset):
6955 (JSC::PropertyTable::addDeletedOffset):
6957 (JSC::PropertyTable::copy):
6959 (JSC::PropertyTable::sizeInMemory):
6961 (JSC::PropertyTable::reinsert):
6962 (JSC::PropertyTable::rehash):
6963 (JSC::PropertyTable::tableCapacity):
6964 (JSC::PropertyTable::deletedEntryIndex):
6965 (JSC::PropertyTable::skipDeletedEntries):
6966 (JSC::PropertyTable::table):
6967 (JSC::PropertyTable::usedCount):
6968 (JSC::PropertyTable::dataSize):
6969 (JSC::PropertyTable::sizeForCapacity):
6970 (JSC::PropertyTable::canInsert):
6973 (JSC::Structure::dumpStatistics):
6974 (JSC::Structure::~Structure):
6975 (JSC::Structure::materializePropertyMap):
6976 (JSC::Structure::despecifyDictionaryFunction):
6977 (JSC::Structure::addPropertyTransition):
6978 (JSC::Structure::flattenDictionaryStructure):
6979 (JSC::Structure::copyPropertyTable):
6980 (JSC::Structure::get):
6981 (JSC::Structure::despecifyFunction):
6982 (JSC::Structure::despecifyAllFunctions):
6983 (JSC::Structure::put):
6984 (JSC::Structure::remove):
6985 (JSC::Structure::createPropertyMap):
6986 (JSC::Structure::getPropertyNames):
6987 (JSC::PropertyTable::checkConsistency):
6988 (JSC::Structure::checkConsistency):
6991 (JSC::Structure::propertyStorageSize):
6992 (JSC::Structure::isEmpty):
6993 (JSC::Structure::get):
7003 (JSC::freePlatformThreadRegisters):
7010 (JSC::freePlatformThreadRegisters):
7017 (JSC::freePlatformThreadRegisters):
7032 Multithread support for JSC on UNIX
7039 (JSC::pthreadSignalHandlerSuspendResume):
7040 (JSC::MachineStackMarker::Thread::Thread):
7041 (JSC::getCurrentPlatformThread):
7042 (JSC::suspendThread):
7043 (JSC::resumeThread):
7044 (JSC::getPlatformThreadRegisters):
7045 (JSC::otherThreadStackPointer):
7046 (JSC::freePlatformThreadRegisters):
7047 (JSC::MachineStackMarker::markOtherThreadConservatively):
7064 (JSC::GCRootPtr::GCRootPtr):
7065 (JSC::GCRootPtr::operator=):
7112 (JSC::CodeBlock::createActivation):
7115 (JSC::BytecodeGenerator::generate):
7116 (JSC::BytecodeGenerator::BytecodeGenerator):
7117 (JSC::BytecodeGenerator::emitJumpIfNotFunctionCall):
7118 (JSC::BytecodeGenerator::emitJumpIfNotFunctionApply):
7121 (JSC::Recompiler::operator()):
7123 (JSC::DebuggerCallFrame::scopeChain):
7125 (JSC::CachedCall::CachedCall):
7128 (JSC::depth):
7129 (JSC::Interpreter::unwindCallFrame):
7130 (JSC::Interpreter::throwException):
7131 (JSC::Interpreter::execute):
7132 (JSC::Interpreter::executeCall):
7133 (JSC::Interpreter::executeConstruct):
7134 (JSC::Interpreter::privateExecute):
7136 (JSC::JIT::compileOpCallInitializeCallFrame):
7137 (JSC::JIT::compileOpCall):
7139 (JSC::JIT::compileOpCallInitializeCallFrame):
7140 (JSC::JIT::emit_op_ret):
7141 (JSC::JIT::emit_op_ret_object_or_this):
7142 (JSC::JIT::compileOpCall):
7144 (JSC::JIT::emit_op_end):
7145 (JSC::JIT::emit_op_ret):
7146 (JSC::JIT::emit_op_ret_object_or_this):
7148 (JSC::JIT::emit_op_end):
7150 (JSC::DEFINE_STUB_FUNCTION):
7154 (JSC::evaluate):
7158 (JSC::EvalExecutable::compileInternal):
7159 (JSC::ProgramExecutable::compileInternal):
7160 (JSC::FunctionExecutable::compileForCallInternal):
7161 (JSC::FunctionExecutable::compileForConstructInternal):
7163 (JSC::constructFunction):
7170 (JSC::JSFunction::JSFunction):
7171 (JSC::JSFunction::markChildren):
7172 (JSC::JSFunction::getCallData):
7173 (JSC::JSFunction::getOwnPropertySlot):
7174 (JSC::JSFunction::getConstructData):
7176 (JSC::JSFunction::scope):
7177 (JSC::JSFunction::setScope):
7179 (JSC::JSGlobalData::JSGlobalData):
7182 (JSC::JSGlobalObject::init):
7183 (JSC::JSGlobalObject::markChildren):
7185 (JSC::JSGlobalObject::JSGlobalObjectData::JSGlobalObjectData):
7186 (JSC::JSGlobalObject::globalScopeChain):
7188 (JSC::globalFuncEval):
7196 (JSC::ScopeChainNode::print):
7197 (JSC::ScopeChainNode::localDepth):
7198 (JSC::ScopeChainNode::markChildren):
7200 (JSC::ScopeChainNode::ScopeChainNode):
7201 (JSC::ScopeChainNode::createStructure):
7202 (JSC::ScopeChainNode::push):
7203 (JSC::ScopeChainNode::pop):
7204 (JSC::ScopeChainIterator::ScopeChainIterator):
7205 (JSC::ScopeChainIterator::operator*):
7206 (JSC::ScopeChainIterator::operator->):
7207 (JSC::ScopeChainIterator::operator++):
7208 (JSC::ScopeChainNode::begin):
7209 (JSC::ScopeChainNode::end):
7210 (JSC::ExecState::globalData):
7211 (JSC::ExecState::lexicalGlobalObject):
7212 (JSC::ExecState::globalThisValue):
7291 (JSC::ExecutableAllocator::cacheFlush):
7304 (JSC::Heap::allocate):
7307 (JSC::JSCell::JSCell::operator new):
7308 (JSC::JSCell::MarkedSpace::sizeClassFor):
7309 (JSC::JSCell::MarkedSpace::allocate):
7312 (JSC::MarkedSpace::MarkedSpace):
7313 (JSC::MarkedSpace::allocateBlock):
7314 (JSC::MarkedSpace::reset):
7316 (JSC::MarkedSpace::SizeClass::SizeClass):
7329 (JSC::JSParser::Scope::~Scope):
7420 (JSC::DefaultGCActivityCallback::DefaultGCActivityCallback):
7445 (JSC::Heap::allocateSlowCase): Split allocation into a fast and slow
7458 (JSC::JSCell::MarkedSpace::sizeClassFor):
7459 (JSC::JSCell::Heap::allocate):
7460 (JSC::JSCell::JSCell::operator new): The inlining mentioned above.
7469 (JSC::MarkedSpace::MarkedSpace):
7470 (JSC::MarkedSpace::allocateBlock):
7471 (JSC::MarkedSpace::reset): There's more than one size class now, and its
7475 (JSC::MarkedSpace::SizeClass::SizeClass): Ditto.
7511 (JSC::Heap::globalObjectCount):
7512 (JSC::Heap::protectedGlobalObjectCount):
7514 (JSC::JSGlobalData::JSGlobalData):
7517 (JSC::JSGlobalObject::~JSGlobalObject):
7518 (JSC::JSGlobalObject::init):
7520 (JSC::WeakGCMap::iterator::iterator):
7521 (JSC::WeakGCMap::iterator::get):
7522 (JSC::WeakGCMap::iterator::getSlot):
7523 (JSC::WeakGCMap::iterator::operator++):
7524 (JSC::WeakGCMap::iterator::operator==):
7525 (JSC::WeakGCMap::iterator::operator!=):
7526 (JSC::WeakGCMap::WeakGCMap):
7527 (JSC::WeakGCMap::isEmpty):
7528 (JSC::WeakGCMap::clear):
7529 (JSC::WeakGCMap::get):
7530 (JSC::WeakGCMap::getSlot):
7531 (JSC::WeakGCMap::set):
7532 (JSC::WeakGCMap::take):
7533 (JSC::WeakGCMap::size):
7534 (JSC::WeakGCMap::deprecatedRemove):
7535 (JSC::WeakGCMap::begin):
7536 (JSC::WeakGCMap::end):
7537 (JSC::WeakGCMap::~WeakGCMap):
7538 (JSC::WeakGCMap::finalize):
7540 (JSC::WeakGCPtr::WeakGCPtr):
7541 (JSC::WeakGCPtr::set):
7557 (JSC::HandleHeap::HandleHeap):
7558 (JSC::HandleHeap::updateAfterMark):
7559 (JSC::HandleHeap::clearWeakPointers):
7560 (JSC::HandleHeap::writeBarrier):
7561 (JSC::HandleHeap::protectedGlobalObjectCount):
7563 (JSC::Finalizer::~Finalizer):
7564 (JSC::HandleHeap::getFinalizer):
7565 (JSC::HandleHeap::deallocate):
7566 (JSC::HandleHeap::makeWeak):
7567 (JSC::HandleHeap::makeSelfDestroying):
7568 (JSC::HandleHeap::Node::Node):
7569 (JSC::HandleHeap::Node::setFinalizer):
7570 (JSC::HandleHeap::Node::finalizer):
7571 (JSC::HandleHeap::Node::finalizerContext):
7573 (JSC::RegisterFile::setGlobalObject):
7574 (JSC::GlobalObjectNotifier::finalize):
7575 (JSC::RegisterFile::globalObjectCollectedNotifier):
7577 (JSC::RegisterFile::RegisterFile):
7579 (JSC::Heap::destroy):
7581 (JSC::WeakGCPtr::WeakGCPtr):
7582 (JSC::WeakGCPtr::set):
7595 (JSC::Yarr::YarrPatternConstructor::atomParenthesesEnd):
7670 (JSC::JITThunks::JITThunks):
7756 (JSC::JSCell::MarkedSpace::sizeClassFor):
7757 (JSC::JSCell::MarkedSpace::allocate): Delegate allocation based on size
7762 (JSC::MarkedBlock::cellSize):
7763 (JSC::MarkedBlock::size): Factored out a cellSize() helper.
7766 (JSC::MarkedSpace::allocateBlock):
7767 (JSC::MarkedSpace::allocateFromSizeClass):
7768 (JSC::MarkedSpace::shrink):
7769 (JSC::MarkedSpace::reset):
7771 (JSC::MarkedSpace::SizeClass::SizeClass):
7772 (JSC::MarkedSpace::SizeClass::reset): Changed to operate in terms of
7793 (JSC::JSByteArray::setIndex):
7805 (JSC::Heap::reset): Moved Zombie sweeping here, up from MarkedSpace,
7810 (JSC::JSCell::MarkedBlock::allocate): Updated for nextAtom becoming a
7816 (JSC::MarkedBlock::MarkedBlock):
7818 (JSC::MarkedBlock::reset): Added the nextAtom data member, and reordered
7822 (JSC::MarkedSpace::MarkedSpace):
7823 (JSC::MarkedSpace::allocate):
7824 (JSC::MarkedSpace::reset):
7826 (JSC::CollectorHeap::CollectorHeap): Removed nextAtom, and added an
7841 Fix an off-by-one error in JSC::appendSourceToError
7845 Fixes <http://webkit.org/b/55052> <rdar://problem/9043512> Crash in JSC::appendSourceToError
7851 (JSC::appendSourceToError): When trimming whitespace off the end of the string, examine the
7910 (JSC::initializeThreadingOnce):
7912 (JSC::ignoreSetMutex):
7913 (JSC::Structure::Structure):
7914 (JSC::Structure::~Structure):
7915 (JSC::Structure::initializeThreading):
7928 (JSC::JSGlobalData::JSGlobalData):
7982 (JSC::MarkedBlock::MarkedBlock):
7985 (JSC::MarkedSpace::destroy):
7986 (JSC::MarkedSpace::allocateBlock):
7987 (JSC::MarkedSpace::freeBlock):
7988 (JSC::MarkedSpace::allocate):
7989 (JSC::MarkedSpace::shrink):
7990 (JSC::MarkedSpace::reset):
7992 (JSC::CollectorHeap::collectorBlock):
8012 (JSC::MarkedBlock::MarkedBlock):
8014 (JSC::MarkedBlock::setPrev):
8015 (JSC::MarkedBlock::setNext):
8016 (JSC::MarkedBlock::prev):
8017 (JSC::MarkedBlock::next): Added linked list data members and accessors.
8020 (JSC::MarkedSpace::destroy):
8021 (JSC::MarkedSpace::allocateBlock): Stop using vector, since it doesn't exist anymore.
8023 (JSC::MarkedSpace::freeBlocks): New helper function for updating relevant
8026 (JSC::MarkedSpace::allocate): Updated for nextBlock being a pointer and
8029 (JSC::MarkedSpace::shrink): Construct a temporary list of empties and
8034 (JSC::MarkedSpace::reset): Updated for nextBlock being a pointer and
8038 (JSC::CollectorHeap::CollectorHeap): Changed data type from vector to linked list.
8082 (JSC::JSObject::putDirectInternal):
8084 (JSC::StructureTransitionTable::contains):
8085 (JSC::StructureTransitionTable::get):
8086 (JSC::StructureTransitionTable::remove):
8087 (JSC::StructureTransitionTable::add):
8088 (JSC::Structure::dumpStatistics):
8089 (JSC::Structure::Structure):
8090 (JSC::Structure::~Structure):
8091 (JSC::Structure::addPropertyTransitionToExistingStructure):
8092 (JSC::Structure::addPropertyTransition):
8094 (JSC::Structure::get):
8096 (JSC::StructureTransitionTable::Hash::hash):
8097 (JSC::StructureTransitionTable::Hash::equal):
8098 (JSC::StructureTransitionTable::HashTraits::emptyValue):
8099 (JSC::StructureTransitionTable::HashTraits::constructDeletedValue):
8100 (JSC::StructureTransitionTable::HashTraits::isDeletedValue):
8101 (JSC::StructureTransitionTable::StructureTransitionTable):
8102 (JSC::StructureTransitionTable::~StructureTransitionTable):
8103 (JSC::StructureTransitionTable::isUsingSingleSlot):
8104 (JSC::StructureTransitionTable::map):
8105 (JSC::StructureTransitionTable::setMap):
8106 (JSC::StructureTransitionTable::singleTransition):
8107 (JSC::StructureTransitionTable::setSingleTransition):
8119 in a final step and link to WebKit2, WebCore and JSC libraries to fix
8161 (JSC::JIT::compileOpCall): use ASSERT_JIT_OFFSET instead of
8164 (JSC::JIT::emit_op_method_check): ditto.
8165 (JSC::JIT::compileGetByIdHotPath): ditto.
8166 (JSC::JIT::compileGetByIdSlowCase): ditto.
8167 (JSC::JIT::emit_op_put_by_id): ditto.
8177 (JSC::MathObject::MathObject):
8280 (JSC::NativeExecutable::~NativeExecutable):
8282 (JSC::NativeExecutable::create):
8283 (JSC::NativeExecutable::NativeExecutable):
8284 (JSC::JSFunction::nativeFunction):
8286 (JSC::callHostFunctionAsConstructor):
8287 (JSC::JSFunction::JSFunction):
8288 (JSC::JSFunction::getCallData):
8291 (JSC::JSGlobalData::getHostFunction):
8293 (JSC::JSGlobalData::getCTIStub):
8522 OK with interpreter. Not tested with JSC JIT yet as it has unrelated
8575 (JSC::MarkedSpace::clearMarks):
8576 (JSC::MarkedSpace::sweep):
8577 (JSC::MarkedSpace::objectCount):
8578 (JSC::MarkedSpace::size):
8579 (JSC::MarkedSpace::capacity):
8581 (JSC::MarkedSpace::forEach): Iterate blocks in hashing order instead of
8609 (JSC::MarkedSpace::destroy): No need to explicitly clear the blocks array,
8612 (JSC::MarkedSpace::freeBlock): Fixed a typo that always removed the last
8618 (JSC::MarkedSpace::contains): Variable-sized objects will use more,
8643 (JSC::MarkedSpace::contains):
8673 (JSC::MarkedSpace::contains): Variable-sized objects will use more,
8687 (JSC::Heap::Heap): Initialize the marked space high water mark on
8697 (JSC::MarkedSpace::MarkedSpace): Don't pre-allocate a block, since this
8700 (JSC::MarkedSpace::allocateBlock):
8701 (JSC::MarkedSpace::freeBlock): Track allocated blocks in a hash set,
8705 (JSC::MarkedSpace::allocate): Don't assume that we always have a block
8708 (JSC::MarkedSpace::reset):
8724 (JSC::MarkedBlock::MarkedBlock): No need to ASSERT that allocations are
8742 (JSC::JSCell::MarkedBlock::allocate): Round up when calculating the
8747 (JSC::MarkedBlock::MarkedBlock):
8748 (JSC::MarkedBlock::sweep):
8750 (JSC::MarkedBlock::forEach): Changed a bunch of != tests to < tests
8762 (JSC::MarkedBlock::contains): Added a contains function, so MarkedSpace
8766 (JSC::MarkedSpace::contains): Call through to MarkedBlock to figure out
8784 (JSC::JSCell::MarkedBlock::allocate): Changed this do-while into a while
8789 (JSC::MarkedBlock::MarkedBlock):
8790 (JSC::MarkedBlock::sweep):
8792 (JSC::MarkedBlock::isEmpty):
8793 (JSC::MarkedBlock::clearMarks):
8794 (JSC::MarkedBlock::markCount):
8795 (JSC::MarkedBlock::forEach): No need to set a special last mark bit.
8809 (JSC::Global::internalSet):
8811 (JSC::HandleTypes::getFromSlot):
8812 (JSC::HandleTypes::toJSValue):
8813 (JSC::HandleTypes::validateUpcast):
8814 (JSC::HandleConverter::operator->):
8815 (JSC::HandleConverter::operator*):
8816 (JSC::Handle::Handle):
8817 (JSC::Handle::get):
8819 (JSC::JSArray::sortNumeric):
8821 (JSC::JSObject::inlineGetOwnPropertySlot):
8824 (JSC::WeakGCPtr::get):
8825 (JSC::WeakGCPtr::internalSet):
8827 (JSC::DeprecatedPtr::DeprecatedPtr):
8828 (JSC::DeprecatedPtr::get):
8829 (JSC::DeprecatedPtr::operator*):
8830 (JSC::DeprecatedPtr::operator->):
8831 (JSC::DeprecatedPtr::slot):
8832 (JSC::DeprecatedPtr::operator UnspecifiedBoolType*):
8833 (JSC::DeprecatedPtr::operator!):
8834 (JSC::WriteBarrierBase::set):
8835 (JSC::WriteBarrierBase::get):
8836 (JSC::WriteBarrierBase::operator*):
8837 (JSC::WriteBarrierBase::operator->):
8838 (JSC::WriteBarrierBase::clear):
8839 (JSC::WriteBarrierBase::slot):
8840 (JSC::WriteBarrierBase::operator UnspecifiedBoolType*):
8841 (JSC::WriteBarrierBase::operator!):
8842 (JSC::WriteBarrierBase::setWithoutWriteBarrier):
8843 (JSC::WriteBarrier::WriteBarrier):
8866 (JSC::Heap::allocate): Made fixed-sizedness a property of MarkedSpace,
8871 (JSC::JSCell::MarkedBlock::allocate): Removed use of CELLS_PER_BLOCK and
8876 (JSC::MarkedBlock::create):
8877 (JSC::MarkedBlock::destroy):
8878 (JSC::MarkedBlock::MarkedBlock):
8879 (JSC::MarkedBlock::sweep):
8881 (JSC::MarkedBlock::firstAtom):
8882 (JSC::MarkedBlock::atoms):
8883 (JSC::MarkedBlock::isAtomAligned):
8884 (JSC::MarkedBlock::blockFor):
8885 (JSC::MarkedBlock::isEmpty):
8886 (JSC::MarkedBlock::clearMarks):
8887 (JSC::MarkedBlock::size):
8888 (JSC::MarkedBlock::capacity):
8889 (JSC::MarkedBlock::atomNumber):
8890 (JSC::MarkedBlock::isMarked):
8891 (JSC::MarkedBlock::testAndSetMarked):
8892 (JSC::MarkedBlock::setMarked):
8893 (JSC::MarkedBlock::forEach): Same as above. Also removed use of CELL_SIZE
8897 (JSC::MarkedSpace::MarkedSpace):
8898 (JSC::MarkedSpace::allocateBlock):
8899 (JSC::MarkedSpace::allocate):
8900 (JSC::MarkedSpace::reset):
8902 (JSC::CollectorHeap::CollectorHeap):
8903 (JSC::MarkedSpace::contains): Updated for renames. Made fixed-sizedness
8925 (JSC::Global::internalSet):
8927 (JSC::Handle::Handle):
8928 (JSC::Handle::get):
8930 (JSC::JSArray::sortNumeric):
8932 (JSC::JSObject::inlineGetOwnPropertySlot):
8934 (JSC::SlotTypes::getFromBaseType):
8935 (JSC::SlotTypes::convertToBaseType):
8936 (JSC::SlotTypes::getFromSlot):
8937 (JSC::SlotTypes::toJSValue):
8938 (JSC::SlotTypes::validateUpcast):
8939 (JSC::SlotAccessor::operator->):
8940 (JSC::SlotAccessor::operator*):
8942 (JSC::WeakGCPtr::get):
8943 (JSC::WeakGCPtr::internalSet):
8945 (JSC::DeprecatedPtr::DeprecatedPtr):
8946 (JSC::DeprecatedPtr::get):
8947 (JSC::DeprecatedPtr::slot):
8948 (JSC::DeprecatedPtr::operator=):
8949 (JSC::WriteBarrierTranslator::convertToStorage):
8950 (JSC::WriteBarrierTranslator::convertFromStorage):
8951 (JSC::WriteBarrierBase::set):
8952 (JSC::WriteBarrierBase::get):
8953 (JSC::WriteBarrierBase::clear):
8954 (JSC::WriteBarrierBase::slot):
8955 (JSC::WriteBarrierBase::operator UnspecifiedBoolType*):
8956 (JSC::WriteBarrierBase::operator!):
8957 (JSC::WriteBarrierBase::setWithoutWriteBarrier):
8958 (JSC::WriteBarrier::WriteBarrier):
8980 (JSC::BytecodeGenerator::BytecodeGenerator): Explicitly resize the global
8988 (JSC::JSGlobalObject::resizeRegisters):