• Home
  • Raw
  • Download

Lines Matching refs:JSC

22         (JSC::AbstractMacroAssembler::LinkBuffer::LinkBuffer):
23 (JSC::AbstractMacroAssembler::LinkBuffer::~LinkBuffer):
25 (JSC::JIT::privateCompile):
27 (JSC::JIT::privateCompilePutByIdTransition):
28 (JSC::JIT::privateCompilePatchGetArrayLength):
29 (JSC::JIT::privateCompileGetByIdProto):
30 (JSC::JIT::privateCompileGetByIdSelfList):
31 (JSC::JIT::privateCompileGetByIdProtoList):
32 (JSC::JIT::privateCompileGetByIdChainList):
33 (JSC::JIT::privateCompileGetByIdChain):
35 (JSC::Yarr::RegexGenerator::compile):
53 (JSC::AbstractMacroAssembler::PatchBuffer::patch):
55 (JSC::CodeLocationCommon::CodeLocationCommon):
56 (JSC::CodeLocationInstruction::CodeLocationInstruction):
57 (JSC::CodeLocationLabel::CodeLocationLabel):
58 (JSC::CodeLocationJump::CodeLocationJump):
59 (JSC::CodeLocationCall::CodeLocationCall):
60 (JSC::CodeLocationNearCall::CodeLocationNearCall):
61 (JSC::CodeLocationDataLabel32::CodeLocationDataLabel32):
62 (JSC::CodeLocationDataLabelPtr::CodeLocationDataLabelPtr):
63 (JSC::CodeLocationCommon::instructionAtOffset):
64 (JSC::CodeLocationCommon::labelAtOffset):
65 (JSC::CodeLocationCommon::jumpAtOffset):
66 (JSC::CodeLocationCommon::callAtOffset):
67 (JSC::CodeLocationCommon::nearCallAtOffset):
68 (JSC::CodeLocationCommon::dataLabelPtrAtOffset):
69 (JSC::CodeLocationCommon::dataLabel32AtOffset):
71 (JSC::MacroAssemblerCodePtr::operator!):
73 (JSC::getStructureStubInfoReturnLocation):
74 (JSC::getCallLinkInfoReturnLocation):
75 (JSC::getMethodCallLinkInfoReturnLocation):
78 (JSC::StringJumpTable::ctiForValue):
79 (JSC::SimpleJumpTable::ctiForValue):
82 (JSC::BytecodeGenerator::emitCatch):
84 (JSC::JIT::privateCompile):
86 (JSC::JITStubs::DEFINE_STUB_FUNCTION):
87 (JSC::JITStubs::getPolymorphicAccessStructureListSlot):
101 (JSC::AbstractMacroAssembler::RepatchBuffer::relinkCallerToTrampoline):
102 (JSC::AbstractMacroAssembler::RepatchBuffer::relinkCallerToFunction):
103 (JSC::AbstractMacroAssembler::RepatchBuffer::relinkNearCallerToTrampoline):
105 (JSC::ReturnAddressPtr::ReturnAddressPtr):
107 (JSC::CodeBlock::getStubInfo):
108 (JSC::CodeBlock::getCallLinkInfo):
109 (JSC::CodeBlock::getMethodCallLinkInfo):
110 (JSC::CodeBlock::getBytecodeIndex):
112 (JSC::bytecodeOffsetForPC):
114 (JSC::ctiPatchNearCallByReturnAddress):
115 (JSC::ctiPatchCallByReturnAddress):
117 (JSC::JIT::compileGetByIdProto):
118 (JSC::JIT::compileGetByIdChain):
119 (JSC::JIT::compilePutByIdTransition):
120 (JSC::JIT::compilePatchGetArrayLength):
122 (JSC::JIT::privateCompilePutByIdTransition):
123 (JSC::JIT::patchGetByIdSelf):
124 (JSC::JIT::patchPutByIdReplace):
125 (JSC::JIT::privateCompilePatchGetArrayLength):
126 (JSC::JIT::privateCompileGetByIdProto):
127 (JSC::JIT::privateCompileGetByIdChain):
129 (JSC::JITThunks::tryCachePutByID):
130 (JSC::JITThunks::tryCacheGetByID):
131 (JSC::StackHack::StackHack):
132 (JSC::returnToThrowTrampoline):
133 (JSC::throwStackOverflowError):
134 (JSC::JITStubs::DEFINE_STUB_FUNCTION):
136 (JSC::):
137 (JSC::JITStackFrame::returnAddressSlot):
169 (JSC::AbstractMacroAssembler::CodeLocationCall::CodeLocationCall):
170 (JSC::AbstractMacroAssembler::CodeLocationNearCall::CodeLocationNearCall):
171 (JSC::AbstractMacroAssembler::CodeLocationNearCall::calleeReturnAddressValue):
172 (JSC::AbstractMacroAssembler::RepatchBuffer::RepatchBuffer):
173 (JSC::AbstractMacroAssembler::RepatchBuffer::relink):
174 (JSC::AbstractMacroAssembler::RepatchBuffer::repatch):
175 (JSC::AbstractMacroAssembler::RepatchBuffer::relinkCallerToTrampoline):
176 (JSC::AbstractMacroAssembler::RepatchBuffer::relinkCallerToFunction):
177 (JSC::AbstractMacroAssembler::RepatchBuffer::relinkNearCallerToTrampoline):
178 (JSC::AbstractMacroAssembler::RepatchBuffer::repatchLoadPtrToLEA):
180 (JSC::ctiPatchNearCallByReturnAddress):
181 (JSC::ctiPatchCallByReturnAddress):
182 (JSC::JIT::unlinkCall):
183 (JSC::JIT::linkCall):
185 (JSC::JIT::privateCompilePutByIdTransition):
186 (JSC::JIT::patchGetByIdSelf):
187 (JSC::JIT::patchMethodCallProto):
188 (JSC::JIT::patchPutByIdReplace):
189 (JSC::JIT::privateCompilePatchGetArrayLength):
190 (JSC::JIT::privateCompileGetByIdProto):
191 (JSC::JIT::privateCompileGetByIdSelfList):
192 (JSC::JIT::privateCompileGetByIdProtoList):
193 (JSC::JIT::privateCompileGetByIdChainList):
194 (JSC::JIT::privateCompileGetByIdChain):
210 (JSC::JIT::privateCompile):
211 (JSC::JIT::linkCall):
214 (JSC::JIT::compileOpCallSlowCase):
216 (JSC::JITStubs::DEFINE_STUB_FUNCTION):
253 (JSC::MarkedArgumentBuffer::MarkedArgumentBuffer):
254 (JSC::MarkedArgumentBuffer::append):
255 (JSC::MarkedArgumentBuffer::removeLast):
256 (JSC::MarkedArgumentBuffer::last):
258 (JSC::LiteralParser::parse):
260 (JSC::LiteralParser::LiteralParser):
261 (JSC::LiteralParser::tryLiteralParse):
262 (JSC::LiteralParser::):
268 Adjust the exports for JSC on Windows like what was done for OSX in
281 The methods changed are not used by JSC, so there is no JS perf impact. However,
288 (JSC::UString::Rep::sharedBuffer):
293 (JSC::UString::BaseString::sharedBuffer):
336 (JSC::Stringifier::):
389 (JSC::ExecState::jsonTable):
394 (JSC::JSGlobalData::JSGlobalData):
395 (JSC::JSGlobalData::~JSGlobalData):
398 (JSC::JSGlobalObject::reset):
402 (JSC::):
403 (JSC::JSONObject::getOwnPropertySlot):
404 (JSC::Stringifier::):
405 (JSC::Stringifier::Stringifier):
406 (JSC::Stringifier::stringify):
407 (JSC::Stringifier::appendString):
409 (JSC::Stringifier::StringKeyGenerator::StringKeyGenerator):
410 (JSC::Stringifier::StringKeyGenerator::getKey):
411 (JSC::Stringifier::IntKeyGenerator::IntKeyGenerator):
412 (JSC::Stringifier::IntKeyGenerator::getKey):
416 (JSC::Stringifier::toJSONValue):
417 (JSC::Stringifier::stringifyArray):
418 (JSC::Stringifier::stringifyObject):
419 (JSC::JSONProtoFuncStringify):
421 (JSC::JSONObject:::JSObject):
422 (JSC::JSONObject::classInfo):
423 (JSC::JSONObject::createStructure):
454 (JSC::MacroAssemblerARMv7::supportsFloatingPoint):
456 (JSC::MacroAssemblerARMv7::supportsFloatingPointTruncate):
458 (JSC::MacroAssemblerARMv7::loadDouble):
459 (JSC::MacroAssemblerARMv7::storeDouble):
460 (JSC::MacroAssemblerARMv7::addDouble):
461 (JSC::MacroAssemblerARMv7::subDouble):
462 (JSC::MacroAssemblerARMv7::mulDouble):
463 (JSC::MacroAssemblerARMv7::convertInt32ToDouble):
464 (JSC::MacroAssemblerARMv7::branchDouble):
467 (JSC::MacroAssemblerX86::supportsFloatingPointTruncate):
470 (JSC::MacroAssemblerX86_64::supportsFloatingPointTruncate):
473 (JSC::JIT::emit_op_rshift):
475 (JSC::JIT::emitSlow_op_rshift):
491 (JSC::MacroAssemblerARMv7::loadPtrWithPatchToLEA):
493 (JSC::MacroAssemblerARMv7::move):
494 (JSC::MacroAssemblerARMv7::nearCall):
495 (JSC::MacroAssemblerARMv7::call):
496 (JSC::MacroAssemblerARMv7::moveWithPatch):
497 (JSC::MacroAssemblerARMv7::tailRecursiveCall):
499 (JSC::MacroAssemblerARMv7::moveFixedWidthEncoding):
502 (JSC::MacroAssemblerX86::loadPtrWithPatchToLEA):
505 (JSC::MacroAssemblerX86_64::loadPtrWithPatchToLEA):
508 (JSC::JIT::compileGetByIdHotPath):
509 (JSC::JIT::emit_op_put_by_id):
523 (JSC::MacroAssemblerARMv7::load32):
525 (JSC::MacroAssemblerARMv7::store32):
527 (JSC::MacroAssemblerARMv7::move):
531 (JSC::JIT::privateCompileCTIMachineTrampolines):
536 (JSC::JIT::preverveReturnAddressAfterCall):
537 (JSC::JIT::restoreReturnAddressBeforeReturn):
538 (JSC::JIT::restoreArgumentReferenceForTrampoline):
543 (JSC::JITStackFrame::returnAddressSlot):
563 (JSC::ExecutableAllocator::makeWritable):
564 (JSC::ExecutableAllocator::makeExecutable):
565 (JSC::ExecutableAllocator::reprotectRegion):
566 (JSC::ExecutableAllocator::cacheFlush):
599 (JSC::FunctionPtr::FunctionPtr):
601 (JSC::ReturnAddressPtr::ReturnAddressPtr):
603 (JSC::MacroAssemblerCodePtr::MacroAssemblerCodePtr):
607 (JSC::MacroAssemblerCodePtr::dataLocation):
610 (JSC::ExecutableAllocator::makeWritable):
612 (JSC::ExecutableAllocator::makeExecutable):
614 (JSC::ExecutableAllocator::MakeWritable::MakeWritable):
618 (JSC::ExecutableAllocator::reprotectRegion):
620 (JSC::ExecutableAllocator::cacheFlush):
625 (JSC::Yarr::RegexGenerator::generateEnter):
626 (JSC::Yarr::RegexGenerator::generateReturn):
634 (JSC::DateInstance::msToGregorianDateTime): Use WTF namespace qualifier to
684 (JSC::getCount): Changed to use DateConversion.
687 (JSC::parseDate): Refactored to use null-terminated characters as input.
756 (JSC::):
768 (JSC::JIT::emit_op_throw):
773 (JSC::):
775 (JSC::JITStubs::DEFINE_STUB_FUNCTION):
787 (JSC::X86Assembler::getRelocatedAddress):
796 (JSC::MacroAssemblerX86::storePtrWithPatch):
798 (JSC::MacroAssemblerX86_64::storePtrWithPatch):
800 (JSC::JIT::emit_op_jsr):
815 (JSC::AbstractMacroAssembler::CodeLocationInstruction::repatchLoadPtrToLEA):
817 (JSC::X86Assembler::repatchLoadPtrToLEA):
820 (JSC::JIT::patchGetByIdSelf):
821 (JSC::JIT::patchPutByIdReplace):
851 (JSC::MacroAssemblerX86Common::):
852 (JSC::MacroAssemblerX86Common::branchAdd32):
853 (JSC::MacroAssemblerX86Common::branchMul32):
854 (JSC::MacroAssemblerX86Common::branchSub32):
863 (JSC::StackHack::StackHack):
882 (JSC::MacroAssemblerX86_64::storePtrWithPatch):
887 (JSC::JIT::emit_op_ret):
898 * FunctionPtr - this wraps a pointer to a C/C++ function in JSC.
903 calls can only be linked to JIT code and not to C functions in JSC (this was previously
907 (JSC::AbstractMacroAssembler::CodeLocationCommon::CodeLocationCommon):
908 (JSC::AbstractMacroAssembler::CodeLocationCommon::dataLocation):
909 (JSC::AbstractMacroAssembler::CodeLocationCommon::executableAddress):
910 (JSC::AbstractMacroAssembler::CodeLocationCommon::reset):
911 (JSC::AbstractMacroAssembler::CodeLocationInstruction::repatchLoadToLEA):
912 (JSC::AbstractMacroAssembler::CodeLocationInstruction::CodeLocationInstruction):
913 (JSC::AbstractMacroAssembler::CodeLocationLabel::addressForSwitch):
914 (JSC::AbstractMacroAssembler::CodeLocationLabel::addressForExceptionHandler):
915 (JSC::AbstractMacroAssembler::CodeLocationLabel::addressForJSR):
916 (JSC::AbstractMacroAssembler::CodeLocationLabel::operator!):
917 (JSC::AbstractMacroAssembler::CodeLocationLabel::reset):
918 (JSC::AbstractMacroAssembler::CodeLocationLabel::CodeLocationLabel):
919 (JSC::AbstractMacroAssembler::CodeLocationLabel::getJumpDestination):
920 (JSC::AbstractMacroAssembler::CodeLocationJump::relink):
921 (JSC::AbstractMacroAssembler::CodeLocationJump::CodeLocationJump):
922 (JSC::AbstractMacroAssembler::CodeLocationCall::relink):
923 (JSC::AbstractMacroAssembler::CodeLocationCall::calleeReturnAddressValue):
924 (JSC::AbstractMacroAssembler::CodeLocationCall::CodeLocationCall):
925 (JSC::AbstractMacroAssembler::CodeLocationNearCall::relink):
926 (JSC::AbstractMacroAssembler::CodeLocationNearCall::calleeReturnAddressValue):
927 (JSC::AbstractMacroAssembler::CodeLocationNearCall::CodeLocationNearCall):
928 (JSC::AbstractMacroAssembler::CodeLocationDataLabel32::repatch):
929 (JSC::AbstractMacroAssembler::CodeLocationDataLabel32::CodeLocationDataLabel32):
930 (JSC::AbstractMacroAssembler::CodeLocationDataLabelPtr::repatch):
931 (JSC::AbstractMacroAssembler::CodeLocationDataLabelPtr::CodeLocationDataLabelPtr):
932 (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToTrampoline):
933 (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToFunction):
934 (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkNearCallerToTrampoline):
935 (JSC::AbstractMacroAssembler::ProcessorReturnAddress::addressForLookup):
936 (JSC::AbstractMacroAssembler::trampolineAt):
937 (JSC::AbstractMacroAssembler::PatchBuffer::link):
938 (JSC::AbstractMacroAssembler::PatchBuffer::performFinalization):
939 (JSC::::CodeLocationCommon::instructionAtOffset):
940 (JSC::::CodeLocationCommon::labelAtOffset):
941 (JSC::::CodeLocationCommon::jumpAtOffset):
942 (JSC::::CodeLocationCommon::callAtOffset):
943 (JSC::::CodeLocationCommon::nearCallAtOffset):
944 (JSC::::CodeLocationCommon::dataLabelPtrAtOffset):
945 (JSC::::CodeLocationCommon::dataLabel32AtOffset):
947 (JSC::FunctionPtr::FunctionPtr):
948 (JSC::FunctionPtr::value):
949 (JSC::FunctionPtr::executableAddress):
950 (JSC::ReturnAddressPtr::ReturnAddressPtr):
951 (JSC::ReturnAddressPtr::value):
952 (JSC::MacroAssemblerCodePtr::MacroAssemblerCodePtr):
953 (JSC::MacroAssemblerCodePtr::executableAddress):
954 (JSC::MacroAssemblerCodePtr::dataLocation):
955 (JSC::MacroAssemblerCodeRef::MacroAssemblerCodeRef):
957 (JSC::X86Assembler::patchPointerForCall):
959 (JSC::ctiPatchNearCallByReturnAddress):
960 (JSC::ctiPatchCallByReturnAddress):
961 (JSC::JIT::privateCompile):
962 (JSC::JIT::privateCompileCTIMachineTrampolines):
964 (JSC::JIT::compileCTIMachineTrampolines):
966 (JSC::JIT::compileOpCall):
968 (JSC::JITCode::operator !):
969 (JSC::JITCode::addressForCall):
970 (JSC::JITCode::offsetOf):
971 (JSC::JITCode::execute):
972 (JSC::JITCode::size):
973 (JSC::JITCode::HostFunction):
975 (JSC::JIT::emitNakedCall):
977 (JSC::JIT::privateCompilePutByIdTransition):
978 (JSC::JIT::patchGetByIdSelf):
979 (JSC::JIT::patchPutByIdReplace):
980 (JSC::JIT::privateCompilePatchGetArrayLength):
981 (JSC::JIT::privateCompileGetByIdProto):
982 (JSC::JIT::privateCompileGetByIdChain):
984 (JSC::JITThunks::JITThunks):
985 (JSC::JITThunks::tryCachePutByID):
986 (JSC::JITThunks::tryCacheGetByID):
987 (JSC::JITStubs::DEFINE_STUB_FUNCTION):
989 (JSC::JITThunks::ctiArrayLengthTrampoline):
990 (JSC::JITThunks::ctiStringLengthTrampoline):
991 (JSC::JITThunks::ctiVirtualCallPreLink):
992 (JSC::JITThunks::ctiVirtualCallLink):
993 (JSC::JITThunks::ctiVirtualCall):
994 (JSC::JITThunks::ctiNativeCallThunk):
996 (JSC::Yarr::RegexCodeBlock::operator!):
997 (JSC::Yarr::RegexCodeBlock::execute):
1013 Export JSC::parseDate()
1030 (JSC::JSObject::defineGetter):
1031 (JSC::JSObject::defineSetter):
1033 (JSC::):
1046 (JSC::AbstractMacroAssembler::PatchBuffer::PatchBuffer):
1047 (JSC::AbstractMacroAssembler::PatchBuffer::finalizeCode):
1048 (JSC::AbstractMacroAssembler::PatchBuffer::code):
1049 (JSC::AbstractMacroAssembler::PatchBuffer::performFinalization):
1067 (JSC::JIT::restoreArgumentReference):
1068 (JSC::JIT::restoreArgumentReferenceForTrampoline):
1070 (JSC::):
1101 (JSC::JSGlobalData::JSGlobalData):
1102 (JSC::JSGlobalData::~JSGlobalData):
1115 (JSC::JIT::privateCompile):
1116 (JSC::JIT::privateCompileCTIMachineTrampolines):
1121 (JSC::JIT::preverveReturnAddressAfterCall):
1122 (JSC::JIT::restoreReturnAddressBeforeReturn):
1125 (JSC::JIT::emit_op_end):
1126 (JSC::JIT::emit_op_ret):
1129 (JSC::JIT::privateCompilePutByIdTransition):
1132 (JSC::JITStubs::DEFINE_STUB_FUNCTION):
1134 (JSC::JITStubs::):
1185 (JSC::JIT::emit_op_rshift):
1186 (JSC::JIT::emitSlow_op_rshift):
1193 (JSC::):
1200 (JSC::::CodeLocationCall::CodeLocationCall):
1201 (JSC::::CodeLocationNearCall::CodeLocationNearCall):
1226 (JSC::ExecState::returnPC):
1227 (JSC::ExecState::setCallerFrame):
1228 (JSC::ExecState::returnValueRegister):
1229 (JSC::ExecState::setArgumentCount):
1230 (JSC::ExecState::setCallee):
1231 (JSC::ExecState::setCodeBlock):
1234 (JSC::Register::Register):
1235 (JSC::Register::i):
1237 (JSC::):
1238 (JSC::JITThunks::JITThunks):
1239 (JSC::JITThunks::tryCachePutByID):
1240 (JSC::JITThunks::tryCacheGetByID):
1241 (JSC::JITStubs::DEFINE_STUB_FUNCTION):
1243 (JSC::JITStubs::):
1245 (JSC::JSFunction::nativeFunction):
1246 (JSC::JSFunction::classInfo):
1260 (JSC::LiteralParser::Lexer::lex):
1261 (JSC::LiteralParser::Lexer::lexString):
1262 (JSC::LiteralParser::Lexer::lexNumber):
1280 (JSC::AbstractMacroAssembler::CodeLocationInstruction::repatchLoadToLEA):
1281 (JSC::AbstractMacroAssembler::CodeLocationLabel::fromFunctionPointer):
1282 (JSC::AbstractMacroAssembler::CodeLocationJump::relink):
1283 (JSC::AbstractMacroAssembler::CodeLocationCall::relink):
1284 (JSC::AbstractMacroAssembler::CodeLocationNearCall::relink):
1285 (JSC::AbstractMacroAssembler::CodeLocationDataLabel32::repatch):
1286 (JSC::AbstractMacroAssembler::CodeLocationDataLabelPtr::repatch):
1287 (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToTrampoline):
1288 (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToFunction):
1289 (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkNearCallerToTrampoline):
1290 (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkNearCallerToFunction):
1291 (JSC::AbstractMacroAssembler::PatchBuffer::PatchBuffer):
1292 (JSC::AbstractMacroAssembler::PatchBuffer::~PatchBuffer):
1293 (JSC::AbstractMacroAssembler::PatchBuffer::link):
1294 (JSC::AbstractMacroAssembler::PatchBuffer::patch):
1295 (JSC::AbstractMacroAssembler::PatchBuffer::performFinalization):
1296 (JSC::::CodeLocationCommon::nearCallAtOffset):
1297 (JSC::::CodeLocationCall::CodeLocationCall):
1298 (JSC::::CodeLocationNearCall::CodeLocationNearCall):
1300 (JSC::AssemblerBuffer::executableCopy):
1302 (JSC::CAN_SIGN_EXTEND_U32_64):
1303 (JSC::X86Assembler::linkJump):
1304 (JSC::X86Assembler::linkCall):
1305 (JSC::X86Assembler::patchPointer):
1306 (JSC::X86Assembler::relinkJump):
1307 (JSC::X86Assembler::relinkCall):
1308 (JSC::X86Assembler::repatchInt32):
1309 (JSC::X86Assembler::repatchPointer):
1310 (JSC::X86Assembler::repatchLoadToLEA):
1311 (JSC::X86Assembler::patchInt32):
1312 (JSC::X86Assembler::patchRel32):
1314 (JSC::ExecutableAllocator::):
1315 (JSC::ExecutableAllocator::makeWritable):
1316 (JSC::ExecutableAllocator::makeExecutable):
1318 (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator):
1320 (JSC::ExecutablePool::systemAlloc):
1321 (JSC::ExecutablePool::systemRelease):
1322 (JSC::ExecutableAllocator::reprotectRegion):
1325 (JSC::JIT::patchGetByIdSelf):
1326 (JSC::JIT::patchPutByIdReplace):
1357 (JSC::UString::Rep::create):
1358 (JSC::UString::BaseString::sharedBuffer): Only do the sharing when
1381 (JSC::arrayProtoFuncToString): Use the same recursion limit as the other recursion checks.
1383 (JSC::arrayProtoFuncToLocaleString): Ditto.
1384 (JSC::arrayProtoFuncJoin): Ditto.
1398 <rdar://problem/6928025> Stack overflow in JSC::stringProtoFuncReplace() running jsFunFuzz
1404 (JSC::stringProtoFuncReplace):
1465 (JSC::Yarr::RegexPatternConstructor::atomBackReference):
1466 (JSC::Yarr::RegexPatternConstructor::setupAlternativeOffsets):
1468 (JSC::Yarr::ByteCompiler::emitDisjunction):
1470 (JSC::Yarr::RegexGenerator::generateTerm):
1472 (JSC::Yarr::PatternTerm::):
1473 (JSC::Yarr::PatternTerm::PatternTerm):
1474 (JSC::Yarr::PatternTerm::ForwardReference):
1489 (JSC::JITStubs::cti_op_get_by_id_method_check_second):
1493 (JSC::JSObject::propertyStorage):
1494 (JSC::JSObject::locationForOffset):
1496 (JSC::JSObject::putDirectInternal):
1500 (JSC::Structure::despecifyDictionaryFunction):
1502 (JSC::Structure::despecifyFunctionTransition):
1517 (JSC::Yarr::RegexPattern::reset):
1557 (JSC::UString::Rep::share):
1558 (JSC::UString::Rep::destroy):
1559 (JSC::UString::BaseString::sharedBuffer):
1560 (JSC::UString::BaseString::setSharedBuffer):
1561 (JSC::UString::BaseString::slowIsBufferReadOnly):
1562 (JSC::expandCapacity):
1563 (JSC::UString::Rep::reserveCapacity):
1564 (JSC::UString::expandPreCapacity):
1565 (JSC::concatenate):
1566 (JSC::UString::append):
1568 (JSC::UString::Rep::Rep):
1569 (JSC::UString::Rep::):
1570 (JSC::UString::BaseString::isShared):
1571 (JSC::UString::BaseString::isBufferReadOnly):
1572 (JSC::UString::Rep::baseString):
1652 This saves ~100k in JSC release builds.
1655 (JSC::Interpreter::privateExecute):
1704 (JSC::::put):
1705 (JSC::::staticFunctionGetter):
1710 (JSC::AbstractMacroAssembler::differenceBetween):
1712 (JSC::MacroAssemblerX86::moveWithPatch):
1714 (JSC::CodeBlock::dump):
1716 (JSC::getMethodCallLinkInfoReturnLocation):
1717 (JSC::CodeBlock::getMethodCallLinkInfo):
1718 (JSC::CodeBlock::addMethodCallLinkInfos):
1719 (JSC::CodeBlock::methodCallLinkInfo):
1722 (JSC::BytecodeGenerator::emitMethodCheck):
1725 (JSC::Interpreter::privateExecute):
1727 (JSC::JIT::privateCompileMainPass):
1728 (JSC::JIT::privateCompileSlowCases):
1729 (JSC::JIT::privateCompile):
1731 (JSC::MethodCallCompilationInfo::MethodCallCompilationInfo):
1734 (JSC::JIT::emit_op_method_check):
1735 (JSC::JIT::emitSlow_op_method_check):
1736 (JSC::JIT::emit_op_get_by_id):
1737 (JSC::JIT::emitSlow_op_get_by_id):
1738 (JSC::JIT::emit_op_put_by_id):
1739 (JSC::JIT::emitSlow_op_put_by_id):
1740 (JSC::JIT::compileGetByIdHotPath):
1741 (JSC::JIT::compileGetByIdSlowCase):
1742 (JSC::JIT::patchMethodCallProto):
1744 (JSC::JITStubs::cti_op_get_by_id_method_check):
1745 (JSC::JITStubs::cti_op_get_by_id_method_check_second):
1750 (JSC::FunctionCallDotNode::emitBytecode):
1752 (JSC::Arguments::put):
1754 (JSC::ArrayConstructor::ArrayConstructor):
1756 (JSC::BooleanConstructor::BooleanConstructor):
1758 (JSC::DateConstructor::DateConstructor):
1760 (JSC::ErrorConstructor::ErrorConstructor):
1761 (JSC::constructError):
1763 (JSC::ErrorPrototype::ErrorPrototype):
1765 (JSC::FunctionConstructor::FunctionConstructor):
1767 (JSC::FunctionPrototype::FunctionPrototype):
1769 (JSC::InternalFunction::InternalFunction):
1771 (JSC::JSActivation::put):
1772 (JSC::JSActivation::putWithAttributes):
1774 (JSC::JSByteArray::JSByteArray):
1776 (JSC::JSFunction::JSFunction):
1777 (JSC::JSFunction::getOwnPropertySlot):
1779 (JSC::JSGlobalObject::putWithAttributes):
1780 (JSC::JSGlobalObject::reset):
1781 (JSC::JSGlobalObject::mark):
1783 (JSC::JSGlobalObject::JSGlobalObjectData::JSGlobalObjectData):
1784 (JSC::JSGlobalObject::methodCallDummy):
1786 (JSC::JSObject::put):
1787 (JSC::JSObject::putWithAttributes):
1788 (JSC::JSObject::deleteProperty):
1789 (JSC::JSObject::defineGetter):
1790 (JSC::JSObject::defineSetter):
1791 (JSC::JSObject::getPropertyAttributes):
1792 (JSC::JSObject::getPropertySpecificFunction):
1793 (JSC::JSObject::putDirectFunction):
1794 (JSC::JSObject::putDirectFunctionWithoutTransition):
1796 (JSC::getJSFunction):
1797 (JSC::JSObject::getDirectLocation):
1798 (JSC::JSObject::putDirect):
1799 (JSC::JSObject::putDirectWithoutTransition):
1801 (JSC::LiteralParser::parseObject):
1803 (JSC::setUpStaticFunctionSlot):
1805 (JSC::lookupPut):
1807 (JSC::MathObject::MathObject):
1809 (JSC::NativeErrorConstructor::NativeErrorConstructor):
1810 (JSC::NativeErrorConstructor::construct):
1812 (JSC::NativeErrorPrototype::NativeErrorPrototype):
1814 (JSC::NumberConstructor::NumberConstructor):
1816 (JSC::ObjectConstructor::ObjectConstructor):
1818 (JSC::PropertyMapEntry::PropertyMapEntry):
1820 (JSC::PrototypeFunction::PrototypeFunction):
1822 (JSC::PutPropertySlot::):
1823 (JSC::PutPropertySlot::PutPropertySlot):
1824 (JSC::PutPropertySlot::setNewProperty):
1825 (JSC::PutPropertySlot::setDespecifyFunctionProperty):
1826 (JSC::PutPropertySlot::isCacheable):
1827 (JSC::PutPropertySlot::cachedOffset):
1829 (JSC::RegExpConstructor::RegExpConstructor):
1831 (JSC::StringConstructor::StringConstructor):
1833 (JSC::StringPrototype::StringPrototype):
1835 (JSC::Structure::Structure):
1836 (JSC::Structure::~Structure):
1837 (JSC::Structure::materializePropertyMap):
1838 (JSC::Structure::addPropertyTransitionToExistingStructure):
1839 (JSC::Structure::addPropertyTransition):
1840 (JSC::Structure::changeFunctionTransition):
1841 (JSC::Structure::addPropertyWithoutTransition):
1842 (JSC::Structure::get):
1843 (JSC::Structure::despecifyFunction):
1844 (JSC::Structure::put):
1845 (JSC::Structure::remove):
1847 (JSC::Structure::get):
1848 (JSC::Structure::specificFunction):
1850 (JSC::StructureTransitionTableHashTraits::emptyValue):
1954 (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToTrampoline):
1955 (JSC::AbstractMacroAssembler::CodeRef::CodeRef):
1956 (JSC::AbstractMacroAssembler::CodeRef::trampolineAt):
1957 (JSC::AbstractMacroAssembler::PatchBuffer::PatchBuffer):
1958 (JSC::AbstractMacroAssembler::PatchBuffer::~PatchBuffer):
1959 (JSC::AbstractMacroAssembler::PatchBuffer::link):
1960 (JSC::AbstractMacroAssembler::PatchBuffer::linkTailRecursive):
1961 (JSC::AbstractMacroAssembler::PatchBuffer::patch):
1962 (JSC::AbstractMacroAssembler::PatchBuffer::complete):
1963 (JSC::AbstractMacroAssembler::PatchBuffer::finalize):
1964 (JSC::AbstractMacroAssembler::PatchBuffer::entry):
1966 (JSC::CodeBlock::CodeBlock):
1967 (JSC::CodeBlock::reparseForExceptionInfoIfNecessary):
1968 (JSC::CodeBlock::setJITCode):
1970 (JSC::CodeBlock::getBytecodeIndex):
1971 (JSC::CodeBlock::executablePool):
1974 (JSC::Interpreter::execute):
1975 (JSC::Interpreter::prepareForRepeatCall):
1977 (JSC::JIT::privateCompile):
1978 (JSC::JIT::privateCompileCTIMachineTrampolines):
1979 (JSC::JIT::linkCall):
1982 (JSC::JITCode::JITCode):
1983 (JSC::JITCode::operator bool):
1984 (JSC::JITCode::addressForCall):
1985 (JSC::JITCode::offsetOf):
1986 (JSC::JITCode::execute):
1987 (JSC::JITCode::size):
1988 (JSC::JITCode::executablePool):
1989 (JSC::JITCode::HostFunction):
1991 (JSC::JIT::privateCompilePutByIdTransition):
1992 (JSC::JIT::privateCompilePatchGetArrayLength):
1993 (JSC::JIT::privateCompileGetByIdProto):
1994 (JSC::JIT::privateCompileGetByIdSelfList):
1995 (JSC::JIT::privateCompileGetByIdProtoList):
1996 (JSC::JIT::privateCompileGetByIdChainList):
1997 (JSC::JIT::privateCompileGetByIdChain):
1999 (JSC::JITStubs::cti_vm_dontLazyLinkCall):
2000 (JSC::JITStubs::cti_vm_lazyLinkCall):
2002 (JSC::ProgramNode::generateJITCode):
2003 (JSC::EvalNode::generateJITCode):
2004 (JSC::FunctionBodyNode::FunctionBodyNode):
2005 (JSC::FunctionBodyNode::createNativeThunk):
2006 (JSC::FunctionBodyNode::generateJITCode):
2008 (JSC::ScopeNode::generatedJITCode):
2009 (JSC::ScopeNode::getExecutablePool):
2010 (JSC::ScopeNode::setJITCode):
2011 (JSC::ProgramNode::jitCode):
2012 (JSC::EvalNode::jitCode):
2013 (JSC::FunctionBodyNode::jitCode):
2015 (JSC::RegExp::match):
2017 (JSC::Yarr::RegexGenerator::compile):
2018 (JSC::Yarr::jitCompileRegex):
2019 (JSC::Yarr::executeRegex):
2021 (JSC::Yarr::RegexCodeBlock::RegexCodeBlock):
2022 (JSC::Yarr::RegexCodeBlock::pcreFallback):
2023 (JSC::Yarr::RegexCodeBlock::setFallback):
2024 (JSC::Yarr::RegexCodeBlock::operator bool):
2025 (JSC::Yarr::RegexCodeBlock::set):
2026 (JSC::Yarr::RegexCodeBlock::execute):
2039 (JSC::Interpreter::resolveGlobal):
2041 (JSC::JITStubs::cti_op_resolve_global):
2082 (JSC::BytecodeGenerator::BytecodeGenerator):
2094 (JSC::integerPartNoExp): replace strcpy() with memcpy(), ASSERT that the
2098 (JSC::fractionalPartToString): replace strcpy() with memcpy(), and ASSERT
2102 (JSC::numberProtoFuncToExponential): replace strcpy() with memcpy(), explicitly
2161 (JSC::RegisterFile::releaseExcessCapacity): Copy-paste typo.
2175 (JSC::RegisterFile::releaseExcessCapacity): Instead of doing complicated
2180 (JSC::isPageAligned):
2181 (JSC::RegisterFile::RegisterFile): Added ASSERTs to verify that it's
2184 (JSC::RegisterFile::shrink): No need to releaseExcessCapacity() if the
2200 (JSC::ExpressionNode::isNumber):
2201 (JSC::ExpressionNode::isString):
2202 (JSC::ExpressionNode::isNull):
2203 (JSC::ExpressionNode::isPure):
2204 (JSC::ExpressionNode::isLocation):
2205 (JSC::ExpressionNode::isResolveNode):
2206 (JSC::ExpressionNode::isBracketAccessorNode):
2207 (JSC::ExpressionNode::isDotAccessorNode):
2208 (JSC::ExpressionNode::isFuncExprNode):
2209 (JSC::ExpressionNode::isSimpleArray):
2210 (JSC::ExpressionNode::isAdd):
2211 (JSC::ExpressionNode::resultDescriptor):
2212 (JSC::StatementNode::firstLine):
2213 (JSC::StatementNode::lastLine):
2214 (JSC::StatementNode::isEmptyStatement):
2215 (JSC::StatementNode::isReturnNode):
2216 (JSC::StatementNode::isExprStatement):
2217 (JSC::StatementNode::isBlock):
2218 (JSC::NullNode::isNull):
2219 (JSC::BooleanNode::isPure):
2220 (JSC::NumberNode::value):
2221 (JSC::NumberNode::setValue):
2222 (JSC::NumberNode::isNumber):
2223 (JSC::NumberNode::isPure):
2224 (JSC::StringNode::isPure):
2225 (JSC::StringNode::isString):
2226 (JSC::ResolveNode::identifier):
2227 (JSC::ResolveNode::isLocation):
2228 (JSC::ResolveNode::isResolveNode):
2229 (JSC::BracketAccessorNode::isLocation):
2230 (JSC::BracketAccessorNode::isBracketAccessorNode):
2231 (JSC::DotAccessorNode::base):
2232 (JSC::DotAccessorNode::identifier):
2233 (JSC::DotAccessorNode::isLocation):
2234 (JSC::DotAccessorNode::isDotAccessorNode):
2235 (JSC::TypeOfResolveNode::identifier):
2236 (JSC::AddNode::isAdd):
2237 (JSC::BlockNode::isBlock):
2238 (JSC::EmptyStatementNode::isEmptyStatement):
2239 (JSC::ExprStatementNode::isExprStatement):
2240 (JSC::ReturnNode::isReturnNode):
2241 (JSC::ScopeNode::sourceURL):
2242 (JSC::ProgramNode::bytecode):
2243 (JSC::EvalNode::bytecode):
2244 (JSC::FunctionBodyNode::parameters):
2245 (JSC::FunctionBodyNode::toSourceString):
2246 (JSC::FunctionBodyNode::bytecode):
2247 (JSC::FuncExprNode::isFuncExprNode):
2260 (JSC::operator==): Inline UString's operator==, since it is called from
2283 (JSC::JITStubs::cti_op_load_varargs): Hoist some loop invariants that
2298 (JSC::JIT::compileGetDirectOffset):
2299 (JSC::JIT::privateCompileGetByIdProto):
2300 (JSC::JIT::privateCompileGetByIdProtoList):
2301 (JSC::JIT::privateCompileGetByIdChainList):
2302 (JSC::JIT::privateCompileGetByIdChain):
2333 Add JavaScriptCore/ to JSC include path only since it's not
2354 (JSC::MacroAssemblerX86Common::convertInt32ToDouble):
2355 (JSC::MacroAssemblerX86Common::branchDouble):
2356 (JSC::MacroAssemblerX86Common::branchTruncateDoubleToInt32):
2357 (JSC::MacroAssemblerX86Common::isSSE2Present):
2358 (JSC::MacroAssemblerX86Common::):
2381 (JSC::MacroAssemblerX86::MacroAssemblerX86):
2382 (JSC::MacroAssemblerX86::branch32):
2383 (JSC::MacroAssemblerX86::branchPtrWithPatch):
2384 (JSC::MacroAssemblerX86::supportsFloatingPoint):
2386 (JSC::MacroAssemblerX86Common::):
2387 (JSC::MacroAssemblerX86Common::loadDouble):
2388 (JSC::MacroAssemblerX86Common::storeDouble):
2389 (JSC::MacroAssemblerX86Common::addDouble):
2390 (JSC::MacroAssemblerX86Common::subDouble):
2391 (JSC::MacroAssemblerX86Common::mulDouble):
2392 (JSC::MacroAssemblerX86Common::convertInt32ToDouble):
2393 (JSC::MacroAssemblerX86Common::branchDouble):
2394 (JSC::MacroAssemblerX86Common::branchTruncateDoubleToInt32):
2395 (JSC::MacroAssemblerX86Common::branch32):
2396 (JSC::MacroAssemblerX86Common::branch16):
2397 (JSC::MacroAssemblerX86Common::branchTest32):
2398 (JSC::MacroAssemblerX86Common::branchAdd32):
2399 (JSC::MacroAssemblerX86Common::branchMul32):
2400 (JSC::MacroAssemblerX86Common::branchSub32):
2401 (JSC::MacroAssemblerX86Common::set32):
2402 (JSC::MacroAssemblerX86Common::setTest32):
2403 (JSC::MacroAssemblerX86Common::x86Condition):
2404 (JSC::MacroAssemblerX86Common::isSSE2Present):
2406 (JSC::MacroAssemblerX86_64::movePtrToDouble):
2407 (JSC::MacroAssemblerX86_64::moveDoubleToPtr):
2408 (JSC::MacroAssemblerX86_64::setPtr):
2409 (JSC::MacroAssemblerX86_64::branchPtr):
2410 (JSC::MacroAssemblerX86_64::branchTestPtr):
2411 (JSC::MacroAssemblerX86_64::branchAddPtr):
2412 (JSC::MacroAssemblerX86_64::branchSubPtr):
2413 (JSC::MacroAssemblerX86_64::supportsFloatingPoint):
2416 (JSC::JIT::JIT):
2419 (JSC::JIT::emit_op_rshift):
2420 (JSC::JIT::emitSlow_op_rshift):
2421 (JSC::JIT::emitSlow_op_jnless):
2422 (JSC::JIT::emitSlow_op_jnlesseq):
2423 (JSC::JIT::compileBinaryArithOp):
2424 (JSC::JIT::compileBinaryArithOpSlowCase):
2425 (JSC::JIT::emit_op_add):
2426 (JSC::JIT::emitSlow_op_add):
2427 (JSC::JIT::emit_op_mul):
2428 (JSC::JIT::emitSlow_op_mul):
2430 (JSC::JIT::privateCompilePutByIdTransition):
2443 (JSC::DebuggerCallFrame::calculatedFunctionName):
2453 (JSC::JIT::compileOpCall):
2454 (JSC::JIT::compileOpCallSlowCase):
2456 (JSC::JIT::compilePutByIdHotPath):
2509 …(JSC::JSObject::putDirect): Add a clearer assertion for a null value. The assertion on the next l…
2532 (JSC::JIT::privateCompile):
2544 (JSC::JIT::emit_op_loop_if_less):
2545 (JSC::JIT::emitSlow_op_loop_if_less):
2558 (JSC::SamplingThread::start):
2559 (JSC::SamplingThread::stop):
2660 (JSC::BytecodeGenerator::BytecodeGenerator): Updated since VarStack
2662 (JSC::BytecodeGenerator::emitPushNewScope): Updated to take a const
2669 (JSC::Debugger::recompileAllJSFunctions): Moved this function here from
2674 (JSC::Interpreter::execute): Updated since VarStack contains const
2678 (JSC::JITStubs::cti_vm_lazyLinkCall): Call isHostFunction on the body
2682 (JSC::JITStubs::cti_op_construct_JSConstruct): Ditto.
2684 (JSC::Profiler::createCallIdentifier): Ditto.
2700 (JSC::Lexer::setCode): Pass in ParserArena, used for identifiers.
2701 (JSC::Lexer::makeIdentifier): Changed return type to const Identifier*
2703 (JSC::Lexer::scanRegExp): Added out arguments that are const Identifier*
2706 (JSC::Lexer::skipRegExp): Added. Skips a regular expression without
2708 (JSC::Lexer::clear): Removed the code to manage m_identifiers, m_pattern,
2713 (JSC::ParserArenaFreeable::operator new): Added. Calls allocateFreeable
2715 (JSC::ParserArenaDeletable::operator new): Changed to call the
2717 (JSC::RegExpNode::RegExpNode): Changed arguments to Identifier instead
2719 (JSC::PropertyNode::PropertyNode): Added new constructor that makes
2722 (JSC::ContinueNode::ContinueNode): Initialize m_ident to nullIdentifier
2724 (JSC::BreakNode::BreakNode): Ditto.
2725 (JSC::CaseClauseNode::CaseClauseNode): Updated to use SourceElements*
2727 (JSC::BlockNode::BlockNode): Ditto.
2728 (JSC::ForInNode::ForInNode): Initialize m_ident to nullIdentifier.
2732 (JSC::ThrowableExpressionData::emitThrowError): Added an overload for
2734 (JSC::SourceElements::singleStatement): Added.
2735 (JSC::SourceElements::lastStatement): Added.
2736 (JSC::RegExpNode::emitBytecode): Updated since the pattern and flags
2739 (JSC::SourceElements::emitBytecode): Added. Replaces the old
2742 (JSC::BlockNode::lastStatement): Added.
2743 (JSC::BlockNode::emitBytecode): Changed to use emitBytecode instead of
2745 (JSC::CaseClauseNode::emitBytecode): Added.
2746 (JSC::CaseBlockNode::emitBytecodeForBlock): Changed to use emitBytecode
2748 (JSC::ScopeNodeData::ScopeNodeData): Changed to store the
2750 (JSC::ScopeNode::emitStatementsBytecode): Added.
2751 (JSC::ScopeNode::singleStatement): Added.
2752 (JSC::ProgramNode::emitBytecode): Call emitStatementsBytecode instead
2754 (JSC::EvalNode::emitBytecode): Ditto.
2755 (JSC::EvalNode::generateBytecode): Removed code to clear the children
2758 (JSC::FunctionBodyNode::emitBytecode): Call emitStatementsBytecode
2778 (JSC::Parser::parse): Pass the arena to the lexer.
2784 (JSC::ParserArena::ParserArena): Added. Initializes the new members,
2786 (JSC::ParserArena::freeablePool): Added. Computes the pool pointer,
2788 (JSC::ParserArena::deallocateObjects): Added. Contains the common
2791 (JSC::ParserArena::~ParserArena): Changed to call deallocateObjects.
2792 (JSC::ParserArena::reset): Ditto. Also added code to zero out the
2795 (JSC::ParserArena::makeNumericIdentifier): Added.
2796 (JSC::ParserArena::allocateFreeablePool): Added. Used when the pool
2798 (JSC::ParserArena::isEmpty): Added. No longer inline, which is fine
2806 (JSC::extractFunctionBody): Use singleStatement function rather than
2810 (JSC::functionProtoFuncToString): Call isHostFunction on the body
2814 (JSC::JSFunction::JSFunction): Moved the structure version of this in
2816 (JSC::JSFunction::isHostFunction): Moved this in here from the header.
2818 (JSC::JSFunction::setBody): Moved this in here. It's not hot enough that
2860 Add SamplingCounter tool to provide a simple mechanism for counting events in JSC
2875 (JSC::MacroAssemblerX86::addWithCarry32):
2876 (JSC::MacroAssemblerX86::and32):
2877 (JSC::MacroAssemblerX86::or32):
2879 (JSC::MacroAssemblerX86Common::and32):
2880 (JSC::MacroAssemblerX86Common::or32):
2882 (JSC::MacroAssemblerX86_64::and32):
2883 (JSC::MacroAssemblerX86_64::or32):
2884 (JSC::MacroAssemblerX86_64::addPtr):
2886 (JSC::X86Assembler::):
2887 (JSC::X86Assembler::adcl_im):
2888 (JSC::X86Assembler::addq_im):
2889 (JSC::X86Assembler::andl_im):
2890 (JSC::X86Assembler::orl_im):
2892 (JSC::AbstractSamplingCounter::dump):
2894 (JSC::AbstractSamplingCounter::count):
2895 (JSC::GlobalSamplingCounter::name):
2896 (JSC::SamplingCounter::SamplingCounter):
2899 (JSC::):
2901 (JSC::JIT::setSamplingFlag):
2902 (JSC::JIT::clearSamplingFlag):
2903 (JSC::JIT::emitCount):
2907 (JSC::ScopeNode::ScopeNode):
2926 …<rdar://problem/6881457> Crash occurs at JSC::Interpreter::execute() when loading http://www.sears…
2933 (JSC::BytecodeGenerator::emitPushNewScope):
2939 …<rdar://problem/6879881> Crash occurs at JSC::JSActivation::mark() when loading http://www.monster…
2953 (JSC::JSActivation::mark):
2990 (JSC::JITStubs::cti_op_load_varargs):
3012 (JSC::JSValue::strictEqualSlowCaseInline):
3013 (JSC::JSValue::strictEqual):
3023 (JSC::isInvalidParamForIn):
3024 (JSC::isInvalidParamForInstanceOf):
3025 (JSC::Interpreter::privateExecute):
3027 (JSC::JITStubs::cti_op_instanceof):
3047 (JSC::CodeBlock::dump):
3050 (JSC::BytecodeGenerator::BytecodeGenerator):
3051 (JSC::BytecodeGenerator::registerFor):
3052 (JSC::BytecodeGenerator::willResolveToArguments):
3053 (JSC::BytecodeGenerator::uncheckedRegisterForArguments):
3054 (JSC::BytecodeGenerator::createArgumentsIfNecessary):
3055 (JSC::BytecodeGenerator::emitCallEval):
3056 (JSC::BytecodeGenerator::emitPushScope):
3059 (JSC::Interpreter::privateExecute):
3060 (JSC::Interpreter::retrieveArguments):
3062 (JSC::JIT::privateCompileMainPass):
3065 (JSC::JIT::emit_op_create_arguments):
3066 (JSC::JIT::emit_op_init_arguments):
3068 (JSC::JITStubs::cti_op_tear_off_arguments):
3069 (JSC::JITStubs::cti_op_load_varargs):
3071 (JSC::ApplyFunctionCallDotNode::emitBytecode):
3081 (JSC::JIT::sampleCodeBlock):
3082 (JSC::JIT::sampleInstruction):
3084 (JSC::JIT::setSamplingFlag):
3085 (JSC::JIT::clearSamplingFlag):
3097 (JSC::JIT::privateCompileMainPass):
3098 (JSC::JIT::privateCompileSlowCases):
3100 (JSC::JSObject::hasInstance):
3102 (JSC::TypeInfo::TypeInfo):
3119 (JSC::isSSE2Present):
3120 (JSC::JIT::JIT):
3121 (JSC::JIT::unlinkCall):
3122 (JSC::JIT::linkCall):
3124 (JSC::JIT::isSSE2Present):
3126 (JSC::JIT::emit_op_mod):
3127 (JSC::JIT::emitSlow_op_mod):
3129 (JSC::JIT::compileOpCallVarargs):
3130 (JSC::JIT::compileOpCallVarargsSlowCase):
3146 (JSC::JIT::privateCompileMainPass):
3147 (JSC::JIT::privateCompileSlowCases):
3192 (JSC::JIT::privateCompileMainPass):
3193 (JSC::JIT::privateCompile):
3198 (JSC::JIT::restoreArgumentReference):
3201 (JSC::JITStubCall::JITStubCall):
3202 (JSC::JITStubCall::addArgument):
3203 (JSC::JITStubCall::call):
3204 (JSC::JITStubCall::):
3217 (JSC::JIT::privateCompileMainPass):
3218 (JSC::JIT::privateCompileSlowCases):
3243 (JSC::JIT::compileGetByIdChainList):
3244 (JSC::JIT::compileGetByIdChain):
3245 (JSC::JIT::compileCTIMachineTrampolines):
3247 (JSC::JIT::privateCompileGetByIdProto):
3248 (JSC::JIT::privateCompileGetByIdChainList):
3249 (JSC::JIT::privateCompileGetByIdChain):
3251 (JSC::JITStubs::tryCachePutByID):
3252 (JSC::JITStubs::tryCacheGetByID):
3367 (JSC::JSValue::get): Return the prototype itself if the property name
3370 (JSC::JSString::getOwnPropertySlot): Ditto.
3379 (JSC::JIT::privateCompileMainPass):
3380 (JSC::JIT::privateCompileCTIMachineTrampolines):
3383 (JSC::JIT::emitGetFromCallFrameHeaderPtr):
3384 (JSC::JIT::emitGetFromCallFrameHeader32):
3398 Symbian compilers cannot resolve WTF::PassRefPtr<JSC::Profile>
3443 (JSC::ParserArenaDeletable::operator new): Marked these as inline.
3456 (JSC::JIT::patchGetByIdSelf):
3457 (JSC::JIT::patchPutByIdReplace):
3479 (JSC::ParserArenaDeletable::operator new): Added.
3480 (JSC::ParserArenaRefCounted::ParserArenaRefCounted): Added.
3481 (JSC::Node::Node): Removed ParserRefCounted initializer.
3482 (JSC::ElementNode::ElementNode): Ditto.
3483 (JSC::PropertyNode::PropertyNode): Ditto.
3484 (JSC::ArgumentsNode::ArgumentsNode): Ditto.
3485 (JSC::SourceElements::SourceElements): Ditto.
3486 (JSC::ParameterNode::ParameterNode): Ditto.
3487 (JSC::FuncExprNode::FuncExprNode): Added ParserArenaRefCounted initializer.
3488 (JSC::FuncDeclNode::FuncDeclNode): Ditto.
3489 (JSC::CaseClauseNode::CaseClauseNode): Removed ParserRefCounted initializer.
3490 (JSC::ClauseListNode::ClauseListNode): Ditto.
3491 (JSC::CaseBlockNode::CaseBlockNode): Ditto.
3497 (JSC::ScopeNode::ScopeNode): Added ParserArenaRefCounted initializer.
3498 (JSC::ProgramNode::create): Use the proper version of operator new for
3501 (JSC::EvalNode::create): Use the proper version of operator new for
3504 (JSC::FunctionBodyNode::createNativeThunk): Use the proper version
3506 (JSC::FunctionBodyNode::create): More of the same.
3513 (JSC::Parser::parse): Set m_sourceElements to 0 since it now starts
3516 (JSC::Parser::reparseInPlace): Removed now-unneeded get() function.
3517 (JSC::Parser::didFinishParsing): Replaced uses of ParserRefCountedData
3526 (JSC::JSGlobalData::~JSGlobalData): Removed arena-related code, since it's
3528 (JSC::JSGlobalData::createLeaked): Removed unneeded #ifndef.
3529 (JSC::JSGlobalData::createNativeThunk): Tweaked #if a bit.
3577 (JSC::BytecodeGenerator::BytecodeGenerator): Update for use of raw pointers
3579 (JSC::BytecodeGenerator::emitCall): Ditto.
3580 (JSC::BytecodeGenerator::emitConstruct): Ditto.
3594 (JSC::ParserRefCounted::ParserRefCounted): Updated for name change of
3596 (JSC::SourceElements::append): Use raw pointers.
3597 (JSC::ArrayNode::emitBytecode): Ditto.
3598 (JSC::ArrayNode::isSimpleArray): Ditto.
3599 (JSC::ArrayNode::toArgumentList): Ditto.
3600 (JSC::ObjectLiteralNode::emitBytecode): Ditto.
3601 (JSC::PropertyListNode::emitBytecode): Ditto.
3602 (JSC::BracketAccessorNode::emitBytecode): Ditto.
3603 (JSC::DotAccessorNode::emitBytecode): Ditto.
3604 (JSC::ArgumentListNode::emitBytecode): Ditto.
3605 (JSC::NewExprNode::emitBytecode): Ditto.
3606 (JSC::EvalFunctionCallNode::emitBytecode): Ditto.
3607 (JSC::FunctionCallValueNode::emitBytecode): Ditto.
3608 (JSC::FunctionCallResolveNode::emitBytecode): Ditto.
3609 (JSC::FunctionCallBracketNode::emitBytecode): Ditto.
3610 (JSC::FunctionCallDotNode::emitBytecode): Ditto.
3611 (JSC::CallFunctionCallDotNode::emitBytecode): Ditto.
3612 (JSC::ApplyFunctionCallDotNode::emitBytecode): Ditto.
3613 (JSC::PostfixBracketNode::emitBytecode): Ditto.
3614 (JSC::PostfixDotNode::emitBytecode): Ditto.
3615 (JSC::DeleteBracketNode::emitBytecode): Ditto.
3616 (JSC::DeleteDotNode::emitBytecode): Ditto.
3617 (JSC::DeleteValueNode::emitBytecode): Ditto.
3618 (JSC::VoidNode::emitBytecode): Ditto.
3619 (JSC::TypeOfValueNode::emitBytecode): Ditto.
3620 (JSC::PrefixBracketNode::emitBytecode): Ditto.
3621 (JSC::PrefixDotNode::emitBytecode): Ditto.
3622 (JSC::UnaryOpNode::emitBytecode): Ditto.
3623 (JSC::BinaryOpNode::emitStrcat): Ditto.
3624 (JSC::BinaryOpNode::emitBytecode): Ditto.
3625 (JSC::EqualNode::emitBytecode): Ditto.
3626 (JSC::StrictEqualNode::emitBytecode): Ditto.
3627 (JSC::ReverseBinaryOpNode::emitBytecode): Ditto.
3628 (JSC::ThrowableBinaryOpNode::emitBytecode): Ditto.
3629 (JSC::InstanceOfNode::emitBytecode): Ditto.
3630 (JSC::LogicalOpNode::emitBytecode): Ditto.
3631 (JSC::ConditionalNode::emitBytecode): Ditto.
3632 (JSC::ReadModifyResolveNode::emitBytecode): Ditto.
3633 (JSC::AssignResolveNode::emitBytecode): Ditto.
3634 (JSC::AssignDotNode::emitBytecode): Ditto.
3635 (JSC::ReadModifyDotNode::emitBytecode): Ditto.
3636 (JSC::AssignBracketNode::emitBytecode): Ditto.
3637 (JSC::ReadModifyBracketNode::emitBytecode): Ditto.
3638 (JSC::CommaNode::emitBytecode): Ditto.
3639 (JSC::ConstDeclNode::emitCodeSingle): Ditto.
3640 (JSC::ConstDeclNode::emitBytecode): Ditto.
3641 (JSC::ConstStatementNode::emitBytecode): Ditto.
3642 (JSC::statementListEmitCode): Ditto.
3643 (JSC::BlockNode::emitBytecode): Ditto.
3644 (JSC::ExprStatementNode::emitBytecode): Ditto.
3645 (JSC::VarStatementNode::emitBytecode): Ditto.
3646 (JSC::IfNode::emitBytecode): Ditto.
3647 (JSC::IfElseNode::emitBytecode): Ditto.
3648 (JSC::DoWhileNode::emitBytecode): Ditto.
3649 (JSC::WhileNode::emitBytecode): Ditto.
3650 (JSC::ForNode::emitBytecode): Ditto.
3651 (JSC::ForInNode::emitBytecode): Ditto.
3652 (JSC::ReturnNode::emitBytecode): Ditto.
3653 (JSC::WithNode::emitBytecode): Ditto.
3654 (JSC::CaseBlockNode::tryOptimizedSwitch): Ditto.
3655 (JSC::CaseBlockNode::emitBytecodeForBlock): Ditto.
3656 (JSC::SwitchNode::emitBytecode): Ditto.
3657 (JSC::LabelNode::emitBytecode): Ditto.
3658 (JSC::ThrowNode::emitBytecode): Ditto.
3659 (JSC::TryNode::emitBytecode): Ditto.
3660 (JSC::ScopeNodeData::ScopeNodeData): Use swap to transfer ownership
3662 (JSC::ScopeNode::ScopeNode): Pass in the arena when creating the
3664 (JSC::ProgramNode::ProgramNode): Made this inline since it's used
3666 (JSC::ProgramNode::create): Changed this to return a PassRefPtr since
3674 (JSC::EvalNode::EvalNode): Ditto.
3675 (JSC::EvalNode::create): Ditto.
3676 (JSC::FunctionBodyNode::FunctionBodyNode): Ditto.
3677 (JSC::FunctionBodyNode::createNativeThunk): Moved the code that
3679 (JSC::FunctionBodyNode::create): Same change as the other create
3681 (JSC::FunctionBodyNode::emitBytecode): Use raw pointers.
3689 (JSC::Parser::reparseInPlace): Pass the arena in.
3692 (JSC::Parser::parse): Updated for name change of parserObjects to parserArena.
3693 (JSC::Parser::reparse): Ditto.
3695 (JSC::extractFunctionBody): Ditto.
3697 (JSC::JSGlobalData::~JSGlobalData): Ditto.
3698 (JSC::JSGlobalData::createNativeThunk): Moved arena manipulation into the
3728 (JSC::JSObject::offsetForLocation):
3729 (JSC::JSObject::locationForOffset):
3742 (JSC::integerPartNoExp):
3743 (JSC::numberProtoFuncToExponential):
3745 (JSC::concatenate):
3746 (JSC::UString::from):
3785 (JSC::JIT::compileFastArithSlow_op_rshift): Fully use the JITStubCall
3822 (JSC::X86Assembler::patchLoadToLEA):
3829 (JSC::X86Assembler::patchLoadToLEA):
3848 (JSC::AbstractMacroAssembler::CodeLocationInstruction::CodeLocationInstruction):
3849 (JSC::AbstractMacroAssembler::CodeLocationInstruction::patchLoadToLEA):
3850 (JSC::::CodeLocationCommon::instructionAtOffset):
3852 (JSC::MacroAssembler::storePtr):
3854 (JSC::MacroAssemblerX86::store32):
3856 (JSC::MacroAssemblerX86_64::storePtr):
3858 (JSC::X86Assembler::movq_EAXm):
3859 (JSC::X86Assembler::movl_rm):
3860 (JSC::X86Assembler::patchLoadToLEA):
3862 (JSC::JIT::privateCompileMainPass):
3865 (JSC::JIT::compileGetByIdHotPath):
3866 (JSC::JIT::compilePutByIdHotPath):
3867 (JSC::JIT::compilePutDirectOffset):
3868 (JSC::JIT::compileGetDirectOffset):
3869 (JSC::JIT::privateCompilePutByIdTransition):
3870 (JSC::JIT::patchGetByIdSelf):
3871 (JSC::JIT::patchPutByIdReplace):
3872 (JSC::JIT::privateCompileGetByIdSelf):
3873 (JSC::JIT::privateCompileGetByIdProto):
3874 (JSC::JIT::privateCompileGetByIdSelfList):
3875 (JSC::JIT::privateCompileGetByIdProtoList):
3876 (JSC::JIT::privateCompileGetByIdChainList):
3877 (JSC::JIT::privateCompileGetByIdChain):
3878 (JSC::JIT::privateCompilePutByIdReplace):
3880 (JSC::JSObject::mark):
3881 (JSC::JSObject::removeDirect):
3883 (JSC::JSObject::propertyStorage):
3884 (JSC::JSObject::getDirect):
3885 (JSC::JSObject::getOffset):
3886 (JSC::JSObject::offsetForLocation):
3887 (JSC::JSObject::locationForOffset):
3888 (JSC::JSObject::getDirectOffset):
3889 (JSC::JSObject::putDirectOffset):
3890 (JSC::JSObject::isUsingInlineStorage):
3891 (JSC::JSObject::):
3892 (JSC::JSObject::JSObject):
3893 (JSC::JSObject::~JSObject):
3894 (JSC::Structure::isUsingInlineStorage):
3895 (JSC::JSObject::putDirect):
3896 (JSC::JSObject::putDirectWithoutTransition):
3897 (JSC::JSObject::allocatePropertyStorageInline):
3915 (JSC::JIT::privateCompileMainPass):
3917 (JSC::JIT::compileFastArithSlow_op_post_inc):
3918 (JSC::JIT::compileFastArithSlow_op_post_dec):
3920 (JSC::JITStubs::cti_op_call_arityCheck):
3921 (JSC::JITStubs::cti_op_resolve_func):
3922 (JSC::JITStubs::cti_op_post_inc):
3923 (JSC::JITStubs::cti_op_resolve_with_base):
3924 (JSC::JITStubs::cti_op_post_dec):
3926 (JSC::):
3933 in Safari at com.apple.JavaScriptCore • JSC::BytecodeGenerator::emitComplexJumpScopes + 468
3937 (JSC::BytecodeGenerator::emitComplexJumpScopes): Guard the whole loop
3968 (JSC::Interpreter::callEval):
3970 (JSC::globalFuncEval):
3972 (JSC::isStringCharacter):
3973 (JSC::LiteralParser::Lexer::lex):
3974 (JSC::LiteralParser::Lexer::lexString):
3975 (JSC::LiteralParser::Lexer::lexNumber):
3976 (JSC::LiteralParser::parseStatement):
3977 (JSC::LiteralParser::parseExpression):
3978 (JSC::LiteralParser::parseArray):
3979 (JSC::LiteralParser::parseObject):
3980 (JSC::LiteralParser::StackGuard::StackGuard):
3981 (JSC::LiteralParser::StackGuard::~StackGuard):
3982 (JSC::LiteralParser::StackGuard::isSafe):
3984 (JSC::LiteralParser::LiteralParser):
3985 (JSC::LiteralParser::attemptJSONParse):
3986 (JSC::LiteralParser::):
3987 (JSC::LiteralParser::Lexer::Lexer):
3988 (JSC::LiteralParser::Lexer::next):
3989 (JSC::LiteralParser::Lexer::currentToken):
3990 (JSC::LiteralParser::abortParse):
4014 (JSC::JIT::emitTimeoutCheck):
4015 (JSC::JIT::privateCompileMainPass):
4016 (JSC::JIT::privateCompileSlowCases):
4017 (JSC::JIT::privateCompile):
4019 (JSC::JIT::JSRInfo::JSRInfo):
4020 (JSC::JITStubCall::JITStubCall):
4021 (JSC::JITStubCall::addArgument):
4022 (JSC::JITStubCall::call):
4023 (JSC::JITStubCall::):
4024 (JSC::CallEvalJITStub::CallEvalJITStub):
4026 (JSC::JIT::compileFastArithSlow_op_lshift):
4027 (JSC::JIT::compileFastArithSlow_op_rshift):
4028 (JSC::JIT::compileFastArithSlow_op_jnless):
4029 (JSC::JIT::compileFastArithSlow_op_bitand):
4030 (JSC::JIT::compileFastArithSlow_op_mod):
4031 (JSC::JIT::compileFastArith_op_mod):
4032 (JSC::JIT::compileFastArithSlow_op_post_inc):
4033 (JSC::JIT::compileFastArithSlow_op_post_dec):
4034 (JSC::JIT::compileFastArithSlow_op_pre_inc):
4035 (JSC::JIT::compileFastArithSlow_op_pre_dec):
4036 (JSC::JIT::compileFastArith_op_add):
4037 (JSC::JIT::compileFastArith_op_mul):
4038 (JSC::JIT::compileFastArith_op_sub):
4039 (JSC::JIT::compileBinaryArithOpSlowCase):
4040 (JSC::JIT::compileFastArithSlow_op_add):
4041 (JSC::JIT::compileFastArithSlow_op_mul):
4043 (JSC::JIT::compileOpCall):
4044 (JSC::):
4046 (JSC::JIT::compileGetByIdHotPath):
4047 (JSC::JIT::compilePutByIdHotPath):
4048 (JSC::JIT::compileGetByIdSlowCase):
4049 (JSC::JIT::compilePutByIdSlowCase):
4051 (JSC::JITStubs::cti_op_resolve_func):
4052 (JSC::JITStubs::cti_op_resolve_with_base):
4065 (JSC::CodeBlock::dump): Add support for dumping op_jnlesseq.
4068 (JSC::BytecodeGenerator::emitJumpIfFalse): Add a peephole optimization
4071 (JSC::Interpreter::privateExecute): Add case for op_jnlesseq.
4073 (JSC::JIT::privateCompileMainPass): Add case for op_jnlesseq.
4074 (JSC::JIT::privateCompileSlowCases): Add case for op_jnlesseq.
4077 (JSC::JIT::compileFastArith_op_jnlesseq): Added.
4078 (JSC::JIT::compileFastArithSlow_op_jnlesseq): Added.
4080 (JSC::JITStubs::cti_op_jlesseq): Added.
4090 (JSC::JIT::compileFastArithSlow_op_jnless): Avoid accidentaly treating an
4103 (JSC::SamplingTool::notifyOfScope):
4105 (JSC::SamplingTool::~SamplingTool):
4125 (JSC::compareLineCountInfoSampling):
4126 (JSC::SamplingTool::dump):
4128 (JSC::SamplingTool::SamplingTool):
4130 (JSC::ScopeNode::ScopeNode):
4145 (JSC::SamplingThread::start):
4146 (JSC::SamplingThread::stop):
4207 (JSC::JIT::privateCompileCTIMachineTrampolines):
4237 (JSC::expandedSize):
4246 (JSC::JSGlobalData::createNativeThunk): Missed a spot in my last patch.
4262 (JSC::Parser::reparseInPlace): Missed a spot in my last patch.
4271 (JSC::Parser::parse):
4273 (JSC::Parser::parse):
4274 (JSC::Parser::reparse): Shrink the parsedObjects vector after allocating
4279 (JSC::JSGlobalData::~JSGlobalData): ASSERT that we're not being torn
4290 (JSC::JIT::privateCompileMainPass):
4292 (JSC::JIT::restoreArgumentReference):
4294 (JSC::):
4314 (JSC::ExecState::argumentCount):
4316 (JSC::JIT::privateCompileCTIMachineTrampolines):
4329 (JSC::callArrayConstructor):
4331 (JSC::arrayProtoFuncToString):
4332 (JSC::arrayProtoFuncToLocaleString):
4333 (JSC::arrayProtoFuncJoin):
4334 (JSC::arrayProtoFuncConcat):
4335 (JSC::arrayProtoFuncPop):
4336 (JSC::arrayProtoFuncPush):
4337 (JSC::arrayProtoFuncReverse):
4338 (JSC::arrayProtoFuncShift):
4339 (JSC::arrayProtoFuncSlice):
4340 (JSC::arrayProtoFuncSort):
4341 (JSC::arrayProtoFuncSplice):
4342 (JSC::arrayProtoFuncUnShift):
4343 (JSC::arrayProtoFuncFilter):
4344 (JSC::arrayProtoFuncMap):
4345 (JSC::arrayProtoFuncEvery):
4346 (JSC::arrayProtoFuncForEach):
4347 (JSC::arrayProtoFuncSome):
4348 (JSC::arrayProtoFuncReduce):
4349 (JSC::arrayProtoFuncReduceRight):
4350 (JSC::arrayProtoFuncIndexOf):
4351 (JSC::arrayProtoFuncLastIndexOf):
4353 (JSC::callBooleanConstructor):
4355 (JSC::booleanProtoFuncToString):
4356 (JSC::booleanProtoFuncValueOf):
4359 (JSC::callDate):
4360 (JSC::dateParse):
4361 (JSC::dateNow):
4362 (JSC::dateUTC):
4364 (JSC::dateProtoFuncToString):
4365 (JSC::dateProtoFuncToUTCString):
4366 (JSC::dateProtoFuncToDateString):
4367 (JSC::dateProtoFuncToTimeString):
4368 (JSC::dateProtoFuncToLocaleString):
4369 (JSC::dateProtoFuncToLocaleDateString):
4370 (JSC::dateProtoFuncToLocaleTimeString):
4371 (JSC::dateProtoFuncGetTime):
4372 (JSC::dateProtoFuncGetFullYear):
4373 (JSC::dateProtoFuncGetUTCFullYear):
4374 (JSC::dateProtoFuncToGMTString):
4375 (JSC::dateProtoFuncGetMonth):
4376 (JSC::dateProtoFuncGetUTCMonth):
4377 (JSC::dateProtoFuncGetDate):
4378 (JSC::dateProtoFuncGetUTCDate):
4379 (JSC::dateProtoFuncGetDay):
4380 (JSC::dateProtoFuncGetUTCDay):
4381 (JSC::dateProtoFuncGetHours):
4382 (JSC::dateProtoFuncGetUTCHours):
4383 (JSC::dateProtoFuncGetMinutes):
4384 (JSC::dateProtoFuncGetUTCMinutes):
4385 (JSC::dateProtoFuncGetSeconds):
4386 (JSC::dateProtoFuncGetUTCSeconds):
4387 (JSC::dateProtoFuncGetMilliSeconds):
4388 (JSC::dateProtoFuncGetUTCMilliseconds):
4389 (JSC::dateProtoFuncGetTimezoneOffset):
4390 (JSC::dateProtoFuncSetTime):
4391 (JSC::dateProtoFuncSetMilliSeconds):
4392 (JSC::dateProtoFuncSetUTCMilliseconds):
4393 (JSC::dateProtoFuncSetSeconds):
4394 (JSC::dateProtoFuncSetUTCSeconds):
4395 (JSC::dateProtoFuncSetMinutes):
4396 (JSC::dateProtoFuncSetUTCMinutes):
4397 (JSC::dateProtoFuncSetHours):
4398 (JSC::dateProtoFuncSetUTCHours):
4399 (JSC::dateProtoFuncSetDate):
4400 (JSC::dateProtoFuncSetUTCDate):
4401 (JSC::dateProtoFuncSetMonth):
4402 (JSC::dateProtoFuncSetUTCMonth):
4403 (JSC::dateProtoFuncSetFullYear):
4404 (JSC::dateProtoFuncSetUTCFullYear):
4405 (JSC::dateProtoFuncSetYear):
4406 (JSC::dateProtoFuncGetYear):
4408 (JSC::callErrorConstructor):
4410 (JSC::errorProtoFuncToString):
4412 (JSC::callFunctionConstructor):
4414 (JSC::callFunctionPrototype):
4415 (JSC::functionProtoFuncToString):
4416 (JSC::functionProtoFuncApply):
4417 (JSC::functionProtoFuncCall):
4419 (JSC::JSFunction::nativeFunction):
4420 (JSC::JSFunction::setScopeChain):
4422 (JSC::globalFuncEval):
4423 (JSC::globalFuncParseInt):
4424 (JSC::globalFuncParseFloat):
4425 (JSC::globalFuncIsNaN):
4426 (JSC::globalFuncIsFinite):
4427 (JSC::globalFuncDecodeURI):
4428 (JSC::globalFuncDecodeURIComponent):
4429 (JSC::globalFuncEncodeURI):
4430 (JSC::globalFuncEncodeURIComponent):
4431 (JSC::globalFuncEscape):
4432 (JSC::globalFuncUnescape):
4433 (JSC::globalFuncJSCPrint):
4436 (JSC::mathProtoFuncAbs):
4437 (JSC::mathProtoFuncACos):
4438 (JSC::mathProtoFuncASin):
4439 (JSC::mathProtoFuncATan):
4440 (JSC::mathProtoFuncATan2):
4441 (JSC::mathProtoFuncCeil):
4442 (JSC::mathProtoFuncCos):
4443 (JSC::mathProtoFuncExp):
4444 (JSC::mathProtoFuncFloor):
4445 (JSC::mathProtoFuncLog):
4446 (JSC::mathProtoFuncMax):
4447 (JSC::mathProtoFuncMin):
4448 (JSC::mathProtoFuncPow):
4449 (JSC::mathProtoFuncRandom):
4450 (JSC::mathProtoFuncRound):
4451 (JSC::mathProtoFuncSin):
4452 (JSC::mathProtoFuncSqrt):
4453 (JSC::mathProtoFuncTan):
4455 (JSC::callNativeErrorConstructor):
4458 (JSC::callNumberConstructor):
4460 (JSC::numberProtoFuncToString):
4461 (JSC::numberProtoFuncToLocaleString):
4462 (JSC::numberProtoFuncValueOf):
4463 (JSC::numberProtoFuncToFixed):
4464 (JSC::numberProtoFuncToExponential):
4465 (JSC::numberProtoFuncToPrecision):
4467 (JSC::callObjectConstructor):
4469 (JSC::objectProtoFuncValueOf):
4470 (JSC::objectProtoFuncHasOwnProperty):
4471 (JSC::objectProtoFuncIsPrototypeOf):
4472 (JSC::objectProtoFuncDefineGetter):
4473 (JSC::objectProtoFuncDefineSetter):
4474 (JSC::objectProtoFuncLookupGetter):
4475 (JSC::objectProtoFuncLookupSetter):
4476 (JSC::objectProtoFuncPropertyIsEnumerable):
4477 (JSC::objectProtoFuncToLocaleString):
4478 (JSC::objectProtoFuncToString):
4481 (JSC::callRegExpConstructor):
4483 (JSC::callRegExpObject):
4485 (JSC::regExpProtoFuncTest):
4486 (JSC::regExpProtoFuncExec):
4487 (JSC::regExpProtoFuncCompile):
4488 (JSC::regExpProtoFuncToString):
4490 (JSC::stringFromCharCode):
4491 (JSC::callStringConstructor):
4493 (JSC::stringProtoFuncReplace):
4494 (JSC::stringProtoFuncToString):
4495 (JSC::stringProtoFuncCharAt):
4496 (JSC::stringProtoFuncCharCodeAt):
4497 (JSC::stringProtoFuncConcat):
4498 (JSC::stringProtoFuncIndexOf):
4499 (JSC::stringProtoFuncLastIndexOf):
4500 (JSC::stringProtoFuncMatch):
4501 (JSC::stringProtoFuncSearch):
4502 (JSC::stringProtoFuncSlice):
4503 (JSC::stringProtoFuncSplit):
4504 (JSC::stringProtoFuncSubstr):
4505 (JSC::stringProtoFuncSubstring):
4506 (JSC::stringProtoFuncToLowerCase):
4507 (JSC::stringProtoFuncToUpperCase):
4508 (JSC::stringProtoFuncLocaleCompare):
4509 (JSC::stringProtoFuncBig):
4510 (JSC::stringProtoFuncSmall):
4511 (JSC::stringProtoFuncBlink):
4512 (JSC::stringProtoFuncBold):
4513 (JSC::stringProtoFuncFixed):
4514 (JSC::stringProtoFuncItalics):
4515 (JSC::stringProtoFuncStrike):
4516 (JSC::stringProtoFuncSub):
4517 (JSC::stringProtoFuncSup):
4518 (JSC::stringProtoFuncFontcolor):
4519 (JSC::stringProtoFuncFontsize):
4520 (JSC::stringProtoFuncAnchor):
4521 (JSC::stringProtoFuncLink):
4547 (JSC::JIT::compileFastArithSlow_op_jnless):
4554 (JSC::JIT::compileFastArithSlow_op_jnless):
4643 (JSC::JIT::privateCompileMainPass):
4647 (JSC::JIT::privateCompileSlowCases):
4651 (JSC::JIT::compileFastArith_op_jnless): Factored out from main compile loop.
4655 (JSC::JIT::compileFastArithSlow_op_jnless):
4660 (JSC::CodeBlock::dump): Fix dumping of op_jnless (tangentially related bugfix).
4671 (JSC::):
4672 (JSC::StackHack::StackHack):
4673 (JSC::StackHack::~StackHack):
4674 (JSC::returnToThrowTrampoline):
4675 (JSC::JITStubs::cti_op_convert_this):
4676 (JSC::JITStubs::cti_op_end):
4677 (JSC::JITStubs::cti_op_add):
4678 (JSC::JITStubs::cti_op_pre_inc):
4679 (JSC::JITStubs::cti_timeout_check):
4680 (JSC::JITStubs::cti_register_file_check):
4681 (JSC::JITStubs::cti_op_loop_if_less):
4682 (JSC::JITStubs::cti_op_loop_if_lesseq):
4683 (JSC::JITStubs::cti_op_new_object):
4684 (JSC::JITStubs::cti_op_put_by_id_generic):
4685 (JSC::JITStubs::cti_op_get_by_id_generic):
4686 (JSC::JITStubs::cti_op_put_by_id):
4687 (JSC::JITStubs::cti_op_put_by_id_second):
4688 (JSC::JITStubs::cti_op_put_by_id_fail):
4689 (JSC::JITStubs::cti_op_get_by_id):
4690 (JSC::JITStubs::cti_op_get_by_id_second):
4691 (JSC::JITStubs::cti_op_get_by_id_self_fail):
4692 (JSC::JITStubs::cti_op_get_by_id_proto_list):
4693 (JSC::JITStubs::cti_op_get_by_id_proto_list_full):
4694 (JSC::JITStubs::cti_op_get_by_id_proto_fail):
4695 (JSC::JITStubs::cti_op_get_by_id_array_fail):
4696 (JSC::JITStubs::cti_op_get_by_id_string_fail):
4697 (JSC::JITStubs::cti_op_instanceof):
4698 (JSC::JITStubs::cti_op_del_by_id):
4699 (JSC::JITStubs::cti_op_mul):
4700 (JSC::JITStubs::cti_op_new_func):
4701 (JSC::JITStubs::cti_op_call_JSFunction):
4702 (JSC::JITStubs::cti_op_call_arityCheck):
4703 (JSC::JITStubs::cti_vm_dontLazyLinkCall):
4704 (JSC::JITStubs::cti_vm_lazyLinkCall):
4705 (JSC::JITStubs::cti_op_push_activation):
4706 (JSC::JITStubs::cti_op_call_NotJSFunction):
4707 (JSC::JITStubs::cti_op_create_arguments):
4708 (JSC::JITStubs::cti_op_create_arguments_no_params):
4709 (JSC::JITStubs::cti_op_tear_off_activation):
4710 (JSC::JITStubs::cti_op_tear_off_arguments):
4711 (JSC::JITStubs::cti_op_profile_will_call):
4712 (JSC::JITStubs::cti_op_profile_did_call):
4713 (JSC::JITStubs::cti_op_ret_scopeChain):
4714 (JSC::JITStubs::cti_op_new_array):
4715 (JSC::JITStubs::cti_op_resolve):
4716 (JSC::JITStubs::cti_op_construct_JSConstruct):
4717 (JSC::JITStubs::cti_op_construct_NotJSConstruct):
4718 (JSC::JITStubs::cti_op_get_by_val):
4719 (JSC::JITStubs::cti_op_get_by_val_string):
4720 (JSC::JITStubs::cti_op_get_by_val_byte_array):
4721 (JSC::JITStubs::cti_op_resolve_func):
4722 (JSC::JITStubs::cti_op_sub):
4723 (JSC::JITStubs::cti_op_put_by_val):
4724 (JSC::JITStubs::cti_op_put_by_val_array):
4725 (JSC::JITStubs::cti_op_put_by_val_byte_array):
4726 (JSC::JITStubs::cti_op_lesseq):
4727 (JSC::JITStubs::cti_op_loop_if_true):
4728 (JSC::JITStubs::cti_op_load_varargs):
4729 (JSC::JITStubs::cti_op_negate):
4730 (JSC::JITStubs::cti_op_resolve_base):
4731 (JSC::JITStubs::cti_op_resolve_skip):
4732 (JSC::JITStubs::cti_op_resolve_global):
4733 (JSC::JITStubs::cti_op_div):
4734 (JSC::JITStubs::cti_op_pre_dec):
4735 (JSC::JITStubs::cti_op_jless):
4736 (JSC::JITStubs::cti_op_not):
4737 (JSC::JITStubs::cti_op_jtrue):
4738 (JSC::JITStubs::cti_op_post_inc):
4739 (JSC::JITStubs::cti_op_eq):
4740 (JSC::JITStubs::cti_op_lshift):
4741 (JSC::JITStubs::cti_op_bitand):
4742 (JSC::JITStubs::cti_op_rshift):
4743 (JSC::JITStubs::cti_op_bitnot):
4744 (JSC::JITStubs::cti_op_resolve_with_base):
4745 (JSC::JITStubs::cti_op_new_func_exp):
4746 (JSC::JITStubs::cti_op_mod):
4747 (JSC::JITStubs::cti_op_less):
4748 (JSC::JITStubs::cti_op_neq):
4749 (JSC::JITStubs::cti_op_post_dec):
4750 (JSC::JITStubs::cti_op_urshift):
4751 (JSC::JITStubs::cti_op_bitxor):
4752 (JSC::JITStubs::cti_op_new_regexp):
4753 (JSC::JITStubs::cti_op_bitor):
4754 (JSC::JITStubs::cti_op_call_eval):
4755 (JSC::JITStubs::cti_op_throw):
4756 (JSC::JITStubs::cti_op_get_pnames):
4757 (JSC::JITStubs::cti_op_next_pname):
4758 (JSC::JITStubs::cti_op_push_scope):
4759 (JSC::JITStubs::cti_op_pop_scope):
4760 (JSC::JITStubs::cti_op_typeof):
4761 (JSC::JITStubs::cti_op_is_undefined):
4762 (JSC::JITStubs::cti_op_is_boolean):
4763 (JSC::JITStubs::cti_op_is_number):
4764 (JSC::JITStubs::cti_op_is_string):
4765 (JSC::JITStubs::cti_op_is_object):
4766 (JSC::JITStubs::cti_op_is_function):
4767 (JSC::JITStubs::cti_op_stricteq):
4768 (JSC::JITStubs::cti_op_to_primitive):
4769 (JSC::JITStubs::cti_op_strcat):
4770 (JSC::JITStubs::cti_op_nstricteq):
4771 (JSC::JITStubs::cti_op_to_jsnumber):
4772 (JSC::JITStubs::cti_op_in):
4773 (JSC::JITStubs::cti_op_push_new_scope):
4774 (JSC::JITStubs::cti_op_jmp_scopes):
4775 (JSC::JITStubs::cti_op_put_by_index):
4776 (JSC::JITStubs::cti_op_switch_imm):
4777 (JSC::JITStubs::cti_op_switch_char):
4778 (JSC::JITStubs::cti_op_switch_string):
4779 (JSC::JITStubs::cti_op_del_by_val):
4780 (JSC::JITStubs::cti_op_put_getter):
4781 (JSC::JITStubs::cti_op_put_setter):
4782 (JSC::JITStubs::cti_op_new_error):
4783 (JSC::JITStubs::cti_op_debug):
4784 (JSC::JITStubs::cti_vm_throw):
4786 (JSC::JITStackFrame::returnAddressSlot):
4793 (JSC::Lexer::lex): Fix missing braces. This would make us always
4807 (JSC::Lexer::currentCharacter): Added.
4808 (JSC::Lexer::currentOffset): Changed to call currentCharacter for clarity.
4809 (JSC::Lexer::setCode): Removed code to set now-obsolete m_skipLineEnd.
4810 (JSC::Lexer::shiftLineTerminator): Added. Handles line numbers and the
4812 (JSC::Lexer::makeIdentifier): Changed to take characters and length rather
4815 (JSC::Lexer::lastTokenWasRestrKeyword): Added.
4816 (JSC::isNonASCIIIdentStart): Broke out the non-inline part.
4817 (JSC::isIdentStart): Moved here.
4818 (JSC::isNonASCIIIdentPart): Broke out the non-inline part.
4819 (JSC::isIdentPart): Moved here.
4820 (JSC::singleEscape): Moved here, and removed some unneeded cases.
4821 (JSC::Lexer::record8): Moved here.
4822 (JSC::Lexer::record16): Moved here.
4823 (JSC::Lexer::lex): Rewrote this whole function to use goto and not use
4826 (JSC::Lexer::scanRegExp): Changed to use the new version of isLineTerminator.
4836 (JSC::stringProtoFuncReplace): Streamlined the case where we don't replace anything.
4850 (JSC::JIT::privateCompileMainPass):
4851 (JSC::JIT::privateCompile):
4853 (JSC::):
4858 (JSC::ScopeChainNode::~ScopeChainNode): Tweak formatting.
4869 (JSC::currentThreadStackBase):
4890 (JSC::ScopeChainNode::~ScopeChainNode):
4891 (JSC::ScopeChain::~ScopeChain):
4893 (JSC::stringProtoFuncReplace):
4907 (JSC::BinaryOpNode::emitStrcat):
4908 (JSC::emitReadModifyAssignment):
4909 (JSC::ReadModifyResolveNode::emitBytecode):
4910 (JSC::ReadModifyDotNode::emitBytecode):
4911 (JSC::ReadModifyBracketNode::emitBytecode):
4914 (JSC::concatenateStrings):
4916 (JSC::UString::reserveCapacity):
4941 (JSC::JITStubs::cti_op_convert_this):
4942 (JSC::JITStubs::cti_op_end):
4943 (JSC::JITStubs::cti_op_add):
4944 (JSC::JITStubs::cti_op_pre_inc):
4945 (JSC::JITStubs::cti_timeout_check):
4946 (JSC::JITStubs::cti_register_file_check):
4947 (JSC::JITStubs::cti_op_loop_if_less):
4948 (JSC::JITStubs::cti_op_loop_if_lesseq):
4949 (JSC::JITStubs::cti_op_new_object):
4950 (JSC::JITStubs::cti_op_put_by_id_generic):
4951 (JSC::JITStubs::cti_op_get_by_id_generic):
4952 (JSC::JITStubs::cti_op_put_by_id):
4953 (JSC::JITStubs::cti_op_put_by_id_second):
4954 (JSC::JITStubs::cti_op_put_by_id_fail):
4955 (JSC::JITStubs::cti_op_get_by_id):
4956 (JSC::JITStubs::cti_op_get_by_id_second):
4957 (JSC::JITStubs::cti_op_get_by_id_self_fail):
4958 (JSC::JITStubs::cti_op_get_by_id_proto_list):
4959 (JSC::JITStubs::cti_op_get_by_id_proto_list_full):
4960 (JSC::JITStubs::cti_op_get_by_id_proto_fail):
4961 (JSC::JITStubs::cti_op_get_by_id_array_fail):
4962 (JSC::JITStubs::cti_op_get_by_id_string_fail):
4963 (JSC::JITStubs::cti_op_instanceof):
4964 (JSC::JITStubs::cti_op_del_by_id):
4965 (JSC::JITStubs::cti_op_mul):
4966 (JSC::JITStubs::cti_op_new_func):
4967 (JSC::JITStubs::cti_op_call_JSFunction):
4968 (JSC::JITStubs::cti_op_call_arityCheck):
4969 (JSC::JITStubs::cti_vm_dontLazyLinkCall):
4970 (JSC::JITStubs::cti_vm_lazyLinkCall):
4971 (JSC::JITStubs::cti_op_push_activation):
4972 (JSC::JITStubs::cti_op_call_NotJSFunction):
4973 (JSC::JITStubs::cti_op_create_arguments):
4974 (JSC::JITStubs::cti_op_create_arguments_no_params):
4975 (JSC::JITStubs::cti_op_tear_off_activation):
4976 (JSC::JITStubs::cti_op_tear_off_arguments):
4977 (JSC::JITStubs::cti_op_profile_will_call):
4978 (JSC::JITStubs::cti_op_profile_did_call):
4979 (JSC::JITStubs::cti_op_ret_scopeChain):
4980 (JSC::JITStubs::cti_op_new_array):
4981 (JSC::JITStubs::cti_op_resolve):
4982 (JSC::JITStubs::cti_op_construct_JSConstruct):
4983 (JSC::JITStubs::cti_op_construct_NotJSConstruct):
4984 (JSC::JITStubs::cti_op_get_by_val):
4985 (JSC::JITStubs::cti_op_get_by_val_string):
4986 (JSC::JITStubs::cti_op_get_by_val_byte_array):
4987 (JSC::JITStubs::cti_op_resolve_func):
4988 (JSC::JITStubs::cti_op_sub):
4989 (JSC::JITStubs::cti_op_put_by_val):
4990 (JSC::JITStubs::cti_op_put_by_val_array):
4991 (JSC::JITStubs::cti_op_put_by_val_byte_array):
4992 (JSC::JITStubs::cti_op_lesseq):
4993 (JSC::JITStubs::cti_op_loop_if_true):
4994 (JSC::JITStubs::cti_op_load_varargs):
4995 (JSC::JITStubs::cti_op_negate):
4996 (JSC::JITStubs::cti_op_resolve_base):
4997 (JSC::JITStubs::cti_op_resolve_skip):
4998 (JSC::JITStubs::cti_op_resolve_global):
4999 (JSC::JITStubs::cti_op_div):
5000 (JSC::JITStubs::cti_op_pre_dec):
5001 (JSC::JITStubs::cti_op_jless):
5002 (JSC::JITStubs::cti_op_not):
5003 (JSC::JITStubs::cti_op_jtrue):
5004 (JSC::JITStubs::cti_op_post_inc):
5005 (JSC::JITStubs::cti_op_eq):
5006 (JSC::JITStubs::cti_op_lshift):
5007 (JSC::JITStubs::cti_op_bitand):
5008 (JSC::JITStubs::cti_op_rshift):
5009 (JSC::JITStubs::cti_op_bitnot):
5010 (JSC::JITStubs::cti_op_resolve_with_base):
5011 (JSC::JITStubs::cti_op_new_func_exp):
5012 (JSC::JITStubs::cti_op_mod):
5013 (JSC::JITStubs::cti_op_less):
5014 (JSC::JITStubs::cti_op_neq):
5015 (JSC::JITStubs::cti_op_post_dec):
5016 (JSC::JITStubs::cti_op_urshift):
5017 (JSC::JITStubs::cti_op_bitxor):
5018 (JSC::JITStubs::cti_op_new_regexp):
5019 (JSC::JITStubs::cti_op_bitor):
5020 (JSC::JITStubs::cti_op_call_eval):
5021 (JSC::JITStubs::cti_op_throw):
5022 (JSC::JITStubs::cti_op_get_pnames):
5023 (JSC::JITStubs::cti_op_next_pname):
5024 (JSC::JITStubs::cti_op_push_scope):
5025 (JSC::JITStubs::cti_op_pop_scope):
5026 (JSC::JITStubs::cti_op_typeof):
5027 (JSC::JITStubs::cti_op_is_undefined):
5028 (JSC::JITStubs::cti_op_is_boolean):
5029 (JSC::JITStubs::cti_op_is_number):
5030 (JSC::JITStubs::cti_op_is_string):
5031 (JSC::JITStubs::cti_op_is_object):
5032 (JSC::JITStubs::cti_op_is_function):
5033 (JSC::JITStubs::cti_op_stricteq):
5034 (JSC::JITStubs::cti_op_to_primitive):
5035 (JSC::JITStubs::cti_op_strcat):
5036 (JSC::JITStubs::cti_op_nstricteq):
5037 (JSC::JITStubs::cti_op_to_jsnumber):
5038 (JSC::JITStubs::cti_op_in):
5039 (JSC::JITStubs::cti_op_push_new_scope):
5040 (JSC::JITStubs::cti_op_jmp_scopes):
5041 (JSC::JITStubs::cti_op_put_by_index):
5042 (JSC::JITStubs::cti_op_switch_imm):
5043 (JSC::JITStubs::cti_op_switch_char):
5044 (JSC::JITStubs::cti_op_switch_string):
5045 (JSC::JITStubs::cti_op_del_by_val):
5046 (JSC::JITStubs::cti_op_put_getter):
5047 (JSC::JITStubs::cti_op_put_setter):
5048 (JSC::JITStubs::cti_op_new_error):
5049 (JSC::JITStubs::cti_op_debug):
5050 (JSC::JITStubs::cti_vm_throw):
5052 (JSC::):
5069 (JSC::CodeBlock::dump):
5074 (JSC::BytecodeGenerator::emitStrcat):
5075 (JSC::BytecodeGenerator::emitToPrimitive):
5080 (JSC::Interpreter::privateExecute):
5083 (JSC::JIT::privateCompileMainPass):
5084 (JSC::JIT::privateCompileSlowCases):
5087 (JSC::JITStubs::cti_op_to_primitive):
5088 (JSC::JITStubs::cti_op_strcat):
5093 (JSC::BinaryOpNode::emitStrcat):
5094 (JSC::BinaryOpNode::emitBytecode):
5095 (JSC::ReadModifyResolveNode::emitBytecode):
5098 (JSC::ExpressionNode::):
5099 (JSC::AddNode::):
5102 (JSC::ResultType::definitelyIsString):
5103 (JSC::ResultType::forAdd):
5106 (JSC::concatenateStrings):
5109 (JSC::UString::appendNumeric):
5112 (JSC::UString::Rep::createEmptyBuffer):
5113 (JSC::UString::BaseString::BaseString):
5131 (JSC::FunctionBodyNode::~FunctionBodyNode): Removed now-bogus assertion.
5160 (JSC::FunctionBodyNode::FunctionBodyNode): Removed m_refCount
5171 (JSC::extractFunctionBody): Fixed types here so we don't typecast until
5242 (JSC::JIT::privateCompileMainPass):
5254 (JSC::):
5295 (JSC::NodeReleaser::releaseAllNodes): ALWAYS_INLINE.
5296 (JSC::NodeReleaser::adopt): Ditto.
5297 (JSC::ParserRefCounted::ParserRefCounted): Removed most of the code.
5299 (JSC::ParserRefCounted::~ParserRefCounted): Removed most of the code.
5306 (JSC::Parser::parse): Call globalData->parserObjects.shrink(0) after
5310 (JSC::JSGlobalData::JSGlobalData): Eliminated code to manage the
5312 (JSC::JSGlobalData::~JSGlobalData): Ditto.
5460 (JSC::MacroAssemblerX86Common::call):
5462 (JSC::MacroAssemblerX86_64::addPtr):
5464 (JSC::X86Assembler::leaq_mr):
5465 (JSC::X86Assembler::call_m):
5467 (JSC::Interpreter::execute):
5468 (JSC::Interpreter::prepareForRepeatCall):
5470 (JSC::JIT::privateCompileCTIMachineTrampolines):
5472 (JSC::JIT::compileCTIMachineTrampolines):
5474 (JSC::JIT::linkCall):
5475 (JSC::JIT::compileOpCallInitializeCallFrame):
5476 (JSC::JIT::compileOpCall):
5478 (JSC::JITCode::operator bool):
5480 (JSC::JIT::emitGetFromCallFrameHeader):
5481 (JSC::JIT::emitGetFromCallFrameHeader32):
5483 (JSC::JITStubs::JITStubs):
5484 (JSC::JITStubs::cti_op_call_JSFunction):
5485 (JSC::JITStubs::cti_vm_dontLazyLinkCall):
5486 (JSC::JITStubs::cti_vm_lazyLinkCall):
5487 (JSC::JITStubs::cti_op_construct_JSConstruct):
5489 (JSC::JITStubs::ctiNativeCallThunk):
5493 (JSC::FunctionBodyNode::FunctionBodyNode):
5494 (JSC::FunctionBodyNode::createNativeThunk):
5495 (JSC::FunctionBodyNode::generateJITCode):
5497 (JSC::FunctionBodyNode::):
5498 (JSC::FunctionBodyNode::generatedJITCode):
5499 (JSC::FunctionBodyNode::jitCode):
5501 (JSC::Profiler::createCallIdentifier):
5504 (JSC::isNumericCompareFunction):
5506 (JSC::BooleanPrototype::BooleanPrototype):
5508 (JSC::DateConstructor::DateConstructor):
5510 (JSC::ErrorPrototype::ErrorPrototype):
5512 (JSC::FunctionPrototype::addFunctionProperties):
5513 (JSC::functionProtoFuncToString):
5516 (JSC::JSFunction::JSFunction):
5517 (JSC::JSFunction::~JSFunction):
5518 (JSC::JSFunction::mark):
5519 (JSC::JSFunction::getCallData):
5520 (JSC::JSFunction::call):
5521 (JSC::JSFunction::argumentsGetter):
5522 (JSC::JSFunction::callerGetter):
5523 (JSC::JSFunction::lengthGetter):
5524 (JSC::JSFunction::getOwnPropertySlot):
5525 (JSC::JSFunction::put):
5526 (JSC::JSFunction::deleteProperty):
5527 (JSC::JSFunction::getConstructData):
5528 (JSC::JSFunction::construct):
5530 (JSC::JSFunction::JSFunction):
5531 (JSC::JSFunction::setScope):
5532 (JSC::JSFunction::scope):
5533 (JSC::JSFunction::isHostFunction):
5534 (JSC::JSFunction::scopeChain):
5535 (JSC::JSFunction::clearScopeChain):
5536 (JSC::JSFunction::setScopeChain):
5537 (JSC::JSFunction::nativeFunction):
5538 (JSC::JSFunction::setNativeFunction):
5540 (JSC::JSGlobalData::~JSGlobalData):
5541 (JSC::JSGlobalData::createNativeThunk):
5543 (JSC::JSGlobalData::nativeFunctionThunk):
5545 (JSC::JSGlobalObject::reset):
5548 (JSC::setUpStaticFunctionSlot):
5551 (JSC::NumberPrototype::NumberPrototype):
5553 (JSC::ObjectPrototype::ObjectPrototype):
5555 (JSC::RegExpPrototype::RegExpPrototype):
5557 (JSC::StringConstructor::StringConstructor):
5593 (JSC::jsAPIMangledNumber):
5598 Roll JSC API number marshaling back in one last time (I hope).
5602 Roll JSC API number marshaling back out. It still breaks windows.
5606 Roll JSC API number marshaling back in.
5620 (JSC::Lexer::Lexer): Remove unnnecessary initialization of data members
5622 (JSC::Lexer::currentOffset): Added. Used where the old code would look at
5624 (JSC::Lexer::shift1): Replaces the old shift function. No longer does anything
5626 (JSC::Lexer::shift2): Ditto.
5627 (JSC::Lexer::shift3): Ditto.
5628 (JSC::Lexer::shift4): Ditto.
5629 (JSC::Lexer::setCode): Updated for name change from yylineno to m_line.
5634 (JSC::Lexer::copyCodeWithoutBOMs): Added.
5635 (JSC::Lexer::nextLine): Updated for name change from yylineno to m_line.
5636 (JSC::Lexer::makeIdentifier): Moved up higher in the file.
5637 (JSC::Lexer::matchPunctuator): Moved up higher in the file and changed to
5639 (JSC::Lexer::isLineTerminator): Moved up higher in the file and changed to
5641 (JSC::Lexer::lastTokenWasRestrKeyword): Added. This replaces the old
5643 (JSC::Lexer::isIdentStart): Moved up higher in the file. Changed to use
5645 (JSC::Lexer::isIdentPart): Ditto.
5646 (JSC::Lexer::singleEscape): Moved up higher in the file.
5647 (JSC::Lexer::convertOctal): Moved up higher in the file.
5648 (JSC::Lexer::convertHex): Moved up higher in the file. Changed to use
5650 (JSC::Lexer::convertUnicode): Ditto.
5651 (JSC::Lexer::record8): Moved up higher in the file.
5652 (JSC::Lexer::record16): Moved up higher in the file.
5653 (JSC::Lexer::lex): Changed type of stringType to int. Replaced m_skipLF
5665 (JSC::Lexer::scanRegExp): Tweaked style a bit.
5666 (JSC::Lexer::clear): Clear m_codeWithoutBOMs so we don't use memory after
5668 (JSC::Lexer::sourceCode): Made this no-longer inline since it has more
5689 (JSC::globalFuncUnescape): Changed to use isASCIIHexDigit.
5718 (JSC::::call):
5720 (JSC::BytecodeGenerator::emitLoad):
5723 (JSC::DebuggerCallFrame::evaluate):
5725 (JSC::DebuggerCallFrame::DebuggerCallFrame):
5727 (JSC::ExecState::clearException):
5729 (JSC::Interpreter::privateExecute):
5730 (JSC::Interpreter::retrieveLastCaller):
5732 (JSC::Register::Register):
5734 (JSC::JIT::unlinkCall):
5735 (JSC::JIT::compileOpCallInitializeCallFrame):
5736 (JSC::JIT::compileOpCall):
5738 (JSC::JITStubs::cti_op_call_eval):
5739 (JSC::JITStubs::cti_vm_throw):
5741 (JSC::Profiler::willExecute):
5742 (JSC::Profiler::didExecute):
5744 (JSC::getProperty):
5746 (JSC::evaluate):
5748 (JSC::Completion::Completion):
5750 (JSC::GetterSetter::getPrimitiveNumber):
5752 (JSC::JSArray::putSlowCase):
5753 (JSC::JSArray::deleteProperty):
5754 (JSC::JSArray::increaseVectorLength):
5755 (JSC::JSArray::setLength):
5756 (JSC::JSArray::pop):
5757 (JSC::JSArray::sort):
5758 (JSC::JSArray::compactForSorting):
5760 (JSC::JSCell::getJSNumber):
5762 (JSC::JSValue::getJSNumber):
5764 (JSC::JSGlobalData::JSGlobalData):
5766 (JSC::JSImmediate::fromNumberOutsideIntegerRange):
5767 (JSC::JSImmediate::from):
5769 (JSC::jsNumberCell):
5771 (JSC::callDefaultValueFunction):
5773 (JSC::JSObject::getDirect):
5775 (JSC::JSPropertyNameIterator::toPrimitive):
5777 (JSC::JSPropertyNameIterator::next):
5779 (JSC::JSValue::):
5780 (JSC::JSValueHashTraits::constructDeletedValue):
5781 (JSC::JSValueHashTraits::isDeletedValue):
5782 (JSC::JSValue::JSValue):
5784 (JSC::JSWrapperObject::JSWrapperObject):
5786 (JSC::resolveBase):
5788 (JSC::PropertySlot::clearBase):
5789 (JSC::PropertySlot::clearValue):
5800 (JSC::Lexer::setCode): Moved below shift() so it can inline.
5801 (JSC::Lexer::scanRegExp): Use resize(0) instead of clear() on Vectors, since the intent
5803 (JSC::Lexer::lex): ditto; also, change the loop logic a bit for the main lexing loop
5805 (JSC::Lexer::shift): Make this ALWAYS_INLINE and tag an unusual branch as UNLIKELY
5807 (JSC::Lexer::makeIdentifier): force to be ALWAYS_INLINE
5823 (JSC::JSValue::JSValue):
5825 (JSC::jsNumber):
5838 (JSC::constructJSCallback):
5840 (JSC::JSCallbackFunction::call):
5842 (JSC::::getOwnPropertySlot):
5843 (JSC::::put):
5844 (JSC::::deleteProperty):
5845 (JSC::::construct):
5846 (JSC::::hasInstance):
5847 (JSC::::call):
5848 (JSC::::toNumber):
5849 (JSC::::toString):
5850 (JSC::::staticValueGetter):
5851 (JSC::::callbackGetter):
5918 (JSC::JSValue::JSValue):
5920 (JSC::jsNumber):
5939 (JSC::constructJSCallback):
5941 (JSC::JSCallbackFunction::call):
5943 (JSC::::getOwnPropertySlot):
5944 (JSC::::put):
5945 (JSC::::deleteProperty):
5946 (JSC::::construct):
5947 (JSC::::hasInstance):
5948 (JSC::::call):
5949 (JSC::::toNumber):
5950 (JSC::::toString):
5951 (JSC::::staticValueGetter):
5952 (JSC::::callbackGetter):
5992 (JSC::jsAPIMangledNumber):
5994 (JSC::JSNumberCell::isAPIMangledNumber):
5995 (JSC::JSNumberCell::):
5996 (JSC::JSNumberCell::JSNumberCell):
5997 (JSC::JSValue::isAPIMangledNumber):
6047 (JSC::JSCallbackConstructor::createStructure):
6049 (JSC::JSCallbackFunction::call):
6051 (JSC::JSCallbackFunction::createStructure):
6053 (JSC::JSCallbackObject::createStructure):
6055 (JSC::::asCallbackObject):
6056 (JSC::::put):
6057 (JSC::::hasInstance):
6058 (JSC::::call):
6059 (JSC::::staticValueGetter):
6060 (JSC::::staticFunctionGetter):
6061 (JSC::::callbackGetter):
6090 (JSC::valueToSourceString):
6091 (JSC::constantName):
6092 (JSC::CodeBlock::dump):
6094 (JSC::CodeBlock::getConstant):
6095 (JSC::CodeBlock::addUnexpectedConstant):
6096 (JSC::CodeBlock::unexpectedConstant):
6098 (JSC::EvalCodeCache::get):
6100 (JSC::BytecodeGenerator::addConstant):
6101 (JSC::BytecodeGenerator::addUnexpectedConstant):
6102 (JSC::BytecodeGenerator::emitLoad):
6103 (JSC::BytecodeGenerator::emitGetScopedVar):
6104 (JSC::BytecodeGenerator::emitPutScopedVar):
6105 (JSC::BytecodeGenerator::emitNewError):
6106 (JSC::keyForImmediateSwitch):
6108 (JSC::BytecodeGenerator::JSValueHashTraits::constructDeletedValue):
6109 (JSC::BytecodeGenerator::JSValueHashTraits::isDeletedValue):
6111 (JSC::evaluateInGlobalCallFrame):
6114 (JSC::DebuggerActivation::put):
6115 (JSC::DebuggerActivation::putWithAttributes):
6116 (JSC::DebuggerActivation::lookupGetter):
6117 (JSC::DebuggerActivation::lookupSetter):
6119 (JSC::DebuggerActivation::createStructure):
6121 (JSC::DebuggerCallFrame::evaluate):
6123 (JSC::DebuggerCallFrame::DebuggerCallFrame):
6124 (JSC::DebuggerCallFrame::exception):
6126 (JSC::CachedCall::CachedCall):
6127 (JSC::CachedCall::call):
6128 (JSC::CachedCall::setThis):
6129 (JSC::CachedCall::setArgument):
6131 (JSC::CallFrame::thisValue):
6132 (JSC::CallFrame::dumpCaller):
6134 (JSC::ExecState::setException):
6135 (JSC::ExecState::exception):
6136 (JSC::ExecState::exceptionSlot):
6138 (JSC::CallFrameClosure::setArgument):
6140 (JSC::Interpreter::resolve):
6141 (JSC::Interpreter::resolveSkip):
6142 (JSC::Interpreter::resolveGlobal):
6143 (JSC::Interpreter::resolveBase):
6144 (JSC::Interpreter::resolveBaseAndProperty):
6145 (JSC::Interpreter::resolveBaseAndFunc):
6146 (JSC::isNotObject):
6147 (JSC::Interpreter::callEval):
6148 (JSC::Interpreter::unwindCallFrame):
6149 (JSC::Interpreter::throwException):
6150 (JSC::Interpreter::execute):
6151 (JSC::Interpreter::prepareForRepeatCall):
6152 (JSC::Interpreter::createExceptionScope):
6153 (JSC::Interpreter::tryCachePutByID):
6154 (JSC::Interpreter::tryCacheGetByID):
6155 (JSC::Interpreter::privateExecute):
6156 (JSC::Interpreter::retrieveArguments):
6157 (JSC::Interpreter::retrieveCaller):
6158 (JSC::Interpreter::retrieveLastCaller):
6161 (JSC::Register::):
6162 (JSC::Register::Register):
6163 (JSC::Register::jsValue):
6165 (JSC::):
6166 (JSC::JIT::privateCompileMainPass):
6169 (JSC::JIT::compileFastArith_op_mod):
6171 (JSC::JIT::unlinkCall):
6172 (JSC::JIT::compileOpCallInitializeCallFrame):
6173 (JSC::JIT::compileOpCall):
6175 (JSC::):
6176 (JSC::JITCode::execute):
6178 (JSC::JIT::emitGetVirtualRegister):
6179 (JSC::JIT::getConstantOperand):
6180 (JSC::JIT::emitPutJITStubArgFromVirtualRegister):
6181 (JSC::JIT::emitInitRegister):
6183 (JSC::JIT::privateCompilePutByIdTransition):
6184 (JSC::JIT::patchGetByIdSelf):
6185 (JSC::JIT::patchPutByIdReplace):
6186 (JSC::JIT::privateCompileGetByIdSelf):
6187 (JSC::JIT::privateCompileGetByIdProto):
6188 (JSC::JIT::privateCompileGetByIdSelfList):
6189 (JSC::JIT::privateCompileGetByIdProtoList):
6190 (JSC::JIT::privateCompileGetByIdChainList):
6191 (JSC::JIT::privateCompileGetByIdChain):
6192 (JSC::JIT::privateCompilePutByIdReplace):
6194 (JSC::JITStubs::tryCachePutByID):
6195 (JSC::JITStubs::tryCacheGetByID):
6196 (JSC::JITStubs::cti_op_convert_this):
6197 (JSC::JITStubs::cti_op_add):
6198 (JSC::JITStubs::cti_op_pre_inc):
6199 (JSC::JITStubs::cti_op_loop_if_less):
6200 (JSC::JITStubs::cti_op_loop_if_lesseq):
6201 (JSC::JITStubs::cti_op_get_by_id_generic):
6202 (JSC::JITStubs::cti_op_get_by_id):
6203 (JSC::JITStubs::cti_op_get_by_id_second):
6204 (JSC::JITStubs::cti_op_get_by_id_self_fail):
6205 (JSC::JITStubs::cti_op_get_by_id_proto_list):
6206 (JSC::JITStubs::cti_op_get_by_id_proto_list_full):
6207 (JSC::JITStubs::cti_op_get_by_id_proto_fail):
6208 (JSC::JITStubs::cti_op_get_by_id_array_fail):
6209 (JSC::JITStubs::cti_op_get_by_id_string_fail):
6210 (JSC::JITStubs::cti_op_instanceof):
6211 (JSC::JITStubs::cti_op_del_by_id):
6212 (JSC::JITStubs::cti_op_mul):
6213 (JSC::JITStubs::cti_op_call_NotJSFunction):
6214 (JSC::JITStubs::cti_op_resolve):
6215 (JSC::JITStubs::cti_op_construct_NotJSConstruct):
6216 (JSC::JITStubs::cti_op_get_by_val):
6217 (JSC::JITStubs::cti_op_get_by_val_string):
6218 (JSC::JITStubs::cti_op_get_by_val_byte_array):
6219 (JSC::JITStubs::cti_op_resolve_func):
6220 (JSC::JITStubs::cti_op_sub):
6221 (JSC::JITStubs::cti_op_put_by_val):
6222 (JSC::JITStubs::cti_op_put_by_val_array):
6223 (JSC::JITStubs::cti_op_put_by_val_byte_array):
6224 (JSC::JITStubs::cti_op_lesseq):
6225 (JSC::JITStubs::cti_op_loop_if_true):
6226 (JSC::JITStubs::cti_op_load_varargs):
6227 (JSC::JITStubs::cti_op_negate):
6228 (JSC::JITStubs::cti_op_resolve_base):
6229 (JSC::JITStubs::cti_op_resolve_skip):
6230 (JSC::JITStubs::cti_op_resolve_global):
6231 (JSC::JITStubs::cti_op_div):
6232 (JSC::JITStubs::cti_op_pre_dec):
6233 (JSC::JITStubs::cti_op_jless):
6234 (JSC::JITStubs::cti_op_not):
6235 (JSC::JITStubs::cti_op_jtrue):
6236 (JSC::JITStubs::cti_op_post_inc):
6237 (JSC::JITStubs::cti_op_eq):
6238 (JSC::JITStubs::cti_op_lshift):
6239 (JSC::JITStubs::cti_op_bitand):
6240 (JSC::JITStubs::cti_op_rshift):
6241 (JSC::JITStubs::cti_op_bitnot):
6242 (JSC::JITStubs::cti_op_resolve_with_base):
6243 (JSC::JITStubs::cti_op_mod):
6244 (JSC::JITStubs::cti_op_less):
6245 (JSC::JITStubs::cti_op_neq):
6246 (JSC::JITStubs::cti_op_post_dec):
6247 (JSC::JITStubs::cti_op_urshift):
6248 (JSC::JITStubs::cti_op_bitxor):
6249 (JSC::JITStubs::cti_op_bitor):
6250 (JSC::JITStubs::cti_op_call_eval):
6251 (JSC::JITStubs::cti_op_throw):
6252 (JSC::JITStubs::cti_op_next_pname):
6253 (JSC::JITStubs::cti_op_typeof):
6254 (JSC::JITStubs::cti_op_is_undefined):
6255 (JSC::JITStubs::cti_op_is_boolean):
6256 (JSC::JITStubs::cti_op_is_number):
6257 (JSC::JITStubs::cti_op_is_string):
6258 (JSC::JITStubs::cti_op_is_object):
6259 (JSC::JITStubs::cti_op_is_function):
6260 (JSC::JITStubs::cti_op_stricteq):
6261 (JSC::JITStubs::cti_op_nstricteq):
6262 (JSC::JITStubs::cti_op_to_jsnumber):
6263 (JSC::JITStubs::cti_op_in):
6264 (JSC::JITStubs::cti_op_switch_imm):
6265 (JSC::JITStubs::cti_op_switch_char):
6266 (JSC::JITStubs::cti_op_switch_string):
6267 (JSC::JITStubs::cti_op_del_by_val):
6268 (JSC::JITStubs::cti_op_new_error):
6269 (JSC::JITStubs::cti_vm_throw):
6283 (JSC::processClauseList):
6285 (JSC::ProfileGenerator::addParentForConsoleStart):
6287 (JSC::Profiler::willExecute):
6288 (JSC::Profiler::didExecute):
6289 (JSC::Profiler::createCallIdentifier):
6292 (JSC::MarkedArgumentBuffer::slowAppend):
6294 (JSC::MarkedArgumentBuffer::at):
6295 (JSC::MarkedArgumentBuffer::append):
6296 (JSC::ArgList::ArgList):
6297 (JSC::ArgList::at):
6299 (JSC::Arguments::put):
6301 (JSC::Arguments::createStructure):
6302 (JSC::asArguments):
6304 (JSC::callArrayConstructor):
6306 (JSC::getProperty):
6307 (JSC::putProperty):
6308 (JSC::arrayProtoFuncToString):
6309 (JSC::arrayProtoFuncToLocaleString):
6310 (JSC::arrayProtoFuncJoin):
6311 (JSC::arrayProtoFuncConcat):
6312 (JSC::arrayProtoFuncPop):
6313 (JSC::arrayProtoFuncPush):
6314 (JSC::arrayProtoFuncReverse):
6315 (JSC::arrayProtoFuncShift):
6316 (JSC::arrayProtoFuncSlice):
6317 (JSC::arrayProtoFuncSort):
6318 (JSC::arrayProtoFuncSplice):
6319 (JSC::arrayProtoFuncUnShift):
6320 (JSC::arrayProtoFuncFilter):
6321 (JSC::arrayProtoFuncMap):
6322 (JSC::arrayProtoFuncEvery):
6323 (JSC::arrayProtoFuncForEach):
6324 (JSC::arrayProtoFuncSome):
6325 (JSC::arrayProtoFuncReduce):
6326 (JSC::arrayProtoFuncReduceRight):
6327 (JSC::arrayProtoFuncIndexOf):
6328 (JSC::arrayProtoFuncLastIndexOf):
6330 (JSC::callBooleanConstructor):
6331 (JSC::constructBooleanFromImmediateBoolean):
6334 (JSC::asBooleanObject):
6336 (JSC::booleanProtoFuncToString):
6337 (JSC::booleanProtoFuncValueOf):
6339 (JSC::call):
6342 (JSC::Heap::protect):
6343 (JSC::Heap::unprotect):
6344 (JSC::Heap::heap):
6347 (JSC::evaluate):
6349 (JSC::Completion::Completion):
6350 (JSC::Completion::value):
6351 (JSC::Completion::setValue):
6353 (JSC::construct):
6356 (JSC::constructDate):
6357 (JSC::callDate):
6358 (JSC::dateParse):
6359 (JSC::dateNow):
6360 (JSC::dateUTC):
6362 (JSC::asDateInstance):
6364 (JSC::dateProtoFuncToString):
6365 (JSC::dateProtoFuncToUTCString):
6366 (JSC::dateProtoFuncToDateString):
6367 (JSC::dateProtoFuncToTimeString):
6368 (JSC::dateProtoFuncToLocaleString):
6369 (JSC::dateProtoFuncToLocaleDateString):
6370 (JSC::dateProtoFuncToLocaleTimeString):
6371 (JSC::dateProtoFuncGetTime):
6372 (JSC::dateProtoFuncGetFullYear):
6373 (JSC::dateProtoFuncGetUTCFullYear):
6374 (JSC::dateProtoFuncToGMTString):
6375 (JSC::dateProtoFuncGetMonth):
6376 (JSC::dateProtoFuncGetUTCMonth):
6377 (JSC::dateProtoFuncGetDate):
6378 (JSC::dateProtoFuncGetUTCDate):
6379 (JSC::dateProtoFuncGetDay):
6380 (JSC::dateProtoFuncGetUTCDay):
6381 (JSC::dateProtoFuncGetHours):
6382 (JSC::dateProtoFuncGetUTCHours):
6383 (JSC::dateProtoFuncGetMinutes):
6384 (JSC::dateProtoFuncGetUTCMinutes):
6385 (JSC::dateProtoFuncGetSeconds):
6386 (JSC::dateProtoFuncGetUTCSeconds):
6387 (JSC::dateProtoFuncGetMilliSeconds):
6388 (JSC::dateProtoFuncGetUTCMilliseconds):
6389 (JSC::dateProtoFuncGetTimezoneOffset):
6390 (JSC::dateProtoFuncSetTime):
6391 (JSC::setNewValueFromTimeArgs):
6392 (JSC::setNewValueFromDateArgs):
6393 (JSC::dateProtoFuncSetMilliSeconds):
6394 (JSC::dateProtoFuncSetUTCMilliseconds):
6395 (JSC::dateProtoFuncSetSeconds):
6396 (JSC::dateProtoFuncSetUTCSeconds):
6397 (JSC::dateProtoFuncSetMinutes):
6398 (JSC::dateProtoFuncSetUTCMinutes):
6399 (JSC::dateProtoFuncSetHours):
6400 (JSC::dateProtoFuncSetUTCHours):
6401 (JSC::dateProtoFuncSetDate):
6402 (JSC::dateProtoFuncSetUTCDate):
6403 (JSC::dateProtoFuncSetMonth):
6404 (JSC::dateProtoFuncSetUTCMonth):
6405 (JSC::dateProtoFuncSetFullYear):
6406 (JSC::dateProtoFuncSetUTCFullYear):
6407 (JSC::dateProtoFuncSetYear):
6408 (JSC::dateProtoFuncGetYear):
6410 (JSC::DatePrototype::createStructure):
6412 (JSC::callErrorConstructor):
6414 (JSC::errorProtoFuncToString):
6416 (JSC::createInterruptedExecutionException):
6417 (JSC::createError):
6418 (JSC::createStackOverflowError):
6419 (JSC::createUndefinedVariableError):
6420 (JSC::createErrorMessage):
6421 (JSC::createInvalidParamError):
6422 (JSC::createNotAConstructorError):
6423 (JSC::createNotAFunctionError):
6426 (JSC::callFunctionConstructor):
6428 (JSC::callFunctionPrototype):
6429 (JSC::functionProtoFuncToString):
6430 (JSC::functionProtoFuncApply):
6431 (JSC::functionProtoFuncCall):
6433 (JSC::FunctionPrototype::createStructure):
6435 (JSC::GetterSetter::toPrimitive):
6436 (JSC::GetterSetter::getPrimitiveNumber):
6438 (JSC::asGetterSetter):
6440 (JSC::InternalFunction::displayName):
6442 (JSC::InternalFunction::createStructure):
6443 (JSC::asInternalFunction):
6445 (JSC::JSActivation::getOwnPropertySlot):
6446 (JSC::JSActivation::put):
6447 (JSC::JSActivation::putWithAttributes):
6448 (JSC::JSActivation::argumentsGetter):
6450 (JSC::JSActivation::createStructure):
6451 (JSC::asActivation):
6453 (JSC::storageSize):
6454 (JSC::JSArray::JSArray):
6455 (JSC::JSArray::getOwnPropertySlot):
6456 (JSC::JSArray::put):
6457 (JSC::JSArray::putSlowCase):
6458 (JSC::JSArray::deleteProperty):
6459 (JSC::JSArray::setLength):
6460 (JSC::JSArray::pop):
6461 (JSC::JSArray::push):
6462 (JSC::JSArray::mark):
6463 (JSC::compareNumbersForQSort):
6464 (JSC::JSArray::sortNumeric):
6465 (JSC::JSArray::sort):
6466 (JSC::JSArray::compactForSorting):
6467 (JSC::JSArray::checkConsistency):
6468 (JSC::constructArray):
6470 (JSC::JSArray::getIndex):
6471 (JSC::JSArray::setIndex):
6472 (JSC::JSArray::createStructure):
6473 (JSC::asArray):
6474 (JSC::isJSArray):
6476 (JSC::JSByteArray::createStructure):
6477 (JSC::JSByteArray::put):
6479 (JSC::JSByteArray::getIndex):
6480 (JSC::JSByteArray::setIndex):
6481 (JSC::asByteArray):
6482 (JSC::isJSByteArray):
6484 (JSC::JSCell::put):
6485 (JSC::JSCell::getJSNumber):
6487 (JSC::asCell):
6488 (JSC::JSValue::asCell):
6489 (JSC::JSValue::isString):
6490 (JSC::JSValue::isGetterSetter):
6491 (JSC::JSValue::isObject):
6492 (JSC::JSValue::getString):
6493 (JSC::JSValue::getObject):
6494 (JSC::JSValue::getCallData):
6495 (JSC::JSValue::getConstructData):
6496 (JSC::JSValue::getUInt32):
6497 (JSC::JSValue::getTruncatedInt32):
6498 (JSC::JSValue::getTruncatedUInt32):
6499 (JSC::JSValue::mark):
6500 (JSC::JSValue::marked):
6501 (JSC::JSValue::toPrimitive):
6502 (JSC::JSValue::getPrimitiveNumber):
6503 (JSC::JSValue::toBoolean):
6504 (JSC::JSValue::toNumber):
6505 (JSC::JSValue::toString):
6506 (JSC::JSValue::toObject):
6507 (JSC::JSValue::toThisObject):
6508 (JSC::JSValue::needsThisConversion):
6509 (JSC::JSValue::toThisString):
6510 (JSC::JSValue::getJSNumber):
6512 (JSC::JSFunction::call):
6513 (JSC::JSFunction::argumentsGetter):
6514 (JSC::JSFunction::callerGetter):
6515 (JSC::JSFunction::lengthGetter):
6516 (JSC::JSFunction::getOwnPropertySlot):
6517 (JSC::JSFunction::put):
6518 (JSC::JSFunction::construct):
6520 (JSC::JSFunction::createStructure):
6521 (JSC::asFunction):
6524 (JSC::markIfNeeded):
6525 (JSC::JSGlobalObject::put):
6526 (JSC::JSGlobalObject::putWithAttributes):
6527 (JSC::JSGlobalObject::reset):
6528 (JSC::JSGlobalObject::resetPrototype):
6530 (JSC::JSGlobalObject::createStructure):
6531 (JSC::JSGlobalObject::GlobalPropertyInfo::GlobalPropertyInfo):
6532 (JSC::asGlobalObject):
6533 (JSC::Structure::prototypeForLookup):
6534 (JSC::Structure::prototypeChain):
6535 (JSC::Structure::isValid):
6537 (JSC::encode):
6538 (JSC::decode):
6539 (JSC::globalFuncEval):
6540 (JSC::globalFuncParseInt):
6541 (JSC::globalFuncParseFloat):
6542 (JSC::globalFuncIsNaN):
6543 (JSC::globalFuncIsFinite):
6544 (JSC::globalFuncDecodeURI):
6545 (JSC::globalFuncDecodeURIComponent):
6546 (JSC::globalFuncEncodeURI):
6547 (JSC::globalFuncEncodeURIComponent):
6548 (JSC::globalFuncEscape):
6549 (JSC::globalFuncUnescape):
6550 (JSC::globalFuncJSCPrint):
6553 (JSC::JSImmediate::toThisObject):
6554 (JSC::JSImmediate::toObject):
6555 (JSC::JSImmediate::prototype):
6556 (JSC::JSImmediate::toString):
6558 (JSC::JSImmediate::isImmediate):
6559 (JSC::JSImmediate::isNumber):
6560 (JSC::JSImmediate::isIntegerNumber):
6561 (JSC::JSImmediate::isDoubleNumber):
6562 (JSC::JSImmediate::isPositiveIntegerNumber):
6563 (JSC::JSImmediate::isBoolean):
6564 (JSC::JSImmediate::isUndefinedOrNull):
6565 (JSC::JSImmediate::isEitherImmediate):
6566 (JSC::JSImmediate::areBothImmediate):
6567 (JSC::JSImmediate::areBothImmediateIntegerNumbers):
6568 (JSC::JSImmediate::makeValue):
6569 (JSC::JSImmediate::makeInt):
6570 (JSC::JSImmediate::makeDouble):
6571 (JSC::JSImmediate::makeBool):
6572 (JSC::JSImmediate::makeUndefined):
6573 (JSC::JSImmediate::makeNull):
6574 (JSC::JSImmediate::doubleValue):
6575 (JSC::JSImmediate::intValue):
6576 (JSC::JSImmediate::uintValue):
6577 (JSC::JSImmediate::boolValue):
6578 (JSC::JSImmediate::rawValue):
6579 (JSC::JSImmediate::trueImmediate):
6580 (JSC::JSImmediate::falseImmediate):
6581 (JSC::JSImmediate::undefinedImmediate):
6582 (JSC::JSImmediate::nullImmediate):
6583 (JSC::JSImmediate::zeroImmediate):
6584 (JSC::JSImmediate::oneImmediate):
6585 (JSC::JSImmediate::impossibleValue):
6586 (JSC::JSImmediate::toBoolean):
6587 (JSC::JSImmediate::getTruncatedUInt32):
6588 (JSC::JSImmediate::fromNumberOutsideIntegerRange):
6589 (JSC::JSImmediate::from):
6590 (JSC::JSImmediate::getTruncatedInt32):
6591 (JSC::JSImmediate::toDouble):
6592 (JSC::JSImmediate::getUInt32):
6593 (JSC::JSValue::JSValue):
6594 (JSC::JSValue::isUndefinedOrNull):
6595 (JSC::JSValue::isBoolean):
6596 (JSC::JSValue::getBoolean):
6597 (JSC::JSValue::toInt32):
6598 (JSC::JSValue::toUInt32):
6599 (JSC::JSValue::isCell):
6600 (JSC::JSValue::isInt32Fast):
6601 (JSC::JSValue::getInt32Fast):
6602 (JSC::JSValue::isUInt32Fast):
6603 (JSC::JSValue::getUInt32Fast):
6604 (JSC::JSValue::makeInt32Fast):
6605 (JSC::JSValue::areBothInt32Fast):
6606 (JSC::JSFastMath::canDoFastBitwiseOperations):
6607 (JSC::JSFastMath::equal):
6608 (JSC::JSFastMath::notEqual):
6609 (JSC::JSFastMath::andImmediateNumbers):
6610 (JSC::JSFastMath::xorImmediateNumbers):
6611 (JSC::JSFastMath::orImmediateNumbers):
6612 (JSC::JSFastMath::canDoFastRshift):
6613 (JSC::JSFastMath::canDoFastUrshift):
6614 (JSC::JSFastMath::rightShiftImmediateNumbers):
6615 (JSC::JSFastMath::canDoFastAdditiveOperations):
6616 (JSC::JSFastMath::addImmediateNumbers):
6617 (JSC::JSFastMath::subImmediateNumbers):
6618 (JSC::JSFastMath::incImmediateNumber):
6619 (JSC::JSFastMath::decImmediateNumber):
6621 (JSC::JSNotAnObject::toPrimitive):
6622 (JSC::JSNotAnObject::getPrimitiveNumber):
6623 (JSC::JSNotAnObject::put):
6625 (JSC::JSNotAnObject::createStructure):
6627 (JSC::JSNumberCell::toPrimitive):
6628 (JSC::JSNumberCell::getPrimitiveNumber):
6629 (JSC::JSNumberCell::getJSNumber):
6630 (JSC::jsNumberCell):
6632 (JSC::JSNumberCell::createStructure):
6633 (JSC::isNumberCell):
6634 (JSC::asNumberCell):
6635 (JSC::jsNumber):
6636 (JSC::JSValue::isDoubleNumber):
6637 (JSC::JSValue::getDoubleNumber):
6638 (JSC::JSValue::isNumber):
6639 (JSC::JSValue::uncheckedGetNumber):
6640 (JSC::jsNaN):
6641 (JSC::JSValue::toJSNumber):
6642 (JSC::JSValue::getNumber):
6643 (JSC::JSValue::numberToInt32):
6644 (JSC::JSValue::numberToUInt32):
6646 (JSC::JSObject::mark):
6647 (JSC::JSObject::put):
6648 (JSC::JSObject::putWithAttributes):
6649 (JSC::callDefaultValueFunction):
6650 (JSC::JSObject::getPrimitiveNumber):
6651 (JSC::JSObject::defaultValue):
6652 (JSC::JSObject::defineGetter):
6653 (JSC::JSObject::defineSetter):
6654 (JSC::JSObject::lookupGetter):
6655 (JSC::JSObject::lookupSetter):
6656 (JSC::JSObject::hasInstance):
6657 (JSC::JSObject::toNumber):
6658 (JSC::JSObject::toString):
6659 (JSC::JSObject::fillGetterPropertySlot):
6661 (JSC::JSObject::getDirect):
6662 (JSC::JSObject::getDirectLocation):
6663 (JSC::JSObject::offsetForLocation):
6664 (JSC::JSObject::locationForOffset):
6665 (JSC::JSObject::getDirectOffset):
6666 (JSC::JSObject::putDirectOffset):
6667 (JSC::JSObject::createStructure):
6668 (JSC::asObject):
6669 (JSC::JSObject::prototype):
6670 (JSC::JSObject::setPrototype):
6671 (JSC::JSValue::isObject):
6672 (JSC::JSObject::inlineGetOwnPropertySlot):
6673 (JSC::JSObject::getOwnPropertySlotForWrite):
6674 (JSC::JSObject::getPropertySlot):
6675 (JSC::JSObject::get):
6676 (JSC::JSObject::putDirect):
6677 (JSC::JSObject::putDirectWithoutTransition):
6678 (JSC::JSObject::toPrimitive):
6679 (JSC::JSValue::get):
6680 (JSC::JSValue::put):
6681 (JSC::JSObject::allocatePropertyStorageInline):
6683 (JSC::JSPropertyNameIterator::toPrimitive):
6684 (JSC::JSPropertyNameIterator::getPrimitiveNumber):
6686 (JSC::JSPropertyNameIterator::create):
6687 (JSC::JSPropertyNameIterator::next):
6689 (JSC::JSStaticScopeObject::put):
6690 (JSC::JSStaticScopeObject::putWithAttributes):
6692 (JSC::JSStaticScopeObject::JSStaticScopeObject):
6693 (JSC::JSStaticScopeObject::createStructure):
6695 (JSC::JSString::toPrimitive):
6696 (JSC::JSString::getPrimitiveNumber):
6697 (JSC::JSString::getOwnPropertySlot):
6699 (JSC::JSString::createStructure):
6700 (JSC::asString):
6701 (JSC::isJSString):
6702 (JSC::JSValue::toThisJSString):
6704 (JSC::JSValue::toInteger):
6705 (JSC::JSValue::toIntegerPreserveNaN):
6707 (JSC::JSValue::makeImmediate):
6708 (JSC::JSValue::asValue):
6709 (JSC::noValue):
6710 (JSC::jsImpossibleValue):
6711 (JSC::jsNull):
6712 (JSC::jsUndefined):
6713 (JSC::jsBoolean):
6714 (JSC::operator==):
6715 (JSC::operator!=):
6716 (JSC::JSValue::encode):
6717 (JSC::JSValue::decode):
6718 (JSC::JSValue::JSValue):
6719 (JSC::JSValue::operator bool):
6720 (JSC::JSValue::operator==):
6721 (JSC::JSValue::operator!=):
6722 (JSC::JSValue::isUndefined):
6723 (JSC::JSValue::isNull):
6725 (JSC::JSVariableObject::symbolTablePut):
6726 (JSC::JSVariableObject::symbolTablePutWithAttributes):
6728 (JSC::JSWrapperObject::internalValue):
6729 (JSC::JSWrapperObject::setInternalValue):
6731 (JSC::setUpStaticFunctionSlot):
6733 (JSC::lookupPut):
6735 (JSC::mathProtoFuncAbs):
6736 (JSC::mathProtoFuncACos):
6737 (JSC::mathProtoFuncASin):
6738 (JSC::mathProtoFuncATan):
6739 (JSC::mathProtoFuncATan2):
6740 (JSC::mathProtoFuncCeil):
6741 (JSC::mathProtoFuncCos):
6742 (JSC::mathProtoFuncExp):
6743 (JSC::mathProtoFuncFloor):
6744 (JSC::mathProtoFuncLog):
6745 (JSC::mathProtoFuncMax):
6746 (JSC::mathProtoFuncMin):
6747 (JSC::mathProtoFuncPow):
6748 (JSC::mathProtoFuncRandom):
6749 (JSC::mathProtoFuncRound):
6750 (JSC::mathProtoFuncSin):
6751 (JSC::mathProtoFuncSqrt):
6752 (JSC::mathProtoFuncTan):
6754 (JSC::MathObject::createStructure):
6756 (JSC::callNativeErrorConstructor):
6758 (JSC::numberConstructorNaNValue):
6759 (JSC::numberConstructorNegInfinity):
6760 (JSC::numberConstructorPosInfinity):
6761 (JSC::numberConstructorMaxValue):
6762 (JSC::numberConstructorMinValue):
6763 (JSC::callNumberConstructor):
6765 (JSC::NumberConstructor::createStructure):
6767 (JSC::NumberObject::getJSNumber):
6768 (JSC::constructNumber):
6771 (JSC::numberProtoFuncToString):
6772 (JSC::numberProtoFuncToLocaleString):
6773 (JSC::numberProtoFuncValueOf):
6774 (JSC::numberProtoFuncToFixed):
6775 (JSC::numberProtoFuncToExponential):
6776 (JSC::numberProtoFuncToPrecision):
6778 (JSC::constructObject):
6779 (JSC::callObjectConstructor):
6781 (JSC::objectProtoFuncValueOf):
6782 (JSC::objectProtoFuncHasOwnProperty):
6783 (JSC::objectProtoFuncIsPrototypeOf):
6784 (JSC::objectProtoFuncDefineGetter):
6785 (JSC::objectProtoFuncDefineSetter):
6786 (JSC::objectProtoFuncLookupGetter):
6787 (JSC::objectProtoFuncLookupSetter):
6788 (JSC::objectProtoFuncPropertyIsEnumerable):
6789 (JSC::objectProtoFuncToLocaleString):
6790 (JSC::objectProtoFuncToString):
6793 (JSC::JSValue::equalSlowCase):
6794 (JSC::JSValue::strictEqualSlowCase):
6795 (JSC::throwOutOfMemoryError):
6796 (JSC::jsAddSlowCase):
6797 (JSC::jsTypeStringForValue):
6798 (JSC::jsIsObjectType):
6799 (JSC::jsIsFunctionType):
6801 (JSC::JSValue::equal):
6802 (JSC::JSValue::equalSlowCaseInline):
6803 (JSC::JSValue::strictEqual):
6804 (JSC::JSValue::strictEqualSlowCaseInline):
6805 (JSC::jsLess):
6806 (JSC::jsLessEq):
6807 (JSC::jsAdd):
6808 (JSC::countPrototypeChainEntriesAndCheckForProxies):
6809 (JSC::resolveBase):
6811 (JSC::PropertySlot::functionGetter):
6813 (JSC::PropertySlot::PropertySlot):
6814 (JSC::PropertySlot::getValue):
6815 (JSC::PropertySlot::putValue):
6816 (JSC::PropertySlot::setValueSlot):
6817 (JSC::PropertySlot::setValue):
6818 (JSC::PropertySlot::setCustom):
6819 (JSC::PropertySlot::setCustomIndex):
6820 (JSC::PropertySlot::slotBase):
6821 (JSC::PropertySlot::setBase):
6822 (JSC::PropertySlot::):
6824 (JSC::gcProtect):
6825 (JSC::gcUnprotect):
6826 (JSC::ProtectedPtr::operator JSValue):
6827 (JSC::ProtectedJSValue::ProtectedJSValue):
6828 (JSC::ProtectedJSValue::get):
6829 (JSC::ProtectedJSValue::operator JSValue):
6830 (JSC::ProtectedJSValue::operator->):
6831 (JSC::ProtectedJSValue::~ProtectedJSValue):
6832 (JSC::ProtectedJSValue::operator=):
6833 (JSC::operator==):
6834 (JSC::operator!=):
6836 (JSC::RegExpConstructor::getBackref):
6837 (JSC::RegExpConstructor::getLastParen):
6838 (JSC::RegExpConstructor::getLeftContext):
6839 (JSC::RegExpConstructor::getRightContext):
6840 (JSC::regExpConstructorDollar1):
6841 (JSC::regExpConstructorDollar2):
6842 (JSC::regExpConstructorDollar3):
6843 (JSC::regExpConstructorDollar4):
6844 (JSC::regExpConstructorDollar5):
6845 (JSC::regExpConstructorDollar6):
6846 (JSC::regExpConstructorDollar7):
6847 (JSC::regExpConstructorDollar8):
6848 (JSC::regExpConstructorDollar9):
6849 (JSC::regExpConstructorInput):
6850 (JSC::regExpConstructorMultiline):
6851 (JSC::regExpConstructorLastMatch):
6852 (JSC::regExpConstructorLastParen):
6853 (JSC::regExpConstructorLeftContext):
6854 (JSC::regExpConstructorRightContext):
6855 (JSC::RegExpConstructor::put):
6856 (JSC::setRegExpConstructorInput):
6857 (JSC::setRegExpConstructorMultiline):
6858 (JSC::constructRegExp):
6859 (JSC::callRegExpConstructor):
6861 (JSC::RegExpConstructor::createStructure):
6862 (JSC::asRegExpConstructor):
6864 (JSC::RegExpMatchesArray::put):
6866 (JSC::regExpObjectGlobal):
6867 (JSC::regExpObjectIgnoreCase):
6868 (JSC::regExpObjectMultiline):
6869 (JSC::regExpObjectSource):
6870 (JSC::regExpObjectLastIndex):
6871 (JSC::RegExpObject::put):
6872 (JSC::setRegExpObjectLastIndex):
6873 (JSC::RegExpObject::test):
6874 (JSC::RegExpObject::exec):
6875 (JSC::callRegExpObject):
6877 (JSC::RegExpObject::createStructure):
6878 (JSC::asRegExpObject):
6880 (JSC::regExpProtoFuncTest):
6881 (JSC::regExpProtoFuncExec):
6882 (JSC::regExpProtoFuncCompile):
6883 (JSC::regExpProtoFuncToString):
6885 (JSC::stringFromCharCodeSlowCase):
6886 (JSC::stringFromCharCode):
6887 (JSC::callStringConstructor):
6889 (JSC::StringObject::put):
6891 (JSC::StringObject::createStructure):
6892 (JSC::asStringObject):
6894 (JSC::StringObjectThatMasqueradesAsUndefined::createStructure):
6896 (JSC::stringProtoFuncReplace):
6897 (JSC::stringProtoFuncToString):
6898 (JSC::stringProtoFuncCharAt):
6899 (JSC::stringProtoFuncCharCodeAt):
6900 (JSC::stringProtoFuncConcat):
6901 (JSC::stringProtoFuncIndexOf):
6902 (JSC::stringProtoFuncLastIndexOf):
6903 (JSC::stringProtoFuncMatch):
6904 (JSC::stringProtoFuncSearch):
6905 (JSC::stringProtoFuncSlice):
6906 (JSC::stringProtoFuncSplit):
6907 (JSC::stringProtoFuncSubstr):
6908 (JSC::stringProtoFuncSubstring):
6909 (JSC::stringProtoFuncToLowerCase):
6910 (JSC::stringProtoFuncToUpperCase):
6911 (JSC::stringProtoFuncLocaleCompare):
6912 (JSC::stringProtoFuncBig):
6913 (JSC::stringProtoFuncSmall):
6914 (JSC::stringProtoFuncBlink):
6915 (JSC::stringProtoFuncBold):
6916 (JSC::stringProtoFuncFixed):
6917 (JSC::stringProtoFuncItalics):
6918 (JSC::stringProtoFuncStrike):
6919 (JSC::stringProtoFuncSub):
6920 (JSC::stringProtoFuncSup):
6921 (JSC::stringProtoFuncFontcolor):
6922 (JSC::stringProtoFuncFontsize):
6923 (JSC::stringProtoFuncAnchor):
6924 (JSC::stringProtoFuncLink):
6926 (JSC::Structure::Structure):
6927 (JSC::Structure::changePrototypeTransition):
6929 (JSC::Structure::create):
6930 (JSC::Structure::setPrototypeWithoutTransition):
6931 (JSC::Structure::storedPrototype):
6944 (JSC::Interpreter::privateExecute):
6946 (JSC::JIT::privateCompileMainPass):
6948 (JSC::JIT::compileFastArith_op_mod):
6950 (JSC::globalFuncParseInt): Updated for interface changes.
6953 (JSC::JSValuePtr::JSValuePtr):
6955 (JSC::JSValuePtr::):
6956 (JSC::jsImpossibleValue):
6957 (JSC::jsNull):
6958 (JSC::jsUndefined):
6959 (JSC::jsBoolean):
6960 (JSC::JSValuePtr::encode):
6961 (JSC::JSValuePtr::decode):
6962 (JSC::JSValuePtr::JSValuePtr):
6963 (JSC::JSValuePtr::operator bool):
6964 (JSC::JSValuePtr::operator==):
6965 (JSC::JSValuePtr::operator!=):
6966 (JSC::JSValuePtr::isUndefined):
6967 (JSC::JSValuePtr::isNull): Changed jsImpossibleValue(), jsNull(),
6984 (JSC::Yarr::CharacterClassConstructor::putRange):
6997 (JSC::SamplingTool::doRun):
6999 (JSC::SamplingTool::Sample::isNull):
7010 (JSC::stringProtoFuncReplace): Use new replaceRange helper instead of
7013 (JSC::UString::replaceRange): New helper function.
7026 (JSC::BytecodeGenerator::JSValueHashTraits::constructDeletedValue):
7027 (JSC::BytecodeGenerator::JSValueHashTraits::isDeletedValue):
7029 (JSC::Register::):
7031 (JSC::):
7034 (JSC::):
7036 (JSC::JITStubs::cti_op_add):
7037 (JSC::JITStubs::cti_op_pre_inc):
7038 (JSC::JITStubs::cti_op_get_by_id_generic):
7039 (JSC::JITStubs::cti_op_get_by_id):
7040 (JSC::JITStubs::cti_op_get_by_id_second):
7041 (JSC::JITStubs::cti_op_get_by_id_self_fail):
7042 (JSC::JITStubs::cti_op_get_by_id_proto_list):
7043 (JSC::JITStubs::cti_op_get_by_id_proto_list_full):
7044 (JSC::JITStubs::cti_op_get_by_id_proto_fail):
7045 (JSC::JITStubs::cti_op_get_by_id_array_fail):
7046 (JSC::JITStubs::cti_op_get_by_id_string_fail):
7047 (JSC::JITStubs::cti_op_instanceof):
7048 (JSC::JITStubs::cti_op_del_by_id):
7049 (JSC::JITStubs::cti_op_mul):
7050 (JSC::JITStubs::cti_op_call_NotJSFunction):
7051 (JSC::JITStubs::cti_op_resolve):
7052 (JSC::JITStubs::cti_op_construct_NotJSConstruct):
7053 (JSC::JITStubs::cti_op_get_by_val):
7054 (JSC::JITStubs::cti_op_get_by_val_string):
7055 (JSC::JITStubs::cti_op_get_by_val_byte_array):
7056 (JSC::JITStubs::cti_op_sub):
7057 (JSC::JITStubs::cti_op_lesseq):
7058 (JSC::JITStubs::cti_op_negate):
7059 (JSC::JITStubs::cti_op_resolve_base):
7060 (JSC::JITStubs::cti_op_resolve_skip):
7061 (JSC::JITStubs::cti_op_resolve_global):
7062 (JSC::JITStubs::cti_op_div):
7063 (JSC::JITStubs::cti_op_pre_dec):
7064 (JSC::JITStubs::cti_op_not):
7065 (JSC::JITStubs::cti_op_eq):
7066 (JSC::JITStubs::cti_op_lshift):
7067 (JSC::JITStubs::cti_op_bitand):
7068 (JSC::JITStubs::cti_op_rshift):
7069 (JSC::JITStubs::cti_op_bitnot):
7070 (JSC::JITStubs::cti_op_mod):
7071 (JSC::JITStubs::cti_op_less):
7072 (JSC::JITStubs::cti_op_neq):
7073 (JSC::JITStubs::cti_op_urshift):
7074 (JSC::JITStubs::cti_op_bitxor):
7075 (JSC::JITStubs::cti_op_bitor):
7076 (JSC::JITStubs::cti_op_call_eval):
7077 (JSC::JITStubs::cti_op_throw):
7078 (JSC::JITStubs::cti_op_next_pname):
7079 (JSC::JITStubs::cti_op_typeof):
7080 (JSC::JITStubs::cti_op_is_undefined):
7081 (JSC::JITStubs::cti_op_is_boolean):
7082 (JSC::JITStubs::cti_op_is_number):
7083 (JSC::JITStubs::cti_op_is_string):
7084 (JSC::JITStubs::cti_op_is_object):
7085 (JSC::JITStubs::cti_op_is_function):
7086 (JSC::JITStubs::cti_op_stricteq):
7087 (JSC::JITStubs::cti_op_nstricteq):
7088 (JSC::JITStubs::cti_op_to_jsnumber):
7089 (JSC::JITStubs::cti_op_in):
7090 (JSC::JITStubs::cti_op_del_by_val):
7091 (JSC::JITStubs::cti_vm_throw):
7094 (JSC::JSValuePtr::encode):
7095 (JSC::JSValuePtr::decode):
7108 (JSC::Yarr::RegexPatternConstructor::copyDisjunction):
7120 (JSC::CallFrame::dumpCaller):
7132 … (JSC::UString::Rep::Rep): For the constructor without a base, set self as base instead of null.
7133 (JSC::UString::Rep::baseString): Just read m_baseString - no more branching.
7146 (JSC::SamplingFlags::stop):
7148 (JSC::SamplingFlags::ScopedFlag::ScopedFlag):
7149 (JSC::SamplingFlags::ScopedFlag::~ScopedFlag):
7208 (JSC::concatenate): Put fast case for appending a single character
7218 This mechanism allows fine-grained JSC and JavaScript program aware
7226 from within JSC implementation, or by calling setSamplingFlag() and
7237 (JSC::SamplingFlags::sample):
7238 (JSC::SamplingFlags::start):
7239 (JSC::SamplingFlags::stop):
7240 (JSC::SamplingThread::threadStartFunc):
7241 (JSC::SamplingThread::start):
7242 (JSC::SamplingThread::stop):
7243 (JSC::ScopeSampleRecord::sample):
7244 (JSC::SamplingTool::doRun):
7245 (JSC::SamplingTool::sample):
7246 (JSC::SamplingTool::start):
7247 (JSC::SamplingTool::stop):
7249 (JSC::SamplingFlags::setFlag):
7250 (JSC::SamplingFlags::clearFlag):
7251 (JSC::SamplingTool::SamplingTool):
7310 (JSC::Yarr::RegexGenerator::TermGenerationState::linkAlternativeBacktracksTo):
7311 (JSC::Yarr::RegexGenerator::generateDisjunction):
7333 (JSC::ExecState::emptyList):
7335 (JSC::ArgList::getSlice):
7336 (JSC::MarkedArgumentBuffer::markLists):
7337 (JSC::MarkedArgumentBuffer::slowAppend):
7339 (JSC::MarkedArgumentBuffer::MarkedArgumentBuffer):
7340 (JSC::MarkedArgumentBuffer::~MarkedArgumentBuffer):
7341 (JSC::ArgList::ArgList):
7342 (JSC::ArgList::at):
7343 (JSC::ArgList::isEmpty):
7344 (JSC::ArgList::size):
7345 (JSC::ArgList::begin):
7346 (JSC::ArgList::end):
7348 (JSC::Arguments::fillArgList):
7351 (JSC::arrayProtoFuncConcat):
7352 (JSC::arrayProtoFuncPush):
7353 (JSC::arrayProtoFuncSort):
7354 (JSC::arrayProtoFuncFilter):
7355 (JSC::arrayProtoFuncMap):
7356 (JSC::arrayProtoFuncEvery):
7357 (JSC::arrayProtoFuncForEach):
7358 (JSC::arrayProtoFuncSome):
7359 (JSC::arrayProtoFuncReduce):
7360 (JSC::arrayProtoFuncReduceRight):
7362 (JSC::Heap::collect):
7364 (JSC::Heap::markListSet):
7367 (JSC::Error::create):
7369 (JSC::functionProtoFuncApply):
7371 (JSC::JSArray::JSArray):
7372 (JSC::AVLTreeAbstractorForArrayCompare::compare_key_key):
7373 (JSC::JSArray::fillArgList):
7374 (JSC::constructArray):
7377 (JSC::JSGlobalData::JSGlobalData):
7380 (JSC::JSObject::put):
7382 (JSC::stringFromCharCodeSlowCase):
7384 (JSC::stringProtoFuncReplace):
7385 (JSC::stringProtoFuncConcat):
7386 (JSC::stringProtoFuncMatch):
7408 (JSC::InternalFunction::displayName):
7418 (JSC::constructJSCallback):
7420 (JSC::JSCallbackFunction::call):
7422 (JSC::::construct):
7423 (JSC::::call):
7425 (JSC::CodeBlock::dump):
7427 (JSC::CodeBlock::getConstant):
7429 (JSC::BytecodeGenerator::emitEqualityOp):
7431 (JSC::CallFrame::thisValue):
7433 (JSC::Interpreter::callEval):
7434 (JSC::Interpreter::throwException):
7435 (JSC::Interpreter::createExceptionScope):
7436 (JSC::Interpreter::privateExecute):
7437 (JSC::Interpreter::retrieveArguments):
7439 (JSC::Register::):
7440 (JSC::Register::Register):
7441 (JSC::Register::jsValue):
7442 (JSC::Register::marked):
7443 (JSC::Register::mark):
7444 (JSC::Register::i):
7445 (JSC::Register::activation):
7446 (JSC::Register::arguments):
7447 (JSC::Register::callFrame):
7448 (JSC::Register::codeBlock):
7449 (JSC::Register::function):
7450 (JSC::Register::propertyNameIterator):
7451 (JSC::Register::scopeChain):
7452 (JSC::Register::vPC):
7454 (JSC::JITStubs::cti_op_call_NotJSFunction):
7455 (JSC::JITStubs::cti_op_load_varargs):
7456 (JSC::JITStubs::cti_op_call_eval):
7463 (JSC::ArgList::at):
7465 (JSC::Arguments::copyToRegisters):
7466 (JSC::Arguments::fillArgList):
7467 (JSC::Arguments::getOwnPropertySlot):
7469 (JSC::constructArrayWithSizeQuirk):
7471 (JSC::arrayProtoFuncJoin):
7472 (JSC::arrayProtoFuncConcat):
7473 (JSC::arrayProtoFuncPush):
7474 (JSC::arrayProtoFuncSlice):
7475 (JSC::arrayProtoFuncSort):
7476 (JSC::arrayProtoFuncSplice):
7477 (JSC::arrayProtoFuncUnShift):
7478 (JSC::arrayProtoFuncFilter):
7479 (JSC::arrayProtoFuncMap):
7480 (JSC::arrayProtoFuncEvery):
7481 (JSC::arrayProtoFuncForEach):
7482 (JSC::arrayProtoFuncSome):
7483 (JSC::arrayProtoFuncReduce):
7484 (JSC::arrayProtoFuncReduceRight):
7485 (JSC::arrayProtoFuncIndexOf):
7486 (JSC::arrayProtoFuncLastIndexOf):
7488 (JSC::constructBoolean):
7489 (JSC::callBooleanConstructor):
7491 (JSC::constructDate):
7492 (JSC::dateParse):
7493 (JSC::dateUTC):
7495 (JSC::formatLocaleDate):
7496 (JSC::fillStructuresUsingTimeArgs):
7497 (JSC::fillStructuresUsingDateArgs):
7498 (JSC::dateProtoFuncSetTime):
7499 (JSC::dateProtoFuncSetYear):
7501 (JSC::constructError):
7503 (JSC::constructFunction):
7505 (JSC::functionProtoFuncApply):
7506 (JSC::functionProtoFuncCall):
7508 (JSC::JSArray::JSArray):
7509 (JSC::constructArray):
7512 (JSC::encode):
7513 (JSC::decode):
7514 (JSC::globalFuncEval):
7515 (JSC::globalFuncParseInt):
7516 (JSC::globalFuncParseFloat):
7517 (JSC::globalFuncIsNaN):
7518 (JSC::globalFuncIsFinite):
7519 (JSC::globalFuncEscape):
7520 (JSC::globalFuncUnescape):
7521 (JSC::globalFuncJSCPrint):
7523 (JSC::mathProtoFuncAbs):
7524 (JSC::mathProtoFuncACos):
7525 (JSC::mathProtoFuncASin):
7526 (JSC::mathProtoFuncATan):
7527 (JSC::mathProtoFuncATan2):
7528 (JSC::mathProtoFuncCeil):
7529 (JSC::mathProtoFuncCos):
7530 (JSC::mathProtoFuncExp):
7531 (JSC::mathProtoFuncFloor):
7532 (JSC::mathProtoFuncLog):
7533 (JSC::mathProtoFuncMax):
7534 (JSC::mathProtoFuncMin):
7535 (JSC::mathProtoFuncPow):
7536 (JSC::mathProtoFuncRound):
7537 (JSC::mathProtoFuncSin):
7538 (JSC::mathProtoFuncSqrt):
7539 (JSC::mathProtoFuncTan):
7541 (JSC::NativeErrorConstructor::construct):
7543 (JSC::constructWithNumberConstructor):
7544 (JSC::callNumberConstructor):
7546 (JSC::numberProtoFuncToString):
7547 (JSC::numberProtoFuncToFixed):
7548 (JSC::numberProtoFuncToExponential):
7549 (JSC::numberProtoFuncToPrecision):
7551 (JSC::constructObject):
7553 (JSC::objectProtoFuncHasOwnProperty):
7554 (JSC::objectProtoFuncIsPrototypeOf):
7555 (JSC::objectProtoFuncDefineGetter):
7556 (JSC::objectProtoFuncDefineSetter):
7557 (JSC::objectProtoFuncLookupGetter):
7558 (JSC::objectProtoFuncLookupSetter):
7559 (JSC::objectProtoFuncPropertyIsEnumerable):
7561 (JSC::PropertySlot::getValue):
7563 (JSC::constructRegExp):
7565 (JSC::RegExpObject::match):
7567 (JSC::regExpProtoFuncCompile):
7569 (JSC::stringFromCharCodeSlowCase):
7570 (JSC::stringFromCharCode):
7571 (JSC::constructWithStringConstructor):
7572 (JSC::callStringConstructor):
7574 (JSC::stringProtoFuncReplace):
7575 (JSC::stringProtoFuncCharAt):
7576 (JSC::stringProtoFuncCharCodeAt):
7577 (JSC::stringProtoFuncConcat):
7578 (JSC::stringProtoFuncIndexOf):
7579 (JSC::stringProtoFuncLastIndexOf):
7580 (JSC::stringProtoFuncMatch):
7581 (JSC::stringProtoFuncSearch):
7582 (JSC::stringProtoFuncSlice):
7583 (JSC::stringProtoFuncSplit):
7584 (JSC::stringProtoFuncSubstr):
7585 (JSC::stringProtoFuncSubstring):
7586 (JSC::stringProtoFuncLocaleCompare):
7587 (JSC::stringProtoFuncFontcolor):
7588 (JSC::stringProtoFuncFontsize):
7589 (JSC::stringProtoFuncAnchor):
7590 (JSC::stringProtoFuncLink):
7601 (JSC::newCapacityWithOverflowCheck): Added.
7602 (JSC::concatenate): Used newCapacityWithOverflowCheck().
7603 (JSC::UString::append): Ditto.
7616 (JSC::JIT::compileFastArith_op_rshift):
7617 (JSC::JIT::compileFastArithSlow_op_rshift):
7634 (JSC::JIT::compileFastArith_op_rshift):
7635 (JSC::JIT::compileFastArithSlow_op_rshift):
7636 (JSC::isSSE2Present):
7654 (JSC::JITStubs::cti_op_get_by_val):
7655 (JSC::JITStubs::cti_op_get_by_val_string):
7669 (JSC::JIT::compileFastArith_op_rshift):
7670 (JSC::JIT::compileFastArithSlow_op_rshift):
7701 (JSC::BytecodeGenerator::breakTarget):
7730 (JSC::JIT::privateCompileGetByIdProto):
7731 (JSC::JIT::privateCompileGetByIdProtoList):
7740 (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator):
7765 (JSC::RegisterFile::releaseExcessCapacity):
7805 (JSC::Yarr::RegexPatternConstructor::setupAlternativeOffsets):
7807 (JSC::Yarr::Interpreter::checkCharacter):
7808 (JSC::Yarr::Interpreter::checkCasedCharacter):
7809 (JSC::Yarr::Interpreter::backtrackPatternCharacter):
7810 (JSC::Yarr::Interpreter::backtrackPatternCasedCharacter):
7811 (JSC::Yarr::Interpreter::matchParentheticalAssertionBegin):
7812 (JSC::Yarr::Interpreter::matchParentheticalAssertionEnd):
7813 (JSC::Yarr::Interpreter::backtrackParentheticalAssertionBegin):
7814 (JSC::Yarr::Interpreter::backtrackParentheticalAssertionEnd):
7815 (JSC::Yarr::Interpreter::matchDisjunction):
7816 (JSC::Yarr::Interpreter::interpret):
7817 (JSC::Yarr::ByteCompiler::atomPatternCharacter):
7818 (JSC::Yarr::ByteCompiler::atomParenthesesSubpatternBegin):
7819 (JSC::Yarr::ByteCompiler::atomParentheticalAssertionBegin):
7820 (JSC::Yarr::ByteCompiler::closeAlternative):
7821 (JSC::Yarr::ByteCompiler::closeBodyAlternative):
7822 (JSC::Yarr::ByteCompiler::atomParenthesesEnd):
7823 (JSC::Yarr::ByteCompiler::regexBegin):
7824 (JSC::Yarr::ByteCompiler::regexEnd):
7825 (JSC::Yarr::ByteCompiler::alterantiveBodyDisjunction):
7826 (JSC::Yarr::ByteCompiler::alterantiveDisjunction):
7827 (JSC::Yarr::ByteCompiler::emitDisjunction):
7829 (JSC::Yarr::ByteTerm::):
7830 (JSC::Yarr::ByteTerm::ByteTerm):
7831 (JSC::Yarr::ByteTerm::BodyAlternativeBegin):
7832 (JSC::Yarr::ByteTerm::BodyAlternativeDisjunction):
7833 (JSC::Yarr::ByteTerm::BodyAlternativeEnd):
7834 (JSC::Yarr::ByteTerm::AlternativeBegin):
7835 (JSC::Yarr::ByteTerm::AlternativeDisjunction):
7836 (JSC::Yarr::ByteTerm::AlternativeEnd):
7837 (JSC::Yarr::ByteTerm::SubpatternBegin):
7838 (JSC::Yarr::ByteTerm::SubpatternEnd):
7840 (JSC::Yarr::RegexGenerator::generateParentheticalAssertion):
7856 (JSC::RegisterFile::releaseExcessCapacity):
7870 (JSC::RegisterFile::releaseExcessCapacity):
7872 (JSC::RegisterFile::RegisterFile):
7873 (JSC::RegisterFile::shrink):
7874 (JSC::RegisterFile::grow):
7906 (JSC::CallIdentifier::Hash::hash):
7907 (JSC::CallIdentifier::Hash::equal):
7908 (JSC::CallIdentifier::hash):
7913 (JSC::Profile::create):
7964 (JSC::Yarr::RegexPatternConstructor::quantifyAtom):
7965 (JSC::Yarr::RegexPatternConstructor::setupAlternativeOffsets):
7967 (JSC::Yarr::Interpreter::matchParentheses):
7968 (JSC::Yarr::Interpreter::backtrackParentheses):
7969 (JSC::Yarr::ByteCompiler::emitDisjunction):
7971 (JSC::Yarr::RegexGenerator::loadFromFrameAndJump):
7972 (JSC::Yarr::RegexGenerator::generateParenthesesDisjunction):
7973 (JSC::Yarr::RegexGenerator::generateParentheticalAssertion):
7974 (JSC::Yarr::RegexGenerator::generateTerm):
7975 (JSC::Yarr::executeRegex):
7977 (JSC::Yarr::Parser::):
7978 (JSC::Yarr::Parser::parseTokens):
7979 (JSC::Yarr::Parser::parse):
7981 (JSC::Yarr::PatternTerm::):
7982 (JSC::Yarr::PatternTerm::PatternTerm):
7991 (JSC::FixedVMPoolAllocator::addToFreeList):
7992 (JSC::FixedVMPoolAllocator::coalesceFreeSpace):
7993 (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator):
7994 (JSC::FixedVMPoolAllocator::alloc):
7995 (JSC::FixedVMPoolAllocator::free):
7996 (JSC::FixedVMPoolAllocator::isWithinVMPool):
8007 (JSC::FixedVMPoolAllocator::release):
8008 (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator):
8009 (JSC::FixedVMPoolAllocator::alloc):
8010 (JSC::FixedVMPoolAllocator::free):
8011 (JSC::FixedVMPoolAllocator::isWithinVMPool):
8021 (JSC::Yarr::RegexGenerator::generateAssertionBOL):
8022 (JSC::Yarr::RegexGenerator::generateAssertionEOL):
8023 (JSC::Yarr::RegexGenerator::generateAssertionWordBoundary):
8024 (JSC::Yarr::RegexGenerator::generatePatternCharacterSingle):
8025 (JSC::Yarr::RegexGenerator::generatePatternCharacterPair):
8026 (JSC::Yarr::RegexGenerator::generatePatternCharacterFixed):
8027 (JSC::Yarr::RegexGenerator::generatePatternCharacterGreedy):
8028 (JSC::Yarr::RegexGenerator::generatePatternCharacterNonGreedy):
8029 (JSC::Yarr::RegexGenerator::generateCharacterClassSingle):
8030 (JSC::Yarr::RegexGenerator::generateCharacterClassFixed):
8031 (JSC::Yarr::RegexGenerator::generateCharacterClassGreedy):
8032 (JSC::Yarr::RegexGenerator::generateCharacterClassNonGreedy):
8033 (JSC::Yarr::RegexGenerator::generateTerm):
8046 (JSC::RegExp::match):
8048 (JSC::Yarr::RegexGenerator::storeToFrame):
8049 (JSC::Yarr::RegexGenerator::storeToFrameWithPatch):
8050 (JSC::Yarr::RegexGenerator::loadFromFrameAndJump):
8051 (JSC::Yarr::RegexGenerator::AlternativeBacktrackRecord::AlternativeBacktrackRecord):
8052 (JSC::Yarr::RegexGenerator::TermGenerationState::resetAlternative):
8053 (JSC::Yarr::RegexGenerator::TermGenerationState::resetTerm):
8054 (JSC::Yarr::RegexGenerator::TermGenerationState::jumpToBacktrack):
8055 (JSC::Yarr::RegexGenerator::TermGenerationState::plantJumpToBacktrackIfExists):
8056 (JSC::Yarr::RegexGenerator::TermGenerationState::addBacktrackJump):
8057 (JSC::Yarr::RegexGenerator::TermGenerationState::linkAlternativeBacktracks):
8058 (JSC::Yarr::RegexGenerator::TermGenerationState::propagateBacktrackingFrom):
8059 (JSC::Yarr::RegexGenerator::genertateAssertionBOL):
8060 (JSC::Yarr::RegexGenerator::genertateAssertionEOL):
8061 (JSC::Yarr::RegexGenerator::matchAssertionWordchar):
8062 (JSC::Yarr::RegexGenerator::genertateAssertionWordBoundary):
8063 (JSC::Yarr::RegexGenerator::genertatePatternCharacterSingle):
8064 (JSC::Yarr::RegexGenerator::genertatePatternCharacterPair):
8065 (JSC::Yarr::RegexGenerator::genertatePatternCharacterFixed):
8066 (JSC::Yarr::RegexGenerator::genertatePatternCharacterGreedy):
8067 (JSC::Yarr::RegexGenerator::genertatePatternCharacterNonGreedy):
8068 (JSC::Yarr::RegexGenerator::genertateCharacterClassSingle):
8069 (JSC::Yarr::RegexGenerator::genertateCharacterClassFixed):
8070 (JSC::Yarr::RegexGenerator::genertateCharacterClassGreedy):
8071 (JSC::Yarr::RegexGenerator::genertateCharacterClassNonGreedy):
8072 (JSC::Yarr::RegexGenerator::generateParenthesesDisjunction):
8073 (JSC::Yarr::RegexGenerator::generateParenthesesSingle):
8074 (JSC::Yarr::RegexGenerator::generateParentheticalAssertion):
8075 (JSC::Yarr::RegexGenerator::generateTerm):
8076 (JSC::Yarr::RegexGenerator::generateDisjunction):
8077 (JSC::Yarr::RegexGenerator::generateEnter):
8078 (JSC::Yarr::RegexGenerator::generateReturn):
8079 (JSC::Yarr::RegexGenerator::RegexGenerator):
8080 (JSC::Yarr::RegexGenerator::generate):
8081 (JSC::Yarr::RegexGenerator::compile):
8082 (JSC::Yarr::RegexGenerator::generationFailed):
8083 (JSC::Yarr::jitCompileRegex):
8084 (JSC::Yarr::executeRegex):
8086 (JSC::Yarr::RegexCodeBlock::RegexCodeBlock):
8087 (JSC::Yarr::RegexCodeBlock::~RegexCodeBlock):
8120 (JSC::stringProtoFuncReplace):
8137 (JSC::Interpreter::execute):
8138 (JSC::Interpreter::prepareForRepeatCall):
8140 (JSC::): Ditto. I wrote the recursion test slightly funny, so that the
8144 (JSC::arrayProtoFuncToString):
8145 (JSC::arrayProtoFuncToLocaleString):
8146 (JSC::arrayProtoFuncJoin): Conservatively, set the array recursion limits
8198 (JSC::RegisterFile::RegisterFile):
8200 (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator):
8202 (JSC::ExecutablePool::systemAlloc):
8204 (JSC::allocateBlock):
8245 (JSC::RegisterFile::RegisterFile):
8247 (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator):
8249 (JSC::ExecutablePool::systemAlloc):
8251 (JSC::allocateBlock):
8310 (JSC::allocateBlock): Fix bozo typo.
8319 (JSC::RegisterFile::RegisterFile):
8321 (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator):
8323 (JSC::ExecutablePool::systemAlloc):
8325 (JSC::allocateBlock):
8344 (JSC::concatenate):
8345 (JSC::UString::append):
8372 (JSC::FreeListEntry::FreeListEntry):
8373 (JSC::AVLTreeAbstractorForFreeList::get_less):
8374 (JSC::AVLTreeAbstractorForFreeList::set_less):
8375 (JSC::AVLTreeAbstractorForFreeList::get_greater):
8376 (JSC::AVLTreeAbstractorForFreeList::set_greater):
8377 (JSC::AVLTreeAbstractorForFreeList::get_balance_factor):
8378 (JSC::AVLTreeAbstractorForFreeList::set_balance_factor):
8379 (JSC::AVLTreeAbstractorForFreeList::null):
8380 (JSC::AVLTreeAbstractorForFreeList::compare_key_key):
8381 (JSC::AVLTreeAbstractorForFreeList::compare_key_node):
8382 (JSC::AVLTreeAbstractorForFreeList::compare_node_node):
8383 (JSC::sortFreeListEntriesByPointer):
8384 (JSC::sortCommonSizedAllocations):
8385 (JSC::FixedVMPoolAllocator::release):
8386 (JSC::FixedVMPoolAllocator::reuse):
8387 (JSC::FixedVMPoolAllocator::addToFreeList):
8388 (JSC::FixedVMPoolAllocator::coalesceFreeSpace):
8389 (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator):
8390 (JSC::FixedVMPoolAllocator::alloc):
8391 (JSC::FixedVMPoolAllocator::free):
8392 (JSC::ExecutableAllocator::intializePageSize):
8393 (JSC::ExecutablePool::systemAlloc):
8394 (JSC::ExecutablePool::systemRelease):
8413 (JSC::CachedCall::CachedCall):
8414 (JSC::CachedCall::call): add assertion to ensure we don't use a bad callframe
8444 (JSC::globalFuncParseInt):
8456 (JSC::HashTable::createTable):
8457 (JSC::HashTable::deleteTable):
8459 (JSC::HashEntry::initialize):
8460 (JSC::HashEntry::next):
8461 (JSC::HashTable::entry):
8463 (JSC::Structure::getEnumerableNamesFromClassInfoTable):
8477 (JSC::CachedCall::newCallFrame):
8479 (JSC::AVLTreeAbstractorForArrayCompare::compare_key_key):
8491 (JSC::BytecodeGenerator::emitResolveBase):
8504 (JSC::BytecodeGenerator::BytecodeGenerator):
8505 (JSC::BytecodeGenerator::emitLoadGlobalObject):
8506 (JSC::BytecodeGenerator::emitResolveWithBase):
8518 (JSC::arrayProtoFuncMap):
8519 (JSC::arrayProtoFuncEvery):
8520 (JSC::arrayProtoFuncForEach):
8521 (JSC::arrayProtoFuncSome):
8532 (JSC::AVLTreeAbstractorForArrayCompare::compare_key_key):
8533 (JSC::JSArray::sort):
8545 (JSC::arrayProtoFuncReduceRight):
8558 (JSC::arrayProtoFuncFilter):
8570 (JSC::arrayProtoFuncReduce):
8582 (JSC::CallFrameClosure::setArgument):
8583 (JSC::CallFrameClosure::resetCallFrame):
8585 (JSC::Interpreter::prepareForRepeatCall):
8607 (JSC::CachedCall::CachedCall):
8608 (JSC::CachedCall::call):
8609 (JSC::CachedCall::setThis):
8610 (JSC::CachedCall::setArgument):
8611 (JSC::CachedCall::~CachedCall):
8616 (JSC::Interpreter::prepareForRepeatCall):
8618 (JSC::Interpreter::execute):
8620 (JSC::Interpreter::endRepeatCall):
8623 (JSC::Interpreter::CallFrameClosure::setArgument):
8624 (JSC::Interpreter::CallFrameClosure::resetCallFrame):
8627 (JSC::arrayProtoFuncFilter):
8684 (JSC::MacroAssemblerX86Common::move):
8685 (JSC::MacroAssemblerX86Common::swap):
8686 (JSC::MacroAssemblerX86Common::signExtend32ToPtr):
8687 (JSC::MacroAssemblerX86Common::zeroExtend32ToPtr):
8688 (JSC::MacroAssemblerX86Common::branch32):
8689 (JSC::MacroAssemblerX86Common::branch16):
8691 (JSC::X86Assembler::cmpw_im):
8692 (JSC::X86Assembler::testw_rr):
8693 (JSC::X86Assembler::X86InstructionFormatter::immediate16):
8695 (JSC::RegExp::RegExp):
8696 (JSC::RegExp::~RegExp):
8697 (JSC::RegExp::create):
8698 (JSC::RegExp::compile):
8699 (JSC::RegExp::match):
8704 (JSC::Yarr::CharacterClassConstructor::CharacterClassConstructor):
8705 (JSC::Yarr::CharacterClassConstructor::reset):
8706 (JSC::Yarr::CharacterClassConstructor::append):
8707 (JSC::Yarr::CharacterClassConstructor::putChar):
8708 (JSC::Yarr::CharacterClassConstructor::isUnicodeUpper):
8709 (JSC::Yarr::CharacterClassConstructor::isUnicodeLower):
8710 (JSC::Yarr::CharacterClassConstructor::putRange):
8711 (JSC::Yarr::CharacterClassConstructor::charClass):
8712 (JSC::Yarr::CharacterClassConstructor::addSorted):
8713 (JSC::Yarr::CharacterClassConstructor::addSortedRange):
8714 (JSC::Yarr::newlineCreate):
8715 (JSC::Yarr::digitsCreate):
8716 (JSC::Yarr::spacesCreate):
8717 (JSC::Yarr::wordcharCreate):
8718 (JSC::Yarr::nondigitsCreate):
8719 (JSC::Yarr::nonspacesCreate):
8720 (JSC::Yarr::nonwordcharCreate):
8721 (JSC::Yarr::RegexPatternConstructor::RegexPatternConstructor):
8722 (JSC::Yarr::RegexPatternConstructor::~RegexPatternConstructor):
8723 (JSC::Yarr::RegexPatternConstructor::reset):
8724 (JSC::Yarr::RegexPatternConstructor::assertionBOL):
8725 (JSC::Yarr::RegexPatternConstructor::assertionEOL):
8726 (JSC::Yarr::RegexPatternConstructor::assertionWordBoundary):
8727 (JSC::Yarr::RegexPatternConstructor::atomPatternCharacter):
8728 (JSC::Yarr::RegexPatternConstructor::atomBuiltInCharacterClass):
8729 (JSC::Yarr::RegexPatternConstructor::atomCharacterClassBegin):
8730 (JSC::Yarr::RegexPatternConstructor::atomCharacterClassAtom):
8731 (JSC::Yarr::RegexPatternConstructor::atomCharacterClassRange):
8732 (JSC::Yarr::RegexPatternConstructor::atomCharacterClassBuiltIn):
8733 (JSC::Yarr::RegexPatternConstructor::atomCharacterClassEnd):
8734 (JSC::Yarr::RegexPatternConstructor::atomParenthesesSubpatternBegin):
8735 (JSC::Yarr::RegexPatternConstructor::atomParentheticalAssertionBegin):
8736 (JSC::Yarr::RegexPatternConstructor::atomParenthesesEnd):
8737 (JSC::Yarr::RegexPatternConstructor::atomBackReference):
8738 (JSC::Yarr::RegexPatternConstructor::copyDisjunction):
8739 (JSC::Yarr::RegexPatternConstructor::copyTerm):
8740 (JSC::Yarr::RegexPatternConstructor::quantifyAtom):
8741 (JSC::Yarr::RegexPatternConstructor::disjunction):
8742 (JSC::Yarr::RegexPatternConstructor::regexBegin):
8743 (JSC::Yarr::RegexPatternConstructor::regexEnd):
8744 (JSC::Yarr::RegexPatternConstructor::regexError):
8745 (JSC::Yarr::RegexPatternConstructor::setupAlternativeOffsets):
8746 (JSC::Yarr::RegexPatternConstructor::setupDisjunctionOffsets):
8747 (JSC::Yarr::RegexPatternConstructor::setupOffsets):
8748 (JSC::Yarr::compileRegex):
8751 (JSC::Yarr::Interpreter::appendParenthesesDisjunctionContext):
8752 (JSC::Yarr::Interpreter::popParenthesesDisjunctionContext):
8753 (JSC::Yarr::Interpreter::DisjunctionContext::DisjunctionContext):
8754 (JSC::Yarr::Interpreter::DisjunctionContext::operator new):
8755 (JSC::Yarr::Interpreter::allocDisjunctionContext):
8756 (JSC::Yarr::Interpreter::freeDisjunctionContext):
8757 (JSC::Yarr::Interpreter::ParenthesesDisjunctionContext::ParenthesesDisjunctionContext):
8758 (JSC::Yarr::Interpreter::ParenthesesDisjunctionContext::operator new):
8759 (JSC::Yarr::Interpreter::ParenthesesDisjunctionContext::restoreOutput):
8760 (JSC::Yarr::Interpreter::ParenthesesDisjunctionContext::getDisjunctionContext):
8761 (JSC::Yarr::Interpreter::allocParenthesesDisjunctionContext):
8762 (JSC::Yarr::Interpreter::freeParenthesesDisjunctionContext):
8763 (JSC::Yarr::Interpreter::InputStream::InputStream):
8764 (JSC::Yarr::Interpreter::InputStream::next):
8765 (JSC::Yarr::Interpreter::InputStream::rewind):
8766 (JSC::Yarr::Interpreter::InputStream::read):
8767 (JSC::Yarr::Interpreter::InputStream::readChecked):
8768 (JSC::Yarr::Interpreter::InputStream::reread):
8769 (JSC::Yarr::Interpreter::InputStream::prev):
8770 (JSC::Yarr::Interpreter::InputStream::getPos):
8771 (JSC::Yarr::Interpreter::InputStream::setPos):
8772 (JSC::Yarr::Interpreter::InputStream::atStart):
8773 (JSC::Yarr::Interpreter::InputStream::atEnd):
8774 (JSC::Yarr::Interpreter::InputStream::checkInput):
8775 (JSC::Yarr::Interpreter::InputStream::uncheckInput):
8776 (JSC::Yarr::Interpreter::testCharacterClass):
8777 (JSC::Yarr::Interpreter::tryConsumeCharacter):
8778 (JSC::Yarr::Interpreter::checkCharacter):
8779 (JSC::Yarr::Interpreter::tryConsumeCharacterClass):
8780 (JSC::Yarr::Interpreter::checkCharacterClass):
8781 (JSC::Yarr::Interpreter::tryConsumeBackReference):
8782 (JSC::Yarr::Interpreter::matchAssertionBOL):
8783 (JSC::Yarr::Interpreter::matchAssertionEOL):
8784 (JSC::Yarr::Interpreter::matchAssertionWordBoundary):
8785 (JSC::Yarr::Interpreter::matchPatternCharacter):
8786 (JSC::Yarr::Interpreter::backtrackPatternCharacter):
8787 (JSC::Yarr::Interpreter::matchCharacterClass):
8788 (JSC::Yarr::Interpreter::backtrackCharacterClass):
8789 (JSC::Yarr::Interpreter::matchBackReference):
8790 (JSC::Yarr::Interpreter::backtrackBackReference):
8791 (JSC::Yarr::Interpreter::recordParenthesesMatch):
8792 (JSC::Yarr::Interpreter::resetMatches):
8793 (JSC::Yarr::Interpreter::resetAssertionMatches):
8794 (JSC::Yarr::Interpreter::parenthesesDoBacktrack):
8795 (JSC::Yarr::Interpreter::matchParenthesesOnceBegin):
8796 (JSC::Yarr::Interpreter::matchParenthesesOnceEnd):
8797 (JSC::Yarr::Interpreter::backtrackParenthesesOnceBegin):
8798 (JSC::Yarr::Interpreter::backtrackParenthesesOnceEnd):
8799 (JSC::Yarr::Interpreter::matchParentheticalAssertionOnceBegin):
8800 (JSC::Yarr::Interpreter::matchParentheticalAssertionOnceEnd):
8801 (JSC::Yarr::Interpreter::backtrackParentheticalAssertionOnceBegin):
8802 (JSC::Yarr::Interpreter::backtrackParentheticalAssertionOnceEnd):
8803 (JSC::Yarr::Interpreter::matchParentheses):
8804 (JSC::Yarr::Interpreter::backtrackParentheses):
8805 (JSC::Yarr::Interpreter::matchTerm):
8806 (JSC::Yarr::Interpreter::backtrackTerm):
8807 (JSC::Yarr::Interpreter::matchAlternative):
8808 (JSC::Yarr::Interpreter::matchDisjunction):
8809 (JSC::Yarr::Interpreter::matchNonZeroDisjunction):
8810 (JSC::Yarr::Interpreter::interpret):
8811 (JSC::Yarr::Interpreter::Interpreter):
8812 (JSC::Yarr::ByteCompiler::ParenthesesStackEntry::ParenthesesStackEntry):
8813 (JSC::Yarr::ByteCompiler::ByteCompiler):
8814 (JSC::Yarr::ByteCompiler::compile):
8815 (JSC::Yarr::ByteCompiler::checkInput):
8816 (JSC::Yarr::ByteCompiler::assertionBOL):
8817 (JSC::Yarr::ByteCompiler::assertionEOL):
8818 (JSC::Yarr::ByteCompiler::assertionWordBoundary):
8819 (JSC::Yarr::ByteCompiler::atomPatternCharacter):
8820 (JSC::Yarr::ByteCompiler::atomCharacterClass):
8821 (JSC::Yarr::ByteCompiler::atomBackReference):
8822 (JSC::Yarr::ByteCompiler::atomParenthesesSubpatternBegin):
8823 (JSC::Yarr::ByteCompiler::atomParentheticalAssertionBegin):
8824 (JSC::Yarr::ByteCompiler::popParenthesesStack):
8825 (JSC::Yarr::ByteCompiler::dumpDisjunction):
8826 (JSC::Yarr::ByteCompiler::closeAlternative):
8827 (JSC::Yarr::ByteCompiler::atomParenthesesEnd):
8828 (JSC::Yarr::ByteCompiler::regexBegin):
8829 (JSC::Yarr::ByteCompiler::regexEnd):
8830 (JSC::Yarr::ByteCompiler::alterantiveDisjunction):
8831 (JSC::Yarr::ByteCompiler::emitDisjunction):
8832 (JSC::Yarr::byteCompileRegex):
8833 (JSC::Yarr::interpretRegex):
8835 (JSC::Yarr::ByteTerm::):
8836 (JSC::Yarr::ByteTerm::ByteTerm):
8837 (JSC::Yarr::ByteTerm::BOL):
8838 (JSC::Yarr::ByteTerm::CheckInput):
8839 (JSC::Yarr::ByteTerm::EOL):
8840 (JSC::Yarr::ByteTerm::WordBoundary):
8841 (JSC::Yarr::ByteTerm::BackReference):
8842 (JSC::Yarr::ByteTerm::AlternativeBegin):
8843 (JSC::Yarr::ByteTerm::AlternativeDisjunction):
8844 (JSC::Yarr::ByteTerm::AlternativeEnd):
8845 (JSC::Yarr::ByteTerm::PatternEnd):
8846 (JSC::Yarr::ByteTerm::invert):
8847 (JSC::Yarr::ByteTerm::capture):
8848 (JSC::Yarr::ByteDisjunction::ByteDisjunction):
8849 (JSC::Yarr::BytecodePattern::BytecodePattern):
8850 (JSC::Yarr::BytecodePattern::~BytecodePattern):
8852 (JSC::Yarr::RegexGenerator::optimizeAlternative):
8853 (JSC::Yarr::RegexGenerator::matchCharacterClassRange):
8854 (JSC::Yarr::RegexGenerator::matchCharacterClass):
8855 (JSC::Yarr::RegexGenerator::jumpIfNoAvailableInput):
8856 (JSC::Yarr::RegexGenerator::jumpIfAvailableInput):
8857 (JSC::Yarr::RegexGenerator::checkInput):
8858 (JSC::Yarr::RegexGenerator::atEndOfInput):
8859 (JSC::Yarr::RegexGenerator::notAtEndOfInput):
8860 (JSC::Yarr::RegexGenerator::jumpIfCharEquals):
8861 (JSC::Yarr::RegexGenerator::jumpIfCharNotEquals):
8862 (JSC::Yarr::RegexGenerator::readCharacter):
8863 (JSC::Yarr::RegexGenerator::storeToFrame):
8864 (JSC::Yarr::RegexGenerator::loadFromFrame):
8865 (JSC::Yarr::RegexGenerator::TermGenerationState::TermGenerationState):
8866 (JSC::Yarr::RegexGenerator::TermGenerationState::resetAlternative):
8867 (JSC::Yarr::RegexGenerator::TermGenerationState::alternativeValid):
8868 (JSC::Yarr::RegexGenerator::TermGenerationState::nextAlternative):
8869 (JSC::Yarr::RegexGenerator::TermGenerationState::alternative):
8870 (JSC::Yarr::RegexGenerator::TermGenerationState::resetTerm):
8871 (JSC::Yarr::RegexGenerator::TermGenerationState::termValid):
8872 (JSC::Yarr::RegexGenerator::TermGenerationState::nextTerm):
8873 (JSC::Yarr::RegexGenerator::TermGenerationState::term):
8874 (JSC::Yarr::RegexGenerator::TermGenerationState::lookaheadTerm):
8875 (JSC::Yarr::RegexGenerator::TermGenerationState::isSinglePatternCharacterLookaheadTerm):
8876 (JSC::Yarr::RegexGenerator::TermGenerationState::inputOffset):
8877 (JSC::Yarr::RegexGenerator::TermGenerationState::jumpToBacktrack):
8878 (JSC::Yarr::RegexGenerator::TermGenerationState::setBacktrackGenerated):
8879 (JSC::Yarr::RegexGenerator::jumpToBacktrackCheckEmitPending):
8880 (JSC::Yarr::RegexGenerator::genertateAssertionBOL):
8881 (JSC::Yarr::RegexGenerator::genertateAssertionEOL):
8882 (JSC::Yarr::RegexGenerator::matchAssertionWordchar):
8883 (JSC::Yarr::RegexGenerator::genertateAssertionWordBoundary):
8884 (JSC::Yarr::RegexGenerator::genertatePatternCharacterSingle):
8885 (JSC::Yarr::RegexGenerator::genertatePatternCharacterPair):
8886 (JSC::Yarr::RegexGenerator::genertatePatternCharacterFixed):
8887 (JSC::Yarr::RegexGenerator::genertatePatternCharacterGreedy):
8888 (JSC::Yarr::RegexGenerator::genertatePatternCharacterNonGreedy):
8889 (JSC::Yarr::RegexGenerator::genertateCharacterClassSingle):
8890 (JSC::Yarr::RegexGenerator::genertateCharacterClassFixed):
8891 (JSC::Yarr::RegexGenerator::genertateCharacterClassGreedy):
8892 (JSC::Yarr::RegexGenerator::genertateCharacterClassNonGreedy):
8893 (JSC::Yarr::RegexGenerator::generateParenthesesSingleDisjunctionOneAlternative):
8894 (JSC::Yarr::RegexGenerator::generateParenthesesSingle):
8895 (JSC::Yarr::RegexGenerator::generateTerm):
8896 (JSC::Yarr::RegexGenerator::generateDisjunction):
8897 (JSC::Yarr::RegexGenerator::RegexGenerator):
8898 (JSC::Yarr::RegexGenerator::generate):
8899 (JSC::Yarr::jitCompileRegex):
8900 (JSC::Yarr::executeRegex):
8902 (JSC::Yarr::RegexCodeBlock::RegexCodeBlock):
8904 (JSC::Yarr::):
8905 (JSC::Yarr::Parser::):
8906 (JSC::Yarr::Parser::CharacterClassParserDelegate::CharacterClassParserDelegate):
8907 (JSC::Yarr::Parser::CharacterClassParserDelegate::begin):
8908 (JSC::Yarr::Parser::CharacterClassParserDelegate::atomPatternCharacterUnescaped):
8909 (JSC::Yarr::Parser::CharacterClassParserDelegate::atomPatternCharacter):
8910 (JSC::Yarr::Parser::CharacterClassParserDelegate::atomBuiltInCharacterClass):
8911 (JSC::Yarr::Parser::CharacterClassParserDelegate::end):
8912 (JSC::Yarr::Parser::CharacterClassParserDelegate::assertionWordBoundary):
8913 (JSC::Yarr::Parser::CharacterClassParserDelegate::atomBackReference):
8914 (JSC::Yarr::Parser::CharacterClassParserDelegate::flush):
8915 (JSC::Yarr::Parser::CharacterClassParserDelegate::):
8916 (JSC::Yarr::Parser::Parser):
8917 (JSC::Yarr::Parser::parseEscape):
8918 (JSC::Yarr::Parser::parseAtomEscape):
8919 (JSC::Yarr::Parser::parseCharacterClassEscape):
8920 (JSC::Yarr::Parser::parseCharacterClass):
8921 (JSC::Yarr::Parser::parseParenthesesBegin):
8922 (JSC::Yarr::Parser::parseParenthesesEnd):
8923 (JSC::Yarr::Parser::parseQuantifier):
8924 (JSC::Yarr::Parser::parseTokens):
8925 (JSC::Yarr::Parser::parse):
8926 (JSC::Yarr::Parser::saveState):
8927 (JSC::Yarr::Parser::restoreState):
8928 (JSC::Yarr::Parser::atEndOfPattern):
8929 (JSC::Yarr::Parser::peek):
8930 (JSC::Yarr::Parser::peekIsDigit):
8931 (JSC::Yarr::Parser::peekDigit):
8932 (JSC::Yarr::Parser::consume):
8933 (JSC::Yarr::Parser::consumeDigit):
8934 (JSC::Yarr::Parser::consumeNumber):
8935 (JSC::Yarr::Parser::consumeOctal):
8936 (JSC::Yarr::Parser::tryConsume):
8937 (JSC::Yarr::Parser::tryConsumeHex):
8938 (JSC::Yarr::parse):
8940 (JSC::Yarr::CharacterRange::CharacterRange):
8941 (JSC::Yarr::):
8942 (JSC::Yarr::PatternTerm::):
8943 (JSC::Yarr::PatternTerm::PatternTerm):
8944 (JSC::Yarr::PatternTerm::BOL):
8945 (JSC::Yarr::PatternTerm::EOL):
8946 (JSC::Yarr::PatternTerm::WordBoundary):
8947 (JSC::Yarr::PatternTerm::invert):
8948 (JSC::Yarr::PatternTerm::capture):
8949 (JSC::Yarr::PatternTerm::quantify):
8950 (JSC::Yarr::PatternAlternative::PatternAlternative):
8951 (JSC::Yarr::PatternAlternative::lastTerm):
8952 (JSC::Yarr::PatternAlternative::removeLastTerm):
8953 (JSC::Yarr::PatternDisjunction::PatternDisjunction):
8954 (JSC::Yarr::PatternDisjunction::~PatternDisjunction):
8955 (JSC::Yarr::PatternDisjunction::addNewAlternative):
8956 (JSC::Yarr::RegexPattern::RegexPattern):
8957 (JSC::Yarr::RegexPattern::~RegexPattern):
8958 (JSC::Yarr::RegexPattern::reset):
8959 (JSC::Yarr::RegexPattern::containsIllegalBackReference):
8960 (JSC::Yarr::RegexPattern::newlineCharacterClass):
8961 (JSC::Yarr::RegexPattern::digitsCharacterClass):
8962 (JSC::Yarr::RegexPattern::spacesCharacterClass):
8963 (JSC::Yarr::RegexPattern::wordcharCharacterClass):
8964 (JSC::Yarr::RegexPattern::nondigitsCharacterClass):
8965 (JSC::Yarr::RegexPattern::nonspacesCharacterClass):
8966 (JSC::Yarr::RegexPattern::nonwordcharCharacterClass):
8973 (JSC::InternalFunction::displayName):
8974 (JSC::InternalFunction::calculatedDisplayName):
8988 …(JSC::createCallIdentifierFromFunctionImp): Changed call to InternalFunction::name to InternalFunc…
8991 (JSC::InternalFunction::displayName): Access to user settable displayName property
8992 …(JSC::InternalFunction::calculatedDisplayName): Returns displayName if it exists, if not then the …
9063 (JSC::ApplyFunctionCallDotNode::emitBytecode):
9117 (JSC::CodeBlock::dump):
9120 (JSC::BytecodeGenerator::emitJumpIfNotFunctionApply):
9121 (JSC::BytecodeGenerator::emitLoadVarargs):
9122 (JSC::BytecodeGenerator::emitCallVarargs):
9125 (JSC::Interpreter::privateExecute):
9127 (JSC::JIT::privateCompileMainPass):
9128 (JSC::JIT::privateCompileSlowCases):
9131 (JSC::JIT::compileOpCallSetupArgs):
9132 (JSC::JIT::compileOpCallVarargsSetupArgs):
9133 (JSC::JIT::compileOpCallVarargs):
9134 (JSC::JIT::compileOpCallVarargsSlowCase):
9136 (JSC::JITStubs::cti_op_load_varargs):
9140 (JSC::ArrayNode::isSimpleArray):
9141 (JSC::ArrayNode::toArgumentList):
9142 (JSC::CallFunctionCallDotNode::emitBytecode):
9143 (JSC::ApplyFunctionCallDotNode::emitBytecode):
9145 (JSC::ExpressionNode::):
9146 (JSC::ApplyFunctionCallDotNode::):
9148 (JSC::Arguments::copyToRegisters):
9149 (JSC::Arguments::fillArgList):
9151 (JSC::Arguments::numProvidedArguments):
9153 (JSC::FunctionPrototype::addFunctionProperties):
9156 (JSC::JSArray::copyToRegisters):
9159 (JSC::JSGlobalObject::reset):
9160 (JSC::JSGlobalObject::mark):
9185 (JSC::SmallStringsStorage::SmallStringsStorage):
9187 (JSC::initializeStaticBaseString):
9188 (JSC::initializeUString):
9189 (JSC::UString::BaseString::isShared):
9192 (JSC::concatenate):
9193 (JSC::UString::append):
9194 (JSC::UString::operator=):
9202 (JSC::UString::Rep::create):
9203 (JSC::UString::Rep::Rep):
9204 (JSC::UString::Rep::):
9205 (JSC::UString::BaseString::BaseString):
9206 (JSC::UString::Rep::setBaseString):
9207 (JSC::UString::Rep::baseString):
9250 (JSC::JSGlobalObject::JSGlobalObjectData::JSGlobalObjectData): Initialize
9299 (JSC::CodeBlock::dump):
9302 (JSC::BytecodeGenerator::emitJumpIfNotFunctionCall):
9305 (JSC::Interpreter::privateExecute):
9307 (JSC::JIT::privateCompileMainPass):
9310 (JSC::CallFunctionCallDotNode::emitBytecode):
9312 (JSC::CallFunctionCallDotNode::):
9314 (JSC::FunctionPrototype::addFunctionProperties):
9317 (JSC::JSGlobalObject::reset):
9318 (JSC::JSGlobalObject::mark):
9354 (JSC::Interpreter::privateExecute):
9360 Fixed <rdar://problem/6724011> Write to freed memory in JSC::Label::deref
9398 (JSC::::className):
9426 (JSC::evaluate): Set the exception object as the Completion
9430 (JSC::InterruptedExecutionError::toString): Added. Provides a
9445 (JSC::formatLocaleDate):
9455 from class introspection functions provided through the API as many JSC
9459 (JSC::JSCallbackObject<Base>::getOwnPropertySlot):
9460 (JSC::JSCallbackObject<Base>::put):
9461 (JSC::JSCallbackObject<Base>::deleteProperty):
9462 (JSC::JSCallbackObject<Base>::construct):
9463 (JSC::JSCallbackObject<Base>::hasInstance):
9464 (JSC::JSCallbackObject<Base>::call):
9465 (JSC::JSCallbackObject<Base>::toNumber):
9466 (JSC::JSCallbackObject<Base>::toString):
9467 (JSC::JSCallbackObject<Base>::staticValueGetter):
9468 (JSC::JSCallbackObject<Base>::callbackGetter):
9510 (JSC::constructFunction):
9575 (JSC::RegisterFile::RegisterFile):
9576 (JSC::RegisterFile::shrink):
9577 (JSC::RegisterFile::grow):
9579 (JSC::roundUpAllocationSize):
9591 (JSC::Heap::heapAllocate):
9615 (JSC::):
9630 (JSC::constructFunction): Add a newline after the opening brace of the
9644 (JSC::JSGlobalObject::resetPrototype): Don't set the prototype of the
9704 (JSC::WREC::Generator::compileRegExp): Match PCRE's maximum pattern size,
9713 (JSC::formatLocaleDate):
9727 (JSC::BytecodeGenerator::hasFinaliser):
9729 (JSC::ReturnNode::emitBytecode):
9942 (JSC::constructFunction):
9964 (JSC::AbstractMacroAssembler::Label::isUsed):
9965 (JSC::AbstractMacroAssembler::Label::used):
9967 (JSC::X86Assembler::JmpDst::JmpDst):
9968 (JSC::X86Assembler::JmpDst::isUsed):
9969 (JSC::X86Assembler::JmpDst::used):
9971 (JSC::JIT::privateCompileMainPass):
10017 (JSC::arrayProtoFuncConcat):
10029 to JSC not present in DRT.
10032 (JSC::arrayProtoFuncConcat):
10043 (JSC::JIT::privateCompileMainPass):
10065 (JSC::MacroAssemblerX86_64::storePtr):
10067 (JSC::X86Assembler::movq_i32m):
10069 (JSC::JIT::privateCompileMainPass):
10078 (JSC::numberConstructorNaNValue):
10079 (JSC::numberConstructorNegInfinity):
10080 (JSC::numberConstructorPosInfinity):
10081 (JSC::numberConstructorMaxValue):
10082 (JSC::numberConstructorMinValue):
10163 (JSC::Profiler::startProfiling): assert if there is not title to ensure
10204 (JSC::ConstStatementNode::emitBytecode):
10205 (JSC::statementListEmitCode):
10206 (JSC::EmptyStatementNode::emitBytecode):
10207 (JSC::ExprStatementNode::emitBytecode):
10208 (JSC::VarStatementNode::emitBytecode):
10209 (JSC::IfNode::emitBytecode):
10210 (JSC::IfElseNode::emitBytecode):
10211 (JSC::DoWhileNode::emitBytecode):
10212 (JSC::WhileNode::emitBytecode):
10213 (JSC::ForNode::emitBytecode):
10214 (JSC::ForInNode::emitBytecode):
10215 (JSC::ContinueNode::emitBytecode):
10216 (JSC::BreakNode::emitBytecode):
10217 (JSC::ReturnNode::emitBytecode):
10218 (JSC::WithNode::emitBytecode):
10219 (JSC::SwitchNode::emitBytecode):
10220 (JSC::LabelNode::emitBytecode):
10221 (JSC::ThrowNode::emitBytecode):
10222 (JSC::TryNode::emitBytecode):
10237 (JSC::Interpreter::privateExecute):
10239 (JSC::JITStubs::cti_op_switch_imm):
10253 (JSC::JIT::compileOpStrictEq):
10254 (JSC::JIT::privateCompileSlowCases):
10256 (JSC::JIT::emitJumpIfImmediateNumber):
10257 (JSC::JIT::emitJumpIfNotImmediateNumber):
10259 (JSC::JIT::putDoubleResultToJSNumberCellOrJSImmediate):
10260 (JSC::JIT::compileBinaryArithOp):
10291 (JSC::isNumericCompareFunction):
10310 (JSC::Interpreter::tryCachePutByID):
10311 (JSC::Interpreter::tryCacheGetByID):
10313 (JSC::JITStubs::tryCachePutByID):
10314 (JSC::JITStubs::tryCacheGetByID):
10315 (JSC::JITStubs::cti_op_get_by_id_proto_list): Use the new refactored goodness. See
10319 (JSC::Structure::prototypeForLookup): A shout out to const.
10322 (JSC::JSPropertyNameIterator::next): We can use a pointer comparison to
10328 (JSC::countPrototypeChainEntriesAndCheckForProxies): Use the new refactored
10332 (JSC::PropertyNameArray::PropertyNameArray):
10333 (JSC::PropertyNameArray::setShouldCache):
10334 (JSC::PropertyNameArray::shouldCache): Renamed "cacheable" to "shouldCache"
10339 (JSC::Structure::Structure): No need to initialize a RefPtr.
10340 (JSC::Structure::getEnumerablePropertyNames): Moved some code into helper
10343 (JSC::Structure::prototypeChain): New centralized accessor for a prototype
10347 (JSC::Structure::isValid): Helper function for revalidating a cached
10350 (JSC::Structure::getEnumerableNamesFromPropertyTable):
10351 (JSC::Structure::getEnumerableNamesFromClassInfoTable): Factored out of
10357 (JSC::StructureChain::StructureChain):
10359 (JSC::StructureChain::create): No need for structureChainsAreEqual, since
10405 (JSC::Interpreter::Interpreter):
10406 (JSC::Interpreter::tryCacheGetByID):
10407 (JSC::Interpreter::privateExecute):
10410 (JSC::JIT::privateCompileMainPass):
10411 (JSC::JIT::privateCompile):
10412 (JSC::JIT::privateCompileCTIMachineTrampolines):
10414 (JSC::JIT::compileCTIMachineTrampolines):
10416 (JSC::JIT::compileOpCall):
10417 (JSC::JIT::compileOpCallSlowCase):
10419 (JSC::JIT::privateCompilePatchGetArrayLength):
10421 (JSC::JITStubs::JITStubs):
10422 (JSC::JITStubs::tryCacheGetByID):
10423 (JSC::JITStubs::cti_vm_dontLazyLinkCall):
10424 (JSC::JITStubs::cti_op_get_by_val):
10425 (JSC::JITStubs::cti_op_get_by_val_byte_array):
10426 (JSC::JITStubs::cti_op_put_by_val):
10427 (JSC::JITStubs::cti_op_put_by_val_array):
10428 (JSC::JITStubs::cti_op_put_by_val_byte_array):
10429 (JSC::JITStubs::cti_op_is_string):
10431 (JSC::JITStubs::ctiArrayLengthTrampoline):
10432 (JSC::JITStubs::ctiStringLengthTrampoline):
10433 (JSC::JITStubs::ctiVirtualCallPreLink):
10434 (JSC::JITStubs::ctiVirtualCallLink):
10435 (JSC::JITStubs::ctiVirtualCall):
10437 (JSC::arrayProtoFuncPop):
10438 (JSC::arrayProtoFuncPush):
10440 (JSC::functionProtoFuncApply):
10442 (JSC::isJSArray):
10444 (JSC::asByteArray):
10445 (JSC::isJSByteArray):
10449 (JSC::VPtrSet::VPtrSet):
10450 (JSC::JSGlobalData::JSGlobalData):
10451 (JSC::JSGlobalData::create):
10452 (JSC::JSGlobalData::sharedInstance):
10455 (JSC::isJSString):
10457 (JSC::jsLess):
10458 (JSC::jsLessEq):
10460 (JSC::WREC::Generator::compileRegExp):
10472 (JSC::isSSE2Present): previous assembly code fixed.
10538 (JSC::Interpreter::Interpreter):
10539 (JSC::Interpreter::privateExecute):
10543 (JSC::):
10544 (JSC::JIT::emitTimeoutCheck):
10545 (JSC::JIT::privateCompileMainPass):
10546 (JSC::JIT::privateCompileSlowCases):
10547 (JSC::JIT::privateCompile):
10548 (JSC::JIT::privateCompileCTIMachineTrampolines):
10551 (JSC::JIT::compileFastArithSlow_op_lshift):
10552 (JSC::JIT::compileFastArithSlow_op_rshift):
10553 (JSC::JIT::compileFastArithSlow_op_bitand):
10554 (JSC::JIT::compileFastArithSlow_op_mod):
10555 (JSC::JIT::compileFastArith_op_mod):
10556 (JSC::JIT::compileFastArithSlow_op_post_inc):
10557 (JSC::JIT::compileFastArithSlow_op_post_dec):
10558 (JSC::JIT::compileFastArithSlow_op_pre_inc):
10559 (JSC::JIT::compileFastArithSlow_op_pre_dec):
10560 (JSC::JIT::compileFastArith_op_add):
10561 (JSC::JIT::compileFastArith_op_mul):
10562 (JSC::JIT::compileFastArith_op_sub):
10563 (JSC::JIT::compileBinaryArithOpSlowCase):
10564 (JSC::JIT::compileFastArithSlow_op_add):
10565 (JSC::JIT::compileFastArithSlow_op_mul):
10567 (JSC::JIT::compileOpCall):
10568 (JSC::JIT::compileOpCallSlowCase):
10570 (JSC::JIT::compileGetByIdHotPath):
10571 (JSC::JIT::compilePutByIdHotPath):
10572 (JSC::JIT::compileGetByIdSlowCase):
10573 (JSC::JIT::compilePutByIdSlowCase):
10574 (JSC::JIT::privateCompilePutByIdTransition):
10575 (JSC::JIT::patchGetByIdSelf):
10576 (JSC::JIT::patchPutByIdReplace):
10577 (JSC::JIT::privateCompilePatchGetArrayLength):
10578 (JSC::JIT::privateCompileGetByIdSelf):
10579 (JSC::JIT::privateCompileGetByIdProto):
10580 (JSC::JIT::privateCompileGetByIdChain):
10581 (JSC::JIT::privateCompilePutByIdReplace):
10583 (JSC::JITStubs::tryCachePutByID):
10584 (JSC::JITStubs::tryCacheGetByID):
10585 (JSC::JITStubs::cti_op_convert_this):
10586 (JSC::JITStubs::cti_op_end):
10587 (JSC::JITStubs::cti_op_add):
10588 (JSC::JITStubs::cti_op_pre_inc):
10589 (JSC::JITStubs::cti_timeout_check):
10590 (JSC::JITStubs::cti_register_file_check):
10591 (JSC::JITStubs::cti_op_loop_if_less):
10592 (JSC::JITStubs::cti_op_loop_if_lesseq):
10593 (JSC::JITStubs::cti_op_new_object):
10594 (JSC::JITStubs::cti_op_put_by_id_generic):
10595 (JSC::JITStubs::cti_op_get_by_id_generic):
10596 (JSC::JITStubs::cti_op_put_by_id):
10597 (JSC::JITStubs::cti_op_put_by_id_second):
10598 (JSC::JITStubs::cti_op_put_by_id_fail):
10599 (JSC::JITStubs::cti_op_get_by_id):
10600 (JSC::JITStubs::cti_op_get_by_id_second):
10601 (JSC::JITStubs::cti_op_get_by_id_self_fail):
10602 (JSC::JITStubs::cti_op_get_by_id_proto_list):
10603 (JSC::JITStubs::cti_op_get_by_id_proto_list_full):
10604 (JSC::JITStubs::cti_op_get_by_id_proto_fail):
10605 (JSC::JITStubs::cti_op_get_by_id_array_fail):
10606 (JSC::JITStubs::cti_op_get_by_id_string_fail):
10607 (JSC::JITStubs::cti_op_instanceof):
10608 (JSC::JITStubs::cti_op_del_by_id):
10609 (JSC::JITStubs::cti_op_mul):
10610 (JSC::JITStubs::cti_op_new_func):
10611 (JSC::JITStubs::cti_op_call_JSFunction):
10612 (JSC::JITStubs::cti_op_call_arityCheck):
10613 (JSC::JITStubs::cti_vm_dontLazyLinkCall):
10614 (JSC::JITStubs::cti_vm_lazyLinkCall):
10615 (JSC::JITStubs::cti_op_push_activation):
10616 (JSC::JITStubs::cti_op_call_NotJSFunction):
10617 (JSC::JITStubs::cti_op_create_arguments):
10618 (JSC::JITStubs::cti_op_create_arguments_no_params):
10619 (JSC::JITStubs::cti_op_tear_off_activation):
10620 (JSC::JITStubs::cti_op_tear_off_arguments):
10621 (JSC::JITStubs::cti_op_profile_will_call):
10622 (JSC::JITStubs::cti_op_profile_did_call):
10623 (JSC::JITStubs::cti_op_ret_scopeChain):
10624 (JSC::JITStubs::cti_op_new_array):
10625 (JSC::JITStubs::cti_op_resolve):
10626 (JSC::JITStubs::cti_op_construct_JSConstruct):
10627 (JSC::JITStubs::cti_op_construct_NotJSConstruct):
10628 (JSC::JITStubs::cti_op_get_by_val):
10629 (JSC::JITStubs::cti_op_get_by_val_byte_array):
10630 (JSC::JITStubs::cti_op_resolve_func):
10631 (JSC::JITStubs::cti_op_sub):
10632 (JSC::JITStubs::cti_op_put_by_val):
10633 (JSC::JITStubs::cti_op_put_by_val_array):
10634 (JSC::JITStubs::cti_op_put_by_val_byte_array):
10635 (JSC::JITStubs::cti_op_lesseq):
10636 (JSC::JITStubs::cti_op_loop_if_true):
10637 (JSC::JITStubs::cti_op_negate):
10638 (JSC::JITStubs::cti_op_resolve_base):
10639 (JSC::JITStubs::cti_op_resolve_skip):
10640 (JSC::JITStubs::cti_op_resolve_global):
10641 (JSC::JITStubs::cti_op_div):
10642 (JSC::JITStubs::cti_op_pre_dec):
10643 (JSC::JITStubs::cti_op_jless):
10644 (JSC::JITStubs::cti_op_not):
10645 (JSC::JITStubs::cti_op_jtrue):
10646 (JSC::JITStubs::cti_op_post_inc):
10647 (JSC::JITStubs::cti_op_eq):
10648 (JSC::JITStubs::cti_op_lshift):
10649 (JSC::JITStubs::cti_op_bitand):
10650 (JSC::JITStubs::cti_op_rshift):
10651 (JSC::JITStubs::cti_op_bitnot):
10652 (JSC::JITStubs::cti_op_resolve_with_base):
10653 (JSC::JITStubs::cti_op_new_func_exp):
10654 (JSC::JITStubs::cti_op_mod):
10655 (JSC::JITStubs::cti_op_less):
10656 (JSC::JITStubs::cti_op_neq):
10657 (JSC::JITStubs::cti_op_post_dec):
10658 (JSC::JITStubs::cti_op_urshift):
10659 (JSC::JITStubs::cti_op_bitxor):
10660 (JSC::JITStubs::cti_op_new_regexp):
10661 (JSC::JITStubs::cti_op_bitor):
10662 (JSC::JITStubs::cti_op_call_eval):
10663 (JSC::JITStubs::cti_op_throw):
10664 (JSC::JITStubs::cti_op_get_pnames):
10665 (JSC::JITStubs::cti_op_next_pname):
10666 (JSC::JITStubs::cti_op_push_scope):
10667 (JSC::JITStubs::cti_op_pop_scope):
10668 (JSC::JITStubs::cti_op_typeof):
10669 (JSC::JITStubs::cti_op_is_undefined):
10670 (JSC::JITStubs::cti_op_is_boolean):
10671 (JSC::JITStubs::cti_op_is_number):
10672 (JSC::JITStubs::cti_op_is_string):
10673 (JSC::JITStubs::cti_op_is_object):
10674 (JSC::JITStubs::cti_op_is_function):
10675 (JSC::JITStubs::cti_op_stricteq):
10676 (JSC::JITStubs::cti_op_nstricteq):
10677 (JSC::JITStubs::cti_op_to_jsnumber):
10678 (JSC::JITStubs::cti_op_in):
10679 (JSC::JITStubs::cti_op_push_new_scope):
10680 (JSC::JITStubs::cti_op_jmp_scopes):
10681 (JSC::JITStubs::cti_op_put_by_index):
10682 (JSC::JITStubs::cti_op_switch_imm):
10683 (JSC::JITStubs::cti_op_switch_char):
10684 (JSC::JITStubs::cti_op_switch_string):
10685 (JSC::JITStubs::cti_op_del_by_val):
10686 (JSC::JITStubs::cti_op_put_getter):
10687 (JSC::JITStubs::cti_op_put_setter):
10688 (JSC::JITStubs::cti_op_new_error):
10689 (JSC::JITStubs::cti_op_debug):
10690 (JSC::JITStubs::cti_vm_throw):
10692 (JSC::):
10695 (JSC::JSGlobalData::JSGlobalData):
10700 (JSC::TimeoutChecker::TimeoutChecker):
10701 (JSC::TimeoutChecker::reset):
10702 (JSC::TimeoutChecker::didTimeOut):
10704 (JSC::TimeoutChecker::setTimeoutInterval):
10705 (JSC::TimeoutChecker::ticksUntilNextCheck):
10706 (JSC::TimeoutChecker::start):
10707 (JSC::TimeoutChecker::stop):
10726 (JSC::MacroAssembler::setPtr):
10728 (JSC::MacroAssemblerX86_64::setPtr):
10730 (JSC::JIT::privateCompileMainPass):
10746 (JSC::Interpreter::resolveBase):
10747 (JSC::Interpreter::checkTimeout):
10748 (JSC::Interpreter::privateExecute):
10751 (JSC::Interpreter::cti_op_resolve_base):
10754 (JSC::jsAddSlowCase):
10755 (JSC::jsTypeStringForValue):
10756 (JSC::jsIsObjectType):
10757 (JSC::jsIsFunctionType):
10759 (JSC::jsLess):
10760 (JSC::jsLessEq):
10761 (JSC::jsAdd):
10762 (JSC::cachePrototypeChain):
10763 (JSC::countPrototypeChainEntriesAndCheckForProxies):
10764 (JSC::resolveBase):
10779 (JSC::AbstractMacroAssembler::Call::Call):
10780 (JSC::AbstractMacroAssembler::Jump::link):
10781 (JSC::AbstractMacroAssembler::Jump::linkTo):
10782 (JSC::AbstractMacroAssembler::CodeLocationJump::relink):
10783 (JSC::AbstractMacroAssembler::CodeLocationCall::relink):
10784 (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToFunction):
10785 (JSC::AbstractMacroAssembler::PatchBuffer::link):
10786 (JSC::AbstractMacroAssembler::PatchBuffer::linkTailRecursive):
10787 (JSC::AbstractMacroAssembler::differenceBetween):
10789 (JSC::MacroAssembler::tailRecursiveCall):
10790 (JSC::MacroAssembler::makeTailRecursiveCall):
10792 (JSC::MacroAssemblerX86::call):
10795 (JSC::MacroAssemblerX86_64::call):
10796 (JSC::MacroAssemblerX86_64::moveWithPatch):
10797 (JSC::MacroAssemblerX86_64::branchPtrWithPatch):
10798 (JSC::MacroAssemblerX86_64::storePtrWithPatch):
10800 (JSC::X86Assembler::jmp_r):
10801 (JSC::X86Assembler::linkJump):
10802 (JSC::X86Assembler::patchJump):
10803 (JSC::X86Assembler::patchCall):
10804 (JSC::X86Assembler::linkCall):
10805 (JSC::X86Assembler::patchAddress):
10807 (JSC::Interpreter::tryCTICachePutByID):
10809 (JSC::JIT::privateCompile):
10810 (JSC::JIT::privateCompileCTIMachineTrampolines):
10813 (JSC::JIT::putDoubleResultToJSNumberCellOrJSImmediate):
10814 (JSC::JIT::compileBinaryArithOp):
10816 (JSC::JIT::privateCompilePutByIdTransition):
10817 (JSC::JIT::privateCompileGetByIdSelf):
10818 (JSC::JIT::privateCompilePutByIdReplace):
10828 (JSC::functionProtoFuncApply):
10829 (JSC::functionProtoFuncCall): No need to do any specific conversion on
10833 (JSC::JSImmediate::toThisObject): Slightly relaxed the rules on
10888 (JSC::insertSemicolonIfNeeded): No need to add a trailing semicolon
10905 (JSC::X86Assembler::link):
10919 (JSC::Lexer::isWhiteSpace):
10921 (JSC::Lexer::isWhiteSpace):
10922 (JSC::Lexer::isLineTerminator): Added some helper functions for examining
10926 (JSC::appendSemicolonIfNeeded):
10927 (JSC::functionProtoFuncToString): When string-ifying a function, insert
10937 (JSC::isSSE2Present):
10949 (JSC::Arguments::fillArgList): Add codepath for when the "length" property has been
10970 (JSC::isSSE2Present): GCC assembly code added.
11002 (JSC::Instruction::Instruction):
11004 (JSC::OperandTypes::OperandTypes):
11011 (JSC::CodeBlock::setIsNumericCompareFunction):
11012 (JSC::CodeBlock::isNumericCompareFunction):
11022 (JSC::CodeBlock::CodeBlock):
11024 (JSC::CodeBlock::setIsNumericCompareFunction):
11025 (JSC::CodeBlock::isNumericCompareFunction): Added the ability to track
11029 (JSC::BytecodeGenerator::generate): Set the isNumericCompareFunction bit
11033 (JSC::FunctionBodyNode::emitBytecode): Fixed a bug that caused us to
11039 (JSC::arrayProtoFuncSort): Use the isNumericCompareFunction bit to do
11043 (JSC::extractFunctionBody):
11044 (JSC::constructFunction):
11049 (JSC::compareNumbersForQSort):
11050 (JSC::compareByStringPairForQSort):
11051 (JSC::JSArray::sortNumeric):
11052 (JSC::JSArray::sort):
11057 (JSC::JSGlobalData::JSGlobalData):
11058 (JSC::JSGlobalData::numericCompareFunction):
11059 (JSC::JSGlobalData::ClientData::~ClientData):
11074 (JSC::stringProtoFuncIndexOf): Added a fast path for cases where the second
11076 (JSC::stringProtoFuncBig): Use jsNontrivialString since the string is guaranteed
11078 (JSC::stringProtoFuncSmall): Ditto.
11079 (JSC::stringProtoFuncBlink): Ditto.
11080 (JSC::stringProtoFuncBold): Ditto.
11081 (JSC::stringProtoFuncItalics): Ditto.
11082 (JSC::stringProtoFuncStrike): Ditto.
11083 (JSC::stringProtoFuncSub): Ditto.
11084 (JSC::stringProtoFuncSup): Ditto.
11085 (JSC::stringProtoFuncFontcolor): Ditto.
11086 (JSC::stringProtoFuncFontsize): Make the fast path Sam recently added even faster
11088 (JSC::stringProtoFuncAnchor): Use jsNontrivialString.
11089 (JSC::stringProtoFuncLink): Added a fast path.
11092 (JSC::UString::find): Added a fast path for single-character search strings.
11121 (JSC::MathObject::MathObject):
11122 (JSC::mathProtoFuncRandom):
11156 (JSC::JIT::compileOpStrictEq):
11157 (JSC::JIT::emitSlowScriptCheck):
11158 (JSC::JIT::privateCompileMainPass):
11159 (JSC::JIT::privateCompileSlowCases):
11160 (JSC::JIT::privateCompile):
11161 (JSC::JIT::privateCompileCTIMachineTrampolines):
11164 (JSC::JIT::compileFastArith_op_lshift):
11165 (JSC::JIT::compileFastArithSlow_op_lshift):
11166 (JSC::JIT::compileFastArith_op_rshift):
11167 (JSC::JIT::compileFastArithSlow_op_rshift):
11168 (JSC::JIT::compileFastArith_op_bitand):
11169 (JSC::JIT::compileFastArithSlow_op_bitand):
11170 (JSC::JIT::compileFastArith_op_mod):
11171 (JSC::JIT::compileFastArithSlow_op_mod):
11172 (JSC::JIT::compileFastArith_op_post_inc):
11173 (JSC::JIT::compileFastArithSlow_op_post_inc):
11174 (JSC::JIT::compileFastArith_op_post_dec):
11175 (JSC::JIT::compileFastArithSlow_op_post_dec):
11176 (JSC::JIT::compileFastArith_op_pre_inc):
11177 (JSC::JIT::compileFastArithSlow_op_pre_inc):
11178 (JSC::JIT::compileFastArith_op_pre_dec):
11179 (JSC::JIT::compileFastArithSlow_op_pre_dec):
11180 (JSC::JIT::compileFastArith_op_add):
11181 (JSC::JIT::compileFastArith_op_mul):
11182 (JSC::JIT::compileFastArith_op_sub):
11183 (JSC::JIT::compileBinaryArithOp):
11185 (JSC::JIT::compileOpCallInitializeCallFrame):
11186 (JSC::JIT::compileOpCallSetupArgs):
11187 (JSC::JIT::compileOpCallEvalSetupArgs):
11188 (JSC::JIT::compileOpConstructSetupArgs):
11189 (JSC::JIT::compileOpCall):
11190 (JSC::JIT::compileOpCallSlowCase):
11192 (JSC::JIT::emitGetVirtualRegister):
11193 (JSC::JIT::emitPutVirtualRegister):
11194 (JSC::JIT::emitNakedCall):
11195 (JSC::JIT::restoreArgumentReference):
11196 (JSC::JIT::restoreArgumentReferenceForTrampoline):
11198 (JSC::JIT::compileGetByIdHotPath):
11199 (JSC::JIT::compilePutByIdHotPath):
11200 (JSC::JIT::compileGetByIdSlowCase):
11201 (JSC::JIT::compilePutByIdSlowCase):
11202 (JSC::JIT::privateCompilePutByIdTransition):
11203 (JSC::JIT::privateCompilePatchGetArrayLength):
11204 (JSC::JIT::privateCompileGetByIdSelf):
11205 (JSC::JIT::privateCompileGetByIdProto):
11206 (JSC::JIT::privateCompileGetByIdSelfList):
11207 (JSC::JIT::privateCompileGetByIdProtoList):
11208 (JSC::JIT::privateCompileGetByIdChainList):
11209 (JSC::JIT::privateCompileGetByIdChain):
11210 (JSC::JIT::privateCompilePutByIdReplace):
11220 the emitNode call in JSC::ThrowNode::emitBytecode to use a temporary register
11221 to store its results instead of dst. The JSC::FunctionCallResolveNode::emitBytecode
11226 (JSC::FunctionCallResolveNode::emitBytecode):
11227 (JSC::ThrowNode::emitBytecode):
11236 (JSC::stringProtoFuncFontsize): Specialize for defined/commonly used values.
11331 (JSC::AbstractMacroAssembler::CodeLocationCommon::CodeLocationCommon):
11332 (JSC::AbstractMacroAssembler::CodeLocationCommon::operator bool):
11333 (JSC::AbstractMacroAssembler::CodeLocationCommon::reset):
11334 (JSC::AbstractMacroAssembler::CodeLocationLabel::addressForSwitch):
11335 (JSC::AbstractMacroAssembler::CodeLocationLabel::addressForExceptionHandler):
11336 (JSC::AbstractMacroAssembler::CodeLocationLabel::addressForJSR):
11337 (JSC::AbstractMacroAssembler::CodeLocationLabel::getJumpDestination):
11338 (JSC::AbstractMacroAssembler::CodeLocationJump::relink):
11339 (JSC::AbstractMacroAssembler::CodeLocationJump::CodeLocationJump):
11340 (JSC::AbstractMacroAssembler::CodeLocationCall::relink):
11341 (JSC::AbstractMacroAssembler::CodeLocationCall::calleeReturnAddressValue):
11342 (JSC::AbstractMacroAssembler::CodeLocationCall::CodeLocationCall):
11343 (JSC::AbstractMacroAssembler::CodeLocationDataLabel32::repatch):
11344 (JSC::AbstractMacroAssembler::CodeLocationDataLabel32::CodeLocationDataLabel32):
11345 (JSC::AbstractMacroAssembler::CodeLocationDataLabelPtr::repatch):
11346 (JSC::AbstractMacroAssembler::CodeLocationDataLabelPtr::CodeLocationDataLabelPtr):
11347 (JSC::AbstractMacroAssembler::ProcessorReturnAddress::ProcessorReturnAddress):
11348 (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToFunction):
11349 (JSC::AbstractMacroAssembler::ProcessorReturnAddress::operator void*):
11350 (JSC::AbstractMacroAssembler::PatchBuffer::link):
11351 (JSC::::CodeLocationCommon::labelAtOffset):
11352 (JSC::::CodeLocationCommon::jumpAtOffset):
11353 (JSC::::CodeLocationCommon::callAtOffset):
11354 (JSC::::CodeLocationCommon::dataLabelPtrAtOffset):
11355 (JSC::::CodeLocationCommon::dataLabel32AtOffset):
11380 (JSC::PolymorphicAccessStructureList::PolymorphicStubInfo::set):
11381 (JSC::PolymorphicAccessStructureList::PolymorphicAccessStructureList):
11394 (JSC::AbstractMacroAssembler::ImmPtr::ImmPtr):
11395 (JSC::AbstractMacroAssembler::ImmPtr::asIntptr):
11396 (JSC::AbstractMacroAssembler::Imm32::Imm32):
11397 (JSC::AbstractMacroAssembler::Label::Label):
11398 (JSC::AbstractMacroAssembler::DataLabelPtr::DataLabelPtr):
11399 (JSC::AbstractMacroAssembler::Call::Call):
11400 (JSC::AbstractMacroAssembler::Call::link):
11401 (JSC::AbstractMacroAssembler::Call::linkTo):
11402 (JSC::AbstractMacroAssembler::Jump::Jump):
11403 (JSC::AbstractMacroAssembler::Jump::linkTo):
11404 (JSC::AbstractMacroAssembler::CodeLocationCommon::CodeLocationCommon):
11405 (JSC::AbstractMacroAssembler::CodeLocationCommon::operator bool):
11406 (JSC::AbstractMacroAssembler::CodeLocationCommon::reset):
11407 (JSC::AbstractMacroAssembler::CodeLocationLabel::CodeLocationLabel):
11408 (JSC::AbstractMacroAssembler::CodeLocationLabel::addressForSwitch):
11409 (JSC::AbstractMacroAssembler::CodeLocationLabel::addressForExceptionHandler):
11410 (JSC::AbstractMacroAssembler::CodeLocationLabel::addressForJSR):
11411 (JSC::AbstractMacroAssembler::CodeLocationLabel::getJumpDestination):
11412 (JSC::AbstractMacroAssembler::CodeLocationJump::CodeLocationJump):
11413 (JSC::AbstractMacroAssembler::CodeLocationJump::relink):
11414 (JSC::AbstractMacroAssembler::CodeLocationCall::CodeLocationCall):
11415 (JSC::AbstractMacroAssembler::CodeLocationCall::relink):
11416 (JSC::AbstractMacroAssembler::CodeLocationCall::calleeReturnAddressValue):
11417 (JSC::AbstractMacroAssembler::CodeLocationDataLabel32::CodeLocationDataLabel32):
11418 (JSC::AbstractMacroAssembler::CodeLocationDataLabel32::repatch):
11419 (JSC::AbstractMacroAssembler::CodeLocationDataLabelPtr::CodeLocationDataLabelPtr):
11420 (JSC::AbstractMacroAssembler::CodeLocationDataLabelPtr::repatch):
11421 (JSC::AbstractMacroAssembler::ProcessorReturnAddress::ProcessorReturnAddress):
11422 (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToFunction):
11423 (JSC::AbstractMacroAssembler::ProcessorReturnAddress::operator void*):
11424 (JSC::AbstractMacroAssembler::PatchBuffer::entry):
11425 (JSC::AbstractMacroAssembler::PatchBuffer::trampolineAt):
11426 (JSC::AbstractMacroAssembler::PatchBuffer::link):
11427 (JSC::AbstractMacroAssembler::PatchBuffer::linkTailRecursive):
11428 (JSC::AbstractMacroAssembler::PatchBuffer::patch):
11429 (JSC::AbstractMacroAssembler::PatchBuffer::locationOf):
11430 (JSC::AbstractMacroAssembler::PatchBuffer::returnAddressOffset):
11431 (JSC::AbstractMacroAssembler::differenceBetween):
11432 (JSC::::CodeLocationCommon::labelAtOffset):
11433 (JSC::::CodeLocationCommon::jumpAtOffset):
11434 (JSC::::CodeLocationCommon::callAtOffset):
11435 (JSC::::CodeLocationCommon::dataLabelPtrAtOffset):
11436 (JSC::::CodeLocationCommon::dataLabel32AtOffset):
11438 (JSC::MacroAssemblerX86Common::call):
11440 (JSC::X86Assembler::getCallReturnOffset):
11442 (JSC::CallLinkInfo::CallLinkInfo):
11443 (JSC::getStructureStubInfoReturnLocation):
11444 (JSC::getCallLinkInfoReturnLocation):
11446 (JSC::PolymorphicAccessStructureList::PolymorphicStubInfo::set):
11447 (JSC::PolymorphicAccessStructureList::PolymorphicAccessStructureList):
11449 (JSC::StringJumpTable::ctiForValue):
11450 (JSC::SimpleJumpTable::ctiForValue):
11452 (JSC::StructureStubInfo::StructureStubInfo):
11454 (JSC::BytecodeGenerator::emitCatch):
11455 (JSC::prepareJumpTableForStringSwitch):
11457 (JSC::Interpreter::cti_op_get_by_id_self_fail):
11458 (JSC::getPolymorphicAccessStructureListSlot):
11459 (JSC::Interpreter::cti_op_throw):
11460 (JSC::Interpreter::cti_op_switch_imm):
11461 (JSC::Interpreter::cti_op_switch_char):
11462 (JSC::Interpreter::cti_op_switch_string):
11463 (JSC::Interpreter::cti_vm_throw):
11465 (JSC::ctiSetReturnAddress):
11466 (JSC::ctiPatchCallByReturnAddress):
11467 (JSC::JIT::privateCompile):
11468 (JSC::JIT::privateCompileCTIMachineTrampolines):
11470 (JSC::CallRecord::CallRecord):
11471 (JSC::JIT::compileGetByIdSelf):
11472 (JSC::JIT::compileGetByIdProto):
11473 (JSC::JIT::compileGetByIdChain):
11474 (JSC::JIT::compilePutByIdReplace):
11475 (JSC::JIT::compilePutByIdTransition):
11476 (JSC::JIT::compilePatchGetArrayLength):
11477 (JSC::JIT::emitCTICall):
11479 (JSC::JIT::unlinkCall):
11480 (JSC::JIT::linkCall):
11482 (JSC::JIT::emitNakedCall):
11483 (JSC::JIT::emitCTICall_internal):
11485 (JSC::JIT::compileGetByIdSlowCase):
11486 (JSC::JIT::compilePutByIdSlowCase):
11487 (JSC::JIT::privateCompilePutByIdTransition):
11488 (JSC::JIT::patchGetByIdSelf):
11489 (JSC::JIT::patchPutByIdReplace):
11490 (JSC::JIT::privateCompilePatchGetArrayLength):
11491 (JSC::JIT::privateCompileGetByIdSelf):
11492 (JSC::JIT::privateCompileGetByIdProto):
11493 (JSC::JIT::privateCompileGetByIdSelfList):
11494 (JSC::JIT::privateCompileGetByIdProtoList):
11495 (JSC::JIT::privateCompileGetByIdChainList):
11496 (JSC::JIT::privateCompileGetByIdChain):
11497 (JSC::JIT::privateCompilePutByIdReplace):
11519 (JSC::AbstractMacroAssembler::PatchBuffer::returnAddressOffset):
11521 (JSC::X86Assembler::getCallReturnOffset):
11523 (JSC::CallReturnOffsetToBytecodeIndex::CallReturnOffsetToBytecodeIndex):
11524 (JSC::getCallReturnOffset):
11525 (JSC::CodeBlock::getBytecodeIndex):
11526 (JSC::CodeBlock::jitCode):
11527 (JSC::CodeBlock::callReturnIndexVector):
11529 (JSC::Interpreter::execute):
11530 (JSC::Interpreter::cti_vm_dontLazyLinkCall):
11531 (JSC::Interpreter::cti_vm_lazyLinkCall):
11533 (JSC::JIT::privateCompile):
11535 (JSC::):
11537 (JSC::JIT::linkCall):
11539 (JSC::):
11540 (JSC::JITCode::JITCode):
11541 (JSC::JITCode::operator bool):
11542 (JSC::JITCode::addressForCall):
11543 (JSC::JITCode::offsetOf):
11544 (JSC::JITCode::execute):
11566 (JSC::JIT::compileBinaryArithOp):
11581 (JSC::WREC::Generator::generateEnter):
11582 (JSC::WREC::Generator::generateReturnSuccess):
11583 (JSC::WREC::Generator::generateReturnFailure):
11677 (JSC::AbstractMacroAssembler::):
11678 (JSC::AbstractMacroAssembler::DataLabelPtr::DataLabelPtr):
11679 (JSC::AbstractMacroAssembler::DataLabelPtr::patch):
11680 (JSC::AbstractMacroAssembler::DataLabel32::DataLabel32):
11681 (JSC::AbstractMacroAssembler::DataLabel32::patch):
11682 (JSC::AbstractMacroAssembler::Label::Label):
11683 (JSC::AbstractMacroAssembler::Jump::Jump):
11684 (JSC::AbstractMacroAssembler::Jump::link):
11685 (JSC::AbstractMacroAssembler::Jump::linkTo):
11686 (JSC::AbstractMacroAssembler::Jump::patch):
11687 (JSC::AbstractMacroAssembler::JumpList::link):
11688 (JSC::AbstractMacroAssembler::JumpList::linkTo):
11689 (JSC::AbstractMacroAssembler::PatchBuffer::link):
11690 (JSC::AbstractMacroAssembler::PatchBuffer::addressOf):
11691 (JSC::AbstractMacroAssembler::PatchBuffer::setPtr):
11692 (JSC::AbstractMacroAssembler::size):
11693 (JSC::AbstractMacroAssembler::copyCode):
11694 (JSC::AbstractMacroAssembler::label):
11695 (JSC::AbstractMacroAssembler::align):
11696 (JSC::AbstractMacroAssembler::differenceBetween):
11697 (JSC::MacroAssemblerX86Common::xor32):
11698 (JSC::MacroAssemblerX86Common::load32WithAddressOffsetPatch):
11699 (JSC::MacroAssemblerX86Common::store32WithAddressOffsetPatch):
11700 (JSC::MacroAssemblerX86Common::move):
11701 (JSC::MacroAssemblerX86Common::swap):
11702 (JSC::MacroAssemblerX86Common::signExtend32ToPtr):
11703 (JSC::MacroAssemblerX86Common::zeroExtend32ToPtr):
11704 (JSC::MacroAssemblerX86Common::branch32):
11705 (JSC::MacroAssemblerX86Common::jump):
11706 (JSC::MacroAssemblerX86_64::add32):
11707 (JSC::MacroAssemblerX86_64::sub32):
11708 (JSC::MacroAssemblerX86_64::load32):
11709 (JSC::MacroAssemblerX86_64::store32):
11710 (JSC::MacroAssemblerX86_64::addPtr):
11711 (JSC::MacroAssemblerX86_64::andPtr):
11712 (JSC::MacroAssemblerX86_64::orPtr):
11713 (JSC::MacroAssemblerX86_64::rshiftPtr):
11714 (JSC::MacroAssemblerX86_64::subPtr):
11715 (JSC::MacroAssemblerX86_64::xorPtr):
11716 (JSC::MacroAssemblerX86_64::loadPtr):
11717 (JSC::MacroAssemblerX86_64::loadPtrWithAddressOffsetPatch):
11718 (JSC::MacroAssemblerX86_64::storePtr):
11719 (JSC::MacroAssemblerX86_64::storePtrWithAddressOffsetPatch):
11720 (JSC::MacroAssemblerX86_64::branchPtr):
11721 (JSC::MacroAssemblerX86_64::branchTestPtr):
11722 (JSC::MacroAssemblerX86_64::branchAddPtr):
11723 (JSC::MacroAssemblerX86_64::branchSubPtr):
11724 (JSC::MacroAssemblerX86_64::branchPtrWithPatch):
11725 (JSC::MacroAssemblerX86_64::storePtrWithPatch):
11726 (JSC::MacroAssemblerX86::add32):
11727 (JSC::MacroAssemblerX86::sub32):
11728 (JSC::MacroAssemblerX86::load32):
11729 (JSC::MacroAssemblerX86::store32):
11730 (JSC::MacroAssemblerX86::branch32):
11731 (JSC::MacroAssemblerX86::branchPtrWithPatch):
11732 (JSC::MacroAssemblerX86::storePtrWithPatch):
11733 (JSC::MacroAssembler::pop):
11734 (JSC::MacroAssembler::peek):
11735 (JSC::MacroAssembler::poke):
11736 (JSC::MacroAssembler::branchPtr):
11737 (JSC::MacroAssembler::branch32):
11738 (JSC::MacroAssembler::branch16):
11739 (JSC::MacroAssembler::branchTestPtr):
11740 (JSC::MacroAssembler::addPtr):
11741 (JSC::MacroAssembler::andPtr):
11742 (JSC::MacroAssembler::orPtr):
11743 (JSC::MacroAssembler::rshiftPtr):
11744 (JSC::MacroAssembler::subPtr):
11745 (JSC::MacroAssembler::xorPtr):
11746 (JSC::MacroAssembler::loadPtr):
11747 (JSC::MacroAssembler::loadPtrWithAddressOffsetPatch):
11748 (JSC::MacroAssembler::storePtr):
11749 (JSC::MacroAssembler::storePtrWithAddressOffsetPatch):
11750 (JSC::MacroAssembler::branchAddPtr):
11751 (JSC::MacroAssembler::branchSubPtr):
11753 (JSC::JIT::compileBinaryArithOp):
11790 (JSC::MacroAssembler::):
11791 (JSC::MacroAssembler::branchPtr):
11792 (JSC::MacroAssembler::branchPtrWithPatch):
11793 (JSC::MacroAssembler::branch32):
11794 (JSC::MacroAssembler::branch16):
11795 (JSC::MacroAssembler::branchTestPtr):
11796 (JSC::MacroAssembler::branchTest32):
11797 (JSC::MacroAssembler::branchAddPtr):
11798 (JSC::MacroAssembler::branchAdd32):
11799 (JSC::MacroAssembler::branchMul32):
11800 (JSC::MacroAssembler::branchSubPtr):
11801 (JSC::MacroAssembler::branchSub32):
11802 (JSC::MacroAssembler::set32):
11803 (JSC::MacroAssembler::setTest32):
11805 (JSC::X86Assembler::):
11806 (JSC::X86Assembler::jccRel32):
11807 (JSC::X86Assembler::setccOpcode):
11808 (JSC::X86Assembler::cmpq_mr):
11809 (JSC::X86Assembler::setcc_r):
11810 (JSC::X86Assembler::sete_r):
11811 (JSC::X86Assembler::setne_r):
11812 (JSC::X86Assembler::jne):
11813 (JSC::X86Assembler::je):
11814 (JSC::X86Assembler::jl):
11815 (JSC::X86Assembler::jb):
11816 (JSC::X86Assembler::jle):
11817 (JSC::X86Assembler::jbe):
11818 (JSC::X86Assembler::jge):
11819 (JSC::X86Assembler::jg):
11820 (JSC::X86Assembler::ja):
11821 (JSC::X86Assembler::jae):
11822 (JSC::X86Assembler::jo):
11823 (JSC::X86Assembler::jp):
11824 (JSC::X86Assembler::js):
11825 (JSC::X86Assembler::jcc):
11826 (JSC::X86Assembler::X86InstructionFormatter::putModRmSib):
11828 (JSC::JIT::compileOpStrictEq):
11829 (JSC::JIT::emitSlowScriptCheck):
11830 (JSC::JIT::privateCompileMainPass):
11831 (JSC::JIT::privateCompileSlowCases):
11832 (JSC::JIT::privateCompile):
11833 (JSC::JIT::privateCompileCTIMachineTrampolines):
11835 (JSC::JIT::compileFastArith_op_lshift):
11836 (JSC::JIT::compileFastArith_op_mod):
11837 (JSC::JIT::compileFastArith_op_post_inc):
11838 (JSC::JIT::compileFastArith_op_post_dec):
11839 (JSC::JIT::compileFastArith_op_pre_inc):
11840 (JSC::JIT::compileFastArith_op_pre_dec):
11841 (JSC::JIT::compileBinaryArithOp):
11842 (JSC::JIT::compileFastArith_op_add):
11843 (JSC::JIT::compileFastArith_op_mul):
11845 (JSC::JIT::compileOpCall):
11846 (JSC::JIT::compileOpCallSlowCase):
11848 (JSC::JIT::checkStructure):
11849 (JSC::JIT::emitJumpIfJSCell):
11850 (JSC::JIT::emitJumpIfNotJSCell):
11851 (JSC::JIT::emitJumpIfImmediateNumber):
11852 (JSC::JIT::emitJumpIfNotImmediateNumber):
11853 (JSC::JIT::emitJumpIfImmediateInteger):
11854 (JSC::JIT::emitJumpIfNotImmediateInteger):
11855 (JSC::JIT::emitFastArithDeTagImmediateJumpIfZero):
11857 (JSC::JIT::compileGetByIdHotPath):
11858 (JSC::JIT::compilePutByIdHotPath):
11859 (JSC::JIT::privateCompilePutByIdTransition):
11860 (JSC::JIT::privateCompilePatchGetArrayLength):
11861 (JSC::JIT::privateCompileGetByIdProto):
11862 (JSC::JIT::privateCompileGetByIdProtoList):
11863 (JSC::JIT::privateCompileGetByIdChainList):
11864 (JSC::JIT::privateCompileGetByIdChain):
11866 (JSC::RegExp::match):
11868 (JSC::WREC::Generator::generateEnter):
11869 (JSC::WREC::Generator::generateIncrementIndex):
11870 (JSC::WREC::Generator::generateLoadCharacter):
11871 (JSC::WREC::Generator::generateJumpIfNotEndOfInput):
11872 (JSC::WREC::Generator::generateBackreferenceQuantifier):
11873 (JSC::WREC::Generator::generateNonGreedyQuantifier):
11874 (JSC::WREC::Generator::generateGreedyQuantifier):
11875 (JSC::WREC::Generator::generatePatternCharacterPair):
11876 (JSC::WREC::Generator::generatePatternCharacter):
11877 (JSC::WREC::Generator::generateCharacterClassInvertedRange):
11878 (JSC::WREC::Generator::generateCharacterClassInverted):
11879 (JSC::WREC::Generator::generateAssertionBOL):
11880 (JSC::WREC::Generator::generateAssertionEOL):
11881 (JSC::WREC::Generator::generateAssertionWordBoundary):
11882 (JSC::WREC::Generator::generateBackreference):
11902 (JSC::JSByteArray::storage):
11928 (JSC::WREC::Generator::generateCharacterClassInvertedRange):
11940 (JSC::Lexer::Lexer): Ditto.
11941 (JSC::Lexer::clear): Ditto.
12053 (JSC::Interpreter::execute):
12076 (JSC::JSArray::JSArray): Report the extra cost even for a filled array
12079 (JSC::JSArray::putSlowCase): Update the cost when increasing the size of
12081 (JSC::JSArray::increaseVectorLength): Ditto.
12095 (JSC::DebuggerActivation::DebuggerActivation):
12096 (JSC::DebuggerActivation::mark):
12097 (JSC::DebuggerActivation::className):
12098 (JSC::DebuggerActivation::getOwnPropertySlot):
12099 (JSC::DebuggerActivation::put):
12100 (JSC::DebuggerActivation::putWithAttributes):
12101 (JSC::DebuggerActivation::deleteProperty):
12102 (JSC::DebuggerActivation::getPropertyNames):
12103 (JSC::DebuggerActivation::getPropertyAttributes):
12104 (JSC::DebuggerActivation::defineGetter):
12105 (JSC::DebuggerActivation::defineSetter):
12106 (JSC::DebuggerActivation::lookupGetter):
12107 (JSC::DebuggerActivation::lookupSetter):
12112 (JSC::JSActivation::isActivationObject): Added.
12114 (JSC::JSObject::isActivationObject): Added.
12152 (JSC::JIT::privateCompileMainPass):
12164 (JSC::evaluateInGlobalCallFrame): Added so that WebScriptCallFrame can
12206 (JSC::JIT::compileOpCall): Use JSValuePtr::encode.
12232 (JSC::unreachable): Added NO_RETURN.
12253 Ensure that callbacks out from the JSC interface are only allowed
12262 (JSC::JSLock::DropAllLocks::DropAllLocks):
12263 (JSC::JSLock::DropAllLocks::~DropAllLocks):
12290 (JSC::getPlatformThreadRegisters):
12292 (JSC::createError):
12296 (JSC::initializeStaticBaseString):
12297 (JSC::createRep):
12354 (JSC::globalFuncParseInt):
12370 … (JSC::CodeBlock::reparseForExceptionInfoIfNecessary): add an assertion for successful recompile
12372 (JSC::Lexer::sourceCode): include rather than exclude braces.
12374 (JSC::FunctionBodyNode::toSourceString): No need to append braces anymore.
12413 (JSC::Interpreter::privateExecute):
12414 (JSC::Interpreter::cti_op_switch_imm):
12423 (JSC::Interpreter::privateExecute):
12432 * parser/Nodes.cpp: (JSC::FunctionBodyNode::~FunctionBodyNode): Destruct parameter names.
12452 (JSC::Structure::~Structure):
12465 (JSC::substituteBackreferences): Add back the initialization to fix the build.
12480 (JSC::substituteBackreferences): Remove unneeded initialization and
12528 (JSC::JSCallbackFunction::call):
12530 (JSC::::call):
12531 (JSC::::toNumber):
12532 (JSC::::toString):
12549 (JSC::valueToSourceString):
12550 (JSC::CodeBlock::mark):
12552 (JSC::CodeBlock::isKnownNotImmediate):
12554 (JSC::BytecodeGenerator::emitEqualityOp):
12555 (JSC::keyForImmediateSwitch):
12557 (JSC::jsLess):
12558 (JSC::jsLessEq):
12559 (JSC::jsAddSlowCase):
12560 (JSC::jsAdd):
12561 (JSC::jsTypeStringForValue):
12562 (JSC::jsIsObjectType):
12563 (JSC::jsIsFunctionType):
12564 (JSC::isNotObject):
12565 (JSC::Interpreter::callEval):
12566 (JSC::Interpreter::throwException):
12567 (JSC::cachePrototypeChain):
12568 (JSC::Interpreter::tryCachePutByID):
12569 (JSC::countPrototypeChainEntriesAndCheckForProxies):
12570 (JSC::Interpreter::tryCacheGetByID):
12571 (JSC::Interpreter::privateExecute):
12572 (JSC::Interpreter::tryCTICachePutByID):
12573 (JSC::Interpreter::tryCTICacheGetByID):
12574 (JSC::Interpreter::cti_op_convert_this):
12575 (JSC::Interpreter::cti_op_add):
12576 (JSC::Interpreter::cti_op_pre_inc):
12577 (JSC::Interpreter::cti_op_put_by_id_generic):
12578 (JSC::Interpreter::cti_op_get_by_id_generic):
12579 (JSC::Interpreter::cti_op_put_by_id):
12580 (JSC::Interpreter::cti_op_put_by_id_second):
12581 (JSC::Interpreter::cti_op_put_by_id_fail):
12582 (JSC::Interpreter::cti_op_get_by_id):
12583 (JSC::Interpreter::cti_op_get_by_id_second):
12584 (JSC::Interpreter::cti_op_get_by_id_self_fail):
12585 (JSC::Interpreter::cti_op_get_by_id_proto_list):
12586 (JSC::Interpreter::cti_op_get_by_id_proto_list_full):
12587 (JSC::Interpreter::cti_op_get_by_id_proto_fail):
12588 (JSC::Interpreter::cti_op_get_by_id_array_fail):
12589 (JSC::Interpreter::cti_op_get_by_id_string_fail):
12590 (JSC::Interpreter::cti_op_instanceof):
12591 (JSC::Interpreter::cti_op_del_by_id):
12592 (JSC::Interpreter::cti_op_mul):
12593 (JSC::Interpreter::cti_op_call_JSFunction):
12594 (JSC::Interpreter::cti_op_call_NotJSFunction):
12595 (JSC::Interpreter::cti_op_construct_JSConstruct):
12596 (JSC::Interpreter::cti_op_construct_NotJSConstruct):
12597 (JSC::Interpreter::cti_op_get_by_val):
12598 (JSC::Interpreter::cti_op_get_by_val_byte_array):
12599 (JSC::Interpreter::cti_op_sub):
12600 (JSC::Interpreter::cti_op_put_by_val):
12601 (JSC::Interpreter::cti_op_put_by_val_array):
12602 (JSC::Interpreter::cti_op_put_by_val_byte_array):
12603 (JSC::Interpreter::cti_op_loop_if_true):
12604 (JSC::Interpreter::cti_op_negate):
12605 (JSC::Interpreter::cti_op_div):
12606 (JSC::Interpreter::cti_op_pre_dec):
12607 (JSC::Interpreter::cti_op_not):
12608 (JSC::Interpreter::cti_op_jtrue):
12609 (JSC::Interpreter::cti_op_post_inc):
12610 (JSC::Interpreter::cti_op_lshift):
12611 (JSC::Interpreter::cti_op_bitand):
12612 (JSC::Interpreter::cti_op_rshift):
12613 (JSC::Interpreter::cti_op_bitnot):
12614 (JSC::Interpreter::cti_op_mod):
12615 (JSC::Interpreter::cti_op_post_dec):
12616 (JSC::Interpreter::cti_op_urshift):
12617 (JSC::Interpreter::cti_op_bitxor):
12618 (JSC::Interpreter::cti_op_bitor):
12619 (JSC::Interpreter::cti_op_push_scope):
12620 (JSC::Interpreter::cti_op_is_undefined):
12621 (JSC::Interpreter::cti_op_is_boolean):
12622 (JSC::Interpreter::cti_op_is_number):
12623 (JSC::Interpreter::cti_op_to_jsnumber):
12624 (JSC::Interpreter::cti_op_in):
12625 (JSC::Interpreter::cti_op_put_by_index):
12626 (JSC::Interpreter::cti_op_switch_imm):
12627 (JSC::Interpreter::cti_op_switch_char):
12628 (JSC::Interpreter::cti_op_switch_string):
12629 (JSC::Interpreter::cti_op_del_by_val):
12630 (JSC::Interpreter::cti_op_put_getter):
12631 (JSC::Interpreter::cti_op_put_setter):
12632 (JSC::Interpreter::cti_op_new_error):
12634 (JSC::Interpreter::isJSArray):
12635 (JSC::Interpreter::isJSString):
12636 (JSC::Interpreter::isJSByteArray):
12638 (JSC::Register::marked):
12639 (JSC::Register::mark):
12641 (JSC::JIT::getConstantOperandImmediateInt):
12642 (JSC::JIT::isOperandConstantImmediateInt):
12651 (JSC::processClauseList):
12653 (JSC::ProfileGenerator::addParentForConsoleStart):
12655 (JSC::Profiler::createCallIdentifier):
12657 (JSC::constructArrayWithSizeQuirk):
12659 (JSC::arrayProtoFuncToString):
12660 (JSC::arrayProtoFuncToLocaleString):
12661 (JSC::arrayProtoFuncJoin):
12662 (JSC::arrayProtoFuncConcat):
12663 (JSC::arrayProtoFuncPop):
12664 (JSC::arrayProtoFuncPush):
12665 (JSC::arrayProtoFuncReverse):
12666 (JSC::arrayProtoFuncShift):
12667 (JSC::arrayProtoFuncSlice):
12668 (JSC::arrayProtoFuncSort):
12669 (JSC::arrayProtoFuncSplice):
12670 (JSC::arrayProtoFuncUnShift):
12671 (JSC::arrayProtoFuncFilter):
12672 (JSC::arrayProtoFuncMap):
12673 (JSC::arrayProtoFuncEvery):
12674 (JSC::arrayProtoFuncForEach):
12675 (JSC::arrayProtoFuncSome):
12676 (JSC::arrayProtoFuncIndexOf):
12677 (JSC::arrayProtoFuncLastIndexOf):
12679 (JSC::constructBoolean):
12680 (JSC::callBooleanConstructor):
12682 (JSC::booleanProtoFuncToString):
12683 (JSC::booleanProtoFuncValueOf):
12685 (JSC::Heap::protect):
12686 (JSC::Heap::unprotect):
12687 (JSC::Heap::heap):
12688 (JSC::Heap::collect):
12689 (JSC::typeName):
12691 (JSC::evaluate):
12693 (JSC::constructDate):
12694 (JSC::dateParse):
12695 (JSC::dateUTC):
12697 (JSC::DateInstance::internalNumber):
12699 (JSC::formatLocaleDate):
12700 (JSC::fillStructuresUsingTimeArgs):
12701 (JSC::fillStructuresUsingDateArgs):
12702 (JSC::dateProtoFuncToString):
12703 (JSC::dateProtoFuncToUTCString):
12704 (JSC::dateProtoFuncToDateString):
12705 (JSC::dateProtoFuncToTimeString):
12706 (JSC::dateProtoFuncToLocaleString):
12707 (JSC::dateProtoFuncToLocaleDateString):
12708 (JSC::dateProtoFuncToLocaleTimeString):
12709 (JSC::dateProtoFuncGetTime):
12710 (JSC::dateProtoFuncGetFullYear):
12711 (JSC::dateProtoFuncGetUTCFullYear):
12712 (JSC::dateProtoFuncToGMTString):
12713 (JSC::dateProtoFuncGetMonth):
12714 (JSC::dateProtoFuncGetUTCMonth):
12715 (JSC::dateProtoFuncGetDate):
12716 (JSC::dateProtoFuncGetUTCDate):
12717 (JSC::dateProtoFuncGetDay):
12718 (JSC::dateProtoFuncGetUTCDay):
12719 (JSC::dateProtoFuncGetHours):
12720 (JSC::dateProtoFuncGetUTCHours):
12721 (JSC::dateProtoFuncGetMinutes):
12722 (JSC::dateProtoFuncGetUTCMinutes):
12723 (JSC::dateProtoFuncGetSeconds):
12724 (JSC::dateProtoFuncGetUTCSeconds):
12725 (JSC::dateProtoFuncGetMilliSeconds):
12726 (JSC::dateProtoFuncGetUTCMilliseconds):
12727 (JSC::dateProtoFuncGetTimezoneOffset):
12728 (JSC::dateProtoFuncSetTime):
12729 (JSC::setNewValueFromTimeArgs):
12730 (JSC::setNewValueFromDateArgs):
12731 (JSC::dateProtoFuncSetYear):
12732 (JSC::dateProtoFuncGetYear):
12734 (JSC::constructError):
12736 (JSC::errorProtoFuncToString):
12738 (JSC::createError):
12739 (JSC::createErrorMessage):
12741 (JSC::constructFunction):
12743 (JSC::functionProtoFuncToString):
12744 (JSC::functionProtoFuncApply):
12745 (JSC::functionProtoFuncCall):
12747 (JSC::GetterSetter::toObject):
12749 (JSC::JSActivation::getOwnPropertySlot):
12751 (JSC::JSArray::put):
12752 (JSC::JSArray::mark):
12753 (JSC::JSArray::sort):
12754 (JSC::AVLTreeAbstractorForArrayCompare::compare_key_key):
12755 (JSC::JSArray::compactForSorting):
12757 (JSC::JSByteArray::setIndex):
12759 (JSC::asCell):
12761 (JSC::JSFunction::call):
12762 (JSC::JSFunction::construct):
12764 (JSC::markIfNeeded):
12765 (JSC::lastInPrototypeChain):
12767 (JSC::encode):
12768 (JSC::decode):
12769 (JSC::globalFuncEval):
12770 (JSC::globalFuncParseInt):
12771 (JSC::globalFuncParseFloat):
12772 (JSC::globalFuncIsNaN):
12773 (JSC::globalFuncIsFinite):
12774 (JSC::globalFuncEscape):
12775 (JSC::globalFuncUnescape):
12776 (JSC::globalFuncJSCPrint):
12778 (JSC::JSImmediate::toThisObject):
12779 (JSC::JSImmediate::toObject):
12780 (JSC::JSImmediate::prototype):
12781 (JSC::JSImmediate::toString):
12784 (JSC::JSObject::mark):
12785 (JSC::JSObject::put):
12786 (JSC::callDefaultValueFunction):
12787 (JSC::JSObject::getPrimitiveNumber):
12788 (JSC::JSObject::defineGetter):
12789 (JSC::JSObject::defineSetter):
12790 (JSC::JSObject::lookupGetter):
12791 (JSC::JSObject::lookupSetter):
12792 (JSC::JSObject::hasInstance):
12793 (JSC::JSObject::toNumber):
12794 (JSC::JSObject::toString):
12796 (JSC::JSObject::JSObject):
12797 (JSC::JSObject::inlineGetOwnPropertySlot):
12798 (JSC::JSObject::getOwnPropertySlotForWrite):
12799 (JSC::JSObject::getPropertySlot):
12800 (JSC::JSValuePtr::get):
12802 (JSC::JSPropertyNameIterator::create):
12804 (JSC::JSString::getOwnPropertySlot):
12807 (JSC::JSWrapperObject::mark):
12809 (JSC::JSWrapperObject::setInternalValue):
12811 (JSC::mathProtoFuncAbs):
12812 (JSC::mathProtoFuncACos):
12813 (JSC::mathProtoFuncASin):
12814 (JSC::mathProtoFuncATan):
12815 (JSC::mathProtoFuncATan2):
12816 (JSC::mathProtoFuncCeil):
12817 (JSC::mathProtoFuncCos):
12818 (JSC::mathProtoFuncExp):
12819 (JSC::mathProtoFuncFloor):
12820 (JSC::mathProtoFuncLog):
12821 (JSC::mathProtoFuncMax):
12822 (JSC::mathProtoFuncMin):
12823 (JSC::mathProtoFuncPow):
12824 (JSC::mathProtoFuncRound):
12825 (JSC::mathProtoFuncSin):
12826 (JSC::mathProtoFuncSqrt):
12827 (JSC::mathProtoFuncTan):
12829 (JSC::NativeErrorConstructor::NativeErrorConstructor):
12830 (JSC::NativeErrorConstructor::construct):
12832 (JSC::constructWithNumberConstructor):
12833 (JSC::callNumberConstructor):
12835 (JSC::numberProtoFuncToString):
12836 (JSC::numberProtoFuncToLocaleString):
12837 (JSC::numberProtoFuncValueOf):
12838 (JSC::numberProtoFuncToFixed):
12839 (JSC::numberProtoFuncToExponential):
12840 (JSC::numberProtoFuncToPrecision):
12842 (JSC::constructObject):
12844 (JSC::objectProtoFuncValueOf):
12845 (JSC::objectProtoFuncHasOwnProperty):
12846 (JSC::objectProtoFuncIsPrototypeOf):
12847 (JSC::objectProtoFuncDefineGetter):
12848 (JSC::objectProtoFuncDefineSetter):
12849 (JSC::objectProtoFuncLookupGetter):
12850 (JSC::objectProtoFuncLookupSetter):
12851 (JSC::objectProtoFuncPropertyIsEnumerable):
12852 (JSC::objectProtoFuncToLocaleString):
12853 (JSC::objectProtoFuncToString):
12855 (JSC::JSValuePtr::equalSlowCaseInline):
12856 (JSC::JSValuePtr::strictEqual):
12857 (JSC::JSValuePtr::strictEqualSlowCaseInline):
12859 (JSC::gcProtect):
12860 (JSC::gcUnprotect):
12862 (JSC::setRegExpConstructorInput):
12863 (JSC::setRegExpConstructorMultiline):
12864 (JSC::constructRegExp):
12866 (JSC::setRegExpObjectLastIndex):
12867 (JSC::RegExpObject::match):
12869 (JSC::regExpProtoFuncTest):
12870 (JSC::regExpProtoFuncExec):
12871 (JSC::regExpProtoFuncCompile):
12872 (JSC::regExpProtoFuncToString):
12874 (JSC::stringFromCharCodeSlowCase):
12875 (JSC::stringFromCharCode):
12876 (JSC::constructWithStringConstructor):
12877 (JSC::callStringConstructor):
12879 (JSC::stringProtoFuncReplace):
12880 (JSC::stringProtoFuncToString):
12881 (JSC::stringProtoFuncCharAt):
12882 (JSC::stringProtoFuncCharCodeAt):
12883 (JSC::stringProtoFuncConcat):
12884 (JSC::stringProtoFuncIndexOf):
12885 (JSC::stringProtoFuncLastIndexOf):
12886 (JSC::stringProtoFuncMatch):
12887 (JSC::stringProtoFuncSearch):
12888 (JSC::stringProtoFuncSlice):
12889 (JSC::stringProtoFuncSplit):
12890 (JSC::stringProtoFuncSubstr):
12891 (JSC::stringProtoFuncSubstring):
12892 (JSC::stringProtoFuncToLowerCase):
12893 (JSC::stringProtoFuncToUpperCase):
12894 (JSC::stringProtoFuncLocaleCompare):
12895 (JSC::stringProtoFuncBig):
12896 (JSC::stringProtoFuncSmall):
12897 (JSC::stringProtoFuncBlink):
12898 (JSC::stringProtoFuncBold):
12899 (JSC::stringProtoFuncFixed):
12900 (JSC::stringProtoFuncItalics):
12901 (JSC::stringProtoFuncStrike):
12902 (JSC::stringProtoFuncSub):
12903 (JSC::stringProtoFuncSup):
12904 (JSC::stringProtoFuncFontcolor):
12905 (JSC::stringProtoFuncFontsize):
12906 (JSC::stringProtoFuncAnchor):
12907 (JSC::stringProtoFuncLink):
12909 (JSC::Structure::Structure):
12910 (JSC::Structure::getEnumerablePropertyNames):
12911 (JSC::Structure::createCachedPrototypeChain):
12913 (JSC::Structure::mark):
12915 (JSC::StructureChain::StructureChain):
12928 (JSC::substituteBackreferences): Remove code that adds an extra $ -- not sure
12941 (JSC::MacroAssembler::subPtr):
12942 (JSC::MacroAssembler::jnzPtr):
12943 (JSC::MacroAssembler::jzPtr):
12945 (JSC::JIT::privateCompileMainPass):
12948 (JSC::JIT::compileBinaryArithOpSlowCase):
12950 (JSC::JIT::emitJumpIfJSCell):
12951 (JSC::JIT::emitJumpIfNotJSCell):
12952 (JSC::JIT::emitJumpIfImmediateNumber):
12953 (JSC::JIT::emitJumpIfNotImmediateNumber):
12954 (JSC::JIT::emitJumpIfImmediateInteger):
12955 (JSC::JIT::emitJumpIfNotImmediateInteger):
12956 (JSC::JIT::emitFastArithIntToImmNoCheck):
12966 (JSC::MacroAssembler::addPtr):
12968 (JSC::X86Assembler::movq_rr):
12971 (JSC::JIT::compileFastArith_op_pre_inc):
12972 (JSC::JIT::compileBinaryArithOp):
12973 (JSC::JIT::compileBinaryArithOpSlowCase):
12974 (JSC::JIT::compileFastArith_op_add):
12975 (JSC::JIT::compileFastArithSlow_op_add):
12976 (JSC::JIT::compileFastArith_op_mul):
12977 (JSC::JIT::compileFastArithSlow_op_mul):
12978 (JSC::JIT::compileFastArith_op_sub):
12979 (JSC::JIT::compileFastArithSlow_op_sub):
12981 (JSC::ResultType::isReusable):
12982 (JSC::ResultType::isInt32):
12983 (JSC::ResultType::definitelyIsNumber):
12984 (JSC::ResultType::mightBeNumber):
12985 (JSC::ResultType::isNotNumber):
12986 (JSC::ResultType::unknownType):
12997 (JSC::MacroAssembler::storePtr):
12999 (JSC::SamplingTool::run):
13000 (JSC::SamplingTool::dump):
13002 (JSC::SamplingTool::encodeSample):
13004 (JSC::JIT::privateCompileMainPass):
13005 (JSC::JIT::privateCompile):
13007 (JSC::JIT::samplingToolTrackCodeBlock):
13009 (JSC::JIT::compileOpCall):
13010 (JSC::JIT::compileOpCallSlowCase):
13012 (JSC::JIT::emitCTICall_internal):
13022 (JSC::WREC::Parser::consumeEscape): Mimic a Firefox quirk when parsing
13030 (JSC::WREC::Parser::parseParentheses): Removed unreachable code.
13046 (JSC::WREC::Parser::parseParentheses): Fall back on PCRE for the rare
13059 (JSC::ReadModifyResolveNode::emitBytecode):
13060 (JSC::ReadModifyDotNode::emitBytecode):
13061 (JSC::ReadModifyBracketNode::emitBytecode):
13063 (JSC::ExpressionNode::):
13064 (JSC::BooleanNode::):
13065 (JSC::NumberNode::):
13066 (JSC::StringNode::):
13067 (JSC::PrePostResolveNode::):
13068 (JSC::TypeOfResolveNode::):
13069 (JSC::TypeOfValueNode::):
13070 (JSC::UnaryPlusNode::):
13071 (JSC::NegateNode::):
13072 (JSC::BitwiseNotNode::):
13073 (JSC::LogicalNotNode::):
13074 (JSC::MultNode::):
13075 (JSC::DivNode::):
13076 (JSC::ModNode::):
13077 (JSC::SubNode::):
13078 (JSC::LeftShiftNode::):
13079 (JSC::RightShiftNode::):
13080 (JSC::UnsignedRightShiftNode::):
13081 (JSC::LessNode::):
13082 (JSC::GreaterNode::):
13083 (JSC::LessEqNode::):
13084 (JSC::GreaterEqNode::):
13085 (JSC::InstanceOfNode::):
13086 (JSC::EqualNode::):
13087 (JSC::NotEqualNode::):
13088 (JSC::StrictEqualNode::):
13089 (JSC::NotStrictEqualNode::):
13090 (JSC::BitAndNode::):
13091 (JSC::BitOrNode::):
13092 (JSC::BitXOrNode::):
13093 (JSC::LogicalOpNode::):
13095 (JSC::ResultType::isInt32):
13096 (JSC::ResultType::isNotNumber):
13097 (JSC::ResultType::booleanType):
13098 (JSC::ResultType::numberType):
13099 (JSC::ResultType::numberTypeCanReuse):
13100 (JSC::ResultType::numberTypeCanReuseIsInt32):
13101 (JSC::ResultType::stringOrNumberTypeCanReuse):
13102 (JSC::ResultType::stringType):
13103 (JSC::ResultType::unknownType):
13104 (JSC::ResultType::forAdd):
13105 (JSC::ResultType::forBitOp):
13106 (JSC::OperandTypes::OperandTypes):
13116 (JSC::MacroAssembler::mul32):
13117 (JSC::MacroAssembler::sub32):
13118 (JSC::MacroAssembler::joMul32):
13119 (JSC::MacroAssembler::joSub32):
13121 (JSC::JIT::privateCompileMainPass):
13122 (JSC::JIT::privateCompileSlowCases):
13125 (JSC::JIT::compileFastArith_op_add):
13126 (JSC::JIT::compileFastArithSlow_op_add):
13127 (JSC::JIT::compileFastArith_op_mul):
13128 (JSC::JIT::compileFastArithSlow_op_mul):
13129 (JSC::JIT::compileFastArith_op_sub):
13130 (JSC::JIT::compileFastArithSlow_op_sub):
13147 (JSC::MacroAssembler::subPtr):
13149 (JSC::X86Assembler::):
13150 (JSC::X86Assembler::subq_rr):
13151 (JSC::X86Assembler::movq_rr):
13152 (JSC::X86Assembler::ucomisd_rr):
13153 (JSC::X86Assembler::X86InstructionFormatter::twoByteOp64):
13155 (JSC::Interpreter::cti_op_stricteq):
13156 (JSC::Interpreter::cti_op_nstricteq):
13158 (JSC::JIT::compileOpStrictEq):
13159 (JSC::JIT::privateCompileMainPass):
13160 (JSC::JIT::privateCompileSlowCases):
13163 (JSC::JIT::compileFastArith_op_lshift):
13164 (JSC::JIT::compileFastArith_op_rshift):
13165 (JSC::JIT::compileFastArith_op_bitand):
13166 (JSC::JIT::compileFastArith_op_mod):
13167 (JSC::JIT::compileFastArith_op_add):
13168 (JSC::JIT::compileFastArith_op_mul):
13169 (JSC::JIT::compileFastArith_op_post_inc):
13170 (JSC::JIT::compileFastArith_op_post_dec):
13171 (JSC::JIT::compileFastArith_op_pre_inc):
13172 (JSC::JIT::compileFastArith_op_pre_dec):
13173 (JSC::JIT::putDoubleResultToJSNumberCellOrJSImmediate):
13174 (JSC::JIT::compileBinaryArithOp):
13176 (JSC::JIT::emitJumpIfBothJSCells):
13177 (JSC::JIT::emitJumpIfEitherNumber):
13178 (JSC::JIT::emitJumpIfNotEitherNumber):
13179 (JSC::JIT::emitJumpIfImmediateIntegerNumber):
13180 (JSC::JIT::emitJumpIfNotImmediateIntegerNumber):
13181 (JSC::JIT::emitJumpIfNotImmediateIntegerNumbers):
13182 (JSC::JIT::emitJumpSlowCaseIfNotImmediateIntegerNumber):
13183 (JSC::JIT::emitJumpSlowCaseIfNotImmediateIntegerNumbers):
13184 (JSC::JIT::emitFastArithDeTagImmediate):
13185 (JSC::JIT::emitFastArithDeTagImmediateJumpIfZero):
13186 (JSC::JIT::emitFastArithReTagImmediate):
13187 (JSC::JIT::emitFastArithIntToImmNoCheck):
13190 (JSC::JSGlobalData::JSGlobalData):
13192 (JSC::JSImmediate::toThisObject):
13193 (JSC::JSImmediate::toObject):
13194 (JSC::JSImmediate::toString):
13196 (JSC::wtf_reinterpret_cast):
13197 (JSC::JSImmediate::isNumber):
13198 (JSC::JSImmediate::isIntegerNumber):
13199 (JSC::JSImmediate::isDoubleNumber):
13200 (JSC::JSImmediate::isPositiveIntegerNumber):
13201 (JSC::JSImmediate::areBothImmediateIntegerNumbers):
13202 (JSC::JSImmediate::makeInt):
13203 (JSC::JSImmediate::makeDouble):
13204 (JSC::JSImmediate::doubleValue):
13205 (JSC::doubleToBoolean):
13206 (JSC::JSImmediate::toBoolean):
13207 (JSC::JSImmediate::getTruncatedUInt32):
13208 (JSC::JSImmediate::makeOutOfIntegerRange):
13209 (JSC::JSImmediate::from):
13210 (JSC::JSImmediate::getTruncatedInt32):
13211 (JSC::JSImmediate::toDouble):
13212 (JSC::JSImmediate::getUInt32):
13213 (JSC::JSValuePtr::isInt32Fast):
13214 (JSC::JSValuePtr::isUInt32Fast):
13215 (JSC::JSValuePtr::areBothInt32Fast):
13216 (JSC::JSFastMath::canDoFastBitwiseOperations):
13217 (JSC::JSFastMath::xorImmediateNumbers):
13218 (JSC::JSFastMath::canDoFastRshift):
13219 (JSC::JSFastMath::canDoFastUrshift):
13220 (JSC::JSFastMath::rightShiftImmediateNumbers):
13221 (JSC::JSFastMath::canDoFastAdditiveOperations):
13222 (JSC::JSFastMath::addImmediateNumbers):
13223 (JSC::JSFastMath::subImmediateNumbers):
13225 (JSC::jsNumberCell):
13227 (JSC::createNumberStructure):
13228 (JSC::isNumberCell):
13229 (JSC::asNumberCell):
13230 (JSC::jsNumber):
13231 (JSC::JSValuePtr::isDoubleNumber):
13232 (JSC::JSValuePtr::getDoubleNumber):
13233 (JSC::JSValuePtr::isNumber):
13234 (JSC::JSValuePtr::uncheckedGetNumber):
13235 (JSC::jsNaN):
13236 (JSC::JSValuePtr::getNumber):
13237 (JSC::JSValuePtr::numberToInt32):
13238 (JSC::JSValuePtr::numberToUInt32):
13241 (JSC::numberConstructorNegInfinity):
13242 (JSC::numberConstructorPosInfinity):
13243 (JSC::numberConstructorMaxValue):
13244 (JSC::numberConstructorMinValue):
13246 (JSC::constructNumber):
13249 (JSC::JSValuePtr::equal):
13250 (JSC::JSValuePtr::equalSlowCaseInline):
13251 (JSC::JSValuePtr::strictEqual):
13252 (JSC::JSValuePtr::strictEqualSlowCaseInline):
13266 (JSC::Heap::objectCount):
13268 (JSC::SmallStrings::count):
13287 (JSC::CodeBlock::reparseForExceptionInfoIfNecessary):
13289 (JSC::ScopeNode::mark):
13291 (JSC::Heap::collect):
13293 (JSC::JSGlobalData::JSGlobalData):
13317 (JSC::Lexer::matchPunctuator):
13321 Bug 23153: JSC build always touches JavaScriptCore/docs/bytecode.html
13359 (JSC::CodeBlock::mark):
13361 (JSC::CodeBlock::hasFunctions):
13363 (JSC::EvalCodeCache::mark):
13365 (JSC::ScopeNodeData::mark):
13366 (JSC::EvalNode::mark):
13403 (JSC::ByteArray::deref):
13404 (JSC::ByteArray::ByteArray):
13426 (JSC::globalFuncParseInt):
13437 (JSC::JSFastMath::canDoFastAdditiveOperations):
13447 (JSC::Interpreter::privateExecute):
13482 (JSC::::toNumber):
13488 (JSC::CodeBlock::isKnownNotImmediate):
13490 (JSC::keyForImmediateSwitch):
13492 (JSC::BytecodeGenerator::JSValueHashTraits::constructDeletedValue):
13493 (JSC::BytecodeGenerator::JSValueHashTraits::isDeletedValue):
13495 (JSC::jsLess):
13496 (JSC::jsLessEq):
13497 (JSC::jsAdd):
13498 (JSC::jsIsObjectType):
13499 (JSC::cachePrototypeChain):
13500 (JSC::Interpreter::tryCachePutByID):
13501 (JSC::Interpreter::tryCacheGetByID):
13502 (JSC::Interpreter::privateExecute):
13503 (JSC::Interpreter::tryCTICachePutByID):
13504 (JSC::Interpreter::tryCTICacheGetByID):
13505 (JSC::Interpreter::cti_op_add):
13506 (JSC::Interpreter::cti_op_get_by_id_self_fail):
13507 (JSC::Interpreter::cti_op_get_by_id_proto_list):
13508 (JSC::Interpreter::cti_op_instanceof):
13509 (JSC::Interpreter::cti_op_mul):
13510 (JSC::Interpreter::cti_op_get_by_val):
13511 (JSC::Interpreter::cti_op_get_by_val_byte_array):
13512 (JSC::Interpreter::cti_op_sub):
13513 (JSC::Interpreter::cti_op_put_by_val):
13514 (JSC::Interpreter::cti_op_put_by_val_array):
13515 (JSC::Interpreter::cti_op_put_by_val_byte_array):
13516 (JSC::Interpreter::cti_op_negate):
13517 (JSC::Interpreter::cti_op_div):
13518 (JSC::Interpreter::cti_op_eq):
13519 (JSC::Interpreter::cti_op_lshift):
13520 (JSC::Interpreter::cti_op_bitand):
13521 (JSC::Interpreter::cti_op_rshift):
13522 (JSC::Interpreter::cti_op_bitnot):
13523 (JSC::Interpreter::cti_op_neq):
13524 (JSC::Interpreter::cti_op_urshift):
13525 (JSC::Interpreter::cti_op_call_eval):
13526 (JSC::Interpreter::cti_op_throw):
13527 (JSC::Interpreter::cti_op_is_undefined):
13528 (JSC::Interpreter::cti_op_stricteq):
13529 (JSC::Interpreter::cti_op_nstricteq):
13530 (JSC::Interpreter::cti_op_switch_imm):
13531 (JSC::Interpreter::cti_vm_throw):
13533 (JSC::Interpreter::isJSArray):
13534 (JSC::Interpreter::isJSString):
13535 (JSC::Interpreter::isJSByteArray):
13537 (JSC::JIT::compileOpStrictEq):
13538 (JSC::JIT::privateCompileMainPass):
13540 (JSC::JIT::isStrictEqCaseHandledInJITCode):
13542 (JSC::JIT::compileFastArith_op_rshift):
13543 (JSC::JIT::compileFastArith_op_bitand):
13544 (JSC::JIT::compileFastArith_op_mod):
13546 (JSC::JIT::unlinkCall):
13547 (JSC::JIT::compileOpCall):
13549 (JSC::JIT::getConstantOperandImmediateInt):
13550 (JSC::JIT::isOperandConstantImmediateInt):
13552 (JSC::processClauseList):
13554 (JSC::arrayProtoFuncIndexOf):
13555 (JSC::arrayProtoFuncLastIndexOf):
13557 (JSC::booleanProtoFuncValueOf):
13559 (JSC::Heap::protect):
13560 (JSC::Heap::unprotect):
13561 (JSC::Heap::heap):
13563 (JSC::JSByteArray::getOwnPropertySlot):
13565 (JSC::JSByteArray::getIndex):
13568 (JSC::JSValuePtr::isNumberCell):
13569 (JSC::JSValuePtr::asCell):
13570 (JSC::JSValuePtr::isNumber):
13572 (JSC::globalFuncParseInt):
13574 (JSC::js0):
13575 (JSC::jsImpossibleValue):
13576 (JSC::JSValuePtr::toInt32):
13577 (JSC::JSValuePtr::toUInt32):
13578 (JSC::JSValuePtr::isCell):
13579 (JSC::JSValuePtr::isInt32Fast):
13580 (JSC::JSValuePtr::getInt32Fast):
13581 (JSC::JSValuePtr::isUInt32Fast):
13582 (JSC::JSValuePtr::getUInt32Fast):
13583 (JSC::JSValuePtr::makeInt32Fast):
13584 (JSC::JSValuePtr::areBothInt32Fast):
13585 (JSC::JSFastMath::canDoFastBitwiseOperations):
13586 (JSC::JSFastMath::equal):
13587 (JSC::JSFastMath::notEqual):
13588 (JSC::JSFastMath::andImmediateNumbers):
13589 (JSC::JSFastMath::xorImmediateNumbers):
13590 (JSC::JSFastMath::orImmediateNumbers):
13591 (JSC::JSFastMath::canDoFastRshift):
13592 (JSC::JSFastMath::canDoFastUrshift):
13593 (JSC::JSFastMath::rightShiftImmediateNumbers):
13594 (JSC::JSFastMath::canDoFastAdditiveOperations):
13595 (JSC::JSFastMath::addImmediateNumbers):
13596 (JSC::JSFastMath::subImmediateNumbers):
13597 (JSC::JSFastMath::incImmediateNumber):
13598 (JSC::JSFastMath::decImmediateNumber):
13600 (JSC::JSValuePtr::asNumberCell):
13601 (JSC::jsNumber):
13602 (JSC::JSValuePtr::uncheckedGetNumber):
13603 (JSC::JSNumberCell::toInt32):
13604 (JSC::JSNumberCell::toUInt32):
13605 (JSC::JSValuePtr::toJSNumber):
13606 (JSC::JSValuePtr::getNumber):
13607 (JSC::JSValuePtr::numberToInt32):
13608 (JSC::JSValuePtr::numberToUInt32):
13610 (JSC::JSValuePtr::isObject):
13611 (JSC::JSValuePtr::get):
13612 (JSC::JSValuePtr::put):
13614 (JSC::JSValuePtr::toInteger):
13615 (JSC::JSValuePtr::toIntegerPreserveNaN):
13618 (JSC::JSValuePtr::equalSlowCase):
13619 (JSC::JSValuePtr::strictEqualSlowCase):
13621 (JSC::JSValuePtr::equal):
13622 (JSC::JSValuePtr::equalSlowCaseInline):
13623 (JSC::JSValuePtr::strictEqual):
13624 (JSC::JSValuePtr::strictEqualSlowCaseInline):
13626 (JSC::gcProtect):
13627 (JSC::gcUnprotect):
13629 (JSC::stringProtoFuncCharAt):
13630 (JSC::stringProtoFuncCharCodeAt):
13632 (JSC::Structure::createCachedPrototypeChain):
13636 Since date time functions have moved here, now the wx port JSC
13672 (JSC::SmallStringsStorage::rep):
13673 (JSC::SmallStringsStorage::SmallStringsStorage):
13674 (JSC::SmallStrings::SmallStrings):
13675 (JSC::SmallStrings::mark):
13681 (JSC::initializeStaticBaseString):
13682 (JSC::initializeUString):
13683 (JSC::UString::Rep::create):
13684 (JSC::UString::Rep::destroy):
13685 (JSC::UString::Rep::checkConsistency):
13686 (JSC::expandCapacity):
13687 (JSC::UString::expandPreCapacity):
13688 (JSC::concatenate):
13689 (JSC::UString::append):
13690 (JSC::UString::operator=):
13692 (JSC::UString::Rep::baseIsSelf):
13693 (JSC::UString::Rep::setBaseString):
13694 (JSC::UString::Rep::baseString):
13695 (JSC::UString::Rep::):
13696 (JSC::UString::Rep::null):
13697 (JSC::UString::Rep::empty):
13698 (JSC::UString::Rep::data):
13699 (JSC::UString::cost):
13715 (JSC::formatLocaleDate): Changed the Mac version of this function to take
13719 (JSC::dateProtoFuncToLocaleString): Changed to call the new unified
13721 (JSC::dateProtoFuncToLocaleDateString): Ditto.
13722 (JSC::dateProtoFuncToLocaleTimeString): Ditto.
13725 (JSC::JSNotAnObject::toObject): Use the new ASSERT_UNUSED instead of the
13729 (JSC::RegExp::RegExp): Changed to only use UNUSED_PARAM when the parameter
13745 (JSC::Interpreter::cti_op_get_by_val):
13756 (JSC::Interpreter::cti_op_get_by_val):
13757 (JSC::Interpreter::cti_op_get_by_val_byte_array):
13758 (JSC::Interpreter::cti_op_put_by_val):
13759 (JSC::Interpreter::cti_op_put_by_val_byte_array):
13770 (JSC::Interpreter::cti_op_get_by_val):
13786 (JSC::Interpreter::cti_op_get_by_val):
13787 (JSC::Interpreter::cti_op_get_by_val_byte_array):
13788 (JSC::Interpreter::cti_op_put_by_val):
13789 (JSC::Interpreter::cti_op_put_by_val_byte_array):
13820 …(JSC::getCurrentUTCTimeWithMicroseconds): This function had another implementation of currentTime(…
13843 (JSC::asCell):
13844 (JSC::JSValuePtr::asCell):
13845 (JSC::JSValuePtr::isNumber):
13846 (JSC::JSValuePtr::isString):
13847 (JSC::JSValuePtr::isGetterSetter):
13848 (JSC::JSValuePtr::isObject):
13849 (JSC::JSValuePtr::getNumber):
13850 (JSC::JSValuePtr::getString):
13851 (JSC::JSValuePtr::getObject):
13852 (JSC::JSValuePtr::getCallData):
13853 (JSC::JSValuePtr::getConstructData):
13854 (JSC::JSValuePtr::getUInt32):
13855 (JSC::JSValuePtr::getTruncatedInt32):
13856 (JSC::JSValuePtr::getTruncatedUInt32):
13857 (JSC::JSValuePtr::mark):
13858 (JSC::JSValuePtr::marked):
13859 (JSC::JSValuePtr::toPrimitive):
13860 (JSC::JSValuePtr::getPrimitiveNumber):
13861 (JSC::JSValuePtr::toBoolean):
13862 (JSC::JSValuePtr::toNumber):
13863 (JSC::JSValuePtr::toString):
13864 (JSC::JSValuePtr::toObject):
13865 (JSC::JSValuePtr::toThisObject):
13866 (JSC::JSValuePtr::needsThisConversion):
13867 (JSC::JSValuePtr::toThisString):
13868 (JSC::JSValuePtr::getJSNumber):
13870 (JSC::JSValuePtr::isUndefined):
13871 (JSC::JSValuePtr::isNull):
13872 (JSC::JSValuePtr::isUndefinedOrNull):
13873 (JSC::JSValuePtr::isBoolean):
13874 (JSC::JSValuePtr::getBoolean):
13875 (JSC::JSValuePtr::toInt32):
13876 (JSC::JSValuePtr::toUInt32):
13878 (JSC::JSValuePtr::uncheckedGetNumber):
13879 (JSC::JSValuePtr::toJSNumber):
13881 (JSC::JSValuePtr::isObject):
13882 (JSC::JSValuePtr::get):
13883 (JSC::JSValuePtr::put):
13885 (JSC::JSValuePtr::toThisJSString):
13887 (JSC::JSValuePtr::toInteger):
13888 (JSC::JSValuePtr::toIntegerPreserveNaN):
13889 (JSC::JSValuePtr::toInt32SlowCase):
13890 (JSC::JSValuePtr::toUInt32SlowCase):
13892 (JSC::JSValuePtr::makeImmediate):
13893 (JSC::JSValuePtr::immediateValue):
13894 (JSC::JSValuePtr::JSValuePtr):
13895 (JSC::JSValuePtr::operator->):
13896 (JSC::JSValuePtr::operator bool):
13897 (JSC::JSValuePtr::operator==):
13898 (JSC::JSValuePtr::operator!=):
13899 (JSC::JSValuePtr::encode):
13900 (JSC::JSValuePtr::decode):
13901 (JSC::JSValuePtr::toFloat):
13902 (JSC::JSValuePtr::asValue):
13903 (JSC::operator==):
13904 (JSC::operator!=):
13919 (JSC::JSGlobalData::create):
13941 (JSC::Identifier::add):
13942 (JSC::Identifier::addSlowCase):
13944 (JSC::initializeThreadingOnce):
13950 (JSC::JSGlobalData::create):
13952 (JSC::PropertyNameArray::add):
13954 (JSC::initializeStaticBaseString):
13955 (JSC::initializeUString):
13956 (JSC::UString::Rep::create):
13957 (JSC::UString::Rep::createFromUTF8):
13958 (JSC::createRep):
13959 (JSC::UString::UString):
13960 (JSC::concatenate):
13961 (JSC::UString::operator=):
13962 (JSC::UString::makeNull):
13963 (JSC::UString::nullRep):
13965 (JSC::UString::Rep::identifierTable):
13966 (JSC::UString::Rep::setIdentifierTable):
13967 (JSC::UString::Rep::isStatic):
13968 (JSC::UString::Rep::setStatic):
13969 (JSC::UString::Rep::):
13970 (JSC::UString::Rep::null):
13971 (JSC::UString::Rep::empty):
13972 (JSC::UString::isNull):
13973 (JSC::UString::null):
13974 (JSC::UString::UString):
14005 (JSC::MacroAssembler::not32):
14006 (JSC::MacroAssembler::orPtr):
14007 (JSC::MacroAssembler::zeroExtend32ToPtr):
14008 (JSC::MacroAssembler::jaePtr):
14009 (JSC::MacroAssembler::jbPtr):
14010 (JSC::MacroAssembler::jnzPtr):
14011 (JSC::MacroAssembler::jzPtr):
14013 (JSC::X86Assembler::):
14014 (JSC::X86Assembler::notl_r):
14015 (JSC::X86Assembler::testq_i32r):
14017 (JSC::JIT::privateCompileMainPass):
14018 (JSC::JIT::privateCompileSlowCases):
14019 (JSC::JIT::privateCompileCTIMachineTrampolines):
14022 (JSC::JIT::compileFastArith_op_lshift):
14023 (JSC::JIT::compileFastArith_op_rshift):
14024 (JSC::JIT::compileFastArith_op_bitand):
14025 (JSC::JIT::compileFastArithSlow_op_bitand):
14026 (JSC::JIT::compileFastArith_op_mod):
14027 (JSC::JIT::compileFastArithSlow_op_mod):
14028 (JSC::JIT::compileFastArith_op_add):
14029 (JSC::JIT::compileFastArith_op_mul):
14030 (JSC::JIT::compileFastArith_op_post_inc):
14031 (JSC::JIT::compileFastArith_op_post_dec):
14032 (JSC::JIT::compileFastArith_op_pre_inc):
14033 (JSC::JIT::compileFastArith_op_pre_dec):
14034 (JSC::JIT::putDoubleResultToJSNumberCellOrJSImmediate):
14035 (JSC::JIT::compileBinaryArithOp):
14037 (JSC::JIT::compileOpCallSlowCase):
14039 (JSC::JIT::emitJumpIfJSCell):
14040 (JSC::JIT::emitJumpIfNotJSCell):
14041 (JSC::JIT::emitJumpIfImmNum):
14042 (JSC::JIT::emitJumpSlowCaseIfNotImmNum):
14043 (JSC::JIT::emitJumpSlowCaseIfNotImmNums):
14044 (JSC::JIT::emitFastArithDeTagImmediate):
14045 (JSC::JIT::emitFastArithDeTagImmediateJumpIfZero):
14046 (JSC::JIT::emitFastArithReTagImmediate):
14047 (JSC::JIT::emitFastArithImmToInt):
14048 (JSC::JIT::emitFastArithIntToImmNoCheck):
14049 (JSC::JIT::emitTagAsBoolImmediate):
14051 (JSC::resizePropertyStorage):
14052 (JSC::JIT::privateCompilePutByIdTransition):
14053 (JSC::JIT::privateCompilePatchGetArrayLength):
14054 (JSC::JIT::privateCompileGetByIdSelf):
14055 (JSC::JIT::privateCompileGetByIdProto):
14056 (JSC::JIT::privateCompileGetByIdChain):
14057 (JSC::JIT::privateCompilePutByIdReplace):
14059 (JSC::JSImmediate::isNumber):
14060 (JSC::JSImmediate::isPositiveNumber):
14061 (JSC::JSImmediate::areBothImmediateNumbers):
14062 (JSC::JSImmediate::xorImmediateNumbers):
14063 (JSC::JSImmediate::rightShiftImmediateNumbers):
14064 (JSC::JSImmediate::canDoFastAdditiveOperations):
14065 (JSC::JSImmediate::addImmediateNumbers):
14066 (JSC::JSImmediate::subImmediateNumbers):
14067 (JSC::JSImmediate::makeInt):
14068 (JSC::JSImmediate::toBoolean):
14096 (JSC::CodeBlock::dump):
14097 (JSC::CodeBlock::reparseForExceptionInfoIfNecessary):
14098 (JSC::CodeBlock::hasGlobalResolveInstructionAtBytecodeOffset):
14099 (JSC::CodeBlock::hasGlobalResolveInfoAtBytecodeOffset):
14101 (JSC::JITCodeRef::JITCodeRef):
14102 (JSC::GlobalResolveInfo::GlobalResolveInfo):
14103 (JSC::CodeBlock::getBytecodeIndex):
14104 (JSC::CodeBlock::addGlobalResolveInstruction):
14105 (JSC::CodeBlock::addGlobalResolveInfo):
14106 (JSC::CodeBlock::addFunctionRegisterInfo):
14107 (JSC::CodeBlock::hasExceptionInfo):
14108 (JSC::CodeBlock::pcVector):
14109 (JSC::EvalCodeBlock::EvalCodeBlock):
14110 (JSC::EvalCodeBlock::baseScopeDepth):
14113 (JSC::BytecodeGenerator::BytecodeGenerator):
14114 (JSC::BytecodeGenerator::emitResolve):
14115 (JSC::BytecodeGenerator::emitGetScopedVar):
14117 (JSC::BytecodeGenerator::setRegeneratingForExceptionInfo):
14119 (JSC::bytecodeOffsetForPC):
14120 (JSC::Interpreter::unwindCallFrame):
14121 (JSC::Interpreter::privateExecute):
14122 (JSC::Interpreter::retrieveLastCaller):
14123 (JSC::Interpreter::cti_op_instanceof):
14124 (JSC::Interpreter::cti_op_call_NotJSFunction):
14125 (JSC::Interpreter::cti_op_resolve):
14126 (JSC::Interpreter::cti_op_construct_NotJSConstruct):
14127 (JSC::Interpreter::cti_op_resolve_func):
14128 (JSC::Interpreter::cti_op_resolve_skip):
14129 (JSC::Interpreter::cti_op_resolve_global):
14130 (JSC::Interpreter::cti_op_resolve_with_base):
14131 (JSC::Interpreter::cti_op_throw):
14132 (JSC::Interpreter::cti_op_in):
14133 (JSC::Interpreter::cti_vm_throw):
14135 (JSC::JIT::privateCompile):
14137 (JSC::EvalNode::generateBytecode):
14138 (JSC::EvalNode::bytecodeForExceptionInfoReparse):
14139 (JSC::FunctionBodyNode::bytecodeForExceptionInfoReparse):
14168 (JSC::currentThreadStackBase): Use PLATFORM(NETBSD) to enter the
14190 (JSC::CodeBlock::dump): Update op_get_global_var to account for the padding.
14191 (JSC::CodeBlock::dumpStatistics): Add more statistic dumping.
14192 (JSC::CodeBlock::CodeBlock): Initialize m_exceptionInfo.
14193 (JSC::CodeBlock::reparseForExceptionInfoIfNecessary): Re-parses the CodeBlocks
14195 (JSC::CodeBlock::lineNumberForBytecodeOffset): Creates the exception info on demand.
14196 (JSC::CodeBlock::expressionRangeForBytecodeOffset): Ditto.
14197 (JSC::CodeBlock::getByIdExceptionInfoForBytecodeOffset): Ditto.
14199 … (JSC::CodeBlock::numberOfExceptionHandlers): Updated to account for m_exceptionInfo indirection.
14200 (JSC::CodeBlock::addExceptionHandler): Ditto.
14201 (JSC::CodeBlock::exceptionHandler): Ditto.
14202 (JSC::CodeBlock::clearExceptionInfo): Ditto.
14203 (JSC::CodeBlock::addExpressionInfo): Ditto.
14204 (JSC::CodeBlock::addGetByIdExceptionInfo): Ditto.
14205 (JSC::CodeBlock::numberOfLineInfos): Ditto.
14206 (JSC::CodeBlock::addLineInfo): Ditto.
14207 (JSC::CodeBlock::lastLineInfo): Ditto.
14212 (JSC::SamplingTool::dump): Add comment indicating why it is okay not to pass a CallFrame.
14215 …(JSC::BytecodeGenerator::generate): Clear the exception info after generation for Function and Eval
14217 … (JSC::BytecodeGenerator::BytecodeGenerator): Initialize m_regeneratingForExceptionInfo to false.
14218 (JSC::BytecodeGenerator::emitGetScopedVar): Pad op_get_global_var with 2 nops.
14220 (JSC::BytecodeGenerator::setRegeneratingForExcpeptionInfo): Added.
14223 (JSC::Interpreter::throwException): Pass the CallFrame to exception info accessors.
14224 (JSC::Interpreter::privateExecute): Ditto.
14225 (JSC::Interpreter::retrieveLastCaller): Ditto.
14226 (JSC::Interpreter::cti_op_new_error): Ditto.
14229 … (JSC::JIT::privateCompileMainPass): Pass the current bytecode offset instead of hard coding the
14233 (JSC::ProgramNode::emitBytecode): Moved.
14234 (JSC::ProgramNode::generateBytecode): Moved.
14235 (JSC::EvalNode::create): Moved.
14236 (JSC::EvalNode::bytecodeForExceptionInfoReparse): Added.
14237 (JSC::FunctionBodyNode::generateBytecode): Rename reparse to reparseInPlace.
14238 (JSC::FunctionBodyNode::bytecodeForExceptionInfoReparse): Addded.
14241 (JSC::ScopeNode::features): Added getter.
14243 (JSC::Parser::reparseInPlace): Renamed from reparse.
14245 (JSC::Parser::reparse): Added. Re-parses the passed in Node into
14248 (JSC::createUndefinedVariableError): Pass along CallFrame.
14249 (JSC::createInvalidParamError): Ditto.
14250 (JSC::createNotAConstructorError): Ditto.
14251 (JSC::createNotAFunctionError): Ditto.
14252 (JSC::createNotAnObjectError): Ditto.
14275 (JSC::BytecodeGenerator::emitLoad):
14290 (JSC::RegisterFile::~RegisterFile):
14292 (JSC::RegisterFile::RegisterFile):
14293 (JSC::RegisterFile::grow):
14357 (JSC::JSCallbackConstructor::createStructure):
14359 (JSC::JSCallbackFunction::call):
14361 (JSC::JSCallbackFunction::createStructure):
14363 (JSC::JSCallbackObject::createStructure):
14365 (JSC::::asCallbackObject):
14366 (JSC::::put):
14367 (JSC::::hasInstance):
14368 (JSC::::call):
14369 (JSC::::staticValueGetter):
14370 (JSC::::staticFunctionGetter):
14371 (JSC::::callbackGetter):
14400 (JSC::valueToSourceString):
14401 (JSC::constantName):
14402 (JSC::CodeBlock::dump):
14404 (JSC::CodeBlock::getConstant):
14405 (JSC::CodeBlock::addUnexpectedConstant):
14406 (JSC::CodeBlock::unexpectedConstant):
14408 (JSC::EvalCodeCache::get):
14410 (JSC::BytecodeGenerator::BytecodeGenerator):
14411 (JSC::BytecodeGenerator::addConstant):
14412 (JSC::BytecodeGenerator::addUnexpectedConstant):
14413 (JSC::BytecodeGenerator::emitLoad):
14414 (JSC::BytecodeGenerator::emitLoadJSV):
14415 (JSC::BytecodeGenerator::emitGetScopedVar):
14416 (JSC::BytecodeGenerator::emitPutScopedVar):
14417 (JSC::BytecodeGenerator::emitNewError):
14418 (JSC::keyForImmediateSwitch):
14420 (JSC::BytecodeGenerator::JSValueHashTraits::constructDeletedValue):
14421 (JSC::BytecodeGenerator::JSValueHashTraits::isDeletedValue):
14423 (JSC::DebuggerCallFrame::evaluate):
14425 (JSC::DebuggerCallFrame::DebuggerCallFrame):
14426 (JSC::DebuggerCallFrame::exception):
14428 (JSC::CallFrame::thisValue):
14430 (JSC::ExecState::setException):
14431 (JSC::ExecState::exception):
14432 (JSC::ExecState::exceptionSlot):
14433 (JSC::ExecState::hadException):
14435 (JSC::fastIsNumber):
14436 (JSC::fastToInt32):
14437 (JSC::fastToUInt32):
14438 (JSC::jsLess):
14439 (JSC::jsLessEq):
14440 (JSC::jsAddSlowCase):
14441 (JSC::jsAdd):
14442 (JSC::jsTypeStringForValue):
14443 (JSC::jsIsObjectType):
14444 (JSC::jsIsFunctionType):
14445 (JSC::Interpreter::resolve):
14446 (JSC::Interpreter::resolveSkip):
14447 (JSC::Interpreter::resolveGlobal):
14448 (JSC::inlineResolveBase):
14449 (JSC::Interpreter::resolveBase):
14450 (JSC::Interpreter::resolveBaseAndProperty):
14451 (JSC::Interpreter::resolveBaseAndFunc):
14452 (JSC::isNotObject):
14453 (JSC::Interpreter::callEval):
14454 (JSC::Interpreter::unwindCallFrame):
14455 (JSC::Interpreter::throwException):
14456 (JSC::Interpreter::execute):
14457 (JSC::Interpreter::checkTimeout):
14458 (JSC::Interpreter::createExceptionScope):
14459 (JSC::cachePrototypeChain):
14460 (JSC::Interpreter::tryCachePutByID):
14461 (JSC::countPrototypeChainEntriesAndCheckForProxies):
14462 (JSC::Interpreter::tryCacheGetByID):
14463 (JSC::Interpreter::privateExecute):
14464 (JSC::Interpreter::retrieveArguments):
14465 (JSC::Interpreter::retrieveCaller):
14466 (JSC::Interpreter::retrieveLastCaller):
14467 (JSC::Interpreter::tryCTICachePutByID):
14468 (JSC::Interpreter::tryCTICacheGetByID):
14469 (JSC::returnToThrowTrampoline):
14470 (JSC::Interpreter::cti_op_convert_this):
14471 (JSC::Interpreter::cti_op_add):
14472 (JSC::Interpreter::cti_op_pre_inc):
14473 (JSC::Interpreter::cti_op_loop_if_less):
14474 (JSC::Interpreter::cti_op_loop_if_lesseq):
14475 (JSC::Interpreter::cti_op_get_by_id_generic):
14476 (JSC::Interpreter::cti_op_get_by_id):
14477 (JSC::Interpreter::cti_op_get_by_id_second):
14478 (JSC::Interpreter::cti_op_get_by_id_self_fail):
14479 (JSC::Interpreter::cti_op_get_by_id_proto_list):
14480 (JSC::Interpreter::cti_op_get_by_id_proto_list_full):
14481 (JSC::Interpreter::cti_op_get_by_id_proto_fail):
14482 (JSC::Interpreter::cti_op_get_by_id_array_fail):
14483 (JSC::Interpreter::cti_op_get_by_id_string_fail):
14484 (JSC::Interpreter::cti_op_instanceof):
14485 (JSC::Interpreter::cti_op_del_by_id):
14486 (JSC::Interpreter::cti_op_mul):
14487 (JSC::Interpreter::cti_op_call_NotJSFunction):
14488 (JSC::Interpreter::cti_op_resolve):
14489 (JSC::Interpreter::cti_op_construct_NotJSConstruct):
14490 (JSC::Interpreter::cti_op_get_by_val):
14491 (JSC::Interpreter::cti_op_resolve_func):
14492 (JSC::Interpreter::cti_op_sub):
14493 (JSC::Interpreter::cti_op_put_by_val):
14494 (JSC::Interpreter::cti_op_put_by_val_array):
14495 (JSC::Interpreter::cti_op_lesseq):
14496 (JSC::Interpreter::cti_op_loop_if_true):
14497 (JSC::Interpreter::cti_op_negate):
14498 (JSC::Interpreter::cti_op_resolve_base):
14499 (JSC::Interpreter::cti_op_resolve_skip):
14500 (JSC::Interpreter::cti_op_resolve_global):
14501 (JSC::Interpreter::cti_op_div):
14502 (JSC::Interpreter::cti_op_pre_dec):
14503 (JSC::Interpreter::cti_op_jless):
14504 (JSC::Interpreter::cti_op_not):
14505 (JSC::Interpreter::cti_op_jtrue):
14506 (JSC::Interpreter::cti_op_post_inc):
14507 (JSC::Interpreter::cti_op_eq):
14508 (JSC::Interpreter::cti_op_lshift):
14509 (JSC::Interpreter::cti_op_bitand):
14510 (JSC::Interpreter::cti_op_rshift):
14511 (JSC::Interpreter::cti_op_bitnot):
14512 (JSC::Interpreter::cti_op_resolve_with_base):
14513 (JSC::Interpreter::cti_op_mod):
14514 (JSC::Interpreter::cti_op_less):
14515 (JSC::Interpreter::cti_op_neq):
14516 (JSC::Interpreter::cti_op_post_dec):
14517 (JSC::Interpreter::cti_op_urshift):
14518 (JSC::Interpreter::cti_op_bitxor):
14519 (JSC::Interpreter::cti_op_bitor):
14520 (JSC::Interpreter::cti_op_call_eval):
14521 (JSC::Interpreter::cti_op_throw):
14522 (JSC::Interpreter::cti_op_next_pname):
14523 (JSC::Interpreter::cti_op_typeof):
14524 (JSC::Interpreter::cti_op_is_undefined):
14525 (JSC::Interpreter::cti_op_is_boolean):
14526 (JSC::Interpreter::cti_op_is_number):
14527 (JSC::Interpreter::cti_op_is_string):
14528 (JSC::Interpreter::cti_op_is_object):
14529 (JSC::Interpreter::cti_op_is_function):
14530 (JSC::Interpreter::cti_op_stricteq):
14531 (JSC::Interpreter::cti_op_nstricteq):
14532 (JSC::Interpreter::cti_op_to_jsnumber):
14533 (JSC::Interpreter::cti_op_in):
14534 (JSC::Interpreter::cti_op_switch_imm):
14535 (JSC::Interpreter::cti_op_switch_char):
14536 (JSC::Interpreter::cti_op_switch_string):
14537 (JSC::Interpreter::cti_op_del_by_val):
14538 (JSC::Interpreter::cti_op_new_error):
14539 (JSC::Interpreter::cti_vm_throw):
14541 (JSC::Interpreter::isJSArray):
14542 (JSC::Interpreter::isJSString):
14544 (JSC::Register::):
14545 (JSC::Register::Register):
14546 (JSC::Register::jsValue):
14547 (JSC::Register::getJSValue):
14549 (JSC::):
14550 (JSC::JIT::compileOpStrictEq):
14551 (JSC::JIT::privateCompileMainPass):
14552 (JSC::JIT::privateCompileSlowCases):
14554 (JSC::):
14555 (JSC::JIT::execute):
14557 (JSC::JIT::compileFastArith_op_rshift):
14558 (JSC::JIT::compileFastArithSlow_op_rshift):
14560 (JSC::JIT::unlinkCall):
14561 (JSC::JIT::compileOpCallInitializeCallFrame):
14562 (JSC::JIT::compileOpCall):
14564 (JSC::JIT::emitGetVirtualRegister):
14565 (JSC::JIT::getConstantOperand):
14566 (JSC::JIT::isOperandConstant31BitImmediateInt):
14567 (JSC::JIT::emitPutJITStubArgFromVirtualRegister):
14568 (JSC::JIT::emitInitRegister):
14570 (JSC::resizePropertyStorage):
14571 (JSC::JIT::privateCompilePutByIdTransition):
14572 (JSC::JIT::patchGetByIdSelf):
14573 (JSC::JIT::patchPutByIdReplace):
14574 (JSC::JIT::privateCompileGetByIdSelf):
14575 (JSC::JIT::privateCompileGetByIdProto):
14576 (JSC::JIT::privateCompileGetByIdSelfList):
14577 (JSC::JIT::privateCompileGetByIdProtoList):
14578 (JSC::JIT::privateCompileGetByIdChainList):
14579 (JSC::JIT::privateCompileGetByIdChain):
14580 (JSC::JIT::privateCompilePutByIdReplace):
14591 (JSC::NullNode::emitBytecode):
14592 (JSC::ArrayNode::emitBytecode):
14593 (JSC::FunctionCallValueNode::emitBytecode):
14594 (JSC::FunctionCallResolveNode::emitBytecode):
14595 (JSC::VoidNode::emitBytecode):
14596 (JSC::ConstDeclNode::emitCodeSingle):
14597 (JSC::ReturnNode::emitBytecode):
14598 (JSC::processClauseList):
14599 (JSC::EvalNode::emitBytecode):
14600 (JSC::FunctionBodyNode::emitBytecode):
14601 (JSC::ProgramNode::emitBytecode):
14603 (JSC::ProfileGenerator::addParentForConsoleStart):
14605 (JSC::Profiler::willExecute):
14606 (JSC::Profiler::didExecute):
14607 (JSC::Profiler::createCallIdentifier):
14610 (JSC::ArgList::slowAppend):
14612 (JSC::ArgList::at):
14613 (JSC::ArgList::append):
14615 (JSC::Arguments::put):
14617 (JSC::Arguments::createStructure):
14618 (JSC::asArguments):
14620 (JSC::callArrayConstructor):
14622 (JSC::getProperty):
14623 (JSC::putProperty):
14624 (JSC::arrayProtoFuncToString):
14625 (JSC::arrayProtoFuncToLocaleString):
14626 (JSC::arrayProtoFuncJoin):
14627 (JSC::arrayProtoFuncConcat):
14628 (JSC::arrayProtoFuncPop):
14629 (JSC::arrayProtoFuncPush):
14630 (JSC::arrayProtoFuncReverse):
14631 (JSC::arrayProtoFuncShift):
14632 (JSC::arrayProtoFuncSlice):
14633 (JSC::arrayProtoFuncSort):
14634 (JSC::arrayProtoFuncSplice):
14635 (JSC::arrayProtoFuncUnShift):
14636 (JSC::arrayProtoFuncFilter):
14637 (JSC::arrayProtoFuncMap):
14638 (JSC::arrayProtoFuncEvery):
14639 (JSC::arrayProtoFuncForEach):
14640 (JSC::arrayProtoFuncSome):
14641 (JSC::arrayProtoFuncIndexOf):
14642 (JSC::arrayProtoFuncLastIndexOf):
14644 (JSC::callBooleanConstructor):
14645 (JSC::constructBooleanFromImmediateBoolean):
14648 (JSC::asBooleanObject):
14650 (JSC::booleanProtoFuncToString):
14651 (JSC::booleanProtoFuncValueOf):
14653 (JSC::call):
14656 (JSC::Heap::protect):
14657 (JSC::Heap::unprotect):
14658 (JSC::Heap::heap):
14659 (JSC::Heap::collect):
14662 (JSC::evaluate):
14664 (JSC::Completion::Completion):
14665 (JSC::Completion::value):
14666 (JSC::Completion::setValue):
14667 (JSC::Completion::isValueCompletion):
14669 (JSC::construct):
14672 (JSC::constructDate):
14673 (JSC::callDate):
14674 (JSC::dateParse):
14675 (JSC::dateNow):
14676 (JSC::dateUTC):
14678 (JSC::asDateInstance):
14680 (JSC::dateProtoFuncToString):
14681 (JSC::dateProtoFuncToUTCString):
14682 (JSC::dateProtoFuncToDateString):
14683 (JSC::dateProtoFuncToTimeString):
14684 (JSC::dateProtoFuncToLocaleString):
14685 (JSC::dateProtoFuncToLocaleDateString):
14686 (JSC::dateProtoFuncToLocaleTimeString):
14687 (JSC::dateProtoFuncValueOf):
14688 (JSC::dateProtoFuncGetTime):
14689 (JSC::dateProtoFuncGetFullYear):
14690 (JSC::dateProtoFuncGetUTCFullYear):
14691 (JSC::dateProtoFuncToGMTString):
14692 (JSC::dateProtoFuncGetMonth):
14693 (JSC::dateProtoFuncGetUTCMonth):
14694 (JSC::dateProtoFuncGetDate):
14695 (JSC::dateProtoFuncGetUTCDate):
14696 (JSC::dateProtoFuncGetDay):
14697 (JSC::dateProtoFuncGetUTCDay):
14698 (JSC::dateProtoFuncGetHours):
14699 (JSC::dateProtoFuncGetUTCHours):
14700 (JSC::dateProtoFuncGetMinutes):
14701 (JSC::dateProtoFuncGetUTCMinutes):
14702 (JSC::dateProtoFuncGetSeconds):
14703 (JSC::dateProtoFuncGetUTCSeconds):
14704 (JSC::dateProtoFuncGetMilliSeconds):
14705 (JSC::dateProtoFuncGetUTCMilliseconds):
14706 (JSC::dateProtoFuncGetTimezoneOffset):
14707 (JSC::dateProtoFuncSetTime):
14708 (JSC::setNewValueFromTimeArgs):
14709 (JSC::setNewValueFromDateArgs):
14710 (JSC::dateProtoFuncSetMilliSeconds):
14711 (JSC::dateProtoFuncSetUTCMilliseconds):
14712 (JSC::dateProtoFuncSetSeconds):
14713 (JSC::dateProtoFuncSetUTCSeconds):
14714 (JSC::dateProtoFuncSetMinutes):
14715 (JSC::dateProtoFuncSetUTCMinutes):
14716 (JSC::dateProtoFuncSetHours):
14717 (JSC::dateProtoFuncSetUTCHours):
14718 (JSC::dateProtoFuncSetDate):
14719 (JSC::dateProtoFuncSetUTCDate):
14720 (JSC::dateProtoFuncSetMonth):
14721 (JSC::dateProtoFuncSetUTCMonth):
14722 (JSC::dateProtoFuncSetFullYear):
14723 (JSC::dateProtoFuncSetUTCFullYear):
14724 (JSC::dateProtoFuncSetYear):
14725 (JSC::dateProtoFuncGetYear):
14727 (JSC::DatePrototype::createStructure):
14729 (JSC::callErrorConstructor):
14731 (JSC::errorProtoFuncToString):
14733 (JSC::createInterruptedExecutionException):
14734 (JSC::createError):
14735 (JSC::createStackOverflowError):
14736 (JSC::createUndefinedVariableError):
14737 (JSC::createErrorMessage):
14738 (JSC::createInvalidParamError):
14739 (JSC::createNotAConstructorError):
14740 (JSC::createNotAFunctionError):
14743 (JSC::callFunctionConstructor):
14745 (JSC::callFunctionPrototype):
14746 (JSC::functionProtoFuncToString):
14747 (JSC::functionProtoFuncApply):
14748 (JSC::functionProtoFuncCall):
14750 (JSC::FunctionPrototype::createStructure):
14752 (JSC::GetterSetter::toPrimitive):
14753 (JSC::GetterSetter::getPrimitiveNumber):
14755 (JSC::asGetterSetter):
14758 (JSC::InternalFunction::createStructure):
14759 (JSC::asInternalFunction):
14761 (JSC::JSActivation::getOwnPropertySlot):
14762 (JSC::JSActivation::put):
14763 (JSC::JSActivation::putWithAttributes):
14764 (JSC::JSActivation::argumentsGetter):
14766 (JSC::JSActivation::createStructure):
14767 (JSC::asActivation):
14769 (JSC::storageSize):
14770 (JSC::JSArray::JSArray):
14771 (JSC::JSArray::getOwnPropertySlot):
14772 (JSC::JSArray::put):
14773 (JSC::JSArray::putSlowCase):
14774 (JSC::JSArray::deleteProperty):
14775 (JSC::JSArray::getPropertyNames):
14776 (JSC::JSArray::setLength):
14777 (JSC::JSArray::pop):
14778 (JSC::JSArray::push):
14779 (JSC::JSArray::mark):
14780 (JSC::JSArray::sort):
14781 (JSC::JSArray::compactForSorting):
14782 (JSC::JSArray::checkConsistency):
14783 (JSC::constructArray):
14785 (JSC::JSArray::getIndex):
14786 (JSC::JSArray::setIndex):
14787 (JSC::JSArray::createStructure):
14788 (JSC::asArray):
14790 (JSC::JSCell::put):
14791 (JSC::JSCell::getJSNumber):
14793 (JSC::asCell):
14794 (JSC::JSValue::asCell):
14795 (JSC::JSValue::toPrimitive):
14796 (JSC::JSValue::getPrimitiveNumber):
14797 (JSC::JSValue::getJSNumber):
14799 (JSC::JSFunction::call):
14800 (JSC::JSFunction::argumentsGetter):
14801 (JSC::JSFunction::callerGetter):
14802 (JSC::JSFunction::lengthGetter):
14803 (JSC::JSFunction::getOwnPropertySlot):
14804 (JSC::JSFunction::put):
14805 (JSC::JSFunction::construct):
14807 (JSC::JSFunction::createStructure):
14808 (JSC::asFunction):
14811 (JSC::markIfNeeded):
14812 (JSC::JSGlobalObject::put):
14813 (JSC::JSGlobalObject::putWithAttributes):
14814 (JSC::JSGlobalObject::reset):
14815 (JSC::JSGlobalObject::resetPrototype):
14817 (JSC::JSGlobalObject::createStructure):
14818 (JSC::JSGlobalObject::GlobalPropertyInfo::GlobalPropertyInfo):
14819 (JSC::asGlobalObject):
14820 (JSC::Structure::prototypeForLookup):
14822 (JSC::encode):
14823 (JSC::decode):
14824 (JSC::globalFuncEval):
14825 (JSC::globalFuncParseInt):
14826 (JSC::globalFuncParseFloat):
14827 (JSC::globalFuncIsNaN):
14828 (JSC::globalFuncIsFinite):
14829 (JSC::globalFuncDecodeURI):
14830 (JSC::globalFuncDecodeURIComponent):
14831 (JSC::globalFuncEncodeURI):
14832 (JSC::globalFuncEncodeURIComponent):
14833 (JSC::globalFuncEscape):
14834 (JSC::globalFuncUnescape):
14835 (JSC::globalFuncJSCPrint):
14838 (JSC::JSImmediate::toThisObject):
14839 (JSC::JSImmediate::toObject):
14840 (JSC::JSImmediate::prototype):
14841 (JSC::JSImmediate::toString):
14843 (JSC::JSImmediate::isImmediate):
14844 (JSC::JSImmediate::isNumber):
14845 (JSC::JSImmediate::isPositiveNumber):
14846 (JSC::JSImmediate::isBoolean):
14847 (JSC::JSImmediate::isUndefinedOrNull):
14848 (JSC::JSImmediate::isNegative):
14849 (JSC::JSImmediate::isEitherImmediate):
14850 (JSC::JSImmediate::isAnyImmediate):
14851 (JSC::JSImmediate::areBothImmediate):
14852 (JSC::JSImmediate::areBothImmediateNumbers):
14853 (JSC::JSImmediate::andImmediateNumbers):
14854 (JSC::JSImmediate::xorImmediateNumbers):
14855 (JSC::JSImmediate::orImmediateNumbers):
14856 (JSC::JSImmediate::rightShiftImmediateNumbers):
14857 (JSC::JSImmediate::canDoFastAdditiveOperations):
14858 (JSC::JSImmediate::addImmediateNumbers):
14859 (JSC::JSImmediate::subImmediateNumbers):
14860 (JSC::JSImmediate::incImmediateNumber):
14861 (JSC::JSImmediate::decImmediateNumber):
14862 (JSC::JSImmediate::makeValue):
14863 (JSC::JSImmediate::makeInt):
14864 (JSC::JSImmediate::makeBool):
14865 (JSC::JSImmediate::makeUndefined):
14866 (JSC::JSImmediate::makeNull):
14867 (JSC::JSImmediate::intValue):
14868 (JSC::JSImmediate::uintValue):
14869 (JSC::JSImmediate::boolValue):
14870 (JSC::JSImmediate::rawValue):
14871 (JSC::JSImmediate::trueImmediate):
14872 (JSC::JSImmediate::falseImmediate):
14873 (JSC::JSImmediate::undefinedImmediate):
14874 (JSC::JSImmediate::nullImmediate):
14875 (JSC::JSImmediate::zeroImmediate):
14876 (JSC::JSImmediate::oneImmediate):
14877 (JSC::JSImmediate::impossibleValue):
14878 (JSC::JSImmediate::toBoolean):
14879 (JSC::JSImmediate::getTruncatedUInt32):
14880 (JSC::JSImmediate::from):
14881 (JSC::JSImmediate::getTruncatedInt32):
14882 (JSC::JSImmediate::toDouble):
14883 (JSC::JSImmediate::getUInt32):
14884 (JSC::jsNull):
14885 (JSC::jsBoolean):
14886 (JSC::jsUndefined):
14887 (JSC::JSValue::isUndefined):
14888 (JSC::JSValue::isNull):
14889 (JSC::JSValue::isUndefinedOrNull):
14890 (JSC::JSValue::isBoolean):
14891 (JSC::JSValue::getBoolean):
14892 (JSC::JSValue::toInt32):
14893 (JSC::JSValue::toUInt32):
14894 (JSC::toInt32):
14895 (JSC::toUInt32):
14897 (JSC::JSNotAnObject::toPrimitive):
14898 (JSC::JSNotAnObject::getPrimitiveNumber):
14899 (JSC::JSNotAnObject::put):
14901 (JSC::JSNotAnObject::createStructure):
14903 (JSC::JSNumberCell::toPrimitive):
14904 (JSC::JSNumberCell::getPrimitiveNumber):
14905 (JSC::JSNumberCell::getJSNumber):
14906 (JSC::jsNumberCell):
14907 (JSC::jsNaN):
14909 (JSC::JSNumberCell::createStructure):
14910 (JSC::asNumberCell):
14911 (JSC::jsNumber):
14912 (JSC::JSValue::toJSNumber):
14914 (JSC::JSObject::mark):
14915 (JSC::JSObject::put):
14916 (JSC::JSObject::putWithAttributes):
14917 (JSC::callDefaultValueFunction):
14918 (JSC::JSObject::getPrimitiveNumber):
14919 (JSC::JSObject::defaultValue):
14920 (JSC::JSObject::defineGetter):
14921 (JSC::JSObject::defineSetter):
14922 (JSC::JSObject::lookupGetter):
14923 (JSC::JSObject::lookupSetter):
14924 (JSC::JSObject::hasInstance):
14925 (JSC::JSObject::toNumber):
14926 (JSC::JSObject::toString):
14927 (JSC::JSObject::fillGetterPropertySlot):
14929 (JSC::JSObject::getDirect):
14930 (JSC::JSObject::getDirectLocation):
14931 (JSC::JSObject::offsetForLocation):
14932 (JSC::JSObject::locationForOffset):
14933 (JSC::JSObject::getDirectOffset):
14934 (JSC::JSObject::putDirectOffset):
14935 (JSC::JSObject::createStructure):
14936 (JSC::asObject):
14937 (JSC::JSObject::prototype):
14938 (JSC::JSObject::setPrototype):
14939 (JSC::JSObject::inlineGetOwnPropertySlot):
14940 (JSC::JSObject::getOwnPropertySlotForWrite):
14941 (JSC::JSObject::getPropertySlot):
14942 (JSC::JSObject::get):
14943 (JSC::JSObject::putDirect):
14944 (JSC::JSObject::putDirectWithoutTransition):
14945 (JSC::JSObject::toPrimitive):
14946 (JSC::JSValue::get):
14947 (JSC::JSValue::put):
14948 (JSC::JSObject::allocatePropertyStorageInline):
14950 (JSC::JSPropertyNameIterator::toPrimitive):
14951 (JSC::JSPropertyNameIterator::getPrimitiveNumber):
14953 (JSC::JSPropertyNameIterator::create):
14954 (JSC::JSPropertyNameIterator::next):
14956 (JSC::JSStaticScopeObject::put):
14957 (JSC::JSStaticScopeObject::putWithAttributes):
14959 (JSC::JSStaticScopeObject::JSStaticScopeObject):
14960 (JSC::JSStaticScopeObject::createStructure):
14962 (JSC::JSString::toPrimitive):
14963 (JSC::JSString::getPrimitiveNumber):
14964 (JSC::JSString::getOwnPropertySlot):
14966 (JSC::JSString::createStructure):
14967 (JSC::asString):
14969 (JSC::JSValuePtr::makeImmediate):
14970 (JSC::JSValuePtr::immediateValue):
14971 (JSC::JSValuePtr::JSValuePtr):
14972 (JSC::JSValuePtr::operator->):
14973 (JSC::JSValuePtr::hasValue):
14974 (JSC::JSValuePtr::operator==):
14975 (JSC::JSValuePtr::operator!=):
14976 (JSC::JSValuePtr::encode):
14977 (JSC::JSValuePtr::decode):
14978 (JSC::JSValue::asValue):
14979 (JSC::noValue):
14980 (JSC::operator==):
14981 (JSC::operator!=):
14983 (JSC::JSVariableObject::symbolTablePut):
14984 (JSC::JSVariableObject::symbolTablePutWithAttributes):
14986 (JSC::JSWrapperObject::mark):
14988 (JSC::JSWrapperObject::internalValue):
14989 (JSC::JSWrapperObject::setInternalValue):
14991 (JSC::setUpStaticFunctionSlot):
14993 (JSC::lookupPut):
14995 (JSC::mathProtoFuncAbs):
14996 (JSC::mathProtoFuncACos):
14997 (JSC::mathProtoFuncASin):
14998 (JSC::mathProtoFuncATan):
14999 (JSC::mathProtoFuncATan2):
15000 (JSC::mathProtoFuncCeil):
15001 (JSC::mathProtoFuncCos):
15002 (JSC::mathProtoFuncExp):
15003 (JSC::mathProtoFuncFloor):
15004 (JSC::mathProtoFuncLog):
15005 (JSC::mathProtoFuncMax):
15006 (JSC::mathProtoFuncMin):
15007 (JSC::mathProtoFuncPow):
15008 (JSC::mathProtoFuncRandom):
15009 (JSC::mathProtoFuncRound):
15010 (JSC::mathProtoFuncSin):
15011 (JSC::mathProtoFuncSqrt):
15012 (JSC::mathProtoFuncTan):
15014 (JSC::MathObject::createStructure):
15016 (JSC::callNativeErrorConstructor):
15018 (JSC::numberConstructorNaNValue):
15019 (JSC::numberConstructorNegInfinity):
15020 (JSC::numberConstructorPosInfinity):
15021 (JSC::numberConstructorMaxValue):
15022 (JSC::numberConstructorMinValue):
15023 (JSC::callNumberConstructor):
15025 (JSC::NumberConstructor::createStructure):
15027 (JSC::NumberObject::getJSNumber):
15028 (JSC::constructNumberFromImmediateNumber):
15031 (JSC::numberProtoFuncToString):
15032 (JSC::numberProtoFuncToLocaleString):
15033 (JSC::numberProtoFuncValueOf):
15034 (JSC::numberProtoFuncToFixed):
15035 (JSC::numberProtoFuncToExponential):
15036 (JSC::numberProtoFuncToPrecision):
15038 (JSC::constructObject):
15039 (JSC::callObjectConstructor):
15041 (JSC::objectProtoFuncValueOf):
15042 (JSC::objectProtoFuncHasOwnProperty):
15043 (JSC::objectProtoFuncIsPrototypeOf):
15044 (JSC::objectProtoFuncDefineGetter):
15045 (JSC::objectProtoFuncDefineSetter):
15046 (JSC::objectProtoFuncLookupGetter):
15047 (JSC::objectProtoFuncLookupSetter):
15048 (JSC::objectProtoFuncPropertyIsEnumerable):
15049 (JSC::objectProtoFuncToLocaleString):
15050 (JSC::objectProtoFuncToString):
15053 (JSC::equal):
15054 (JSC::equalSlowCase):
15055 (JSC::strictEqual):
15056 (JSC::strictEqualSlowCase):
15057 (JSC::throwOutOfMemoryError):
15059 (JSC::equalSlowCaseInline):
15060 (JSC::strictEqualSlowCaseInline):
15062 (JSC::PropertySlot::functionGetter):
15064 (JSC::PropertySlot::PropertySlot):
15065 (JSC::PropertySlot::getValue):
15066 (JSC::PropertySlot::putValue):
15067 (JSC::PropertySlot::setValueSlot):
15068 (JSC::PropertySlot::setValue):
15069 (JSC::PropertySlot::setCustom):
15070 (JSC::PropertySlot::setCustomIndex):
15071 (JSC::PropertySlot::slotBase):
15072 (JSC::PropertySlot::setBase):
15073 (JSC::PropertySlot::):
15075 (JSC::gcProtect):
15076 (JSC::gcUnprotect):
15077 (JSC::ProtectedPtr::ProtectedPtr):
15078 (JSC::ProtectedPtr::operator JSValuePtr):
15079 (JSC::ProtectedJSValuePtr::ProtectedJSValuePtr):
15080 (JSC::ProtectedJSValuePtr::get):
15081 (JSC::ProtectedJSValuePtr::operator JSValuePtr):
15082 (JSC::ProtectedJSValuePtr::operator->):
15083 (JSC::::ProtectedPtr):
15084 (JSC::::~ProtectedPtr):
15085 (JSC::::operator):
15086 (JSC::ProtectedJSValuePtr::~ProtectedJSValuePtr):
15087 (JSC::ProtectedJSValuePtr::operator=):
15088 (JSC::operator==):
15089 (JSC::operator!=):
15091 (JSC::RegExpConstructor::getBackref):
15092 (JSC::RegExpConstructor::getLastParen):
15093 (JSC::RegExpConstructor::getLeftContext):
15094 (JSC::RegExpConstructor::getRightContext):
15095 (JSC::regExpConstructorDollar1):
15096 (JSC::regExpConstructorDollar2):
15097 (JSC::regExpConstructorDollar3):
15098 (JSC::regExpConstructorDollar4):
15099 (JSC::regExpConstructorDollar5):
15100 (JSC::regExpConstructorDollar6):
15101 (JSC::regExpConstructorDollar7):
15102 (JSC::regExpConstructorDollar8):
15103 (JSC::regExpConstructorDollar9):
15104 (JSC::regExpConstructorInput):
15105 (JSC::regExpConstructorMultiline):
15106 (JSC::regExpConstructorLastMatch):
15107 (JSC::regExpConstructorLastParen):
15108 (JSC::regExpConstructorLeftContext):
15109 (JSC::regExpConstructorRightContext):
15110 (JSC::RegExpConstructor::put):
15111 (JSC::setRegExpConstructorInput):
15112 (JSC::setRegExpConstructorMultiline):
15113 (JSC::constructRegExp):
15114 (JSC::callRegExpConstructor):
15116 (JSC::RegExpConstructor::createStructure):
15117 (JSC::asRegExpConstructor):
15119 (JSC::RegExpMatchesArray::put):
15121 (JSC::regExpObjectGlobal):
15122 (JSC::regExpObjectIgnoreCase):
15123 (JSC::regExpObjectMultiline):
15124 (JSC::regExpObjectSource):
15125 (JSC::regExpObjectLastIndex):
15126 (JSC::RegExpObject::put):
15127 (JSC::setRegExpObjectLastIndex):
15128 (JSC::RegExpObject::test):
15129 (JSC::RegExpObject::exec):
15130 (JSC::callRegExpObject):
15132 (JSC::RegExpObject::createStructure):
15133 (JSC::asRegExpObject):
15135 (JSC::regExpProtoFuncTest):
15136 (JSC::regExpProtoFuncExec):
15137 (JSC::regExpProtoFuncCompile):
15138 (JSC::regExpProtoFuncToString):
15140 (JSC::stringFromCharCodeSlowCase):
15141 (JSC::stringFromCharCode):
15142 (JSC::callStringConstructor):
15144 (JSC::StringObject::put):
15146 (JSC::StringObject::createStructure):
15147 (JSC::asStringObject):
15149 (JSC::StringObjectThatMasqueradesAsUndefined::createStructure):
15151 (JSC::stringProtoFuncReplace):
15152 (JSC::stringProtoFuncToString):
15153 (JSC::stringProtoFuncCharAt):
15154 (JSC::stringProtoFuncCharCodeAt):
15155 (JSC::stringProtoFuncConcat):
15156 (JSC::stringProtoFuncIndexOf):
15157 (JSC::stringProtoFuncLastIndexOf):
15158 (JSC::stringProtoFuncMatch):
15159 (JSC::stringProtoFuncSearch):
15160 (JSC::stringProtoFuncSlice):
15161 (JSC::stringProtoFuncSplit):
15162 (JSC::stringProtoFuncSubstr):
15163 (JSC::stringProtoFuncSubstring):
15164 (JSC::stringProtoFuncToLowerCase):
15165 (JSC::stringProtoFuncToUpperCase):
15166 (JSC::stringProtoFuncLocaleCompare):
15167 (JSC::stringProtoFuncBig):
15168 (JSC::stringProtoFuncSmall):
15169 (JSC::stringProtoFuncBlink):
15170 (JSC::stringProtoFuncBold):
15171 (JSC::stringProtoFuncFixed):
15172 (JSC::stringProtoFuncItalics):
15173 (JSC::stringProtoFuncStrike):
15174 (JSC::stringProtoFuncSub):
15175 (JSC::stringProtoFuncSup):
15176 (JSC::stringProtoFuncFontcolor):
15177 (JSC::stringProtoFuncFontsize):
15178 (JSC::stringProtoFuncAnchor):
15179 (JSC::stringProtoFuncLink):
15181 (JSC::Structure::Structure):
15182 (JSC::Structure::changePrototypeTransition):
15183 (JSC::Structure::createCachedPrototypeChain):
15185 (JSC::Structure::create):
15186 (JSC::Structure::setPrototypeWithoutTransition):
15187 (JSC::Structure::storedPrototype):
15205 (JSC::Interpreter::throwException):
15242 (JSC::Interpreter::Interpreter):
15244 (JSC::ByteArray::create):
15256 and JSByteArray wrapper to JSC. We can then do vptr comparisons to
15269 (JSC::Interpreter::Interpreter):
15270 (JSC::Interpreter::privateExecute):
15271 (JSC::Interpreter::cti_op_get_by_val):
15272 (JSC::Interpreter::cti_op_put_by_val):
15274 (JSC::Interpreter::isJSByteArray):
15276 (JSC::ByteArray::create):
15278 (JSC::ByteArray::length):
15279 (JSC::ByteArray::set):
15280 (JSC::ByteArray::get):
15281 (JSC::ByteArray::data):
15282 (JSC::ByteArray::ByteArray):
15284 (JSC::):
15285 (JSC::JSByteArray::JSByteArray):
15286 (JSC::JSByteArray::createStructure):
15287 (JSC::JSByteArray::getOwnPropertySlot):
15288 (JSC::JSByteArray::put):
15289 (JSC::JSByteArray::getPropertyNames):
15291 (JSC::JSByteArray::canAccessIndex):
15292 (JSC::JSByteArray::getIndex):
15293 (JSC::JSByteArray::setIndex):
15294 (JSC::JSByteArray::classInfo):
15295 (JSC::JSByteArray::length):
15296 (JSC::JSByteArray::):
15297 (JSC::JSByteArray::JSByteArray):
15298 (JSC::asByteArray):
15328 (JSC::ExecutablePool::systemRelease):
15330 (JSC::Heap::destroy):
15331 (JSC::Heap::heapAllocate):
15333 (JSC::JSNotAnObject::toPrimitive):
15334 (JSC::JSNotAnObject::getPrimitiveNumber):
15335 (JSC::JSNotAnObject::toBoolean):
15336 (JSC::JSNotAnObject::toNumber):
15337 (JSC::JSNotAnObject::toString):
15338 (JSC::JSNotAnObject::getOwnPropertySlot):
15339 (JSC::JSNotAnObject::put):
15340 (JSC::JSNotAnObject::deleteProperty):
15341 (JSC::JSNotAnObject::getPropertyNames):
15353 (JSC::Structure::Structure): Remove m_transitionCount
15354 …(JSC::Structure::addPropertyTransitionToExistingStructure): No need to wait until after the assign…
15355 …(JSC::Structure::addPropertyTransition): Use method for transitionCount instead of m_transitionCou…
15356 … (JSC::Structure::changePrototypeTransition): Remove line that maintains the m_transitionCount.
15357 (JSC::Structure::getterSetterTransition): Remove line that maintains the m_transitionCount.
15361 (JSC::Structure::transitionCount): method to replace the data member
15381 (JSC::PC::PC):
15382 (JSC::getNativePCOffset):
15383 (JSC::CodeBlock::getBytecodeIndex):
15385 (JSC::JIT::privateCompile):
15406 (JSC::BytecodeGenerator::BytecodeGenerator):
15407 (JSC::BytecodeGenerator::emitCatch):
15410 (JSC::depth):
15412 (JSC::ScopeChain::localDepth):
15414 (JSC::ScopeChainNode::deref):
15415 (JSC::ScopeChainNode::ref):
15474 (JSC::Lexer::lex):
15476 (JSC::Parser::parse):
15507 (JSC::JSGlobalObject::reset): Renamed "kjsprint" debug function
15511 (JSC::globalFuncJSCPrint): Renamed from globalFuncKJSPrint().
15525 reference in comment to "JSC".
15529 (JSC::WREC::CharacterClassConstructor::put):
15530 (JSC::WREC::CharacterClassConstructor::flush):
15547 Remove declaration for JSC::Identifier::initializeIdentifierThreading()
15552 (JSC::Identifier::initializeIdentifierThreading): Removed
15566 (JSC::substituteBackreferences): Added a null check here so we won't try to handle $$-$9
15569 (JSC::stringProtoFuncReplace): Added a call to substituteBackreferences.
15589 (JSC::MacroAssembler::addPtr):
15590 (JSC::MacroAssembler::orPtr):
15591 (JSC::MacroAssembler::or32):
15592 (JSC::MacroAssembler::rshiftPtr):
15593 (JSC::MacroAssembler::rshift32):
15594 (JSC::MacroAssembler::subPtr):
15595 (JSC::MacroAssembler::xorPtr):
15596 (JSC::MacroAssembler::xor32):
15597 (JSC::MacroAssembler::move):
15598 (JSC::MacroAssembler::compareImm64ForBranch):
15599 (JSC::MacroAssembler::compareImm64ForBranchEquality):
15600 (JSC::MacroAssembler::jePtr):
15601 (JSC::MacroAssembler::jgePtr):
15602 (JSC::MacroAssembler::jlPtr):
15603 (JSC::MacroAssembler::jlePtr):
15604 (JSC::MacroAssembler::jnePtr):
15605 (JSC::MacroAssembler::jnzSubPtr):
15606 (JSC::MacroAssembler::joAddPtr):
15607 (JSC::MacroAssembler::jzSubPtr):
15609 (JSC::X86Assembler::addq_rr):
15610 (JSC::X86Assembler::orq_ir):
15611 (JSC::X86Assembler::subq_ir):
15612 (JSC::X86Assembler::xorq_rr):
15613 (JSC::X86Assembler::sarq_CLr):
15614 (JSC::X86Assembler::sarq_i8r):
15615 (JSC::X86Assembler::cmpq_ir):
15617 (JSC::JIT::compileOpStrictEq):
15618 (JSC::JIT::privateCompileMainPass):
15619 (JSC::JIT::privateCompileSlowCases):
15620 (JSC::JIT::privateCompileCTIMachineTrampolines):
15623 (JSC::JIT::compileFastArith_op_lshift):
15624 (JSC::JIT::compileFastArithSlow_op_lshift):
15625 (JSC::JIT::compileFastArith_op_rshift):
15626 (JSC::JIT::compileFastArithSlow_op_rshift):
15627 (JSC::JIT::compileFastArith_op_bitand):
15628 (JSC::JIT::compileFastArithSlow_op_bitand):
15629 (JSC::JIT::compileFastArith_op_mod):
15630 (JSC::JIT::compileFastArithSlow_op_mod):
15631 (JSC::JIT::compileFastArith_op_add):
15632 (JSC::JIT::compileFastArithSlow_op_add):
15633 (JSC::JIT::compileFastArith_op_mul):
15634 (JSC::JIT::compileFastArithSlow_op_mul):
15635 (JSC::JIT::compileFastArith_op_post_inc):
15636 (JSC::JIT::compileFastArithSlow_op_post_inc):
15637 (JSC::JIT::compileFastArith_op_post_dec):
15638 (JSC::JIT::compileFastArithSlow_op_post_dec):
15639 (JSC::JIT::compileFastArith_op_pre_inc):
15640 (JSC::JIT::compileFastArithSlow_op_pre_inc):
15641 (JSC::JIT::compileFastArith_op_pre_dec):
15642 (JSC::JIT::compileFastArithSlow_op_pre_dec):
15643 (JSC::JIT::compileBinaryArithOp):
15645 (JSC::JIT::getConstantOperand):
15646 (JSC::JIT::getConstantOperandImmediateInt):
15647 (JSC::JIT::isOperandConstantImmediateInt):
15648 (JSC::JIT::isOperandConstant31BitImmediateInt):
15649 (JSC::JIT::emitFastArithDeTagImmediate):
15650 (JSC::JIT::emitFastArithDeTagImmediateJumpIfZero):
15651 (JSC::JIT::emitFastArithReTagImmediate):
15652 (JSC::JIT::emitFastArithImmToInt):
15653 (JSC::JIT::emitFastArithIntToImmNoCheck):
15655 (JSC::JSImmediate::isPositiveNumber):
15656 (JSC::JSImmediate::isNegative):
15657 (JSC::JSImmediate::rightShiftImmediateNumbers):
15658 (JSC::JSImmediate::canDoFastAdditiveOperations):
15659 (JSC::JSImmediate::makeValue):
15660 (JSC::JSImmediate::makeInt):
15661 (JSC::JSImmediate::makeBool):
15662 (JSC::JSImmediate::intValue):
15663 (JSC::JSImmediate::rawValue):
15664 (JSC::JSImmediate::toBoolean):
15665 (JSC::JSImmediate::from):
15682 (JSC::TryNode::emitBytecode):
15684 (JSC::TryNode::):
15702 (JSC::EvalFunctionCallNode::emitBytecode):
15713 (JSC::Interpreter::resolveGlobal): Do not cache lookup if the global
15715 (JSC::Interpreter::cti_op_resolve_global): Do not cache lookup if the
15723 … <rdar://problem/6469742> Crash in JSC::TypeInfo::hasStandardGetOwnPropertySlot() running jsfunfuzz
15732 (JSC::BytecodeGenerator::emitPushScope):
15734 (JSC::Interpreter::privateExecute):
15735 (JSC::Interpreter::cti_op_push_scope):
15738 (JSC::JIT::privateCompileMainPass):
15740 (JSC::WithNode::emitBytecode):
15771 (JSC::Lexer::Lexer): Initialize m_isReparsing to false.
15772 (JSC::Lexer::lex): Do not perform automatic semicolon insertion in the Lexer if
15774 (JSC::Lexer::clear): Set m_isReparsing to false.
15776 (JSC::Lexer::setIsReparsing): Added.
15778 (JSC::Parser::reparse): Call Lexer::setIsReparsing() to notify the Lexer of
15825 * Math.random in JSC. For this difference to show up you have to be looping on
15875 (JSC::Structure::addPropertyTransition):
15876 (JSC::Structure::changePrototypeTransition):
15877 (JSC::Structure::getterSetterTransition):
15878 (JSC::Structure::toDictionaryTransition):
15879 (JSC::Structure::fromDictionaryTransition):
15880 (JSC::Structure::copyPropertyTable):
15881 (JSC::Structure::put):
15882 (JSC::Structure::remove):
15883 (JSC::Structure::rehashPropertyMapHashTable):
15885 (JSC::Structure::propertyStorageSize):
15895 (JSC::JSFunction::~JSFunction):
15906 (JSC::BytecodeGenerator::emitNewArray): Add an assertion that the range
15908 (JSC::BytecodeGenerator::emitCall): Correct the relocation of registers
15914 (JSC::BytecodeGenerator::emitConstruct): Correct the relocation of
15991 (JSC::ExecutablePool::alloc):
15992 (JSC::ExecutablePool::roundUpAllocationSize):
15993 (JSC::ExecutablePool::ExecutablePool):
15994 (JSC::ExecutablePool::poolAllocate):
16003 (JSC::MacroAssembler::DataLabelPtr::patch):
16004 (JSC::MacroAssembler::DataLabel32::patch):
16005 (JSC::MacroAssembler::Jump::patch):
16006 (JSC::MacroAssembler::PatchBuffer::PatchBuffer):
16007 (JSC::MacroAssembler::PatchBuffer::setPtr):
16008 (JSC::MacroAssembler::loadPtrWithAddressOffsetPatch):
16009 (JSC::MacroAssembler::storePtrWithAddressOffsetPatch):
16010 (JSC::MacroAssembler::storePtrWithPatch):
16011 (JSC::MacroAssembler::jnePtrWithPatch):
16013 (JSC::X86Assembler::patchAddress):
16014 (JSC::X86Assembler::patchImmediate):
16015 (JSC::X86Assembler::patchPointer):
16016 (JSC::X86Assembler::patchBranchOffset):
16018 (JSC::Interpreter::tryCTICachePutByID):
16019 (JSC::Interpreter::tryCTICacheGetByID):
16020 (JSC::Interpreter::cti_op_put_by_id):
16021 (JSC::Interpreter::cti_op_get_by_id):
16022 (JSC::Interpreter::cti_op_get_by_id_self_fail):
16023 (JSC::Interpreter::cti_op_get_by_id_proto_list):
16024 (JSC::Interpreter::cti_vm_dontLazyLinkCall):
16026 (JSC::ctiPatchCallByReturnAddress):
16027 (JSC::JIT::privateCompileMainPass):
16028 (JSC::JIT::privateCompile):
16029 (JSC::JIT::privateCompileCTIMachineTrampolines):
16032 (JSC::JIT::unlinkCall):
16033 (JSC::JIT::linkCall):
16034 (JSC::JIT::compileOpCall):
16036 (JSC::JIT::compileGetByIdHotPath):
16037 (JSC::JIT::compilePutByIdHotPath):
16038 (JSC::JIT::compileGetByIdSlowCase):
16039 (JSC::JIT::compilePutByIdSlowCase):
16040 (JSC::JIT::privateCompilePutByIdTransition):
16041 (JSC::JIT::patchGetByIdSelf):
16042 (JSC::JIT::patchPutByIdReplace):
16043 (JSC::JIT::privateCompilePatchGetArrayLength):
16044 (JSC::JIT::privateCompileGetByIdSelf):
16045 (JSC::JIT::privateCompileGetByIdProto):
16046 (JSC::JIT::privateCompileGetByIdSelfList):
16047 (JSC::JIT::privateCompileGetByIdProtoList):
16048 (JSC::JIT::privateCompileGetByIdChainList):
16049 (JSC::JIT::privateCompileGetByIdChain):
16050 (JSC::JIT::privateCompilePutByIdReplace):
16057 (JSC::JIT::compileOpCallSlowCase): Added a missing MacroAssembler::
16088 (JSC::MacroAssembler::DataLabelPtr::repatch):
16089 (JSC::MacroAssembler::DataLabelPtr::operator X86Assembler::JmpDst):
16090 (JSC::MacroAssembler::DataLabel32::repatch):
16091 (JSC::MacroAssembler::RepatchBuffer::addressOf):
16092 (JSC::MacroAssembler::add32):
16093 (JSC::MacroAssembler::sub32):
16094 (JSC::MacroAssembler::loadPtrWithAddressOffsetRepatch):
16095 (JSC::MacroAssembler::storePtrWithAddressOffsetRepatch):
16096 (JSC::MacroAssembler::jePtr):
16097 (JSC::MacroAssembler::jnePtr):
16098 (JSC::MacroAssembler::jnePtrWithRepatch):
16099 (JSC::MacroAssembler::differenceBetween):
16101 (JSC::X86Assembler::addl_im):
16102 (JSC::X86Assembler::subl_im):
16103 (JSC::X86Assembler::cmpl_rm):
16104 (JSC::X86Assembler::movq_rm_disp32):
16105 (JSC::X86Assembler::movq_mr_disp32):
16106 (JSC::X86Assembler::repatchPointer):
16107 (JSC::X86Assembler::X86InstructionFormatter::oneByteOp64_disp32):
16109 (JSC::JIT::privateCompile):
16110 (JSC::JIT::privateCompileCTIMachineTrampolines):
16113 (JSC::JIT::unlinkCall):
16114 (JSC::JIT::linkCall):
16115 (JSC::JIT::compileOpCall):
16116 (JSC::JIT::compileOpCallSlowCase):
16118 (JSC::JIT::restoreArgumentReferenceForTrampoline):
16120 (JSC::JIT::compileGetByIdHotPath):
16121 (JSC::JIT::compileGetByIdSlowCase):
16122 (JSC::JIT::compilePutByIdHotPath):
16123 (JSC::JIT::compilePutByIdSlowCase):
16124 (JSC::resizePropertyStorage):
16125 (JSC::JIT::privateCompilePutByIdTransition):
16126 (JSC::JIT::privateCompileGetByIdProto):
16127 (JSC::JIT::privateCompileGetByIdProtoList):
16128 (JSC::JIT::privateCompileGetByIdChainList):
16129 (JSC::JIT::privateCompileGetByIdChain):
16139 (JSC::MacroAssembler::AbsoluteAddress::AbsoluteAddress):
16140 (JSC::MacroAssembler::DataLabelPtr::repatch):
16141 (JSC::MacroAssembler::DataLabel32::DataLabel32):
16142 (JSC::MacroAssembler::DataLabel32::repatch):
16143 (JSC::MacroAssembler::Label::operator X86Assembler::JmpDst):
16144 (JSC::MacroAssembler::Jump::repatch):
16145 (JSC::MacroAssembler::JumpList::empty):
16146 (JSC::MacroAssembler::RepatchBuffer::link):
16147 (JSC::MacroAssembler::add32):
16148 (JSC::MacroAssembler::and32):
16149 (JSC::MacroAssembler::sub32):
16150 (JSC::MacroAssembler::loadPtrWithAddressRepatch):
16151 (JSC::MacroAssembler::storePtrWithAddressRepatch):
16152 (JSC::MacroAssembler::push):
16153 (JSC::MacroAssembler::ja32):
16154 (JSC::MacroAssembler::jePtr):
16155 (JSC::MacroAssembler::jnePtr):
16156 (JSC::MacroAssembler::jnePtrWithRepatch):
16157 (JSC::MacroAssembler::align):
16158 (JSC::MacroAssembler::differenceBetween):
16160 (JSC::X86Assembler::movl_rm_disp32):
16161 (JSC::X86Assembler::movl_mr_disp32):
16162 (JSC::X86Assembler::X86InstructionFormatter::oneByteOp_disp32):
16163 (JSC::X86Assembler::X86InstructionFormatter::memoryModRM):
16165 (JSC::ctiRepatchCallByReturnAddress):
16166 (JSC::JIT::privateCompileMainPass):
16167 (JSC::JIT::privateCompile):
16168 (JSC::JIT::privateCompileCTIMachineTrampolines):
16171 (JSC::JIT::compileGetByIdHotPath):
16172 (JSC::JIT::compileGetByIdSlowCase):
16173 (JSC::JIT::compilePutByIdHotPath):
16174 (JSC::JIT::compilePutByIdSlowCase):
16175 (JSC::resizePropertyStorage):
16176 (JSC::JIT::privateCompilePutByIdTransition):
16177 (JSC::JIT::patchGetByIdSelf):
16178 (JSC::JIT::patchPutByIdReplace):
16179 (JSC::JIT::privateCompilePatchGetArrayLength):
16180 (JSC::JIT::privateCompileGetByIdSelf):
16181 (JSC::JIT::privateCompileGetByIdProto):
16182 (JSC::JIT::privateCompileGetByIdSelfList):
16183 (JSC::JIT::privateCompileGetByIdProtoList):
16184 (JSC::JIT::privateCompileGetByIdChainList):
16185 (JSC::JIT::privateCompileGetByIdChain):
16186 (JSC::JIT::privateCompilePutByIdReplace):
16221 (JSC::JIT::privateCompileMainPass):
16245 (JSC::MacroAssembler::addPtr):
16246 (JSC::MacroAssembler::andPtr):
16247 (JSC::MacroAssembler::orPtr):
16248 (JSC::MacroAssembler::or32):
16249 (JSC::MacroAssembler::xor32):
16250 (JSC::MacroAssembler::xorPtr):
16251 (JSC::MacroAssembler::signExtend32ToPtr):
16253 (JSC::X86Assembler::):
16254 (JSC::X86Assembler::andq_rr):
16255 (JSC::X86Assembler::andq_ir):
16256 (JSC::X86Assembler::orq_rr):
16257 (JSC::X86Assembler::xorq_ir):
16258 (JSC::X86Assembler::movsxd_rr):
16260 (JSC::JIT::privateCompileMainPass):
16262 (JSC::JIT::emitFastArithReTagImmediate):
16263 (JSC::JIT::emitFastArithPotentiallyReTagImmediate):
16264 (JSC::JIT::emitFastArithImmToInt):
16273 (JSC::Interpreter::cti_op_convert_this):
16274 (JSC::Interpreter::cti_op_end):
16275 (JSC::Interpreter::cti_op_add):
16276 (JSC::Interpreter::cti_op_pre_inc):
16277 (JSC::Interpreter::cti_timeout_check):
16278 (JSC::Interpreter::cti_register_file_check):
16279 (JSC::Interpreter::cti_op_loop_if_less):
16280 (JSC::Interpreter::cti_op_loop_if_lesseq):
16281 (JSC::Interpreter::cti_op_new_object):
16282 (JSC::Interpreter::cti_op_put_by_id_generic):
16283 (JSC::Interpreter::cti_op_get_by_id_generic):
16284 (JSC::Interpreter::cti_op_put_by_id):
16285 (JSC::Interpreter::cti_op_put_by_id_second):
16286 (JSC::Interpreter::cti_op_put_by_id_fail):
16287 (JSC::Interpreter::cti_op_get_by_id):
16288 (JSC::Interpreter::cti_op_get_by_id_second):
16289 (JSC::Interpreter::cti_op_get_by_id_self_fail):
16290 (JSC::Interpreter::cti_op_get_by_id_proto_list):
16291 (JSC::Interpreter::cti_op_get_by_id_proto_list_full):
16292 (JSC::Interpreter::cti_op_get_by_id_proto_fail):
16293 (JSC::Interpreter::cti_op_get_by_id_array_fail):
16294 (JSC::Interpreter::cti_op_get_by_id_string_fail):
16295 (JSC::Interpreter::cti_op_instanceof):
16296 (JSC::Interpreter::cti_op_del_by_id):
16297 (JSC::Interpreter::cti_op_mul):
16298 (JSC::Interpreter::cti_op_new_func):
16299 (JSC::Interpreter::cti_op_call_JSFunction):
16300 (JSC::Interpreter::cti_op_call_arityCheck):
16301 (JSC::Interpreter::cti_vm_dontLazyLinkCall):
16302 (JSC::Interpreter::cti_vm_lazyLinkCall):
16303 (JSC::Interpreter::cti_op_push_activation):
16304 (JSC::Interpreter::cti_op_call_NotJSFunction):
16305 (JSC::Interpreter::cti_op_create_arguments):
16306 (JSC::Interpreter::cti_op_create_arguments_no_params):
16307 (JSC::Interpreter::cti_op_tear_off_activation):
16308 (JSC::Interpreter::cti_op_tear_off_arguments):
16309 (JSC::Interpreter::cti_op_profile_will_call):
16310 (JSC::Interpreter::cti_op_profile_did_call):
16311 (JSC::Interpreter::cti_op_ret_scopeChain):
16312 (JSC::Interpreter::cti_op_new_array):
16313 (JSC::Interpreter::cti_op_resolve):
16314 (JSC::Interpreter::cti_op_construct_JSConstruct):
16315 (JSC::Interpreter::cti_op_construct_NotJSConstruct):
16316 (JSC::Interpreter::cti_op_get_by_val):
16317 (JSC::Interpreter::cti_op_resolve_func):
16318 (JSC::Interpreter::cti_op_sub):
16319 (JSC::Interpreter::cti_op_put_by_val):
16320 (JSC::Interpreter::cti_op_put_by_val_array):
16321 (JSC::Interpreter::cti_op_lesseq):
16322 (JSC::Interpreter::cti_op_loop_if_true):
16323 (JSC::Interpreter::cti_op_negate):
16324 (JSC::Interpreter::cti_op_resolve_base):
16325 (JSC::Interpreter::cti_op_resolve_skip):
16326 (JSC::Interpreter::cti_op_resolve_global):
16327 (JSC::Interpreter::cti_op_div):
16328 (JSC::Interpreter::cti_op_pre_dec):
16329 (JSC::Interpreter::cti_op_jless):
16330 (JSC::Interpreter::cti_op_not):
16331 (JSC::Interpreter::cti_op_jtrue):
16332 (JSC::Interpreter::cti_op_post_inc):
16333 (JSC::Interpreter::cti_op_eq):
16334 (JSC::Interpreter::cti_op_lshift):
16335 (JSC::Interpreter::cti_op_bitand):
16336 (JSC::Interpreter::cti_op_rshift):
16337 (JSC::Interpreter::cti_op_bitnot):
16338 (JSC::Interpreter::cti_op_resolve_with_base):
16339 (JSC::Interpreter::cti_op_new_func_exp):
16340 (JSC::Interpreter::cti_op_mod):
16341 (JSC::Interpreter::cti_op_less):
16342 (JSC::Interpreter::cti_op_neq):
16343 (JSC::Interpreter::cti_op_post_dec):
16344 (JSC::Interpreter::cti_op_urshift):
16345 (JSC::Interpreter::cti_op_bitxor):
16346 (JSC::Interpreter::cti_op_new_regexp):
16347 (JSC::Interpreter::cti_op_bitor):
16348 (JSC::Interpreter::cti_op_call_eval):
16349 (JSC::Interpreter::cti_op_throw):
16350 (JSC::Interpreter::cti_op_get_pnames):
16351 (JSC::Interpreter::cti_op_next_pname):
16352 (JSC::Interpreter::cti_op_push_scope):
16353 (JSC::Interpreter::cti_op_pop_scope):
16354 (JSC::Interpreter::cti_op_typeof):
16355 (JSC::Interpreter::cti_op_is_undefined):
16356 (JSC::Interpreter::cti_op_is_boolean):
16357 (JSC::Interpreter::cti_op_is_number):
16358 (JSC::Interpreter::cti_op_is_string):
16359 (JSC::Interpreter::cti_op_is_object):
16360 (JSC::Interpreter::cti_op_is_function):
16361 (JSC::Interpreter::cti_op_stricteq):
16362 (JSC::Interpreter::cti_op_nstricteq):
16363 (JSC::Interpreter::cti_op_to_jsnumber):
16364 (JSC::Interpreter::cti_op_in):
16365 (JSC::Interpreter::cti_op_push_new_scope):
16366 (JSC::Interpreter::cti_op_jmp_scopes):
16367 (JSC::Interpreter::cti_op_put_by_index):
16368 (JSC::Interpreter::cti_op_switch_imm):
16369 (JSC::Interpreter::cti_op_switch_char):
16370 (JSC::Interpreter::cti_op_switch_string):
16371 (JSC::Interpreter::cti_op_del_by_val):
16372 (JSC::Interpreter::cti_op_put_getter):
16373 (JSC::Interpreter::cti_op_put_setter):
16374 (JSC::Interpreter::cti_op_new_error):
16375 (JSC::Interpreter::cti_op_debug):
16376 (JSC::Interpreter::cti_vm_throw):
16379 (JSC::):
16380 (JSC::JIT::privateCompileMainPass):
16381 (JSC::JIT::privateCompile):
16384 (JSC::JIT::restoreArgumentReference):
16385 (JSC::JIT::restoreArgumentReferenceForTrampoline):
16401 (JSC::DynamicGlobalObjectScope::DynamicGlobalObjectScope):
16402 (JSC::DynamicGlobalObjectScope::~DynamicGlobalObjectScope):
16421 (JSC::countPrototypeChainEntriesAndCheckForProxies):
16422 (JSC::Interpreter::tryCacheGetByID):
16423 (JSC::Interpreter::tryCTICacheGetByID):
16424 (JSC::Interpreter::cti_op_get_by_id_self_fail):
16425 (JSC::Interpreter::cti_op_get_by_id_proto_list):
16476 (JSC::CodeBlock::dumpStatistics):
16491 (JSC::CodeBlock::dump): Add logging for the case that someone tries
16494 (JSC::CodeBlock::CodeBlock): Initialize the instructionCount
16495 (JSC::CodeBlock::handlerForBytecodeOffset): Use instructionCount instead
16497 (JSC::CodeBlock::lineNumberForBytecodeOffset): Ditto.
16498 (JSC::CodeBlock::expressionRangeForBytecodeOffset): Ditto.
16499 (JSC::CodeBlock::getByIdExceptionInfoForBytecodeOffset): Ditto.
16500 (JSC::CodeBlock::functionRegisterForBytecodeOffset): Ditto.
16502 (JSC::CodeBlock::setInstructionCount): Store the instruction vector size
16505 (JSC::BytecodeGenerator::generate):
16507 (JSC::JIT::privateCompile): Clear the bytecode vector unless we
16539 (JSC::CodeBlock::functionRegisterForBytecodeOffset): Added. Function to get
16541 (JSC::CodeBlock::shrinkToFit): Shrink m_getByIdExceptionInfo and m_functionRegisterInfos.
16543 (JSC::FunctionRegisterInfo::FunctionRegisterInfo): Added.
16544 (JSC::CodeBlock::addFunctionRegisterInfo):
16546 (JSC::BytecodeGenerator::emitCall):
16548 (JSC::Interpreter::throwException): Use functionRegisterForBytecodeOffset in JIT
16561 (JSC::bytecodeOffsetForPC): We no longer have any cases of the PC
16563 (JSC::Interpreter::cti_op_call_NotJSFunction): Use the CTI_RETURN_ADDRESS
16567 (JSC::RegisterFile::): Added comment regarding returnPC storing a void*.
16570 (JSC::JIT::compileOpCallSetupArgs): Don't pass the instruction pointer.
16585 (JSC::CStringTranslator::translate):
16586 (JSC::Identifier::add):
16587 (JSC::UCharBufferTranslator::translate):
16611 (JSC::AssemblerBuffer::putInt64Unchecked):
16613 (JSC::MacroAssembler::loadPtr):
16614 (JSC::MacroAssembler::load32):
16615 (JSC::MacroAssembler::storePtr):
16616 (JSC::MacroAssembler::storePtrWithRepatch):
16617 (JSC::MacroAssembler::store32):
16618 (JSC::MacroAssembler::poke):
16619 (JSC::MacroAssembler::move):
16620 (JSC::MacroAssembler::testImm64):
16621 (JSC::MacroAssembler::jePtr):
16622 (JSC::MacroAssembler::jnePtr):
16623 (JSC::MacroAssembler::jnzPtr):
16624 (JSC::MacroAssembler::jzPtr):
16626 (JSC::X86Assembler::):
16627 (JSC::X86Assembler::cmpq_rr):
16628 (JSC::X86Assembler::cmpq_rm):
16629 (JSC::X86Assembler::cmpq_im):
16630 (JSC::X86Assembler::testq_i32m):
16631 (JSC::X86Assembler::movl_mEAX):
16632 (JSC::X86Assembler::movl_i32r):
16633 (JSC::X86Assembler::movl_EAXm):
16634 (JSC::X86Assembler::movq_rm):
16635 (JSC::X86Assembler::movq_mEAX):
16636 (JSC::X86Assembler::movq_mr):
16637 (JSC::X86Assembler::movq_i64r):
16638 (JSC::X86Assembler::movl_mr):
16639 (JSC::X86Assembler::X86InstructionFormatter::oneByteOp64):
16640 (JSC::X86Assembler::X86InstructionFormatter::immediate64):
16642 (JSC::Interpreter::cti_op_put_by_id_generic):
16643 (JSC::Interpreter::cti_op_get_by_id_generic):
16644 (JSC::Interpreter::cti_op_put_by_id):
16645 (JSC::Interpreter::cti_op_put_by_id_second):
16647 (JSC::JIT::privateCompileMainPass):
16648 (JSC::JIT::privateCompile):
16649 (JSC::JIT::privateCompileCTIMachineTrampolines):
16651 (JSC::JIT::compileOpCallSetupArgs):
16652 (JSC::JIT::compileOpCall):
16654 (JSC::JIT::compileGetByIdHotPath):
16655 (JSC::JIT::compilePutByIdHotPath):
16657 (JSC::JSImmediate::makeInt):
16679 (JSC::Structure::~Structure): Use get().
16680 (JSC::Structure::materializePropertyMap): Use get().
16681 (JSC::Structure::addPropertyTransitionToExistingStructure): Use get().
16682 (JSC::Structure::addPropertyTransition): Use get().
16692 (JSC::mathProtoFuncRandom):
16725 (JSC::mathProtoFuncRandom):
16730 * wtf/RandomNumberSeed.h: Added. Internal usage within JSC only.
16781 * interpreter/Interpreter.cpp: (JSC::getCPUTime):
16792 (JSC::):
16793 (JSC::JIT::privateCompileMainPass):
16813 (JSC::JIT::privateCompileCTIMachineTrampolines):
16816 (JSC::JIT::restoreArgumentReference):
16817 (JSC::JIT::restoreArgumentReferenceForTrampoline):
16818 (JSC::JIT::emitCTICall_internal):
16820 (JSC::JIT::privateCompilePutByIdTransition):
16836 (JSC::JSGlobalObject::isGlobalObject): Ditto.
16839 … (JSC::globalFuncEval): Use unwrappedObject and isGlobalObject here rather than toGlobalObject.
16842 … (JSC::JSObject::put): Rewrote prototype cycle checking loop. Use unwrappedObject in the loop now.
16843 (JSC::JSObject::unwrappedObject): Replaced toGlobalObject with this new function.
16874 (JSC::AssemblerBuffer::isAligned):
16875 (JSC::AssemblerBuffer::data):
16877 (JSC::MacroAssembler::addPtr):
16878 (JSC::MacroAssembler::add32):
16879 (JSC::MacroAssembler::and32):
16880 (JSC::MacroAssembler::or32):
16881 (JSC::MacroAssembler::sub32):
16882 (JSC::MacroAssembler::xor32):
16883 (JSC::MacroAssembler::loadPtr):
16884 (JSC::MacroAssembler::load32):
16885 (JSC::MacroAssembler::load16):
16886 (JSC::MacroAssembler::storePtr):
16887 (JSC::MacroAssembler::storePtrWithRepatch):
16888 (JSC::MacroAssembler::store32):
16889 (JSC::MacroAssembler::pop):
16890 (JSC::MacroAssembler::push):
16891 (JSC::MacroAssembler::compareImm32ForBranch):
16892 (JSC::MacroAssembler::compareImm32ForBranchEquality):
16893 (JSC::MacroAssembler::testImm32):
16894 (JSC::MacroAssembler::jae32):
16895 (JSC::MacroAssembler::jb32):
16896 (JSC::MacroAssembler::je16):
16897 (JSC::MacroAssembler::jg32):
16898 (JSC::MacroAssembler::jnePtr):
16899 (JSC::MacroAssembler::jne32):
16900 (JSC::MacroAssembler::jump):
16902 (JSC::X86::):
16903 (JSC::X86Assembler::):
16904 (JSC::X86Assembler::size):
16905 (JSC::X86Assembler::push_r):
16906 (JSC::X86Assembler::pop_r):
16907 (JSC::X86Assembler::push_i32):
16908 (JSC::X86Assembler::push_m):
16909 (JSC::X86Assembler::pop_m):
16910 (JSC::X86Assembler::addl_rr):
16911 (JSC::X86Assembler::addl_mr):
16912 (JSC::X86Assembler::addl_ir):
16913 (JSC::X86Assembler::addq_ir):
16914 (JSC::X86Assembler::addl_im):
16915 (JSC::X86Assembler::andl_rr):
16916 (JSC::X86Assembler::andl_ir):
16917 (JSC::X86Assembler::orl_rr):
16918 (JSC::X86Assembler::orl_mr):
16919 (JSC::X86Assembler::orl_ir):
16920 (JSC::X86Assembler::subl_rr):
16921 (JSC::X86Assembler::subl_mr):
16922 (JSC::X86Assembler::subl_ir):
16923 (JSC::X86Assembler::subl_im):
16924 (JSC::X86Assembler::xorl_rr):
16925 (JSC::X86Assembler::xorl_ir):
16926 (JSC::X86Assembler::sarl_i8r):
16927 (JSC::X86Assembler::sarl_CLr):
16928 (JSC::X86Assembler::shll_i8r):
16929 (JSC::X86Assembler::shll_CLr):
16930 (JSC::X86Assembler::imull_rr):
16931 (JSC::X86Assembler::imull_i32r):
16932 (JSC::X86Assembler::idivl_r):
16933 (JSC::X86Assembler::cmpl_rr):
16934 (JSC::X86Assembler::cmpl_rm):
16935 (JSC::X86Assembler::cmpl_mr):
16936 (JSC::X86Assembler::cmpl_ir):
16937 (JSC::X86Assembler::cmpl_ir_force32):
16938 (JSC::X86Assembler::cmpl_im):
16939 (JSC::X86Assembler::cmpl_im_force32):
16940 (JSC::X86Assembler::cmpw_rm):
16941 (JSC::X86Assembler::testl_rr):
16942 (JSC::X86Assembler::testl_i32r):
16943 (JSC::X86Assembler::testl_i32m):
16944 (JSC::X86Assembler::testq_rr):
16945 (JSC::X86Assembler::testq_i32r):
16946 (JSC::X86Assembler::testb_i8r):
16947 (JSC::X86Assembler::sete_r):
16948 (JSC::X86Assembler::setz_r):
16949 (JSC::X86Assembler::setne_r):
16950 (JSC::X86Assembler::setnz_r):
16951 (JSC::X86Assembler::cdq):
16952 (JSC::X86Assembler::xchgl_rr):
16953 (JSC::X86Assembler::movl_rr):
16954 (JSC::X86Assembler::movl_rm):
16955 (JSC::X86Assembler::movl_mr):
16956 (JSC::X86Assembler::movl_i32r):
16957 (JSC::X86Assembler::movl_i32m):
16958 (JSC::X86Assembler::movq_rr):
16959 (JSC::X86Assembler::movq_rm):
16960 (JSC::X86Assembler::movq_mr):
16961 (JSC::X86Assembler::movzwl_mr):
16962 (JSC::X86Assembler::movzbl_rr):
16963 (JSC::X86Assembler::leal_mr):
16964 (JSC::X86Assembler::call):
16965 (JSC::X86Assembler::jmp):
16966 (JSC::X86Assembler::jmp_r):
16967 (JSC::X86Assembler::jmp_m):
16968 (JSC::X86Assembler::jne):
16969 (JSC::X86Assembler::jnz):
16970 (JSC::X86Assembler::je):
16971 (JSC::X86Assembler::jl):
16972 (JSC::X86Assembler::jb):
16973 (JSC::X86Assembler::jle):
16974 (JSC::X86Assembler::jbe):
16975 (JSC::X86Assembler::jge):
16976 (JSC::X86Assembler::jg):
16977 (JSC::X86Assembler::ja):
16978 (JSC::X86Assembler::jae):
16979 (JSC::X86Assembler::jo):
16980 (JSC::X86Assembler::jp):
16981 (JSC::X86Assembler::js):
16982 (JSC::X86Assembler::addsd_rr):
16983 (JSC::X86Assembler::addsd_mr):
16984 (JSC::X86Assembler::cvtsi2sd_rr):
16985 (JSC::X86Assembler::cvttsd2si_rr):
16986 (JSC::X86Assembler::movd_rr):
16987 (JSC::X86Assembler::movsd_rm):
16988 (JSC::X86Assembler::movsd_mr):
16989 (JSC::X86Assembler::mulsd_rr):
16990 (JSC::X86Assembler::mulsd_mr):
16991 (JSC::X86Assembler::pextrw_irr):
16992 (JSC::X86Assembler::subsd_rr):
16993 (JSC::X86Assembler::subsd_mr):
16994 (JSC::X86Assembler::ucomis_rr):
16995 (JSC::X86Assembler::int3):
16996 (JSC::X86Assembler::ret):
16997 (JSC::X86Assembler::predictNotTaken):
16998 (JSC::X86Assembler::label):
16999 (JSC::X86Assembler::align):
17000 (JSC::X86Assembler::link):
17001 (JSC::X86Assembler::executableCopy):
17002 (JSC::X86Assembler::X86InstructionFormater::prefix):
17003 (JSC::X86Assembler::X86InstructionFormater::oneByteOp):
17004 (JSC::X86Assembler::X86InstructionFormater::twoByteOp):
17005 (JSC::X86Assembler::X86InstructionFormater::oneByteOp64):
17006 (JSC::X86Assembler::X86InstructionFormater::oneByteOp8):
17007 (JSC::X86Assembler::X86InstructionFormater::twoByteOp8):
17008 (JSC::X86Assembler::X86InstructionFormater::instructionImmediate8):
17009 (JSC::X86Assembler::X86InstructionFormater::instructionImmediate32):
17010 (JSC::X86Assembler::X86InstructionFormater::instructionRel32):
17011 (JSC::X86Assembler::X86InstructionFormater::size):
17012 (JSC::X86Assembler::X86InstructionFormater::isAligned):
17013 (JSC::X86Assembler::X86InstructionFormater::data):
17014 (JSC::X86Assembler::X86InstructionFormater::executableCopy):
17015 (JSC::X86Assembler::X86InstructionFormater::registerModRM):
17016 (JSC::X86Assembler::X86InstructionFormater::memoryModRM):
17018 (JSC::JIT::privateCompileMainPass):
17019 (JSC::JIT::privateCompile):
17020 (JSC::JIT::privateCompileCTIMachineTrampolines):
17022 (JSC::JIT::putDoubleResultToJSNumberCellOrJSImmediate):
17023 (JSC::JIT::compileBinaryArithOp):
17025 (JSC::JIT::compileOpCall):
17026 (JSC::JIT::compileOpCallSlowCase):
17028 (JSC::JIT::compileGetByIdHotPath):
17029 (JSC::JIT::compilePutByIdHotPath):
17030 (JSC::JIT::privateCompilePutByIdTransition):
17031 (JSC::JIT::privateCompilePatchGetArrayLength):
17032 (JSC::JIT::privateCompileGetByIdProto):
17033 (JSC::JIT::privateCompileGetByIdProtoList):
17034 (JSC::JIT::privateCompileGetByIdChainList):
17035 (JSC::JIT::privateCompileGetByIdChain):
17053 * interpreter/RegisterFile.h: (JSC::RegisterFile::RegisterFile):
17066 (JSC::MacroAssembler::testImm64):
17067 (JSC::MacroAssembler::jnzPtr):
17069 (JSC::X86Assembler::testq_i32r):
17070 (JSC::X86Assembler::testq_rr):
17093 (JSC::MacroAssembler::DataLabelPtr::DataLabelPtr):
17094 (JSC::MacroAssembler::RepatchBuffer::RepatchBuffer):
17095 (JSC::MacroAssembler::RepatchBuffer::link):
17096 (JSC::MacroAssembler::RepatchBuffer::addressOf):
17097 (JSC::MacroAssembler::RepatchBuffer::setPtr):
17098 (JSC::MacroAssembler::addPtr):
17099 (JSC::MacroAssembler::lshift32):
17100 (JSC::MacroAssembler::mod32):
17101 (JSC::MacroAssembler::rshift32):
17102 (JSC::MacroAssembler::storePtrWithRepatch):
17103 (JSC::MacroAssembler::jnzPtr):
17104 (JSC::MacroAssembler::jzPtr):
17105 (JSC::MacroAssembler::jump):
17106 (JSC::MacroAssembler::label):
17108 (JSC::X86Assembler::):
17109 (JSC::X86Assembler::xchgl_rr):
17110 (JSC::X86Assembler::jmp_m):
17111 (JSC::X86Assembler::repatchAddress):
17112 (JSC::X86Assembler::getRelocatedAddress):
17114 (JSC::CodeBlock::CodeBlock):
17116 (JSC::JITCodeRef::JITCodeRef):
17117 (JSC::CodeBlock::setJITCode):
17118 (JSC::CodeBlock::jitCode):
17119 (JSC::CodeBlock::executablePool):
17121 (JSC::JIT::privateCompileMainPass):
17122 (JSC::JIT::privateCompileLinkPass):
17123 (JSC::JIT::privateCompile):
17124 (JSC::JIT::privateCompileCTIMachineTrampolines):
17126 (JSC::CallRecord::CallRecord):
17127 (JSC::JumpTable::JumpTable):
17128 (JSC::JIT::emitCTICall):
17129 (JSC::JIT::JSRInfo::JSRInfo):
17133 (JSC::JIT::emitNakedCall):
17134 (JSC::JIT::emitCTICall_internal):
17135 (JSC::JIT::checkStructure):
17136 (JSC::JIT::emitFastArithDeTagImmediateJumpIfZero):
17137 (JSC::JIT::addSlowCase):
17138 (JSC::JIT::addJump):
17139 (JSC::JIT::emitJumpSlowToHot):
17141 (JSC::JIT::privateCompileGetByIdChainList):
17142 (JSC::JIT::privateCompileGetByIdChain):
17159 (JSC::CodeBlock::getByIdExceptionInfoForBytecodeOffset):
17170 (JSC::JIT::privateCompileMainPass):
17171 (JSC::JIT::privateCompileSlowCases):
17172 (JSC::JIT::privateCompileCTIMachineTrampolines):
17175 (JSC::JIT::compileBinaryArithOp):
17176 (JSC::JIT::compileBinaryArithOpSlowCase):
17178 (JSC::JIT::compileOpCallSetupArgs):
17179 (JSC::JIT::compileOpCallEvalSetupArgs):
17180 (JSC::JIT::compileOpConstructSetupArgs):
17181 (JSC::JIT::compileOpCall):
17183 (JSC::JIT::emitPutJITStubArg):
17184 (JSC::JIT::emitPutJITStubArgConstant):
17185 (JSC::JIT::emitGetJITStubArg):
17186 (JSC::JIT::emitPutJITStubArgFromVirtualRegister):
17188 (JSC::JIT::compileGetByIdHotPath):
17189 (JSC::JIT::compilePutByIdHotPath):
17190 (JSC::JIT::compileGetByIdSlowCase):
17191 (JSC::JIT::compilePutByIdSlowCase):
17198 (JSC::JIT::privateCompileMainPass):
17199 (JSC::JIT::privateCompileSlowCases):
17200 (JSC::JIT::privateCompile):
17211 (JSC::JIT::compileOpStrictEq):
17212 (JSC::JIT::emitSlowScriptCheck):
17213 (JSC::JIT::privateCompileMainPass):
17214 (JSC::JIT::privateCompileSlowCases):
17215 (JSC::JIT::privateCompile):
17217 (JSC::CallRecord::CallRecord):
17218 (JSC::JmpTable::JmpTable):
17219 (JSC::JIT::emitCTICall):
17221 (JSC::JIT::compileBinaryArithOp):
17222 (JSC::JIT::compileBinaryArithOpSlowCase):
17224 (JSC::JIT::compileOpCall):
17225 (JSC::JIT::compileOpCallSlowCase):
17227 (JSC::JIT::emitGetVirtualRegister):
17228 (JSC::JIT::emitGetVirtualRegisters):
17229 (JSC::JIT::emitNakedCall):
17230 (JSC::JIT::emitCTICall_internal):
17231 (JSC::JIT::emitJumpSlowCaseIfJSCell):
17232 (JSC::JIT::emitJumpSlowCaseIfNotJSCell):
17233 (JSC::JIT::emitJumpSlowCaseIfNotImmNum):
17234 (JSC::JIT::emitJumpSlowCaseIfNotImmNums):
17235 (JSC::JIT::emitFastArithIntToImmOrSlowCase):
17236 (JSC::JIT::addSlowCase):
17237 (JSC::JIT::addJump):
17238 (JSC::JIT::emitJumpSlowToHot):
17240 (JSC::JIT::compileGetByIdHotPath):
17241 (JSC::JIT::compileGetByIdSlowCase):
17242 (JSC::JIT::compilePutByIdHotPath):
17243 (JSC::JIT::compilePutByIdSlowCase):
17255 (JSC::bytecodeOffsetForPC): Rename from vPCForPC.
17256 (JSC::Interpreter::resolve): Pass offset to exception helper.
17257 (JSC::Interpreter::resolveSkip): Ditto.
17258 (JSC::Interpreter::resolveGlobal): Ditto.
17259 (JSC::Interpreter::resolveBaseAndProperty): Ditto.
17260 (JSC::Interpreter::resolveBaseAndFunc): Ditto.
17261 (JSC::isNotObject): Ditto.
17262 (JSC::Interpreter::unwindCallFrame): Call bytecodeOffsetForPC.
17263 (JSC::Interpreter::throwException): Use offsets instead of vPCs.
17264 (JSC::Interpreter::privateExecute): Pass offset to exception helper.
17265 (JSC::Interpreter::retrieveLastCaller): Ditto.
17266 (JSC::Interpreter::cti_op_instanceof): Ditto.
17267 (JSC::Interpreter::cti_op_call_NotJSFunction): Ditto.
17268 (JSC::Interpreter::cti_op_resolve): Pass offset to exception helper.
17269 (JSC::Interpreter::cti_op_construct_NotJSConstruct): Ditto.
17270 (JSC::Interpreter::cti_op_resolve_func): Ditto.
17271 (JSC::Interpreter::cti_op_resolve_skip): Ditto.
17272 (JSC::Interpreter::cti_op_resolve_global): Ditto.
17273 (JSC::Interpreter::cti_op_resolve_with_base): Ditto.
17274 (JSC::Interpreter::cti_op_throw): Ditto.
17275 (JSC::Interpreter::cti_op_in): Ditto.
17276 (JSC::Interpreter::cti_vm_throw): Ditto.
17280 (JSC::JIT::privateCompileMainPass): Don't pass unnecessary vPC to stub.
17283 (JSC::JIT::compileOpCallEvalSetupArgs): Don't pass unnecessary vPC to stub..
17284 (JSC::JIT::compileOpConstructSetupArgs): Ditto.
17287 (JSC::createUndefinedVariableError): Take an offset instead of vPC.
17288 (JSC::createInvalidParamError): Ditto.
17289 (JSC::createNotAConstructorError): Ditto.
17290 (JSC::createNotAFunctionError): Ditto.
17291 (JSC::createNotAnObjectError): Ditto.
17306 (JSC::BinaryOpNode::emitBytecode):
17307 (JSC::EqualNode::emitBytecode):
17316 (JSC::MacroAssembler::Label::Label):
17317 (JSC::MacroAssembler::jae32):
17318 (JSC::MacroAssembler::jg32):
17319 (JSC::MacroAssembler::jzPtr):
17321 (JSC::JIT::privateCompileSlowCases):
17322 (JSC::JIT::privateCompile):
17323 (JSC::JIT::emitGetVariableObjectRegister):
17324 (JSC::JIT::emitPutVariableObjectRegister):
17326 (JSC::SlowCaseEntry::SlowCaseEntry):
17327 (JSC::JIT::getSlowCase):
17328 (JSC::JIT::linkSlowCase):
17330 (JSC::JIT::compileBinaryArithOpSlowCase):
17332 (JSC::JIT::compileOpCallInitializeCallFrame):
17333 (JSC::JIT::compileOpCall):
17334 (JSC::JIT::compileOpCallSlowCase):
17336 (JSC::JIT::emitJumpSlowCaseIfNotJSCell):
17337 (JSC::JIT::linkSlowCaseIfNotJSCell):
17339 (JSC::JIT::compileGetByIdHotPath):
17340 (JSC::JIT::compilePutByIdHotPath):
17341 (JSC::JIT::compileGetByIdSlowCase):
17342 (JSC::JIT::compilePutByIdSlowCase):
17359 (JSC::CodeBlock::getByIdExceptionInfoForBytecodeOffset):
17361 (JSC::CodeBlock::addGetByIdExceptionInfo):
17363 (JSC::BytecodeGenerator::emitConstruct):
17365 (JSC::BytecodeGenerator::emitGetByIdExceptionInfo):
17367 (JSC::InstanceOfNode::emitBytecode):
17369 (JSC::createNotAnObjectError):
17380 (JSC::instructionOffsetForNth):
17381 (JSC::CodeBlock::handlerForBytecodeOffset):
17382 (JSC::CodeBlock::lineNumberForBytecodeOffset):
17383 (JSC::CodeBlock::expressionRangeForBytecodeOffset):
17386 (JSC::SamplingTool::dump):
17388 (JSC::Interpreter::throwException):
17389 (JSC::Interpreter::privateExecute):
17390 (JSC::Interpreter::retrieveLastCaller):
17392 (JSC::JIT::privateCompileMainPass):
17394 (JSC::createUndefinedVariableError):
17395 (JSC::createInvalidParamError):
17396 (JSC::createNotAConstructorError):
17397 (JSC::createNotAFunctionError):
17398 (JSC::createNotAnObjectError):
17407 (JSC::WREC::Generator::generateNonGreedyQuantifier):
17408 (JSC::WREC::Generator::generateGreedyQuantifier):
17432 (JSC::isGlobalResolve):
17433 (JSC::isPropertyAccess):
17434 (JSC::instructionOffsetForNth):
17435 (JSC::printGlobalResolveInfo):
17436 (JSC::printStructureStubInfo):
17437 (JSC::CodeBlock::printStructures):
17438 (JSC::CodeBlock::dump):
17439 (JSC::CodeBlock::~CodeBlock):
17440 (JSC::CodeBlock::shrinkToFit):
17442 (JSC::GlobalResolveInfo::GlobalResolveInfo):
17443 (JSC::getNativePC):
17444 (JSC::CodeBlock::instructions):
17445 (JSC::CodeBlock::getStubInfo):
17446 (JSC::CodeBlock::getBytecodeIndex):
17447 (JSC::CodeBlock::addPropertyAccessInstruction):
17448 (JSC::CodeBlock::addGlobalResolveInstruction):
17449 (JSC::CodeBlock::numberOfStructureStubInfos):
17450 (JSC::CodeBlock::addStructureStubInfo):
17451 (JSC::CodeBlock::structureStubInfo):
17452 (JSC::CodeBlock::addGlobalResolveInfo):
17453 (JSC::CodeBlock::globalResolveInfo):
17454 (JSC::CodeBlock::numberOfCallLinkInfos):
17455 (JSC::CodeBlock::addCallLinkInfo):
17456 (JSC::CodeBlock::callLinkInfo):
17458 (JSC::PolymorphicAccessStructureList::PolymorphicStubInfo::set):
17459 (JSC::PolymorphicAccessStructureList::PolymorphicAccessStructureList):
17461 (JSC::):
17463 (JSC::StructureStubInfo::deref):
17465 (JSC::StructureStubInfo::StructureStubInfo):
17466 (JSC::StructureStubInfo::initGetByIdSelf):
17467 (JSC::StructureStubInfo::initGetByIdProto):
17468 (JSC::StructureStubInfo::initGetByIdChain):
17469 (JSC::StructureStubInfo::initGetByIdSelfList):
17470 (JSC::StructureStubInfo::initGetByIdProtoList):
17471 (JSC::StructureStubInfo::initPutByIdTransition):
17472 (JSC::StructureStubInfo::initPutByIdReplace):
17473 (JSC::StructureStubInfo::):
17475 (JSC::BytecodeGenerator::emitResolve):
17476 (JSC::BytecodeGenerator::emitGetById):
17477 (JSC::BytecodeGenerator::emitPutById):
17478 (JSC::BytecodeGenerator::emitCall):
17479 (JSC::BytecodeGenerator::emitConstruct):
17480 (JSC::BytecodeGenerator::emitCatch):
17482 (JSC::Interpreter::tryCTICachePutByID):
17483 (JSC::Interpreter::tryCTICacheGetByID):
17484 (JSC::Interpreter::cti_op_get_by_id_self_fail):
17485 (JSC::getPolymorphicAccessStructureListSlot):
17486 (JSC::Interpreter::cti_op_get_by_id_proto_list):
17487 (JSC::Interpreter::cti_op_resolve_global):
17489 (JSC::JIT::JIT):
17490 (JSC::JIT::privateCompileMainPass):
17491 (JSC::JIT::privateCompileSlowCases):
17492 (JSC::JIT::privateCompile):
17494 (JSC::JIT::compileGetByIdHotPath):
17495 (JSC::JIT::compilePutByIdHotPath):
17496 (JSC::JIT::compileGetByIdSlowCase):
17497 (JSC::JIT::compilePutByIdSlowCase):
17498 (JSC::JIT::privateCompileGetByIdSelfList):
17499 (JSC::JIT::privateCompileGetByIdProtoList):
17500 (JSC::JIT::privateCompileGetByIdChainList):
17513 (JSC::JIT::privateCompileCTIMachineTrampolines):
17516 (JSC::JIT::emitCTICall):
17518 (JSC::JIT::privateCompilePutByIdTransition):
17558 (JSC::BytecodeGenerator::BytecodeGenerator): The DebuggerCallFrame uses
17563 (JSC::DebuggerCallFrame::thisObject): The assertion inherent in the call
17582 (JSC::Interpreter::cti_op_new_array):
17584 (JSC::JIT::privateCompileMainPass):
17585 (JSC::JIT::privateCompileSlowCases):
17588 (JSC::WREC::Generator::generateEnter):
17610 (JSC::sizeInBytes): Generic method to get the cost of a Vector.
17611 (JSC::CodeBlock::dumpStatistics): Add dumping of member sizes.
17613 (JSC::PC::PC): Struct representing NativePC -> VirtualPC mappings.
17614 (JSC::getNativePC): Helper for binary chop.
17615 (JSC::CodeBlock::getBytecodeIndex): Used to get the VirtualPC from a
17617 (JSC::CodeBlock::pcVector): Accessor.
17620 (JSC::vPCForPC): Use getBytecodeIndex instead of jitReturnAddressVPCMap().get().
17621 (JSC::Interpreter::cti_op_instanceof): Ditto.
17622 (JSC::Interpreter::cti_op_resolve): Ditto.
17623 (JSC::Interpreter::cti_op_resolve_func): Ditto.
17624 (JSC::Interpreter::cti_op_resolve_skip): Ditto.
17625 (JSC::Interpreter::cti_op_resolve_with_base): Ditto.
17626 (JSC::Interpreter::cti_op_throw): Ditto.
17627 (JSC::Interpreter::cti_op_in): Ditto.
17628 (JSC::Interpreter::cti_vm_throw): Ditto.
17631 (JSC::JIT::privateCompile): Reserve exact capacity and fill the pcVector.
17641 (JSC::WREC::Parser::parseParentheses): Throw away the quantifier, since
17664 (JSC::RegExp::RegExp): Only fall back on PCRE if WREC has not reported
17668 (JSC::WREC::Generator::compileRegExp): Fixed some error reporting to
17673 (JSC::WREC::Parser::consumeGreedyQuantifier):
17674 (JSC::WREC::Parser::parseParentheses):
17675 (JSC::WREC::Parser::parseCharacterClass):
17676 (JSC::WREC::Parser::parseNonCharacterEscape): Updated the above functions to
17679 (JSC::WREC::Parser::consumeEscape): Relaxed parsing of \c \N \u \x \B
17682 (JSC::WREC::Parser::parseAlternative): Distinguish between a malformed
17685 (JSC::WREC::Parser::consumeParenthesesType): Updated to use the new setError API.
17688 (JSC::WREC::Parser::error):
17689 (JSC::WREC::Parser::syntaxError):
17690 (JSC::WREC::Parser::parsePattern):
17691 (JSC::WREC::Parser::reset):
17692 (JSC::WREC::Parser::setError): Store error messages instead of error codes,
17719 (JSC::CodeBlock::dumpStatistics): Add logging of non-empty symbol tables
17722 (JSC::BytecodeGenerator::generate): Clear the symbol table here.
17735 (JSC::CodeBlock::handlerForVPC): Return the HandlerInfo.
17739 (JSC::Interpreter::throwException): Return a HandlerInfo instead of
17741 (JSC::Interpreter::privateExecute): Get the offset from HandlerInfo.
17742 (JSC::Interpreter::cti_op_throw): Get the native code from the HandleInfo.
17743 (JSC::Interpreter::cti_vm_throw): Ditto.
17784 (JSC::Interpreter::privateExecute):
17786 (JSC::JIT::privateCompileMainPass):
17787 (JSC::JIT::privateCompileSlowCases):
17797 (JSC::WREC::Escape::):
17798 (JSC::WREC::Escape::Escape): Eliminated Escape::None because it was
17802 (JSC::WREC::Quantifier::Quantifier):
17804 (JSC::WREC::Generator::generateNonGreedyQuantifier):
17805 (JSC::WREC::Generator::generateGreedyQuantifier): Renamed "noMaxSpecified"
17809 (JSC::WREC::Parser::consumeGreedyQuantifier): Re-wrote {n,m} parsing rules
17814 (JSC::WREC::Parser::parseCharacterClass):
17815 (JSC::WREC::Parser::parseNonCharacterEscape): Eliminated Escape::None,
17818 (JSC::WREC::Parser::consumeEscape): Don't treat ASCII and _ escapes
17822 (JSC::WREC::Parser::SavedState::SavedState):
17823 (JSC::WREC::Parser::SavedState::restore): Added a state backtracker,
17846 (JSC::WREC::parsePatternCharacterSequence): Nixed this function because
17850 (JSC::WREC::PatternCharacterSequence::PatternCharacterSequence):
17851 (JSC::WREC::PatternCharacterSequence::size):
17852 (JSC::WREC::PatternCharacterSequence::append):
17853 (JSC::WREC::PatternCharacterSequence::flush): Helper object for generating
17856 (JSC::WREC::Parser::parseNonCharacterEscape): Renamed to reflect the fact
17859 (JSC::WREC::Parser::parseAlternative): Moved pattern character sequence
17890 (JSC::CodeBlock::dumpStatistics): Fix extraneous semicolon.
17892 (JSC::Interpreter::tryCTICachePutByID):
17893 (JSC::Interpreter::tryCTICacheGetByID):
17894 (JSC::Interpreter::cti_op_get_by_id_self_fail):
17895 (JSC::Interpreter::cti_op_get_by_id_proto_list):
17897 (JSC::JIT::compileGetByIdSelf):
17898 (JSC::JIT::compileGetByIdProto):
17899 (JSC::JIT::compileGetByIdChain):
17900 (JSC::JIT::compilePutByIdReplace):
17901 (JSC::JIT::compilePutByIdTransition):
17903 (JSC::JIT::privateCompilePutByIdTransition):
17904 (JSC::JIT::patchGetByIdSelf):
17905 (JSC::JIT::patchPutByIdReplace):
17906 (JSC::JIT::privateCompilePatchGetArrayLength): Remove extra call to getStubInfo.
17907 (JSC::JIT::privateCompileGetByIdSelf):
17908 (JSC::JIT::privateCompileGetByIdProto):
17909 (JSC::JIT::privateCompileGetByIdChain):
17910 (JSC::JIT::privateCompilePutByIdReplace):
17925 (JSC::JIT::privateCompileMainPass):
17927 (JSC::JIT::compileGetByIdSlowCase):
17943 (JSC::MacroAssembler::):
17944 (JSC::MacroAssembler::ImmPtr::ImmPtr):
17945 (JSC::MacroAssembler::add32):
17946 (JSC::MacroAssembler::and32):
17947 (JSC::MacroAssembler::or32):
17948 (JSC::MacroAssembler::sub32):
17949 (JSC::MacroAssembler::xor32):
17950 (JSC::MacroAssembler::loadPtr):
17951 (JSC::MacroAssembler::load32):
17952 (JSC::MacroAssembler::storePtr):
17953 (JSC::MacroAssembler::store32):
17954 (JSC::MacroAssembler::poke):
17955 (JSC::MacroAssembler::move):
17956 (JSC::MacroAssembler::testImm32):
17957 (JSC::MacroAssembler::jae32):
17958 (JSC::MacroAssembler::jb32):
17959 (JSC::MacroAssembler::jePtr):
17960 (JSC::MacroAssembler::je32):
17961 (JSC::MacroAssembler::jnePtr):
17962 (JSC::MacroAssembler::jne32):
17963 (JSC::MacroAssembler::jnzPtr):
17964 (JSC::MacroAssembler::jnz32):
17965 (JSC::MacroAssembler::jzPtr):
17966 (JSC::MacroAssembler::jz32):
17967 (JSC::MacroAssembler::joSub32):
17968 (JSC::MacroAssembler::jump):
17969 (JSC::MacroAssembler::sete32):
17970 (JSC::MacroAssembler::setne32):
17971 (JSC::MacroAssembler::setnz32):
17972 (JSC::MacroAssembler::setz32):
17974 (JSC::X86Assembler::addl_mr):
17975 (JSC::X86Assembler::andl_i8r):
17976 (JSC::X86Assembler::cmpl_rm):
17977 (JSC::X86Assembler::cmpl_mr):
17978 (JSC::X86Assembler::cmpl_i8m):
17979 (JSC::X86Assembler::subl_mr):
17980 (JSC::X86Assembler::testl_i32m):
17981 (JSC::X86Assembler::xorl_i32r):
17982 (JSC::X86Assembler::movl_rm):
17983 (JSC::X86Assembler::modRm_opmsib):
17985 (JSC::JIT::privateCompileMainPass):
17987 (JSC::JIT::emitGetVirtualRegister):
17988 (JSC::JIT::emitPutCTIArgConstant):
17989 (JSC::JIT::emitPutCTIParam):
17990 (JSC::JIT::emitPutImmediateToCallFrameHeader):
17991 (JSC::JIT::emitInitRegister):
17992 (JSC::JIT::checkStructure):
17993 (JSC::JIT::emitJumpIfJSCell):
17994 (JSC::JIT::emitJumpIfNotJSCell):
17995 (JSC::JIT::emitJumpSlowCaseIfNotImmNum):
18005 (JSC::WREC::Quantifier::Quantifier): ASSERT that the quantifier is not
18009 (JSC::WREC::Parser::consumeGreedyQuantifier): Verify that the minimum
18030 (JSC::CodeBlock::dump):
18031 (JSC::CodeBlock::dumpStatistics):
18032 (JSC::CodeBlock::mark):
18033 (JSC::CodeBlock::getHandlerForVPC):
18034 (JSC::CodeBlock::nativeExceptionCodeForHandlerVPC):
18035 (JSC::CodeBlock::shrinkToFit):
18037 (JSC::CodeBlock::numberOfExceptionHandlers):
18038 (JSC::CodeBlock::addExceptionHandler):
18039 (JSC::CodeBlock::exceptionHandler):
18040 (JSC::CodeBlock::addFunction):
18041 (JSC::CodeBlock::function):
18042 (JSC::CodeBlock::addUnexpectedConstant):
18043 (JSC::CodeBlock::unexpectedConstant):
18044 (JSC::CodeBlock::addRegExp):
18045 (JSC::CodeBlock::regexp):
18046 (JSC::CodeBlock::numberOfImmediateSwitchJumpTables):
18047 (JSC::CodeBlock::addImmediateSwitchJumpTable):
18048 (JSC::CodeBlock::immediateSwitchJumpTable):
18049 (JSC::CodeBlock::numberOfCharacterSwitchJumpTables):
18050 (JSC::CodeBlock::addCharacterSwitchJumpTable):
18051 (JSC::CodeBlock::characterSwitchJumpTable):
18052 (JSC::CodeBlock::numberOfStringSwitchJumpTables):
18053 (JSC::CodeBlock::addStringSwitchJumpTable):
18054 (JSC::CodeBlock::stringSwitchJumpTable):
18055 (JSC::CodeBlock::evalCodeCache):
18056 (JSC::CodeBlock::createRareDataIfNecessary):
18075 (JSC::CodeBlock::dumpStatistics):
18077 (JSC::EvalCodeCache::isEmpty):
18109 (JSC::CodeBlock::dumpStatistics):
18110 (JSC::CodeBlock::CodeBlock):
18111 (JSC::CodeBlock::~CodeBlock):
18135 (JSC::RegExp::RegExp):
18168 (JSC::ExecutableAllocator::intializePageSize):
18169 (JSC::ExecutablePool::systemAlloc):
18170 (JSC::ExecutablePool::systemRelease):
18188 (JSC::AssemblerBuffer::size):
18189 (JSC::AssemblerBuffer::executableCopy):
18191 (JSC::MacroAssembler::size):
18192 (JSC::MacroAssembler::copyCode):
18194 (JSC::X86Assembler::size):
18195 (JSC::X86Assembler::executableCopy):
18197 (JSC::CodeBlock::~CodeBlock):
18199 (JSC::CodeBlock::executablePool):
18200 (JSC::CodeBlock::setExecutablePool):
18202 (JSC::PolymorphicAccessStructureList::derefStructures):
18204 (JSC::Interpreter::~Interpreter):
18208 (JSC::ExecutablePool::create):
18209 (JSC::ExecutablePool::alloc):
18210 (JSC::ExecutablePool::~ExecutablePool):
18211 (JSC::ExecutablePool::available):
18212 (JSC::ExecutablePool::ExecutablePool):
18213 (JSC::ExecutablePool::poolAllocate):
18214 (JSC::ExecutableAllocator::ExecutableAllocator):
18215 (JSC::ExecutableAllocator::poolForSize):
18216 (JSC::ExecutablePool::sizeForAllocation):
18218 (JSC::ExecutableAllocator::intializePageSize):
18219 (JSC::ExecutablePool::systemAlloc):
18220 (JSC::ExecutablePool::systemRelease):
18222 (JSC::ExecutableAllocator::intializePageSize):
18223 (JSC::ExecutablePool::systemAlloc):
18224 (JSC::ExecutablePool::systemRelease):
18226 (JSC::JIT::privateCompile):
18227 (JSC::JIT::privateCompileCTIMachineTrampolines):
18229 (JSC::JIT::compileCTIMachineTrampolines):
18231 (JSC::JIT::privateCompilePutByIdTransition):
18232 (JSC::JIT::privateCompilePatchGetArrayLength):
18233 (JSC::JIT::privateCompileGetByIdSelf):
18234 (JSC::JIT::privateCompileGetByIdProto):
18235 (JSC::JIT::privateCompileGetByIdSelfList):
18236 (JSC::JIT::privateCompileGetByIdProtoList):
18237 (JSC::JIT::privateCompileGetByIdChainList):
18238 (JSC::JIT::privateCompileGetByIdChain):
18239 (JSC::JIT::privateCompilePutByIdReplace):
18241 (JSC::RegExpNode::emitBytecode):
18243 (JSC::JSGlobalData::poolForSize):
18245 (JSC::RegExp::RegExp):
18246 (JSC::RegExp::create):
18247 (JSC::RegExp::~RegExp):
18250 (JSC::constructRegExp):
18252 (JSC::regExpProtoFuncCompile):
18254 (JSC::stringProtoFuncMatch):
18255 (JSC::stringProtoFuncSearch):
18257 (JSC::WREC::Generator::compileRegExp):
18272 (JSC::JIT::compileGetByIdHotPath):
18273 (JSC::JIT::compilePutByIdHotPath):
18285 (JSC::CodeBlock::CodeBlock):
18313 (JSC::locationForOffset):
18314 (JSC::printConditionalJump):
18315 (JSC::printGetByIdOp):
18316 (JSC::printPutByIdOp):
18317 (JSC::CodeBlock::printStructure):
18318 (JSC::CodeBlock::printStructures):
18319 (JSC::CodeBlock::dump):
18320 (JSC::CodeBlock::~CodeBlock):
18321 (JSC::CodeBlock::unlinkCallers):
18322 (JSC::CodeBlock::derefStructures):
18323 (JSC::CodeBlock::refStructures):
18324 (JSC::CodeBlock::mark):
18325 (JSC::CodeBlock::getHandlerForVPC):
18326 (JSC::CodeBlock::nativeExceptionCodeForHandlerVPC):
18327 (JSC::CodeBlock::lineNumberForVPC):
18328 (JSC::CodeBlock::expressionRangeForVPC):
18329 (JSC::CodeBlock::shrinkToFit):
18331 (JSC::CodeBlock::CodeBlock):
18332 (JSC::CodeBlock::addCaller):
18333 (JSC::CodeBlock::removeCaller):
18334 (JSC::CodeBlock::isKnownNotImmediate):
18335 (JSC::CodeBlock::isConstantRegisterIndex):
18336 (JSC::CodeBlock::getConstant):
18337 (JSC::CodeBlock::isTemporaryRegisterIndex):
18338 (JSC::CodeBlock::getStubInfo):
18339 (JSC::CodeBlock::getCallLinkInfo):
18340 (JSC::CodeBlock::instructions):
18341 (JSC::CodeBlock::setJITCode):
18342 (JSC::CodeBlock::jitCode):
18343 (JSC::CodeBlock::ownerNode):
18344 (JSC::CodeBlock::setGlobalData):
18345 (JSC::CodeBlock::setThisRegister):
18346 (JSC::CodeBlock::thisRegister):
18347 (JSC::CodeBlock::setNeedsFullScopeChain):
18348 (JSC::CodeBlock::needsFullScopeChain):
18349 (JSC::CodeBlock::setUsesEval):
18350 (JSC::CodeBlock::usesEval):
18351 (JSC::CodeBlock::setUsesArguments):
18352 (JSC::CodeBlock::usesArguments):
18353 (JSC::CodeBlock::codeType):
18354 (JSC::CodeBlock::source):
18355 (JSC::CodeBlock::sourceOffset):
18356 (JSC::CodeBlock::addGlobalResolveInstruction):
18357 (JSC::CodeBlock::numberOfPropertyAccessInstructions):
18358 (JSC::CodeBlock::addPropertyAccessInstruction):
18359 (JSC::CodeBlock::propertyAccessInstruction):
18360 (JSC::CodeBlock::numberOfCallLinkInfos):
18361 (JSC::CodeBlock::addCallLinkInfo):
18362 (JSC::CodeBlock::callLinkInfo):
18363 (JSC::CodeBlock::numberOfJumpTargets):
18364 (JSC::CodeBlock::addJumpTarget):
18365 (JSC::CodeBlock::jumpTarget):
18366 (JSC::CodeBlock::lastJumpTarget):
18367 (JSC::CodeBlock::numberOfExceptionHandlers):
18368 (JSC::CodeBlock::addExceptionHandler):
18369 (JSC::CodeBlock::exceptionHandler):
18370 (JSC::CodeBlock::addExpressionInfo):
18371 (JSC::CodeBlock::numberOfLineInfos):
18372 (JSC::CodeBlock::addLineInfo):
18373 (JSC::CodeBlock::lastLineInfo):
18374 (JSC::CodeBlock::jitReturnAddressVPCMap):
18375 (JSC::CodeBlock::numberOfIdentifiers):
18376 (JSC::CodeBlock::addIdentifier):
18377 (JSC::CodeBlock::identifier):
18378 (JSC::CodeBlock::numberOfConstantRegisters):
18379 (JSC::CodeBlock::addConstantRegister):
18380 (JSC::CodeBlock::constantRegister):
18381 (JSC::CodeBlock::addFunction):
18382 (JSC::CodeBlock::function):
18383 (JSC::CodeBlock::addFunctionExpression):
18384 (JSC::CodeBlock::functionExpression):
18385 (JSC::CodeBlock::addUnexpectedConstant):
18386 (JSC::CodeBlock::unexpectedConstant):
18387 (JSC::CodeBlock::addRegExp):
18388 (JSC::CodeBlock::regexp):
18389 (JSC::CodeBlock::symbolTable):
18390 (JSC::CodeBlock::evalCodeCache):
18393 (JSC::ProgramCodeBlock::ProgramCodeBlock):
18394 (JSC::ProgramCodeBlock::~ProgramCodeBlock):
18395 (JSC::ProgramCodeBlock::clearGlobalObject):
18397 (JSC::ScopeSampleRecord::sample):
18398 (JSC::SamplingTool::dump):
18441 (JSC::MacroAssembler::je32):
18442 (JSC::MacroAssembler::jne32):
18444 (JSC::JIT::compileOpStrictEq):
18446 (JSC::WREC::Generator::generateEnter):
18447 (JSC::WREC::Generator::generateNonGreedyQuantifier):
18448 (JSC::WREC::Generator::generateGreedyQuantifier):
18449 (JSC::WREC::Generator::generatePatternCharacterPair):
18450 (JSC::WREC::Generator::generatePatternCharacter):
18451 (JSC::WREC::Generator::generateCharacterClassInvertedRange):
18452 (JSC::WREC::Generator::generateCharacterClassInverted):
18453 (JSC::WREC::Generator::generateAssertionBOL):
18454 (JSC::WREC::Generator::generateAssertionWordBoundary):
18463 (JSC::MacroAssembler::mul32):
18464 (JSC::MacroAssembler::jl32):
18465 (JSC::MacroAssembler::jnzSub32):
18466 (JSC::MacroAssembler::joAdd32):
18467 (JSC::MacroAssembler::joMul32):
18468 (JSC::MacroAssembler::jzSub32):
18470 (JSC::JIT::emitSlowScriptCheck):
18471 (JSC::JIT::privateCompileMainPass):
18472 (JSC::JIT::privateCompileSlowCases):
18473 (JSC::JIT::privateCompileCTIMachineTrampolines):
18476 (JSC::JIT::emitJumpIfNotJSCell):
18477 (JSC::JIT::emitJumpSlowCaseIfNotJSCell):
18499 (JSC::HashTable::createTable): Added version of createTable() for
18501 (JSC::HashTable::deleteTable): Updated to work with compact hash
18504 (JSC::HashEntry::initialize): Set m_next to zero when using compact
18506 (JSC::HashEntry::setNext): Added for compact hash tables.
18507 (JSC::HashEntry::next): Added for compact hash tables.
18508 (JSC::HashTable::entry): Added version of entry() for use with
18511 (JSC::Structure::getEnumerablePropertyNames): Updated to work with
18523 (JSC::JIT::privateCompileSlowCases):
18536 (JSC::JIT::compileOpStrictEq):
18537 (JSC::JIT::privateCompileSlowCases):
18540 (JSC::JIT::emitJumpIfJSCell):
18541 (JSC::JIT::emitJumpSlowCaseIfJSCell):
18556 (JSC::MacroAssembler::Jump::Jump):
18557 (JSC::MacroAssembler::Jump::link):
18558 (JSC::MacroAssembler::Jump::linkTo):
18559 (JSC::MacroAssembler::JumpList::link):
18560 (JSC::MacroAssembler::JumpList::linkTo):
18561 (JSC::MacroAssembler::jae32):
18562 (JSC::MacroAssembler::je32):
18563 (JSC::MacroAssembler::je16):
18564 (JSC::MacroAssembler::jg32):
18565 (JSC::MacroAssembler::jge32):
18566 (JSC::MacroAssembler::jl32):
18567 (JSC::MacroAssembler::jle32):
18568 (JSC::MacroAssembler::jnePtr):
18569 (JSC::MacroAssembler::jne32):
18570 (JSC::MacroAssembler::jnset32):
18571 (JSC::MacroAssembler::jset32):
18572 (JSC::MacroAssembler::jump):
18573 (JSC::MacroAssembler::jzSub32):
18574 (JSC::MacroAssembler::joAdd32):
18575 (JSC::MacroAssembler::call):
18577 (JSC::WREC::Generator::compileRegExp):
18579 (JSC::WREC::Generator::generateEnter):
18580 (JSC::WREC::Generator::generateBackreferenceQuantifier):
18581 (JSC::WREC::Generator::generateNonGreedyQuantifier):
18582 (JSC::WREC::Generator::generateGreedyQuantifier):
18583 (JSC::WREC::Generator::generatePatternCharacter):
18584 (JSC::WREC::Generator::generateCharacterClassInvertedRange):
18585 (JSC::WREC::Generator::generateCharacterClassInverted):
18586 (JSC::WREC::Generator::generateCharacterClass):
18587 (JSC::WREC::Generator::generateParenthesesAssertion):
18588 (JSC::WREC::Generator::generateParenthesesInvertedAssertion):
18589 (JSC::WREC::Generator::generateParenthesesNonGreedy):
18590 (JSC::WREC::Generator::generateParenthesesResetTrampoline):
18591 (JSC::WREC::Generator::generateAssertionBOL):
18592 (JSC::WREC::Generator::generateAssertionEOL):
18593 (JSC::WREC::Generator::generateAssertionWordBoundary):
18594 (JSC::WREC::Generator::generateBackreference):
18595 (JSC::WREC::Generator::terminateAlternative):
18596 (JSC::WREC::Generator::terminateDisjunction):
18607 (JSC::Interpreter::cti_timeout_check):
18610 (JSC::JIT::emitSlowScriptCheck):
18620 (JSC::CodeBlock::dump):
18621 (JSC::CodeBlock::shrinkToFit):
18623 (JSC::CodeBlock::numberOfImmediateSwitchJumpTables):
18624 (JSC::CodeBlock::addImmediateSwitchJumpTable):
18625 (JSC::CodeBlock::immediateSwitchJumpTable):
18626 (JSC::CodeBlock::numberOfCharacterSwitchJumpTables):
18627 (JSC::CodeBlock::addCharacterSwitchJumpTable):
18628 (JSC::CodeBlock::characterSwitchJumpTable):
18629 (JSC::CodeBlock::numberOfStringSwitchJumpTables):
18630 (JSC::CodeBlock::addStringSwitchJumpTable):
18631 (JSC::CodeBlock::stringSwitchJumpTable):
18633 (JSC::BytecodeGenerator::generate):
18634 (JSC::BytecodeGenerator::endSwitch):
18636 (JSC::Interpreter::privateExecute):
18637 (JSC::Interpreter::cti_op_switch_imm):
18638 (JSC::Interpreter::cti_op_switch_char):
18639 (JSC::Interpreter::cti_op_switch_string):
18641 (JSC::JIT::privateCompileMainPass):
18648 (JSC::JIT::restoreArgumentReference):
18649 (JSC::JIT::restoreArgumentReferenceForTrampoline):
18662 (JSC::WREC::Generator::generateParenthesesAssertion):
18663 (JSC::WREC::Generator::generateParenthesesInvertedAssertion): Split the
18668 (JSC::WREC::Generator::): Moved an enum to the top of the class definition,
18672 (JSC::WREC::Parser::parseParentheses):
18673 (JSC::WREC::Parser::consumeParenthesesType):
18675 (JSC::WREC::Parser::): Added support for parsing (?=) and (?!).
18705 (JSC::MacroAssembler::Jump::operator X86Assembler::JmpSrc):
18706 (JSC::MacroAssembler::add32):
18707 (JSC::MacroAssembler::and32):
18708 (JSC::MacroAssembler::lshift32):
18709 (JSC::MacroAssembler::rshift32):
18710 (JSC::MacroAssembler::storePtr):
18711 (JSC::MacroAssembler::store32):
18712 (JSC::MacroAssembler::poke):
18713 (JSC::MacroAssembler::move):
18714 (JSC::MacroAssembler::compareImm32ForBranchEquality):
18715 (JSC::MacroAssembler::jnePtr):
18716 (JSC::MacroAssembler::jnset32):
18717 (JSC::MacroAssembler::jset32):
18718 (JSC::MacroAssembler::jzeroSub32):
18719 (JSC::MacroAssembler::joverAdd32):
18720 (JSC::MacroAssembler::call):
18722 (JSC::X86Assembler::shll_i8r):
18724 (JSC::JIT::privateCompileMainPass):
18725 (JSC::JIT::privateCompile):
18726 (JSC::JIT::privateCompileCTIMachineTrampolines):
18729 (JSC::JIT::compileBinaryArithOp):
18731 (JSC::JIT::emitGetVirtualRegister):
18732 (JSC::JIT::emitPutCTIArg):
18733 (JSC::JIT::emitPutCTIArgConstant):
18734 (JSC::JIT::emitGetCTIArg):
18735 (JSC::JIT::emitPutCTIArgFromVirtualRegister):
18736 (JSC::JIT::emitPutCTIParam):
18737 (JSC::JIT::emitGetCTIParam):
18738 (JSC::JIT::emitPutToCallFrameHeader):
18739 (JSC::JIT::emitPutImmediateToCallFrameHeader):
18740 (JSC::JIT::emitGetFromCallFrameHeader):
18741 (JSC::JIT::emitPutVirtualRegister):
18742 (JSC::JIT::emitInitRegister):
18743 (JSC::JIT::emitNakedCall):
18744 (JSC::JIT::restoreArgumentReference):
18745 (JSC::JIT::restoreArgumentReferenceForTrampoline):
18746 (JSC::JIT::emitCTICall):
18747 (JSC::JIT::checkStructure):
18748 (JSC::JIT::emitJumpSlowCaseIfNotJSCell):
18749 (JSC::JIT::emitJumpSlowCaseIfNotImmNum):
18750 (JSC::JIT::emitJumpSlowCaseIfNotImmNums):
18751 (JSC::JIT::emitFastArithDeTagImmediate):
18752 (JSC::JIT::emitFastArithDeTagImmediateJumpIfZero):
18753 (JSC::JIT::emitFastArithReTagImmediate):
18754 (JSC::JIT::emitFastArithPotentiallyReTagImmediate):
18755 (JSC::JIT::emitFastArithImmToInt):
18756 (JSC::JIT::emitFastArithIntToImmOrSlowCase):
18757 (JSC::JIT::emitFastArithIntToImmNoCheck):
18758 (JSC::JIT::emitTagAsBoolImmediate):
18760 (JSC::JIT::privateCompilePutByIdTransition):
18771 (JSC::WREC::Generator::generateGreedyQuantifier): Clarified label
18775 (JSC::WREC::Parser::parseAlternative): Added a version of parseAlternative
18806 Enable the JSC jit for the Qt build by default for release builds on
18822 (JSC::JIT::privateCompileMainPass):
18823 (JSC::JIT::privateCompileSlowCases):
18826 (JSC::JIT::compileBinaryArithOp):
18827 (JSC::JIT::compileBinaryArithOpSlowCase):
18829 (JSC::JIT::compileGetByIdHotPath):
18830 (JSC::JIT::compileGetByIdSlowCase):
18831 (JSC::JIT::compilePutByIdHotPath):
18832 (JSC::JIT::compilePutByIdSlowCase):
18833 (JSC::resizePropertyStorage):
18834 (JSC::transitionWillNeedStorageRealloc):
18835 (JSC::JIT::privateCompilePutByIdTransition):
18836 (JSC::JIT::patchGetByIdSelf):
18837 (JSC::JIT::patchPutByIdReplace):
18838 (JSC::JIT::privateCompilePatchGetArrayLength):
18851 (JSC::MacroAssembler::load32):
18852 (JSC::MacroAssembler::jge32): Filled out a few more macro methods.
18855 (JSC::X86Assembler::movl_mr): Added a verion of movl_mr that operates
18859 (JSC::WREC::Generator::compileRegExp): Test the saved value of index
18869 (JSC::WREC::Generator::generateIncrementIndex): Added support for
18873 (JSC::WREC::Generator::generatePatternCharacterSequence):
18874 (JSC::WREC::Generator::generatePatternCharacterPair): This is the
18878 (JSC::WREC::Generator::generatePatternCharacter): Changed to use isASCII,
18896 (JSC::JIT::privateCompileSlowCases):
18899 (JSC::JIT::compileOpCallInitializeCallFrame):
18900 (JSC::JIT::compileOpCallSetupArgs):
18901 (JSC::JIT::compileOpCallEvalSetupArgs):
18902 (JSC::JIT::compileOpConstructSetupArgs):
18903 (JSC::JIT::compileOpCall):
18904 (JSC::JIT::compileOpCallSlowCase):
18905 (JSC::unreachable):
18907 (JSC::JIT::checkStructure):
18908 (JSC::JIT::emitFastArithPotentiallyReTagImmediate):
18909 (JSC::JIT::emitTagAsBoolImmediate):
18925 (JSC::X86Assembler::orl_i32r):
18937 (JSC::AssemblerBuffer::AssemblerBuffer):
18938 (JSC::AssemblerBuffer::~AssemblerBuffer):
18939 (JSC::AssemblerBuffer::grow):
18941 (JSC::MacroAssembler::MacroAssembler):
18943 (JSC::X86Assembler::X86Assembler):
18945 (JSC::Interpreter::Interpreter):
18948 (JSC::JIT::JIT):
18950 (JSC::RegExpNode::emitBytecode):
18952 (JSC::RegExp::RegExp):
18953 (JSC::RegExp::create):
18956 (JSC::constructRegExp):
18958 (JSC::regExpProtoFuncCompile):
18960 (JSC::stringProtoFuncMatch):
18961 (JSC::stringProtoFuncSearch):
18963 (JSC::WREC::Generator::compileRegExp):
18965 (JSC::WREC::Generator::Generator):
18967 (JSC::WREC::Parser::Parser):
18980 (JSC::MacroAssembler::or32): Updated to choose between 8bit and 32bit OR.
18983 (JSC::X86Assembler::orl_i8r): The old orl_i32r.
18984 (JSC::X86Assembler::orl_i32r): The new orl_i32r.
18987 (JSC::JIT::emitFastArithPotentiallyReTagImmediate):
18988 (JSC::JIT::emitTagAsBoolImmediate): Use orl_i8r, since we're ORing 8bit
19019 (JSC::BytecodeGenerator::ignoredResult):
19022 (JSC::NullNode::emitBytecode):
19023 (JSC::BooleanNode::emitBytecode):
19024 (JSC::NumberNode::emitBytecode):
19025 (JSC::StringNode::emitBytecode):
19026 (JSC::RegExpNode::emitBytecode):
19027 (JSC::ThisNode::emitBytecode):
19028 (JSC::ResolveNode::emitBytecode):
19029 (JSC::ObjectLiteralNode::emitBytecode):
19030 (JSC::PostfixResolveNode::emitBytecode):
19031 (JSC::PostfixBracketNode::emitBytecode):
19032 (JSC::PostfixDotNode::emitBytecode):
19033 (JSC::DeleteValueNode::emitBytecode):
19034 (JSC::VoidNode::emitBytecode):
19035 (JSC::TypeOfResolveNode::emitBytecode):
19036 (JSC::TypeOfValueNode::emitBytecode):
19037 (JSC::PrefixResolveNode::emitBytecode):
19038 (JSC::AssignResolveNode::emitBytecode):
19039 (JSC::CommaNode::emitBytecode):
19040 (JSC::ForNode::emitBytecode):
19041 (JSC::ForInNode::emitBytecode):
19042 (JSC::ReturnNode::emitBytecode):
19043 (JSC::ThrowNode::emitBytecode):
19044 (JSC::FunctionBodyNode::emitBytecode):
19045 (JSC::FuncDeclNode::emitBytecode):
19064 (JSC::WREC::Generator::compileRegExp):
19066 (JSC::WREC::Generator::generateJumpIfEndOfInput):
19077 (JSC::JIT::privateCompileMainPass):
19078 (JSC::JIT::privateCompileSlowCases):
19090 (JSC::SegmentedVector::SegmentedVector):
19091 (JSC::SegmentedVector::~SegmentedVector):
19092 (JSC::SegmentedVector::size):
19093 (JSC::SegmentedVector::at):
19094 (JSC::SegmentedVector::operator[]):
19095 (JSC::SegmentedVector::last):
19096 (JSC::SegmentedVector::append):
19097 (JSC::SegmentedVector::removeLast):
19098 (JSC::SegmentedVector::grow):
19099 (JSC::SegmentedVector::clear):
19100 (JSC::SegmentedVector::deleteAllSegments):
19101 (JSC::SegmentedVector::segmentFor):
19102 (JSC::SegmentedVector::subscriptFor):
19103 (JSC::SegmentedVector::ensureSegmentsFor):
19104 (JSC::SegmentedVector::ensureSegment):
19121 (JSC::X86Assembler::):
19123 (JSC::CodeBlock::dump):
19125 (JSC::Instruction::):
19127 (JSC::BytecodeGenerator::emitUnaryOp):
19129 (JSC::BytecodeGenerator::emitToJSNumber):
19130 (JSC::BytecodeGenerator::emitTypeOf):
19131 (JSC::BytecodeGenerator::emitGetPropertyNames):
19133 (JSC::Interpreter::privateExecute):
19136 (JSC::JIT::privateCompileMainPass):
19137 (JSC::JIT::privateCompileSlowCases):
19140 (JSC::UnaryOpNode::emitBytecode):
19141 (JSC::BinaryOpNode::emitBytecode):
19142 (JSC::EqualNode::emitBytecode):
19144 (JSC::ResultType::isReusable):
19145 (JSC::ResultType::mightBeNumber):
19156 (JSC::JIT::emitCTICall):
19157 (JSC::JIT::compileOpCall):
19158 (JSC::JIT::emitSlowScriptCheck):
19159 (JSC::JIT::compileBinaryArithOpSlowCase):
19160 (JSC::JIT::privateCompileMainPass):
19161 (JSC::JIT::privateCompileSlowCases):
19162 (JSC::JIT::privateCompile):
19172 (JSC::JSFunction::info): Add InternalFunction::info as parent class
19200 (JSC::WREC::Quantifier::Quantifier): Simplified this constructor slightly,
19204 (JSC::WREC::Generator::generatePatternCharacterSequence):
19209 (JSC::WREC::Parser::consumeGreedyQuantifier):
19210 (JSC::WREC::Parser::consumeQuantifier): Renamed "parse" to "consume" in
19213 (JSC::WREC::Parser::parsePatternCharacterSequence): New function for
19216 (JSC::WREC::Parser::parseCharacterClassQuantifier):
19217 (JSC::WREC::Parser::parseBackreferenceQuantifier): Renamed "parse" to
19220 (JSC::WREC::Parser::parseCharacterClass): Refactored to use the common
19223 (JSC::WREC::Parser::parseEscape): Refactored to use the common
19226 (JSC::WREC::Parser::consumeEscape): Factored escaped token processing
19229 (JSC::WREC::Parser::parseTerm): Refactored to use the common
19233 (JSC::WREC::Parser::consumeOctal): Refactored to use a helper function
19253 (JSC::BytecodeGenerator::BytecodeGenerator): Use grow() instead of
19256 (JSC::SegmentedVector::SegmentedVector):
19257 (JSC::SegmentedVector::last):
19258 (JSC::SegmentedVector::append):
19259 (JSC::SegmentedVector::removeLast):
19260 (JSC::SegmentedVector::grow): Renamed from reserveCapacity().
19261 (JSC::SegmentedVector::clear):
19341 (JSC::MacroAssembler::addPtr):
19342 (JSC::MacroAssembler::loadPtr):
19343 (JSC::MacroAssembler::storePtr):
19344 (JSC::MacroAssembler::pop):
19345 (JSC::MacroAssembler::push):
19346 (JSC::MacroAssembler::move):
19348 (JSC::X86Assembler::):
19349 (JSC::X86Assembler::movq_rr):
19350 (JSC::X86Assembler::addl_i8m):
19351 (JSC::X86Assembler::addl_i32r):
19352 (JSC::X86Assembler::addq_i8r):
19353 (JSC::X86Assembler::addq_i32r):
19354 (JSC::X86Assembler::movq_mr):
19355 (JSC::X86Assembler::movq_rm):
19358 (JSC::WREC::Generator::generateEnter):
19359 (JSC::WREC::Generator::generateReturnSuccess):
19360 (JSC::WREC::Generator::generateReturnFailure):
19380 (JSC::BytecodeGenerator::BytecodeGenerator): Use reserveCapacity()
19383 (JSC::SegmentedVector::resize): Removed.
19384 (JSC::SegmentedVector::reserveCapacity): Added.
19385 (JSC::SegmentedVector::clear): Added.
19386 (JSC::SegmentedVector::shrink): Removed.
19387 (JSC::SegmentedVector::grow): Removed.
19389 (JSC::Lexer::clear): Use clear() instead of resize(0).
19398 (JSC::MacroAssembler::JumpList::link):
19399 (JSC::MacroAssembler::JumpList::linkTo):
19400 (JSC::MacroAssembler::JumpList::append):
19423 (JSC::Heap::objectCount):
19424 (JSC::addToStatistics):
19425 (JSC::Heap::statistics):
19473 (JSC::MacroAssembler::):
19474 (JSC::MacroAssembler::MacroAssembler):
19475 (JSC::MacroAssembler::copyCode):
19476 (JSC::MacroAssembler::Address::Address):
19477 (JSC::MacroAssembler::ImplicitAddress::ImplicitAddress):
19478 (JSC::MacroAssembler::BaseIndex::BaseIndex):
19479 (JSC::MacroAssembler::Label::Label):
19480 (JSC::MacroAssembler::Jump::Jump):
19481 (JSC::MacroAssembler::Jump::link):
19482 (JSC::MacroAssembler::Jump::linkTo):
19483 (JSC::MacroAssembler::JumpList::link):
19484 (JSC::MacroAssembler::JumpList::linkTo):
19485 (JSC::MacroAssembler::JumpList::append):
19486 (JSC::MacroAssembler::Imm32::Imm32):
19487 (JSC::MacroAssembler::add32):
19488 (JSC::MacroAssembler::or32):
19489 (JSC::MacroAssembler::sub32):
19490 (JSC::MacroAssembler::loadPtr):
19491 (JSC::MacroAssembler::load32):
19492 (JSC::MacroAssembler::load16):
19493 (JSC::MacroAssembler::storePtr):
19494 (JSC::MacroAssembler::store32):
19495 (JSC::MacroAssembler::pop):
19496 (JSC::MacroAssembler::push):
19497 (JSC::MacroAssembler::peek):
19498 (JSC::MacroAssembler::poke):
19499 (JSC::MacroAssembler::move):
19500 (JSC::MacroAssembler::compareImm32ForBranch):
19501 (JSC::MacroAssembler::compareImm32ForBranchEquality):
19502 (JSC::MacroAssembler::jae32):
19503 (JSC::MacroAssembler::je32):
19504 (JSC::MacroAssembler::je16):
19505 (JSC::MacroAssembler::jg32):
19506 (JSC::MacroAssembler::jge32):
19507 (JSC::MacroAssembler::jl32):
19508 (JSC::MacroAssembler::jle32):
19509 (JSC::MacroAssembler::jne32):
19510 (JSC::MacroAssembler::jump):
19511 (JSC::MacroAssembler::breakpoint):
19512 (JSC::MacroAssembler::ret):
19514 (JSC::X86Assembler::cmpw_rm):
19516 (JSC::Interpreter::Interpreter):
19518 (JSC::Interpreter::assemblerBuffer):
19520 (JSC::RegExp::RegExp):
19522 (JSC::WREC::Generator::compileRegExp):
19525 (JSC::WREC::GeneratePatternCharacterFunctor::generateAtom):
19526 (JSC::WREC::GenerateCharacterClassFunctor::generateAtom):
19527 (JSC::WREC::GenerateBackreferenceFunctor::generateAtom):
19528 (JSC::WREC::GenerateParenthesesNonGreedyFunctor::generateAtom):
19530 (JSC::WREC::GenerateParenthesesNonGreedyFunctor::GenerateParenthesesNonGreedyFunctor):
19532 (JSC::WREC::Generator::generateEnter):
19533 (JSC::WREC::Generator::generateReturnSuccess):
19534 (JSC::WREC::Generator::generateSaveIndex):
19535 (JSC::WREC::Generator::generateIncrementIndex):
19536 (JSC::WREC::Generator::generateLoadCharacter):
19537 (JSC::WREC::Generator::generateJumpIfEndOfInput):
19538 (JSC::WREC::Generator::generateJumpIfNotEndOfInput):
19539 (JSC::WREC::Generator::generateReturnFailure):
19540 (JSC::WREC::Generator::generateBacktrack1):
19541 (JSC::WREC::Generator::generateBacktrackBackreference):
19542 (JSC::WREC::Generator::generateBackreferenceQuantifier):
19543 (JSC::WREC::Generator::generateNonGreedyQuantifier):
19544 (JSC::WREC::Generator::generateGreedyQuantifier):
19545 (JSC::WREC::Generator::generatePatternCharacter):
19546 (JSC::WREC::Generator::generateCharacterClassInvertedRange):
19547 (JSC::WREC::Generator::generateCharacterClassInverted):
19548 (JSC::WREC::Generator::generateCharacterClass):
19549 (JSC::WREC::Generator::generateParentheses):
19550 (JSC::WREC::Generator::generateParenthesesNonGreedy):
19551 (JSC::WREC::Generator::generateParenthesesResetTrampoline):
19552 (JSC::WREC::Generator::generateAssertionBOL):
19553 (JSC::WREC::Generator::generateAssertionEOL):
19554 (JSC::WREC::Generator::generateAssertionWordBoundary):
19555 (JSC::WREC::Generator::generateBackreference):
19556 (JSC::WREC::Generator::terminateAlternative):
19557 (JSC::WREC::Generator::terminateDisjunction):
19559 (JSC::WREC::Generator::Generator):
19561 (JSC::WREC::Parser::parsePatternCharacterQualifier):
19562 (JSC::WREC::Parser::parseCharacterClassQuantifier):
19563 (JSC::WREC::Parser::parseBackreferenceQuantifier):
19564 (JSC::WREC::Parser::parseParentheses):
19565 (JSC::WREC::Parser::parseCharacterClass):
19566 (JSC::WREC::Parser::parseOctalEscape):
19567 (JSC::WREC::Parser::parseEscape):
19568 (JSC::WREC::Parser::parseTerm):
19569 (JSC::WREC::Parser::parseDisjunction):
19571 (JSC::WREC::Parser::Parser):
19572 (JSC::WREC::Parser::parsePattern):
19573 (JSC::WREC::Parser::parseAlternative):
19587 (JSC::parseLong):
19588 (JSC::parseDate):
19597 (JSC::lowResUTCTime):
19615 (JSC::JSFunction::setBody):
19624 (JSC::Interpreter::cti_op_call_JSFunction):
19625 (JSC::Interpreter::cti_vm_dontLazyLinkCall):
19626 (JSC::Interpreter::cti_vm_lazyLinkCall):
19628 (JSC::createCallIdentifierFromFunctionImp):
19630 (JSC::Arguments::getArgumentsData):
19631 (JSC::Arguments::Arguments):
19633 (JSC::functionProtoFuncToString):
19635 (JSC::JSFunction::JSFunction):
19636 (JSC::JSFunction::body):
19677 Fix the JSC Chromium Mac build by adding JavaScriptCore/icu into the include path
19710 (JSC::PolymorphicAccessStructureList::PolymorphicStubInfo::):
19711 (JSC::PolymorphicAccessStructureList::PolymorphicStubInfo::set):
19712 (JSC::PolymorphicAccessStructureList::PolymorphicAccessStructureList):
19713 (JSC::PolymorphicAccessStructureList::derefStructures):
19715 (JSC::countPrototypeChainEntriesAndCheckForProxies):
19716 (JSC::Interpreter::tryCacheGetByID):
19717 (JSC::Interpreter::privateExecute):
19718 (JSC::Interpreter::tryCTICacheGetByID):
19719 (JSC::Interpreter::cti_op_get_by_id_self_fail):
19720 (JSC::getPolymorphicAccessStructureListSlot):
19721 (JSC::Interpreter::cti_op_get_by_id_proto_list):
19724 (JSC::JIT::privateCompileGetByIdProto):
19725 (JSC::JIT::privateCompileGetByIdSelfList):
19726 (JSC::JIT::privateCompileGetByIdProtoList):
19727 (JSC::JIT::privateCompileGetByIdChainList):
19728 (JSC::JIT::privateCompileGetByIdChain):
19729 (JSC::JIT::privateCompilePatchGetArrayLength):
19731 (JSC::JIT::compileGetByIdChainList):
19743 (JSC::Heap::heapAllocate):
19760 (JSC::FuncDeclNode::emitBytecode): Avoid returning ignoredResult()
19774 (JSC::WREC::compileRegExp):
19776 (JSC::WREC::Generator::generateJumpIfEndOfInput):
19777 (JSC::WREC::Generator::generateJumpIfNotEndOfInput):
19780 (JSC::WREC::Parser::error):
19781 (JSC::WREC::Parser::parsePattern):
19790 (JSC::WREC::Generator::generateEnter):
19791 (JSC::WREC::Generator::generateReturnSuccess):
19792 (JSC::WREC::Generator::generateSaveIndex):
19793 (JSC::WREC::Generator::generateIncrementIndex):
19794 (JSC::WREC::Generator::generateLoopIfNotEndOfInput):
19795 (JSC::WREC::Generator::generateReturnFailure):
19805 (JSC::WREC::Parser::Parser):
19806 (JSC::WREC::Parser::generator):
19807 (JSC::WREC::Parser::ignoreCase):
19808 (JSC::WREC::Parser::multiline):
19809 (JSC::WREC::Parser::recordSubpattern):
19810 (JSC::WREC::Parser::numSubpatterns):
19811 (JSC::WREC::Parser::parsePattern):
19812 (JSC::WREC::Parser::parseAlternative):
19813 (JSC::WREC::Parser::reset):
19828 (JSC::JIT::privateCompileGetByIdProto):
19829 (JSC::JIT::privateCompileGetByIdChain):
19863 (JSC::JIT::privateCompileGetByIdChain):
19877 (JSC::CodeBlock::dump):
19878 (JSC::CodeBlock::derefStructures):
19879 (JSC::PrototypeStructureList::derefStructures):
19883 (JSC::Interpreter::privateExecute):
19884 (JSC::Interpreter::cti_op_get_by_id_self_fail):
19886 (JSC::JIT::privateCompileMainPass):
19887 (JSC::JIT::privateCompileGetByIdSelfList):
19888 (JSC::JIT::patchGetByIdSelf):
19890 (JSC::JIT::compileGetByIdSelfList):
19913 (JSC::WREC::Generator::generateLoadCharacter):
19914 (JSC::WREC::Generator::generatePatternCharacter):
19915 (JSC::WREC::Generator::generateCharacterClass):
19916 (JSC::WREC::Generator::generateAssertionEOL):
19917 (JSC::WREC::Generator::generateAssertionWordBoundary):
19942 (JSC::Heap::heapAllocate):
19943 (JSC::Heap::collect):
19972 (JSC::X86Assembler::executableCopy):
19974 (JSC::JIT::privateCompile):
19975 (JSC::JIT::privateCompileGetByIdSelf):
19976 (JSC::JIT::privateCompileGetByIdProto):
19977 (JSC::JIT::privateCompileGetByIdChain):
19978 (JSC::JIT::privateCompilePutByIdReplace):
19979 (JSC::JIT::privateCompilePutByIdTransition):
19980 (JSC::JIT::privateCompileCTIMachineTrampolines):
19981 (JSC::JIT::privateCompilePatchGetArrayLength):
19983 (JSC::WREC::compileRegExp):
19985 (JSC::WREC::Generator::generateEnter):
19986 (JSC::WREC::Generator::generateReturnSuccess):
19987 (JSC::WREC::Generator::generateSaveIndex):
19988 (JSC::WREC::Generator::generateIncrementIndex):
19989 (JSC::WREC::Generator::generateLoopIfNotEndOfInput):
19990 (JSC::WREC::Generator::generateReturnFailure):
19993 (JSC::WREC::Parser::ignoreCase):
19994 (JSC::WREC::Parser::generator):
20024 (JSC::WREC::GeneratePatternCharacterFunctor::generateAtom):
20025 (JSC::WREC::GeneratePatternCharacterFunctor::backtrack):
20026 (JSC::WREC::GenerateCharacterClassFunctor::generateAtom):
20027 (JSC::WREC::GenerateCharacterClassFunctor::backtrack):
20028 (JSC::WREC::GenerateBackreferenceFunctor::generateAtom):
20029 (JSC::WREC::GenerateBackreferenceFunctor::backtrack):
20030 (JSC::WREC::GenerateParenthesesNonGreedyFunctor::generateAtom):
20054 (JSC::CodeBlock::dump):
20055 (JSC::CodeBlock::derefStructures):
20057 (JSC::ProtoStructureList::ProtoStubInfo::set):
20058 (JSC::ProtoStructureList::ProtoStructureList):
20059 (JSC::Instruction::Instruction):
20060 (JSC::Instruction::):
20063 (JSC::Interpreter::privateExecute):
20064 (JSC::Interpreter::tryCTICacheGetByID):
20065 (JSC::Interpreter::cti_op_put_by_id_fail):
20066 (JSC::Interpreter::cti_op_get_by_id_self_fail):
20067 (JSC::Interpreter::cti_op_get_by_id_proto_list):
20068 (JSC::Interpreter::cti_op_get_by_id_proto_list_append):
20069 (JSC::Interpreter::cti_op_get_by_id_proto_list_full):
20070 (JSC::Interpreter::cti_op_get_by_id_proto_fail):
20071 (JSC::Interpreter::cti_op_get_by_id_chain_fail):
20072 (JSC::Interpreter::cti_op_get_by_id_array_fail):
20073 (JSC::Interpreter::cti_op_get_by_id_string_fail):
20076 (JSC::JIT::privateCompileMainPass):
20077 (JSC::JIT::privateCompileGetByIdSelf):
20078 (JSC::JIT::privateCompileGetByIdProto):
20079 (JSC::JIT::privateCompileGetByIdProtoList):
20080 (JSC::JIT::privateCompileGetByIdChain):
20081 (JSC::JIT::privateCompileCTIMachineTrampolines):
20082 (JSC::JIT::privateCompilePatchGetArrayLength):
20084 (JSC::JIT::compileGetByIdProtoList):
20109 (JSC::Parser::reparse):
20122 (JSC::X86Assembler::link):
20124 (JSC::WREC::compileRegExp):
20126 (JSC::WREC::Generator::generateNonGreedyQuantifier):
20127 (JSC::WREC::Generator::generateGreedyQuantifier):
20128 (JSC::WREC::Generator::generateCharacterClassInverted):
20129 (JSC::WREC::Generator::generateParentheses):
20130 (JSC::WREC::Generator::generateParenthesesResetTrampoline):
20131 (JSC::WREC::Generator::generateAssertionBOL):
20132 (JSC::WREC::Generator::generateAssertionEOL):
20133 (JSC::WREC::Generator::generateAssertionWordBoundary):
20134 (JSC::WREC::Generator::terminateAlternative):
20135 (JSC::WREC::Generator::terminateDisjunction):
20138 (JSC::WREC::Parser::consumeHex):
20158 (JSC::BytecodeGenerator::generate): Remove vector shrinking since this is now
20166 (JSC::Lexer::setCode): Fix bug where on reparse, the Lexer was confused about
20171 (JSC::Lexer::sourceCode): Positions are relative to the beginning of the buffer.
20174 (JSC::ScopeNodeData::ScopeNodeData): Move initialization of ScopeNode data here.
20175 (JSC::ScopeNode::ScopeNode): Add constructor that only sets the JSGlobalData
20177 (JSC::ScopeNode::~ScopeNode): Release m_children now that we don't inherit from
20179 (JSC::ScopeNode::releaseNodes): Ditto.
20180 (JSC::EvalNode::generateBytecode): Only shrink m_children, as we need to keep around
20182 (JSC::FunctionBodyNode::FunctionBodyNode): Add constructor that only sets the
20184 (JSC::FunctionBodyNode::create): Ditto.
20185 (JSC::FunctionBodyNode::generateBytecode): If we don't have the data, do a reparse
20187 (JSC::ProgramNode::generateBytecode): After generation, destroy the AST data.
20189 (JSC::ExpressionNode::): Add isFuncExprNode for FunctionConstructor.
20190 (JSC::StatementNode::): Add isExprStatementNode for FunctionConstructor.
20191 (JSC::ExprStatementNode::): Ditto.
20192 (JSC::ExprStatementNode::expr): Add accessor for FunctionConstructor.
20193 (JSC::FuncExprNode::): Add isFuncExprNode for FunctionConstructor
20195 (JSC::ScopeNode::adoptData): Adopts a ScopeNodeData.
20196 (JSC::ScopeNode::data): Accessor for ScopeNodeData.
20197 (JSC::ScopeNode::destroyData): Deletes the ScopeNodeData.
20198 (JSC::ScopeNode::setFeatures): Added.
20199 (JSC::ScopeNode::varStack): Added assert.
20200 (JSC::ScopeNode::functionStack): Ditto.
20201 (JSC::ScopeNode::children): Ditto.
20202 (JSC::ScopeNode::neededConstants): Ditto.
20206 (JSC::Parser::reparse): Reparse the SourceCode in the FunctionBodyNode and set
20211 (JSC::SourceCode::endOffset): Added for use in the lexer.
20214 (JSC::getFunctionBody): Assuming a ProgramNode with one FunctionExpression in it,
20216 (JSC::constructFunction): Make parsing functions in the form new Function(""), easier
20223 (JSC::operator!=): Added.
20234 (JSC::SegmentedVector::shrink): Fixed bug where m_size would not be
20238 (JSC::Lexer::Lexer):
20239 …(JSC::Lexer::isIdentStart): Use isASCIIAlpha and isASCII to avoid going into ICU in the common cas…
20240 …(JSC::Lexer::isIdentPart): Use isASCIIAlphanumeric and isASCII to avoid going into ICU in the comm…
20241 (JSC::isDecimalDigit): Use version in ASCIICType.h. Inlining it was a regression.
20242 (JSC::Lexer::isHexDigit): Ditto.
20243 (JSC::Lexer::isOctalDigit): Ditto.
20244 (JSC::Lexer::clear): Resize the m_identifiers SegmentedVector to initial
20251 (JSC::Lexer::makeIdentifier): Inline and return a reference to the added
20281 (JSC::Heap::Heap):
20282 (JSC::Heap::destroy):
20283 (JSC::Heap::makeUsableFromMultipleThreads):
20284 (JSC::Heap::registerThread):
20291 * runtime/JSGlobalData.cpp: (JSC::JSGlobalData::sharedInstance): Ditto.
20293 * runtime/JSGlobalData.h: (JSC::JSGlobalData::makeUsableFromMultipleThreads): Just forward
20315 (JSC::WREC::compileRegExp):
20317 (JSC::WREC::Generator::generateBacktrack1):
20318 (JSC::WREC::Generator::generateBacktrackBackreference):
20319 (JSC::WREC::Generator::generateBackreferenceQuantifier):
20320 (JSC::WREC::Generator::generateNonGreedyQuantifier):
20321 (JSC::WREC::Generator::generateGreedyQuantifier):
20322 (JSC::WREC::Generator::generatePatternCharacter):
20323 (JSC::WREC::Generator::generateCharacterClassInvertedRange):
20324 (JSC::WREC::Generator::generateCharacterClassInverted):
20325 (JSC::WREC::Generator::generateCharacterClass):
20326 (JSC::WREC::Generator::generateParentheses):
20327 (JSC::WREC::Generator::generateParenthesesResetTrampoline):
20328 (JSC::WREC::Generator::generateAssertionBOL):
20329 (JSC::WREC::Generator::generateAssertionEOL):
20330 (JSC::WREC::Generator::generateAssertionWordBoundary):
20331 (JSC::WREC::Generator::generateBackreference):
20332 (JSC::WREC::Generator::generateDisjunction):
20333 (JSC::WREC::Generator::terminateDisjunction):
20336 (JSC::WREC::Parser::parsePattern):
20357 (JSC::RegExp::match):
20360 (JSC::RegExpObject::match):
20362 (JSC::stringProtoFuncReplace):
20363 (JSC::stringProtoFuncMatch):
20364 (JSC::stringProtoFuncSearch):
20378 (JSC::X86Assembler::JmpSrc::JmpSrc):
20379 (JSC::X86Assembler::JmpDst::JmpDst):
20380 (JSC::X86Assembler::int3):
20381 (JSC::X86Assembler::pushl_m):
20382 (JSC::X86Assembler::popl_m):
20383 (JSC::X86Assembler::movl_rr):
20384 (JSC::X86Assembler::addl_rr):
20385 (JSC::X86Assembler::addl_i8r):
20386 (JSC::X86Assembler::addl_i8m):
20387 (JSC::X86Assembler::addl_i32r):
20388 (JSC::X86Assembler::addl_mr):
20389 (JSC::X86Assembler::andl_rr):
20390 (JSC::X86Assembler::andl_i32r):
20391 (JSC::X86Assembler::cmpl_i8r):
20392 (JSC::X86Assembler::cmpl_rr):
20393 (JSC::X86Assembler::cmpl_rm):
20394 (JSC::X86Assembler::cmpl_mr):
20395 (JSC::X86Assembler::cmpl_i32r):
20396 (JSC::X86Assembler::cmpl_i32m):
20397 (JSC::X86Assembler::cmpl_i8m):
20398 (JSC::X86Assembler::cmpw_rm):
20399 (JSC::X86Assembler::orl_rr):
20400 (JSC::X86Assembler::orl_mr):
20401 (JSC::X86Assembler::orl_i32r):
20402 (JSC::X86Assembler::subl_rr):
20403 (JSC::X86Assembler::subl_i8r):
20404 (JSC::X86Assembler::subl_i8m):
20405 (JSC::X86Assembler::subl_i32r):
20406 (JSC::X86Assembler::subl_mr):
20407 (JSC::X86Assembler::testl_i32r):
20408 (JSC::X86Assembler::testl_i32m):
20409 (JSC::X86Assembler::testl_rr):
20410 (JSC::X86Assembler::xorl_i8r):
20411 (JSC::X86Assembler::xorl_rr):
20412 (JSC::X86Assembler::sarl_i8r):
20413 (JSC::X86Assembler::sarl_CLr):
20414 (JSC::X86Assembler::shl_i8r):
20415 (JSC::X86Assembler::shll_CLr):
20416 (JSC::X86Assembler::imull_rr):
20417 (JSC::X86Assembler::imull_i32r):
20418 (JSC::X86Assembler::idivl_r):
20419 (JSC::X86Assembler::negl_r):
20420 (JSC::X86Assembler::movl_mr):
20421 (JSC::X86Assembler::movzbl_rr):
20422 (JSC::X86Assembler::movzwl_mr):
20423 (JSC::X86Assembler::movl_rm):
20424 (JSC::X86Assembler::movl_i32r):
20425 (JSC::X86Assembler::movl_i32m):
20426 (JSC::X86Assembler::leal_mr):
20427 (JSC::X86Assembler::jmp_r):
20428 (JSC::X86Assembler::jmp_m):
20429 (JSC::X86Assembler::movsd_mr):
20430 (JSC::X86Assembler::xorpd_mr):
20431 (JSC::X86Assembler::movsd_rm):
20432 (JSC::X86Assembler::movd_rr):
20433 (JSC::X86Assembler::cvtsi2sd_rr):
20434 (JSC::X86Assembler::cvttsd2si_rr):
20435 (JSC::X86Assembler::addsd_mr):
20436 (JSC::X86Assembler::subsd_mr):
20437 (JSC::X86Assembler::mulsd_mr):
20438 (JSC::X86Assembler::addsd_rr):
20439 (JSC::X86Assembler::subsd_rr):
20440 (JSC::X86Assembler::mulsd_rr):
20441 (JSC::X86Assembler::ucomis_rr):
20442 (JSC::X86Assembler::pextrw_irr):
20443 (JSC::X86Assembler::call):
20444 (JSC::X86Assembler::jmp):
20445 (JSC::X86Assembler::jne):
20446 (JSC::X86Assembler::jnz):
20447 (JSC::X86Assembler::je):
20448 (JSC::X86Assembler::jl):
20449 (JSC::X86Assembler::jb):
20450 (JSC::X86Assembler::jle):
20451 (JSC::X86Assembler::jbe):
20452 (JSC::X86Assembler::jge):
20453 (JSC::X86Assembler::jg):
20454 (JSC::X86Assembler::ja):
20455 (JSC::X86Assembler::jae):
20456 (JSC::X86Assembler::jo):
20457 (JSC::X86Assembler::jp):
20458 (JSC::X86Assembler::js):
20459 (JSC::X86Assembler::predictNotTaken):
20460 (JSC::X86Assembler::convertToFastCall):
20461 (JSC::X86Assembler::restoreArgumentReference):
20462 (JSC::X86Assembler::restoreArgumentReferenceForTrampoline):
20463 (JSC::X86Assembler::modRm_rr):
20464 (JSC::X86Assembler::modRm_rr_Unchecked):
20465 (JSC::X86Assembler::modRm_rm):
20466 (JSC::X86Assembler::modRm_rm_Unchecked):
20467 (JSC::X86Assembler::modRm_rmsib):
20468 (JSC::X86Assembler::modRm_opr):
20469 (JSC::X86Assembler::modRm_opr_Unchecked):
20470 (JSC::X86Assembler::modRm_opm):
20471 (JSC::X86Assembler::modRm_opm_Unchecked):
20472 (JSC::X86Assembler::modRm_opmsib):
20474 (JSC::JIT::emitNakedCall):
20475 (JSC::JIT::emitNakedFastCall):
20476 (JSC::JIT::emitCTICall):
20477 (JSC::JIT::emitJumpSlowCaseIfNotJSCell):
20478 (JSC::JIT::emitJumpSlowCaseIfNotImmNum):
20479 (JSC::JIT::emitFastArithDeTagImmediateJumpIfZero):
20480 (JSC::JIT::emitFastArithIntToImmOrSlowCase):
20481 (JSC::JIT::emitArithIntToImmWithJump):
20482 (JSC::JIT::compileOpCall):
20483 (JSC::JIT::compileOpStrictEq):
20484 (JSC::JIT::emitSlowScriptCheck):
20485 (JSC::JIT::putDoubleResultToJSNumberCellOrJSImmediate):
20486 (JSC::JIT::compileBinaryArithOp):
20487 (JSC::JIT::privateCompileMainPass):
20488 (JSC::JIT::privateCompileSlowCases):
20489 (JSC::JIT::privateCompile):
20490 (JSC::JIT::privateCompileGetByIdSelf):
20491 (JSC::JIT::privateCompileGetByIdProto):
20492 (JSC::JIT::privateCompileGetByIdChain):
20493 (JSC::JIT::privateCompilePutByIdReplace):
20494 (JSC::JIT::privateCompilePutByIdTransition):
20495 (JSC::JIT::privateCompileCTIMachineTrampolines):
20496 (JSC::JIT::privateCompilePatchGetArrayLength):
20498 (JSC::WREC::compileRegExp):
20500 (JSC::WREC::Generator::generateBackreferenceQuantifier):
20501 (JSC::WREC::Generator::generateNonGreedyQuantifier):
20502 (JSC::WREC::Generator::generateGreedyQuantifier):
20503 (JSC::WREC::Generator::generatePatternCharacter):
20504 (JSC::WREC::Generator::generateCharacterClassInvertedRange):
20505 (JSC::WREC::Generator::generateCharacterClassInverted):
20506 (JSC::WREC::Generator::generateCharacterClass):
20507 (JSC::WREC::Generator::generateParentheses):
20508 (JSC::WREC::Generator::generateParenthesesNonGreedy):
20509 (JSC::WREC::Generator::generateParenthesesResetTrampoline):
20510 (JSC::WREC::Generator::generateAssertionBOL):
20511 (JSC::WREC::Generator::generateAssertionEOL):
20512 (JSC::WREC::Generator::generateAssertionWordBoundary):
20513 (JSC::WREC::Generator::generateBackreference):
20514 (JSC::WREC::Generator::generateDisjunction):
20546 (JSC::JIT::compileBinaryArithOpSlowCase):
20553 (JSC::Interpreter::privateExecute):
20564 (JSC::RegExpObject::match): Renamed "regExpObj" to "regExpConstructor".
20567 (JSC::WREC::compileRegExp): Instead of checking for a NULL output vector,
20591 (JSC::Interpreter::privateExecute):
20592 (JSC::Interpreter::cti_op_convert_this):
20593 (JSC::Interpreter::cti_op_add):
20594 (JSC::Interpreter::cti_op_pre_inc):
20595 (JSC::Interpreter::cti_op_loop_if_less):
20596 (JSC::Interpreter::cti_op_loop_if_lesseq):
20597 (JSC::Interpreter::cti_op_put_by_id):
20598 (JSC::Interpreter::cti_op_put_by_id_second):
20599 (JSC::Interpreter::cti_op_put_by_id_generic):
20600 (JSC::Interpreter::cti_op_put_by_id_fail):
20601 (JSC::Interpreter::cti_op_get_by_id):
20602 (JSC::Interpreter::cti_op_get_by_id_second):
20603 (JSC::Interpreter::cti_op_get_by_id_generic):
20604 (JSC::Interpreter::cti_op_get_by_id_fail):
20605 (JSC::Interpreter::cti_op_instanceof):
20606 (JSC::Interpreter::cti_op_del_by_id):
20607 (JSC::Interpreter::cti_op_mul):
20608 (JSC::Interpreter::cti_op_call_NotJSFunction):
20609 (JSC::Interpreter::cti_op_resolve):
20610 (JSC::Interpreter::cti_op_construct_NotJSConstruct):
20611 (JSC::Interpreter::cti_op_get_by_val):
20612 (JSC::Interpreter::cti_op_resolve_func):
20613 (JSC::Interpreter::cti_op_sub):
20614 (JSC::Interpreter::cti_op_put_by_val):
20615 (JSC::Interpreter::cti_op_put_by_val_array):
20616 (JSC::Interpreter::cti_op_lesseq):
20617 (JSC::Interpreter::cti_op_loop_if_true):
20618 (JSC::Interpreter::cti_op_negate):
20619 (JSC::Interpreter::cti_op_resolve_skip):
20620 (JSC::Interpreter::cti_op_resolve_global):
20621 (JSC::Interpreter::cti_op_div):
20622 (JSC::Interpreter::cti_op_pre_dec):
20623 (JSC::Interpreter::cti_op_jless):
20624 (JSC::Interpreter::cti_op_not):
20625 (JSC::Interpreter::cti_op_jtrue):
20626 (JSC::Interpreter::cti_op_post_inc):
20627 (JSC::Interpreter::cti_op_eq):
20628 (JSC::Interpreter::cti_op_lshift):
20629 (JSC::Interpreter::cti_op_bitand):
20630 (JSC::Interpreter::cti_op_rshift):
20631 (JSC::Interpreter::cti_op_bitnot):
20632 (JSC::Interpreter::cti_op_resolve_with_base):
20633 (JSC::Interpreter::cti_op_mod):
20634 (JSC::Interpreter::cti_op_less):
20635 (JSC::Interpreter::cti_op_neq):
20636 (JSC::Interpreter::cti_op_post_dec):
20637 (JSC::Interpreter::cti_op_urshift):
20638 (JSC::Interpreter::cti_op_bitxor):
20639 (JSC::Interpreter::cti_op_bitor):
20640 (JSC::Interpreter::cti_op_push_scope):
20641 (JSC::Interpreter::cti_op_to_jsnumber):
20642 (JSC::Interpreter::cti_op_in):
20643 (JSC::Interpreter::cti_op_del_by_val):
20645 (JSC::WREC::compileRegExp):
20647 (JSC::WREC::Parser::parseGreedyQuantifier):
20648 (JSC::WREC::Parser::parseParentheses):
20649 (JSC::WREC::Parser::parseCharacterClass):
20650 (JSC::WREC::Parser::parseEscape):
20652 (JSC::WREC::Parser::):
20653 (JSC::WREC::Parser::atEndOfPattern):
20709 (JSC::WREC::CharacterClass::newline):
20710 (JSC::WREC::CharacterClass::digits):
20711 (JSC::WREC::CharacterClass::spaces):
20712 (JSC::WREC::CharacterClass::wordchar):
20713 (JSC::WREC::CharacterClass::nondigits):
20714 (JSC::WREC::CharacterClass::nonspaces):
20715 (JSC::WREC::CharacterClass::nonwordchar):
20718 (JSC::WREC::CharacterClassConstructor::addSortedRange):
20719 (JSC::WREC::CharacterClassConstructor::append):
20723 (JSC::WREC::compileRegExp):
20727 (JSC::WREC::GenerateAtomFunctor::~GenerateAtomFunctor):
20728 (JSC::WREC::GeneratePatternCharacterFunctor::GeneratePatternCharacterFunctor):
20729 (JSC::WREC::GenerateCharacterClassFunctor::GenerateCharacterClassFunctor):
20730 (JSC::WREC::GenerateBackreferenceFunctor::GenerateBackreferenceFunctor):
20731 (JSC::WREC::GenerateParenthesesNonGreedyFunctor::GenerateParenthesesNonGreedyFunctor):
20733 (JSC::WREC::Generator::generatePatternCharacter):
20734 (JSC::WREC::Generator::generateCharacterClassInvertedRange):
20735 (JSC::WREC::Generator::generateCharacterClassInverted):
20736 (JSC::WREC::Generator::generateCharacterClass):
20737 (JSC::WREC::Generator::generateParentheses):
20738 (JSC::WREC::Generator::generateAssertionBOL):
20739 (JSC::WREC::Generator::generateAssertionEOL):
20740 (JSC::WREC::Generator::generateAssertionWordBoundary):
20743 (JSC::WREC::Parser::parseGreedyQuantifier):
20744 (JSC::WREC::Parser::parseCharacterClassQuantifier):
20745 (JSC::WREC::Parser::parseParentheses):
20746 (JSC::WREC::Parser::parseCharacterClass):
20747 (JSC::WREC::Parser::parseEscape):
20748 (JSC::WREC::Parser::parseTerm):
20750 (JSC::WREC::Parser::):
20751 (JSC::WREC::Parser::Parser):
20752 (JSC::WREC::Parser::setError):
20753 (JSC::WREC::Parser::error):
20754 (JSC::WREC::Parser::recordSubpattern):
20755 (JSC::WREC::Parser::numSubpatterns):
20756 (JSC::WREC::Parser::ignoreCase):
20757 (JSC::WREC::Parser::multiline):
21223 (JSC::AssemblerBuffer::AssemblerBuffer):
21224 (JSC::AssemblerBuffer::~AssemblerBuffer):
21225 (JSC::AssemblerBuffer::ensureSpace):
21226 (JSC::AssemblerBuffer::isAligned):
21227 (JSC::AssemblerBuffer::putByteUnchecked):
21228 (JSC::AssemblerBuffer::putByte):
21229 (JSC::AssemblerBuffer::putShortUnchecked):
21230 (JSC::AssemblerBuffer::putShort):
21231 (JSC::AssemblerBuffer::putIntUnchecked):
21232 (JSC::AssemblerBuffer::putInt):
21233 (JSC::AssemblerBuffer::data):
21234 (JSC::AssemblerBuffer::size):
21235 (JSC::AssemblerBuffer::reset):
21236 (JSC::AssemblerBuffer::executableCopy):
21237 (JSC::AssemblerBuffer::grow):
21284 (JSC::CodeBlock::~CodeBlock):
21286 (JSC::CodeBlock::CodeBlock):
21288 (JSC::Interpreter::Interpreter):
21289 (JSC::Interpreter::initialize):
21290 (JSC::Interpreter::~Interpreter):
21291 (JSC::Interpreter::execute):
21292 (JSC::Interpreter::privateExecute):
21295 (JSC::prepareJumpTableForStringSwitch):
21297 (JSC::JSFunction::~JSFunction):
21318 (JSC::JIT::killLastResultRegister):
21319 (JSC::JIT::emitGetVirtualRegister):
21320 (JSC::JIT::emitGetVirtualRegisters):
21321 (JSC::JIT::emitPutCTIArgFromVirtualRegister):
21322 (JSC::JIT::emitPutCTIArg):
21323 (JSC::JIT::emitGetCTIArg):
21324 (JSC::JIT::emitPutCTIArgConstant):
21325 (JSC::JIT::getConstantImmediateNumericArg):
21326 (JSC::JIT::emitPutCTIParam):
21327 (JSC::JIT::emitGetCTIParam):
21328 (JSC::JIT::emitPutToCallFrameHeader):
21329 (JSC::JIT::emitGetFromCallFrameHeader):
21330 (JSC::JIT::emitPutVirtualRegister):
21331 (JSC::JIT::emitInitRegister):
21332 (JSC::JIT::printBytecodeOperandTypes):
21333 (JSC::JIT::emitAllocateNumber):
21334 (JSC::JIT::emitNakedCall):
21335 (JSC::JIT::emitNakedFastCall):
21336 (JSC::JIT::emitCTICall):
21337 (JSC::JIT::emitJumpSlowCaseIfNotJSCell):
21338 (JSC::JIT::linkSlowCaseIfNotJSCell):
21339 (JSC::JIT::emitJumpSlowCaseIfNotImmNum):
21340 (JSC::JIT::emitJumpSlowCaseIfNotImmNums):
21341 (JSC::JIT::getDeTaggedConstantImmediate):
21342 (JSC::JIT::emitFastArithDeTagImmediate):
21343 (JSC::JIT::emitFastArithDeTagImmediateJumpIfZero):
21344 (JSC::JIT::emitFastArithReTagImmediate):
21345 (JSC::JIT::emitFastArithPotentiallyReTagImmediate):
21346 (JSC::JIT::emitFastArithImmToInt):
21347 (JSC::JIT::emitFastArithIntToImmOrSlowCase):
21348 (JSC::JIT::emitFastArithIntToImmNoCheck):
21349 (JSC::JIT::emitArithIntToImmWithJump):
21350 (JSC::JIT::emitTagAsBoolImmediate):
21351 (JSC::JIT::JIT):
21352 (JSC::JIT::compileOpCallInitializeCallFrame):
21353 (JSC::JIT::compileOpCallSetupArgs):
21354 (JSC::JIT::compileOpCallEvalSetupArgs):
21355 (JSC::JIT::compileOpConstructSetupArgs):
21356 (JSC::JIT::compileOpCall):
21357 (JSC::JIT::compileOpStrictEq):
21358 (JSC::JIT::emitSlowScriptCheck):
21359 (JSC::JIT::putDoubleResultToJSNumberCellOrJSImmediate):
21360 (JSC::JIT::compileBinaryArithOp):
21361 (JSC::JIT::compileBinaryArithOpSlowCase):
21362 (JSC::JIT::privateCompileMainPass):
21363 (JSC::JIT::privateCompileLinkPass):
21364 (JSC::JIT::privateCompileSlowCases):
21365 (JSC::JIT::privateCompile):
21366 (JSC::JIT::privateCompileGetByIdSelf):
21367 (JSC::JIT::privateCompileGetByIdProto):
21368 (JSC::JIT::privateCompileGetByIdChain):
21369 (JSC::JIT::privateCompilePutByIdReplace):
21370 (JSC::JIT::privateCompilePutByIdTransition):
21371 (JSC::JIT::unlinkCall):
21372 (JSC::JIT::linkCall):
21373 (JSC::JIT::privateCompileCTIMachineTrampolines):
21374 (JSC::JIT::freeCTIMachineTrampolines):
21375 (JSC::JIT::patchGetByIdSelf):
21376 (JSC::JIT::patchPutByIdReplace):
21377 (JSC::JIT::privateCompilePatchGetArrayLength):
21378 (JSC::JIT::emitGetVariableObjectRegister):
21379 (JSC::JIT::emitPutVariableObjectRegister):
21381 (JSC::JIT::compile):
21382 (JSC::JIT::compileGetByIdSelf):
21383 (JSC::JIT::compileGetByIdProto):
21384 (JSC::JIT::compileGetByIdChain):
21385 (JSC::JIT::compilePutByIdReplace):
21386 (JSC::JIT::compilePutByIdTransition):
21387 (JSC::JIT::compileCTIMachineTrampolines):
21388 (JSC::JIT::compilePatchGetArrayLength):
21390 (JSC::CodeBlock::unlinkCallers):
21392 (JSC::Interpreter::initialize):
21393 (JSC::Interpreter::~Interpreter):
21394 (JSC::Interpreter::execute):
21395 (JSC::Interpreter::tryCTICachePutByID):
21396 (JSC::Interpreter::tryCTICacheGetByID):
21397 (JSC::Interpreter::cti_op_call_JSFunction):
21398 (JSC::Interpreter::cti_vm_dontLazyLinkCall):
21399 (JSC::Interpreter::cti_vm_lazyLinkCall):
21431 (JSC::CTI::emitGetVirtualRegister):
21432 (JSC::CTI::emitGetVirtualRegisters):
21433 (JSC::CTI::emitPutCTIArgFromVirtualRegister):
21434 (JSC::CTI::emitPutCTIArg):
21435 (JSC::CTI::emitGetCTIArg):
21436 (JSC::CTI::emitPutCTIParam):
21437 (JSC::CTI::emitGetCTIParam):
21438 (JSC::CTI::emitPutToCallFrameHeader):
21439 (JSC::CTI::emitGetFromCallFrameHeader):
21440 (JSC::CTI::emitPutVirtualRegister):
21441 (JSC::CTI::emitNakedCall):
21442 (JSC::CTI::emitNakedFastCall):
21443 (JSC::CTI::emitCTICall):
21444 (JSC::CTI::emitJumpSlowCaseIfNotJSCell):
21445 (JSC::CTI::emitJumpSlowCaseIfNotImmNum):
21446 (JSC::CTI::emitJumpSlowCaseIfNotImmNums):
21447 (JSC::CTI::emitFastArithDeTagImmediate):
21448 (JSC::CTI::emitFastArithDeTagImmediateJumpIfZero):
21449 (JSC::CTI::emitFastArithReTagImmediate):
21450 (JSC::CTI::emitFastArithPotentiallyReTagImmediate):
21451 (JSC::CTI::emitFastArithImmToInt):
21452 (JSC::CTI::emitFastArithIntToImmOrSlowCase):
21453 (JSC::CTI::emitFastArithIntToImmNoCheck):
21454 (JSC::CTI::emitArithIntToImmWithJump):
21455 (JSC::CTI::emitTagAsBoolImmediate):
21456 (JSC::CTI::compileOpCall):
21457 (JSC::CTI::compileOpStrictEq):
21458 (JSC::CTI::emitSlowScriptCheck):
21459 (JSC::CTI::putDoubleResultToJSNumberCellOrJSImmediate):
21460 (JSC::CTI::compileBinaryArithOp):
21461 (JSC::CTI::compileBinaryArithOpSlowCase):
21462 (JSC::CTI::privateCompileMainPass):
21463 (JSC::CTI::privateCompileSlowCases):
21464 (JSC::CTI::privateCompile):
21465 (JSC::CTI::privateCompileGetByIdSelf):
21466 (JSC::CTI::privateCompileGetByIdProto):
21467 (JSC::CTI::privateCompileGetByIdChain):
21468 (JSC::CTI::privateCompilePutByIdReplace):
21469 (JSC::CTI::privateCompilePutByIdTransition):
21470 (JSC::CTI::privateCompileCTIMachineTrampolines):
21471 (JSC::CTI::privateCompilePatchGetArrayLength):
21472 (JSC::CTI::emitGetVariableObjectRegister):
21473 (JSC::CTI::emitPutVariableObjectRegister):
21475 (JSC::CallRecord::CallRecord):
21476 (JSC::JmpTable::JmpTable):
21477 (JSC::SlowCaseEntry::SlowCaseEntry):
21478 (JSC::CTI::JSRInfo::JSRInfo):
21499 (JSC::CTI::compileOpCallInitializeCallFrame):
21500 (JSC::CTI::compileOpCall):
21501 (JSC::CTI::emitSlowScriptCheck):
21502 (JSC::CTI::putDoubleResultToJSNumberCellOrJSImmediate):
21503 (JSC::CTI::compileBinaryArithOp):
21504 (JSC::CTI::privateCompileMainPass):
21505 (JSC::CTI::privateCompileSlowCases):
21506 (JSC::CTI::privateCompile):
21507 (JSC::CTI::privateCompileGetByIdSelf):
21508 (JSC::CTI::privateCompileGetByIdProto):
21509 (JSC::CTI::privateCompileGetByIdChain):
21510 (JSC::CTI::privateCompilePutByIdReplace):
21511 (JSC::CTI::privateCompilePutByIdTransition):
21512 (JSC::CTI::privateCompileCTIMachineTrampolines):
21513 (JSC::CTI::privateCompilePatchGetArrayLength):
21514 (JSC::CTI::emitGetVariableObjectRegister):
21515 (JSC::CTI::emitPutVariableObjectRegister):
21529 (JSC::CTI::privateCompile):
21530 (JSC::CTI::privateCompileGetByIdSelf):
21531 (JSC::CTI::privateCompileGetByIdProto):
21532 (JSC::CTI::privateCompileGetByIdChain):
21533 (JSC::CTI::privateCompilePutByIdReplace):
21534 (JSC::CTI::privateCompilePutByIdTransition):
21535 (JSC::CTI::privateCompileCTIMachineTrampolines):
21536 (JSC::CTI::privateCompilePatchGetArrayLength):
21538 (JSC::AssemblerBuffer::executableCopy):
21539 (JSC::X86Assembler::executableCopy):
21541 (JSC::WREC::compileRegExp):
21547 Renamed WREC => JSC::WREC, removing JSC:: prefix in a lot of places.
21552 (JSC::RegExp::RegExp):
21553 (JSC::RegExp::~RegExp):
21554 (JSC::RegExp::match):
21559 (JSC::WREC::compileRegExp):
21561 (JSC::WREC::Generator::Generator):
21562 (JSC::WREC::Parser::Parser):
21563 (JSC::WREC::Parser::parseAlternative):
21573 (JSC::):
21574 (JSC::CTI::compileOpCall):
21575 (JSC::CTI::emitSlowScriptCheck):
21576 (JSC::CTI::compileBinaryArithOpSlowCase):
21577 (JSC::CTI::privateCompileMainPass):
21578 (JSC::CTI::privateCompileSlowCases):
21579 (JSC::CTI::privateCompile):
21580 (JSC::CTI::privateCompileGetByIdSelf):
21581 (JSC::CTI::privateCompileGetByIdProto):
21582 (JSC::CTI::privateCompileGetByIdChain):
21583 (JSC::CTI::privateCompilePutByIdReplace):
21584 (JSC::CTI::privateCompilePutByIdTransition):
21585 (JSC::CTI::privateCompileCTIMachineTrampolines):
21586 (JSC::CTI::freeCTIMachineTrampolines):
21587 (JSC::CTI::patchGetByIdSelf):
21588 (JSC::CTI::patchPutByIdReplace):
21589 (JSC::CTI::privateCompilePatchGetArrayLength):
21592 (JSC::CodeBlock::printStructures):
21593 (JSC::CodeBlock::derefStructures):
21594 (JSC::CodeBlock::refStructures):
21596 (JSC::jsLess):
21597 (JSC::jsLessEq):
21598 (JSC::Interpreter::resolve):
21599 (JSC::Interpreter::resolveSkip):
21600 (JSC::Interpreter::resolveGlobal):
21601 (JSC::Interpreter::resolveBase):
21602 (JSC::Interpreter::resolveBaseAndProperty):
21603 (JSC::Interpreter::resolveBaseAndFunc):
21604 (JSC::Interpreter::slideRegisterWindowForCall):
21605 (JSC::Interpreter::callEval):
21606 (JSC::Interpreter::Interpreter):
21607 (JSC::Interpreter::initialize):
21608 (JSC::Interpreter::~Interpreter):
21609 (JSC::Interpreter::dumpCallFrame):
21610 (JSC::Interpreter::dumpRegisters):
21611 (JSC::Interpreter::isOpcode):
21612 (JSC::Interpreter::unwindCallFrame):
21613 (JSC::Interpreter::throwException):
21614 (JSC::Interpreter::execute):
21615 (JSC::Interpreter::debug):
21616 (JSC::Interpreter::resetTimeoutCheck):
21617 (JSC::Interpreter::checkTimeout):
21618 (JSC::Interpreter::createExceptionScope):
21619 (JSC::Interpreter::tryCachePutByID):
21620 (JSC::Interpreter::uncachePutByID):
21621 (JSC::Interpreter::tryCacheGetByID):
21622 (JSC::Interpreter::uncacheGetByID):
21623 (JSC::Interpreter::privateExecute):
21624 (JSC::Interpreter::retrieveArguments):
21625 (JSC::Interpreter::retrieveCaller):
21626 (JSC::Interpreter::retrieveLastCaller):
21627 (JSC::Interpreter::findFunctionCallFrame):
21628 (JSC::Interpreter::tryCTICachePutByID):
21629 (JSC::Interpreter::tryCTICacheGetByID):
21630 (JSC::Interpreter::cti_op_convert_this):
21631 (JSC::Interpreter::cti_op_end):
21632 (JSC::Interpreter::cti_op_add):
21633 (JSC::Interpreter::cti_op_pre_inc):
21634 (JSC::Interpreter::cti_timeout_check):
21635 (JSC::Interpreter::cti_register_file_check):
21636 (JSC::Interpreter::cti_op_loop_if_less):
21637 (JSC::Interpreter::cti_op_loop_if_lesseq):
21638 (JSC::Interpreter::cti_op_new_object):
21639 (JSC::Interpreter::cti_op_put_by_id):
21640 (JSC::Interpreter::cti_op_put_by_id_second):
21641 (JSC::Interpreter::cti_op_put_by_id_generic):
21642 (JSC::Interpreter::cti_op_put_by_id_fail):
21643 (JSC::Interpreter::cti_op_get_by_id):
21644 (JSC::Interpreter::cti_op_get_by_id_second):
21645 (JSC::Interpreter::cti_op_get_by_id_generic):
21646 (JSC::Interpreter::cti_op_get_by_id_fail):
21647 (JSC::Interpreter::cti_op_instanceof):
21648 (JSC::Interpreter::cti_op_del_by_id):
21649 (JSC::Interpreter::cti_op_mul):
21650 (JSC::Interpreter::cti_op_new_func):
21651 (JSC::Interpreter::cti_op_call_JSFunction):
21652 (JSC::Interpreter::cti_op_call_arityCheck):
21653 (JSC::Interpreter::cti_vm_dontLazyLinkCall):
21654 (JSC::Interpreter::cti_vm_lazyLinkCall):
21655 (JSC::Interpreter::cti_op_push_activation):
21656 (JSC::Interpreter::cti_op_call_NotJSFunction):
21657 (JSC::Interpreter::cti_op_create_arguments):
21658 (JSC::Interpreter::cti_op_create_arguments_no_params):
21659 (JSC::Interpreter::cti_op_tear_off_activation):
21660 (JSC::Interpreter::cti_op_tear_off_arguments):
21661 (JSC::Interpreter::cti_op_profile_will_call):
21662 (JSC::Interpreter::cti_op_profile_did_call):
21663 (JSC::Interpreter::cti_op_ret_scopeChain):
21664 (JSC::Interpreter::cti_op_new_array):
21665 (JSC::Interpreter::cti_op_resolve):
21666 (JSC::Interpreter::cti_op_construct_JSConstruct):
21667 (JSC::Interpreter::cti_op_construct_NotJSConstruct):
21668 (JSC::Interpreter::cti_op_get_by_val):
21669 (JSC::Interpreter::cti_op_resolve_func):
21670 (JSC::Interpreter::cti_op_sub):
21671 (JSC::Interpreter::cti_op_put_by_val):
21672 (JSC::Interpreter::cti_op_put_by_val_array):
21673 (JSC::Interpreter::cti_op_lesseq):
21674 (JSC::Interpreter::cti_op_loop_if_true):
21675 (JSC::Interpreter::cti_op_negate):
21676 (JSC::Interpreter::cti_op_resolve_base):
21677 (JSC::Interpreter::cti_op_resolve_skip):
21678 (JSC::Interpreter::cti_op_resolve_global):
21679 (JSC::Interpreter::cti_op_div):
21680 (JSC::Interpreter::cti_op_pre_dec):
21681 (JSC::Interpreter::cti_op_jless):
21682 (JSC::Interpreter::cti_op_not):
21683 (JSC::Interpreter::cti_op_jtrue):
21684 (JSC::Interpreter::cti_op_post_inc):
21685 (JSC::Interpreter::cti_op_eq):
21686 (JSC::Interpreter::cti_op_lshift):
21687 (JSC::Interpreter::cti_op_bitand):
21688 (JSC::Interpreter::cti_op_rshift):
21689 (JSC::Interpreter::cti_op_bitnot):
21690 (JSC::Interpreter::cti_op_resolve_with_base):
21691 (JSC::Interpreter::cti_op_new_func_exp):
21692 (JSC::Interpreter::cti_op_mod):
21693 (JSC::Interpreter::cti_op_less):
21694 (JSC::Interpreter::cti_op_neq):
21695 (JSC::Interpreter::cti_op_post_dec):
21696 (JSC::Interpreter::cti_op_urshift):
21697 (JSC::Interpreter::cti_op_bitxor):
21698 (JSC::Interpreter::cti_op_new_regexp):
21699 (JSC::Interpreter::cti_op_bitor):
21700 (JSC::Interpreter::cti_op_call_eval):
21701 (JSC::Interpreter::cti_op_throw):
21702 (JSC::Interpreter::cti_op_get_pnames):
21703 (JSC::Interpreter::cti_op_next_pname):
21704 (JSC::Interpreter::cti_op_push_scope):
21705 (JSC::Interpreter::cti_op_pop_scope):
21706 (JSC::Interpreter::cti_op_typeof):
21707 (JSC::Interpreter::cti_op_is_undefined):
21708 (JSC::Interpreter::cti_op_is_boolean):
21709 (JSC::Interpreter::cti_op_is_number):
21710 (JSC::Interpreter::cti_op_is_string):
21711 (JSC::Interpreter::cti_op_is_object):
21712 (JSC::Interpreter::cti_op_is_function):
21713 (JSC::Interpreter::cti_op_stricteq):
21714 (JSC::Interpreter::cti_op_nstricteq):
21715 (JSC::Interpreter::cti_op_to_jsnumber):
21716 (JSC::Interpreter::cti_op_in):
21717 (JSC::Interpreter::cti_op_push_new_scope):
21718 (JSC::Interpreter::cti_op_jmp_scopes):
21719 (JSC::Interpreter::cti_op_put_by_index):
21720 (JSC::Interpreter::cti_op_switch_imm):
21721 (JSC::Interpreter::cti_op_switch_char):
21722 (JSC::Interpreter::cti_op_switch_string):
21723 (JSC::Interpreter::cti_op_del_by_val):
21724 (JSC::Interpreter::cti_op_put_getter):
21725 (JSC::Interpreter::cti_op_put_setter):
21726 (JSC::Interpreter::cti_op_new_error):
21727 (JSC::Interpreter::cti_op_debug):
21728 (JSC::Interpreter::cti_vm_throw):
21732 (JSC::SamplingTool::SamplingTool):
21734 (JSC::BytecodeGenerator::generate):
21735 (JSC::BytecodeGenerator::BytecodeGenerator):
21739 (JSC::ExecState::interpreter):
21743 (JSC::JSGlobalData::JSGlobalData):
21761 WREC => JSC::WREC, removing JSC:: prefix in a lot of places
21774 (JSC::):
21775 (JSC::CTI::emitGetVirtualRegister):
21776 (JSC::CTI::emitGetVirtualRegisters):
21777 (JSC::CTI::emitPutCTIArgFromVirtualRegister):
21778 (JSC::CTI::emitPutCTIArg):
21779 (JSC::CTI::emitGetCTIArg):
21780 (JSC::CTI::emitPutCTIParam):
21781 (JSC::CTI::emitGetCTIParam):
21782 (JSC::CTI::emitPutToCallFrameHeader):
21783 (JSC::CTI::emitGetFromCallFrameHeader):
21784 (JSC::CTI::emitPutVirtualRegister):
21785 (JSC::CTI::emitNakedCall):
21786 (JSC::CTI::emitNakedFastCall):
21787 (JSC::CTI::emitCTICall):
21788 (JSC::CTI::emitJumpSlowCaseIfNotJSCell):
21789 (JSC::CTI::emitJumpSlowCaseIfNotImmNum):
21790 (JSC::CTI::emitJumpSlowCaseIfNotImmNums):
21791 (JSC::CTI::emitFastArithDeTagImmediate):
21792 (JSC::CTI::emitFastArithDeTagImmediateJumpIfZero):
21793 (JSC::CTI::emitFastArithReTagImmediate):
21794 (JSC::CTI::emitFastArithPotentiallyReTagImmediate):
21795 (JSC::CTI::emitFastArithImmToInt):
21796 (JSC::CTI::emitFastArithIntToImmOrSlowCase):
21797 (JSC::CTI::emitFastArithIntToImmNoCheck):
21798 (JSC::CTI::emitArithIntToImmWithJump):
21799 (JSC::CTI::emitTagAsBoolImmediate):
21800 (JSC::CTI::compileOpCallInitializeCallFrame):
21801 (JSC::CTI::compileOpCall):
21802 (JSC::CTI::compileOpStrictEq):
21803 (JSC::CTI::emitSlowScriptCheck):
21804 (JSC::CTI::putDoubleResultToJSNumberCellOrJSImmediate):
21805 (JSC::CTI::compileBinaryArithOp):
21806 (JSC::CTI::compileBinaryArithOpSlowCase):
21807 (JSC::CTI::privateCompileMainPass):
21808 (JSC::CTI::privateCompileSlowCases):
21809 (JSC::CTI::privateCompile):
21810 (JSC::CTI::privateCompileGetByIdSelf):
21811 (JSC::CTI::privateCompileGetByIdProto):
21812 (JSC::CTI::privateCompileGetByIdChain):
21813 (JSC::CTI::privateCompilePutByIdReplace):
21814 (JSC::CTI::privateCompilePutByIdTransition):
21815 (JSC::CTI::privateCompileCTIMachineTrampolines):
21816 (JSC::CTI::freeCTIMachineTrampolines):
21817 (JSC::CTI::patchGetByIdSelf):
21818 (JSC::CTI::patchPutByIdReplace):
21819 (JSC::CTI::privateCompilePatchGetArrayLength):
21820 (JSC::CTI::emitGetVariableObjectRegister):
21821 (JSC::CTI::emitPutVariableObjectRegister):
21823 (JSC::CallRecord::CallRecord):
21824 (JSC::JmpTable::JmpTable):
21825 (JSC::SlowCaseEntry::SlowCaseEntry):
21826 (JSC::CTI::JSRInfo::JSRInfo):
21828 (JSC::CodeBlock::printStructures):
21829 (JSC::CodeBlock::derefStructures):
21830 (JSC::CodeBlock::refStructures):
21832 (JSC::jsLess):
21833 (JSC::jsLessEq):
21834 (JSC::Interpreter::resolve):
21835 (JSC::Interpreter::resolveSkip):
21836 (JSC::Interpreter::resolveGlobal):
21837 (JSC::Interpreter::resolveBase):
21838 (JSC::Interpreter::resolveBaseAndProperty):
21839 (JSC::Interpreter::resolveBaseAndFunc):
21840 (JSC::Interpreter::slideRegisterWindowForCall):
21841 (JSC::Interpreter::callEval):
21842 (JSC::Interpreter::Interpreter):
21843 (JSC::Interpreter::initialize):
21844 (JSC::Interpreter::~Interpreter):
21845 (JSC::Interpreter::dumpCallFrame):
21846 (JSC::Interpreter::dumpRegisters):
21847 (JSC::Interpreter::isOpcode):
21848 (JSC::Interpreter::unwindCallFrame):
21849 (JSC::Interpreter::throwException):
21850 (JSC::Interpreter::execute):
21851 (JSC::Interpreter::debug):
21852 (JSC::Interpreter::resetTimeoutCheck):
21853 (JSC::Interpreter::checkTimeout):
21854 (JSC::Interpreter::createExceptionScope):
21855 (JSC::Interpreter::tryCachePutByID):
21856 (JSC::Interpreter::uncachePutByID):
21857 (JSC::Interpreter::tryCacheGetByID):
21858 (JSC::Interpreter::uncacheGetByID):
21859 (JSC::Interpreter::privateExecute):
21860 (JSC::Interpreter::retrieveArguments):
21861 (JSC::Interpreter::retrieveCaller):
21862 (JSC::Interpreter::retrieveLastCaller):
21863 (JSC::Interpreter::findFunctionCallFrame):
21864 (JSC::Interpreter::tryCTICachePutByID):
21865 (JSC::Interpreter::tryCTICacheGetByID):
21866 (JSC::):
21867 (JSC::Interpreter::cti_op_convert_this):
21868 (JSC::Interpreter::cti_op_end):
21869 (JSC::Interpreter::cti_op_add):
21870 (JSC::Interpreter::cti_op_pre_inc):
21871 (JSC::Interpreter::cti_timeout_check):
21872 (JSC::Interpreter::cti_register_file_check):
21873 (JSC::Interpreter::cti_op_loop_if_less):
21874 (JSC::Interpreter::cti_op_loop_if_lesseq):
21875 (JSC::Interpreter::cti_op_new_object):
21876 (JSC::Interpreter::cti_op_put_by_id):
21877 (JSC::Interpreter::cti_op_put_by_id_second):
21878 (JSC::Interpreter::cti_op_put_by_id_generic):
21879 (JSC::Interpreter::cti_op_put_by_id_fail):
21880 (JSC::Interpreter::cti_op_get_by_id):
21881 (JSC::Interpreter::cti_op_get_by_id_second):
21882 (JSC::Interpreter::cti_op_get_by_id_generic):
21883 (JSC::Interpreter::cti_op_get_by_id_fail):
21884 (JSC::Interpreter::cti_op_instanceof):
21885 (JSC::Interpreter::cti_op_del_by_id):
21886 (JSC::Interpreter::cti_op_mul):
21887 (JSC::Interpreter::cti_op_new_func):
21888 (JSC::Interpreter::cti_op_call_JSFunction):
21889 (JSC::Interpreter::cti_op_call_arityCheck):
21890 (JSC::Interpreter::cti_vm_dontLazyLinkCall):
21891 (JSC::Interpreter::cti_vm_lazyLinkCall):
21892 (JSC::Interpreter::cti_op_push_activation):
21893 (JSC::Interpreter::cti_op_call_NotJSFunction):
21894 (JSC::Interpreter::cti_op_create_arguments):
21895 (JSC::Interpreter::cti_op_create_arguments_no_params):
21896 (JSC::Interpreter::cti_op_tear_off_activation):
21897 (JSC::Interpreter::cti_op_tear_off_arguments):
21898 (JSC::Interpreter::cti_op_profile_will_call):
21899 (JSC::Interpreter::cti_op_profile_did_call):
21900 (JSC::Interpreter::cti_op_ret_scopeChain):
21901 (JSC::Interpreter::cti_op_new_array):
21902 (JSC::Interpreter::cti_op_resolve):
21903 (JSC::Interpreter::cti_op_construct_JSConstruct):
21904 (JSC::Interpreter::cti_op_construct_NotJSConstruct):
21905 (JSC::Interpreter::cti_op_get_by_val):
21906 (JSC::Interpreter::cti_op_resolve_func):
21907 (JSC::Interpreter::cti_op_sub):
21908 (JSC::Interpreter::cti_op_put_by_val):
21909 (JSC::Interpreter::cti_op_put_by_val_array):
21910 (JSC::Interpreter::cti_op_lesseq):
21911 (JSC::Interpreter::cti_op_loop_if_true):
21912 (JSC::Interpreter::cti_op_negate):
21913 (JSC::Interpreter::cti_op_resolve_base):
21914 (JSC::Interpreter::cti_op_resolve_skip):
21915 (JSC::Interpreter::cti_op_resolve_global):
21916 (JSC::Interpreter::cti_op_div):
21917 (JSC::Interpreter::cti_op_pre_dec):
21918 (JSC::Interpreter::cti_op_jless):
21919 (JSC::Interpreter::cti_op_not):
21920 (JSC::Interpreter::cti_op_jtrue):
21921 (JSC::Interpreter::cti_op_post_inc):
21922 (JSC::Interpreter::cti_op_eq):
21923 (JSC::Interpreter::cti_op_lshift):
21924 (JSC::Interpreter::cti_op_bitand):
21925 (JSC::Interpreter::cti_op_rshift):
21926 (JSC::Interpreter::cti_op_bitnot):
21927 (JSC::Interpreter::cti_op_resolve_with_base):
21928 (JSC::Interpreter::cti_op_new_func_exp):
21929 (JSC::Interpreter::cti_op_mod):
21930 (JSC::Interpreter::cti_op_less):
21931 (JSC::Interpreter::cti_op_neq):
21932 (JSC::Interpreter::cti_op_post_dec):
21933 (JSC::Interpreter::cti_op_urshift):
21934 (JSC::Interpreter::cti_op_bitxor):
21935 (JSC::Interpreter::cti_op_new_regexp):
21936 (JSC::Interpreter::cti_op_bitor):
21937 (JSC::Interpreter::cti_op_call_eval):
21938 (JSC::Interpreter::cti_op_throw):
21939 (JSC::Interpreter::cti_op_get_pnames):
21940 (JSC::Interpreter::cti_op_next_pname):
21941 (JSC::Interpreter::cti_op_push_scope):
21942 (JSC::Interpreter::cti_op_pop_scope):
21943 (JSC::Interpreter::cti_op_typeof):
21944 (JSC::Interpreter::cti_op_is_undefined):
21945 (JSC::Interpreter::cti_op_is_boolean):
21946 (JSC::Interpreter::cti_op_is_number):
21947 (JSC::Interpreter::cti_op_is_string):
21948 (JSC::Interpreter::cti_op_is_object):
21949 (JSC::Interpreter::cti_op_is_function):
21950 (JSC::Interpreter::cti_op_stricteq):
21951 (JSC::Interpreter::cti_op_nstricteq):
21952 (JSC::Interpreter::cti_op_to_jsnumber):
21953 (JSC::Interpreter::cti_op_in):
21954 (JSC::Interpreter::cti_op_push_new_scope):
21955 (JSC::Interpreter::cti_op_jmp_scopes):
21956 (JSC::Interpreter::cti_op_put_by_index):
21957 (JSC::Interpreter::cti_op_switch_imm):
21958 (JSC::Interpreter::cti_op_switch_char):
21959 (JSC::Interpreter::cti_op_switch_string):
21960 (JSC::Interpreter::cti_op_del_by_val):
21961 (JSC::Interpreter::cti_op_put_getter):
21962 (JSC::Interpreter::cti_op_put_setter):
21963 (JSC::Interpreter::cti_op_new_error):
21964 (JSC::Interpreter::cti_op_debug):
21965 (JSC::Interpreter::cti_vm_throw):
21969 (JSC::SamplingTool::dump):
21971 (JSC::SamplingTool::SamplingTool):
21973 (JSC::BytecodeGenerator::generate):
21974 (JSC::BytecodeGenerator::BytecodeGenerator):
21978 (JSC::AssemblerBuffer::executableCopy):
21979 (JSC::X86Assembler::executableCopy):
21981 (JSC::ExecState::interpreter):
21985 (JSC::JSGlobalData::JSGlobalData):
21992 (JSC::RegExp::RegExp):
21993 (JSC::RegExp::~RegExp):
21994 (JSC::RegExp::match):
21999 (JSC::WREC::compileRegExp):
22001 (JSC::WREC::Generator::Generator):
22002 (JSC::WREC::Parser::):
22003 (JSC::WREC::Parser::Parser):
22004 (JSC::WREC::Parser::parseAlternative):
22033 (JSC::Heap::collect):
22057 (JSC::BytecodeGenerator::BytecodeGenerator):
22060 (JSC::ProgramNode::generateBytecode):
22069 (JSC::JSCallbackConstructor::JSCallbackConstructor):
22071 (JSC::JSCallbackConstructor::createStructure):
22073 (JSC::JSCallbackFunction::createStructure):
22075 (JSC::JSCallbackObject::createStructure):
22077 (JSC::::JSCallbackObject):
22088 (JSC::CTI::compileBinaryArithOp):
22089 (JSC::CTI::privateCompileMainPass):
22090 (JSC::CTI::privateCompileGetByIdSelf):
22091 (JSC::CTI::privateCompileGetByIdProto):
22092 (JSC::CTI::privateCompileGetByIdChain):
22093 (JSC::CTI::privateCompilePutByIdReplace):
22094 (JSC::transitionWillNeedStorageRealloc):
22095 (JSC::CTI::privateCompilePutByIdTransition):
22096 (JSC::CTI::patchGetByIdSelf):
22097 (JSC::CTI::patchPutByIdReplace):
22099 (JSC::CTI::compileGetByIdSelf):
22100 (JSC::CTI::compileGetByIdProto):
22101 (JSC::CTI::compileGetByIdChain):
22102 (JSC::CTI::compilePutByIdReplace):
22103 (JSC::CTI::compilePutByIdTransition):
22105 (JSC::CodeBlock::printStructure):
22106 (JSC::CodeBlock::printStructures):
22107 (JSC::CodeBlock::dump):
22108 (JSC::CodeBlock::~CodeBlock):
22109 (JSC::CodeBlock::derefStructures):
22110 (JSC::CodeBlock::refStructures):
22113 (JSC::Instruction::Instruction):
22114 (JSC::Instruction::):
22116 (JSC::jsTypeStringForValue):
22117 (JSC::jsIsObjectType):
22118 (JSC::BytecodeInterpreter::resolveGlobal):
22119 (JSC::BytecodeInterpreter::BytecodeInterpreter):
22120 (JSC::cachePrototypeChain):
22121 (JSC::BytecodeInterpreter::tryCachePutByID):
22122 (JSC::BytecodeInterpreter::uncachePutByID):
22123 (JSC::BytecodeInterpreter::tryCacheGetByID):
22124 (JSC::BytecodeInterpreter::uncacheGetByID):
22125 (JSC::BytecodeInterpreter::privateExecute):
22126 (JSC::BytecodeInterpreter::tryCTICachePutByID):
22127 (JSC::BytecodeInterpreter::tryCTICacheGetByID):
22128 (JSC::BytecodeInterpreter::cti_op_instanceof):
22129 (JSC::BytecodeInterpreter::cti_op_construct_JSConstruct):
22130 (JSC::BytecodeInterpreter::cti_op_resolve_global):
22131 (JSC::BytecodeInterpreter::cti_op_is_undefined):
22133 (JSC::Arguments::createStructure):
22135 (JSC::ArrayConstructor::ArrayConstructor):
22138 (JSC::ArrayPrototype::ArrayPrototype):
22141 (JSC::BatchedTransitionOptimizer::BatchedTransitionOptimizer):
22142 (JSC::BatchedTransitionOptimizer::~BatchedTransitionOptimizer):
22144 (JSC::BooleanConstructor::BooleanConstructor):
22147 (JSC::BooleanObject::BooleanObject):
22150 (JSC::BooleanPrototype::BooleanPrototype):
22153 (JSC::DateConstructor::DateConstructor):
22156 (JSC::DateInstance::DateInstance):
22159 (JSC::DatePrototype::DatePrototype):
22161 (JSC::DatePrototype::createStructure):
22163 (JSC::ErrorConstructor::ErrorConstructor):
22166 (JSC::ErrorInstance::ErrorInstance):
22169 (JSC::ErrorPrototype::ErrorPrototype):
22172 (JSC::FunctionConstructor::FunctionConstructor):
22175 (JSC::FunctionPrototype::FunctionPrototype):
22176 (JSC::FunctionPrototype::addFunctionProperties):
22178 (JSC::FunctionPrototype::createStructure):
22180 (JSC::GlobalEvalFunction::GlobalEvalFunction):
22184 (JSC::InternalFunction::InternalFunction):
22186 (JSC::InternalFunction::createStructure):
22187 (JSC::InternalFunction::InternalFunction):
22189 (JSC::JSActivation::JSActivation):
22191 (JSC::JSActivation::createStructure):
22193 (JSC::JSArray::JSArray):
22195 (JSC::JSArray::createStructure):
22197 (JSC::JSCell::JSCell):
22198 (JSC::JSCell::isObject):
22199 (JSC::JSCell::isString):
22200 (JSC::JSCell::structure):
22201 (JSC::JSValue::needsThisConversion):
22203 (JSC::JSFunction::construct):
22205 (JSC::JSFunction::JSFunction):
22206 (JSC::JSFunction::createStructure):
22208 (JSC::JSGlobalData::JSGlobalData):
22209 (JSC::JSGlobalData::createLeaked):
22212 (JSC::markIfNeeded):
22213 (JSC::JSGlobalObject::reset):
22215 (JSC::JSGlobalObject::JSGlobalObject):
22216 (JSC::JSGlobalObject::argumentsStructure):
22217 (JSC::JSGlobalObject::arrayStructure):
22218 (JSC::JSGlobalObject::booleanObjectStructure):
22219 (JSC::JSGlobalObject::callbackConstructorStructure):
22220 (JSC::JSGlobalObject::callbackFunctionStructure):
22221 (JSC::JSGlobalObject::callbackObjectStructure):
22222 (JSC::JSGlobalObject::dateStructure):
22223 (JSC::JSGlobalObject::emptyObjectStructure):
22224 (JSC::JSGlobalObject::errorStructure):
22225 (JSC::JSGlobalObject::functionStructure):
22226 (JSC::JSGlobalObject::numberObjectStructure):
22227 (JSC::JSGlobalObject::prototypeFunctionStructure):
22228 (JSC::JSGlobalObject::regExpMatchesArrayStructure):
22229 (JSC::JSGlobalObject::regExpStructure):
22230 (JSC::JSGlobalObject::stringObjectStructure):
22231 (JSC::JSGlobalObject::createStructure):
22232 (JSC::Structure::prototypeForLookup):
22234 (JSC::JSNotAnObject::createStructure):
22236 (JSC::JSNumberCell::createStructure):
22237 (JSC::JSNumberCell::JSNumberCell):
22239 (JSC::JSObject::mark):
22240 (JSC::JSObject::put):
22241 (JSC::JSObject::deleteProperty):
22242 (JSC::JSObject::defineGetter):
22243 (JSC::JSObject::defineSetter):
22244 (JSC::JSObject::getPropertyAttributes):
22245 (JSC::JSObject::getPropertyNames):
22246 (JSC::JSObject::removeDirect):
22247 (JSC::JSObject::createInheritorID):
22249 (JSC::JSObject::getDirect):
22250 (JSC::JSObject::getDirectLocation):
22251 (JSC::JSObject::hasCustomProperties):
22252 (JSC::JSObject::hasGetterSetterProperties):
22253 (JSC::JSObject::createStructure):
22254 (JSC::JSObject::JSObject):
22255 (JSC::JSObject::~JSObject):
22256 (JSC::JSObject::prototype):
22257 (JSC::JSObject::setPrototype):
22258 (JSC::JSObject::setStructure):
22259 (JSC::JSObject::inheritorID):
22260 (JSC::JSObject::inlineGetOwnPropertySlot):
22261 (JSC::JSObject::getOwnPropertySlotForWrite):
22262 (JSC::JSCell::fastGetOwnPropertySlot):
22263 (JSC::JSObject::putDirect):
22264 (JSC::JSObject::putDirectWithoutTransition):
22265 (JSC::JSObject::transitionTo):
22267 (JSC::JSPropertyNameIterator::next):
22269 (JSC::JSStaticScopeObject::JSStaticScopeObject):
22270 (JSC::JSStaticScopeObject::createStructure):
22272 (JSC::JSString::JSString):
22273 (JSC::JSString::createStructure):
22275 (JSC::JSVariableObject::JSVariableObject):
22277 (JSC::JSWrapperObject::JSWrapperObject):
22279 (JSC::MathObject::MathObject):
22281 (JSC::MathObject::createStructure):
22283 (JSC::NativeErrorConstructor::NativeErrorConstructor):
22286 (JSC::NativeErrorPrototype::NativeErrorPrototype):
22289 (JSC::NumberConstructor::NumberConstructor):
22291 (JSC::NumberConstructor::createStructure):
22293 (JSC::NumberObject::NumberObject):
22296 (JSC::NumberPrototype::NumberPrototype):
22299 (JSC::ObjectConstructor::ObjectConstructor):
22302 (JSC::ObjectPrototype::ObjectPrototype):
22305 (JSC::equalSlowCaseInline):
22307 (JSC::PropertyNameArrayData::setCachedStructure):
22308 (JSC::PropertyNameArrayData::cachedStructure):
22309 (JSC::PropertyNameArrayData::setCachedPrototypeChain):
22310 (JSC::PropertyNameArrayData::cachedPrototypeChain):
22311 (JSC::PropertyNameArrayData::PropertyNameArrayData):
22313 (JSC::PrototypeFunction::PrototypeFunction):
22316 (JSC::RegExpConstructor::RegExpConstructor):
22318 (JSC::RegExpConstructor::createStructure):
22320 (JSC::RegExpObject::RegExpObject):
22322 (JSC::RegExpObject::createStructure):
22324 (JSC::RegExpPrototype::RegExpPrototype):
22327 (JSC::StringConstructor::StringConstructor):
22330 (JSC::StringObject::StringObject):
22332 (JSC::StringObject::createStructure):
22334 (JSC::StringObjectThatMasqueradesAsUndefined::create):
22335 (JSC::StringObjectThatMasqueradesAsUndefined::StringObjectThatMasqueradesAsUndefined):
22336 (JSC::StringObjectThatMasqueradesAsUndefined::createStructure):
22338 (JSC::StringPrototype::StringPrototype):
22341 (JSC::Structure::dumpStatistics):
22342 (JSC::Structure::Structure):
22343 (JSC::Structure::~Structure):
22344 (JSC::Structure::startIgnoringLeaks):
22345 (JSC::Structure::stopIgnoringLeaks):
22346 (JSC::Structure::materializePropertyMap):
22347 (JSC::Structure::getEnumerablePropertyNames):
22348 (JSC::Structure::clearEnumerationCache):
22349 (JSC::Structure::growPropertyStorageCapacity):
22350 (JSC::Structure::addPropertyTransitionToExistingStructure):
22351 (JSC::Structure::addPropertyTransition):
22352 (JSC::Structure::removePropertyTransition):
22353 (JSC::Structure::changePrototypeTransition):
22354 (JSC::Structure::getterSetterTransition):
22355 (JSC::Structure::toDictionaryTransition):
22356 (JSC::Structure::fromDictionaryTransition):
22357 (JSC::Structure::addPropertyWithoutTransition):
22358 (JSC::Structure::removePropertyWithoutTransition):
22359 (JSC::Structure::createCachedPrototypeChain):
22360 (JSC::Structure::checkConsistency):
22361 (JSC::Structure::copyPropertyTable):
22362 (JSC::Structure::get):
22363 (JSC::Structure::put):
22364 (JSC::Structure::remove):
22365 (JSC::Structure::insertIntoPropertyMapHashTable):
22366 (JSC::Structure::createPropertyMapHashTable):
22367 (JSC::Structure::expandPropertyMapHashTable):
22368 (JSC::Structure::rehashPropertyMapHashTable):
22369 (JSC::Structure::getEnumerablePropertyNamesInternal):
22371 (JSC::Structure::create):
22372 (JSC::Structure::previousID):
22373 (JSC::Structure::setCachedPrototypeChain):
22374 (JSC::Structure::cachedPrototypeChain):
22375 (JSC::Structure::):
22376 (JSC::Structure::get):
22378 (JSC::StructureChain::StructureChain):
22379 (JSC::structureChainsAreEqual):
22381 (JSC::StructureChain::create):
22382 (JSC::StructureChain::head):
22418 (JSC::BytecodeInterpreter::assemblerBuffer):
22421 (JSC::RegExp::RegExp):
22478 (JSC::WRECGenerator::WRECGenerator):
22479 (JSC::WRECParser::WRECParser):
22489 (JSC::CTI::emitGetVirtualRegister):
22490 (JSC::CTI::emitPutCTIArgFromVirtualRegister):
22491 (JSC::CTI::emitPutCTIArg):
22492 (JSC::CTI::emitGetCTIArg):
22493 (JSC::CTI::emitPutCTIArgConstant):
22494 (JSC::CTI::emitPutCTIParam):
22495 (JSC::CTI::emitGetCTIParam):
22496 (JSC::CTI::emitPutToCallFrameHeader):
22497 (JSC::CTI::emitGetFromCallFrameHeader):
22498 (JSC::CTI::emitPutVirtualRegister):
22499 (JSC::CTI::emitInitRegister):
22500 (JSC::CTI::emitAllocateNumber):
22501 (JSC::CTI::emitNakedCall):
22502 (JSC::CTI::emitNakedFastCall):
22503 (JSC::CTI::emitCTICall):
22504 (JSC::CTI::emitJumpSlowCaseIfNotJSCell):
22505 (JSC::CTI::linkSlowCaseIfNotJSCell):
22506 (JSC::CTI::emitJumpSlowCaseIfNotImmNum):
22507 (JSC::CTI::emitJumpSlowCaseIfNotImmNums):
22508 (JSC::CTI::emitFastArithDeTagImmediate):
22509 (JSC::CTI::emitFastArithDeTagImmediateJumpIfZero):
22510 (JSC::CTI::emitFastArithReTagImmediate):
22511 (JSC::CTI::emitFastArithPotentiallyReTagImmediate):
22512 (JSC::CTI::emitFastArithImmToInt):
22513 (JSC::CTI::emitFastArithIntToImmOrSlowCase):
22514 (JSC::CTI::emitFastArithIntToImmNoCheck):
22515 (JSC::CTI::emitArithIntToImmWithJump):
22516 (JSC::CTI::emitTagAsBoolImmediate):
22517 (JSC::CTI::CTI):
22518 (JSC::CTI::compileOpCallInitializeCallFrame):
22519 (JSC::CTI::compileOpCall):
22520 (JSC::CTI::compileOpStrictEq):
22521 (JSC::CTI::emitSlowScriptCheck):
22522 (JSC::CTI::putDoubleResultToJSNumberCellOrJSImmediate):
22523 (JSC::CTI::compileBinaryArithOp):
22524 (JSC::CTI::compileBinaryArithOpSlowCase):
22525 (JSC::CTI::privateCompileMainPass):
22526 (JSC::CTI::privateCompileLinkPass):
22527 (JSC::CTI::privateCompileSlowCases):
22528 (JSC::CTI::privateCompile):
22529 (JSC::CTI::privateCompileGetByIdSelf):
22530 (JSC::CTI::privateCompileGetByIdProto):
22531 (JSC::CTI::privateCompileGetByIdChain):
22532 (JSC::CTI::privateCompilePutByIdReplace):
22533 (JSC::CTI::privateCompilePutByIdTransition):
22534 (JSC::CTI::privateCompileCTIMachineTrampolines):
22535 (JSC::CTI::privateCompilePatchGetArrayLength):
22536 (JSC::CTI::emitGetVariableObjectRegister):
22537 (JSC::CTI::emitPutVariableObjectRegister):
22538 (JSC::CTI::compileRegExp):
22541 (JSC::WRECGenerator::generateBacktrack1):
22542 (JSC::WRECGenerator::generateBacktrackBackreference):
22543 (JSC::WRECGenerator::generateBackreferenceQuantifier):
22544 (JSC::WRECGenerator::generateNonGreedyQuantifier):
22545 (JSC::WRECGenerator::generateGreedyQuantifier):
22546 (JSC::WRECGenerator::generatePatternCharacter):
22547 (JSC::WRECGenerator::generateCharacterClassInvertedRange):
22548 (JSC::WRECGenerator::generateCharacterClassInverted):
22549 (JSC::WRECGenerator::generateCharacterClass):
22550 (JSC::WRECGenerator::generateParentheses):
22551 (JSC::WRECGenerator::generateParenthesesNonGreedy):
22552 (JSC::WRECGenerator::generateParenthesesResetTrampoline):
22553 (JSC::WRECGenerator::generateAssertionBOL):
22554 (JSC::WRECGenerator::generateAssertionEOL):
22555 (JSC::WRECGenerator::generateAssertionWordBoundary):
22556 (JSC::WRECGenerator::generateBackreference):
22557 (JSC::WRECGenerator::generateDisjunction):
22558 (JSC::WRECGenerator::terminateDisjunction):
22575 (JSC::Label::Label):
22576 (JSC::Label::isForward):
22578 (JSC::BytecodeGenerator::newLabel):
22579 (JSC::BytecodeGenerator::emitLabel):
22580 (JSC::BytecodeGenerator::emitJump):
22581 (JSC::BytecodeGenerator::emitJumpIfTrue):
22582 (JSC::BytecodeGenerator::emitJumpIfFalse):
22583 (JSC::BytecodeGenerator::pushFinallyContext):
22584 (JSC::BytecodeGenerator::emitComplexJumpScopes):
22585 (JSC::BytecodeGenerator::emitJumpScopes):
22586 (JSC::BytecodeGenerator::emitNextPropertyName):
22587 (JSC::BytecodeGenerator::emitCatch):
22588 (JSC::BytecodeGenerator::emitJumpSubroutine):
22589 (JSC::prepareJumpTableForImmediateSwitch):
22590 (JSC::prepareJumpTableForCharacterSwitch):
22591 (JSC::prepareJumpTableForStringSwitch):
22592 (JSC::BytecodeGenerator::endSwitch):
22595 (JSC::LabelScope::LabelScope):
22596 (JSC::LabelScope::breakTarget):
22597 (JSC::LabelScope::continueTarget):
22599 (JSC::LogicalOpNode::emitBytecode):
22600 (JSC::ConditionalNode::emitBytecode):
22601 (JSC::IfNode::emitBytecode):
22602 (JSC::IfElseNode::emitBytecode):
22603 (JSC::DoWhileNode::emitBytecode):
22604 (JSC::WhileNode::emitBytecode):
22605 (JSC::ForNode::emitBytecode):
22606 (JSC::ForInNode::emitBytecode):
22607 (JSC::ReturnNode::emitBytecode):
22608 (JSC::CaseBlockNode::emitBytecodeForBlock):
22609 (JSC::TryNode::emitBytecode):
22627 (JSC::CTI::CTI):
22628 (JSC::CTI::compileRegExp):
22630 (JSC::BytecodeInterpreter::BytecodeInterpreter):
22632 (JSC::BytecodeInterpreter::assemblerBuffer):
22634 (JSC::AssemblerBuffer::AssemblerBuffer):
22635 (JSC::AssemblerBuffer::~AssemblerBuffer):
22636 (JSC::AssemblerBuffer::ensureSpace):
22637 (JSC::AssemblerBuffer::isAligned):
22638 (JSC::AssemblerBuffer::putByteUnchecked):
22639 (JSC::AssemblerBuffer::putByte):
22640 (JSC::AssemblerBuffer::putShortUnchecked):
22641 (JSC::AssemblerBuffer::putShort):
22642 (JSC::AssemblerBuffer::putIntUnchecked):
22643 (JSC::AssemblerBuffer::putInt):
22644 (JSC::AssemblerBuffer::data):
22645 (JSC::AssemblerBuffer::size):
22646 (JSC::AssemblerBuffer::reset):
22647 (JSC::AssemblerBuffer::copy):
22648 (JSC::AssemblerBuffer::grow):
22649 (JSC::X86Assembler::):
22650 (JSC::X86Assembler::X86Assembler):
22651 (JSC::X86Assembler::testl_i32r):
22652 (JSC::X86Assembler::movl_mr):
22653 (JSC::X86Assembler::movl_rm):
22654 (JSC::X86Assembler::movl_i32m):
22655 (JSC::X86Assembler::emitCall):
22656 (JSC::X86Assembler::label):
22657 (JSC::X86Assembler::emitUnlinkedJmp):
22658 (JSC::X86Assembler::emitUnlinkedJne):
22659 (JSC::X86Assembler::emitUnlinkedJe):
22660 (JSC::X86Assembler::emitUnlinkedJl):
22661 (JSC::X86Assembler::emitUnlinkedJb):
22662 (JSC::X86Assembler::emitUnlinkedJle):
22663 (JSC::X86Assembler::emitUnlinkedJbe):
22664 (JSC::X86Assembler::emitUnlinkedJge):
22665 (JSC::X86Assembler::emitUnlinkedJg):
22666 (JSC::X86Assembler::emitUnlinkedJa):
22667 (JSC::X86Assembler::emitUnlinkedJae):
22668 (JSC::X86Assembler::emitUnlinkedJo):
22669 (JSC::X86Assembler::emitUnlinkedJp):
22670 (JSC::X86Assembler::emitUnlinkedJs):
22671 (JSC::X86Assembler::link):
22672 (JSC::X86Assembler::emitModRm_rr):
22673 (JSC::X86Assembler::emitModRm_rm):
22674 (JSC::X86Assembler::emitModRm_opr):
22685 (JSC::CTI::emitCTICall):
22686 (JSC::CTI::compileOpCall):
22687 (JSC::CTI::compileBinaryArithOp):
22688 (JSC::CTI::compileBinaryArithOpSlowCase):
22689 (JSC::CTI::privateCompileMainPass):
22690 (JSC::CTI::privateCompileSlowCases):
22691 (JSC::CTI::privateCompile):
22694 (JSC::CodeBlock::printStructureIDs):
22695 (JSC::CodeBlock::dump):
22696 (JSC::CodeBlock::derefStructureIDs):
22697 (JSC::CodeBlock::refStructureIDs):
22700 (JSC::createNotAnObjectError):
22702 (JSC::Instruction::Instruction):
22703 (JSC::Instruction::):
22705 (JSC::BytecodeInterpreter::isOpcode):
22706 (JSC::BytecodeInterpreter::throwException):
22707 (JSC::BytecodeInterpreter::tryCachePutByID):
22708 (JSC::BytecodeInterpreter::uncachePutByID):
22709 (JSC::BytecodeInterpreter::tryCacheGetByID):
22710 (JSC::BytecodeInterpreter::uncacheGetByID):
22711 (JSC::BytecodeInterpreter::privateExecute):
22712 (JSC::BytecodeInterpreter::tryCTICachePutByID):
22713 (JSC::BytecodeInterpreter::tryCTICacheGetByID):
22715 (JSC::BytecodeInterpreter::getOpcode):
22716 (JSC::BytecodeInterpreter::getOpcodeID):
22717 (JSC::BytecodeInterpreter::isCallBytecode):
22719 (JSC::):
22720 (JSC::OpcodeStats::OpcodeStats):
22721 (JSC::compareOpcodeIndices):
22722 (JSC::compareOpcodePairIndices):
22723 (JSC::OpcodeStats::~OpcodeStats):
22724 (JSC::OpcodeStats::recordInstruction):
22725 (JSC::OpcodeStats::resetLastInstruction):
22727 (JSC::):
22728 (JSC::padOpcodeName):
22730 (JSC::ScopeSampleRecord::sample):
22731 (JSC::SamplingTool::run):
22732 (JSC::compareOpcodeIndicesSampling):
22733 (JSC::SamplingTool::dump):
22735 (JSC::ScopeSampleRecord::ScopeSampleRecord):
22736 (JSC::SamplingTool::SamplingTool):
22738 (JSC::BytecodeGenerator::BytecodeGenerator):
22739 (JSC::BytecodeGenerator::emitLabel):
22740 (JSC::BytecodeGenerator::emitOpcode):
22741 (JSC::BytecodeGenerator::emitJump):
22742 (JSC::BytecodeGenerator::emitJumpIfTrue):
22743 (JSC::BytecodeGenerator::emitJumpIfFalse):
22744 (JSC::BytecodeGenerator::emitMove):
22745 (JSC::BytecodeGenerator::emitUnaryOp):
22746 (JSC::BytecodeGenerator::emitPreInc):
22747 (JSC::BytecodeGenerator::emitPreDec):
22748 (JSC::BytecodeGenerator::emitPostInc):
22749 (JSC::BytecodeGenerator::emitPostDec):
22750 (JSC::BytecodeGenerator::emitBinaryOp):
22751 (JSC::BytecodeGenerator::emitEqualityOp):
22752 (JSC::BytecodeGenerator::emitUnexpectedLoad):
22753 (JSC::BytecodeGenerator::emitInstanceOf):
22754 (JSC::BytecodeGenerator::emitResolve):
22755 (JSC::BytecodeGenerator::emitGetScopedVar):
22756 (JSC::BytecodeGenerator::emitPutScopedVar):
22757 (JSC::BytecodeGenerator::emitResolveBase):
22758 (JSC::BytecodeGenerator::emitResolveWithBase):
22759 (JSC::BytecodeGenerator::emitResolveFunction):
22760 (JSC::BytecodeGenerator::emitGetById):
22761 (JSC::BytecodeGenerator::emitPutById):
22762 (JSC::BytecodeGenerator::emitPutGetter):
22763 (JSC::BytecodeGenerator::emitPutSetter):
22764 (JSC::BytecodeGenerator::emitDeleteById):
22765 (JSC::BytecodeGenerator::emitGetByVal):
22766 (JSC::BytecodeGenerator::emitPutByVal):
22767 (JSC::BytecodeGenerator::emitDeleteByVal):
22768 (JSC::BytecodeGenerator::emitPutByIndex):
22769 (JSC::BytecodeGenerator::emitNewObject):
22770 (JSC::BytecodeGenerator::emitNewArray):
22771 (JSC::BytecodeGenerator::emitNewFunction):
22772 (JSC::BytecodeGenerator::emitNewRegExp):
22773 (JSC::BytecodeGenerator::emitNewFunctionExpression):
22774 (JSC::BytecodeGenerator::emitCall):
22775 (JSC::BytecodeGenerator::emitReturn):
22776 (JSC::BytecodeGenerator::emitUnaryNoDstOp):
22777 (JSC::BytecodeGenerator::emitConstruct):
22778 (JSC::BytecodeGenerator::emitPopScope):
22779 (JSC::BytecodeGenerator::emitDebugHook):
22780 (JSC::BytecodeGenerator::emitComplexJumpScopes):
22781 (JSC::BytecodeGenerator::emitJumpScopes):
22782 (JSC::BytecodeGenerator::emitNextPropertyName):
22783 (JSC::BytecodeGenerator::emitCatch):
22784 (JSC::BytecodeGenerator::emitNewError):
22785 (JSC::BytecodeGenerator::emitJumpSubroutine):
22786 (JSC::BytecodeGenerator::emitSubroutineReturn):
22787 (JSC::BytecodeGenerator::emitPushNewScope):
22788 (JSC::BytecodeGenerator::beginSwitch):
22793 (JSC::X86Assembler::):
22794 (JSC::X86Assembler::emitModRm_opr):
22795 (JSC::X86Assembler::emitModRm_opr_Unchecked):
22796 (JSC::X86Assembler::emitModRm_opm):
22797 (JSC::X86Assembler::emitModRm_opm_Unchecked):
22798 (JSC::X86Assembler::emitModRm_opmsib):
22800 (JSC::UnaryOpNode::emitBytecode):
22801 (JSC::BinaryOpNode::emitBytecode):
22802 (JSC::ReverseBinaryOpNode::emitBytecode):
22803 (JSC::ThrowableBinaryOpNode::emitBytecode):
22804 (JSC::emitReadModifyAssignment):
22805 (JSC::ScopeNode::ScopeNode):
22807 (JSC::UnaryPlusNode::):
22808 (JSC::NegateNode::):
22809 (JSC::BitwiseNotNode::):
22810 (JSC::LogicalNotNode::):
22811 (JSC::MultNode::):
22812 (JSC::DivNode::):
22813 (JSC::ModNode::):
22814 (JSC::AddNode::):
22815 (JSC::SubNode::):
22816 (JSC::LeftShiftNode::):
22817 (JSC::RightShiftNode::):
22818 (JSC::UnsignedRightShiftNode::):
22819 (JSC::LessNode::):
22820 (JSC::GreaterNode::):
22821 (JSC::LessEqNode::):
22822 (JSC::GreaterEqNode::):
22823 (JSC::InstanceOfNode::):
22824 (JSC::InNode::):
22825 (JSC::EqualNode::):
22826 (JSC::NotEqualNode::):
22827 (JSC::StrictEqualNode::):
22828 (JSC::NotStrictEqualNode::):
22829 (JSC::BitAndNode::):
22830 (JSC::BitOrNode::):
22831 (JSC::BitXOrNode::):
22833 (JSC::StructureID::fromDictionaryTransition):
22849 (JSC::BytecodeGenerator::setDumpsGeneratedCode):
22850 (JSC::BytecodeGenerator::generate):
22851 (JSC::BytecodeGenerator::addVar):
22852 (JSC::BytecodeGenerator::addGlobalVar):
22853 (JSC::BytecodeGenerator::allocateConstants):
22854 (JSC::BytecodeGenerator::BytecodeGenerator):
22855 (JSC::BytecodeGenerator::addParameter):
22856 (JSC::BytecodeGenerator::registerFor):
22857 (JSC::BytecodeGenerator::constRegisterFor):
22858 (JSC::BytecodeGenerator::isLocal):
22859 (JSC::BytecodeGenerator::isLocalConstant):
22860 (JSC::BytecodeGenerator::newRegister):
22861 (JSC::BytecodeGenerator::newTemporary):
22862 (JSC::BytecodeGenerator::highestUsedRegister):
22863 (JSC::BytecodeGenerator::newLabelScope):
22864 (JSC::BytecodeGenerator::newLabel):
22865 (JSC::BytecodeGenerator::emitLabel):
22866 (JSC::BytecodeGenerator::emitBytecode):
22867 (JSC::BytecodeGenerator::retrieveLastBinaryOp):
22868 (JSC::BytecodeGenerator::retrieveLastUnaryOp):
22869 (JSC::BytecodeGenerator::rewindBinaryOp):
22870 (JSC::BytecodeGenerator::rewindUnaryOp):
22871 (JSC::BytecodeGenerator::emitJump):
22872 (JSC::BytecodeGenerator::emitJumpIfTrue):
22873 (JSC::BytecodeGenerator::emitJumpIfFalse):
22874 (JSC::BytecodeGenerator::addConstant):
22875 (JSC::BytecodeGenerator::addUnexpectedConstant):
22876 (JSC::BytecodeGenerator::addRegExp):
22877 (JSC::BytecodeGenerator::emitMove):
22878 (JSC::BytecodeGenerator::emitUnaryOp):
22879 (JSC::BytecodeGenerator::emitPreInc):
22880 (JSC::BytecodeGenerator::emitPreDec):
22881 (JSC::BytecodeGenerator::emitPostInc):
22882 (JSC::BytecodeGenerator::emitPostDec):
22883 (JSC::BytecodeGenerator::emitBinaryOp):
22884 (JSC::BytecodeGenerator::emitEqualityOp):
22885 (JSC::BytecodeGenerator::emitLoad):
22886 (JSC::BytecodeGenerator::emitUnexpectedLoad):
22887 (JSC::BytecodeGenerator::findScopedProperty):
22888 (JSC::BytecodeGenerator::emitInstanceOf):
22889 (JSC::BytecodeGenerator::emitResolve):
22890 (JSC::BytecodeGenerator::emitGetScopedVar):
22891 (JSC::BytecodeGenerator::emitPutScopedVar):
22892 (JSC::BytecodeGenerator::emitResolveBase):
22893 (JSC::BytecodeGenerator::emitResolveWithBase):
22894 (JSC::BytecodeGenerator::emitResolveFunction):
22895 (JSC::BytecodeGenerator::emitGetById):
22896 (JSC::BytecodeGenerator::emitPutById):
22897 (JSC::BytecodeGenerator::emitPutGetter):
22898 (JSC::BytecodeGenerator::emitPutSetter):
22899 (JSC::BytecodeGenerator::emitDeleteById):
22900 (JSC::BytecodeGenerator::emitGetByVal):
22901 (JSC::BytecodeGenerator::emitPutByVal):
22902 (JSC::BytecodeGenerator::emitDeleteByVal):
22903 (JSC::BytecodeGenerator::emitPutByIndex):
22904 (JSC::BytecodeGenerator::emitNewObject):
22905 (JSC::BytecodeGenerator::emitNewArray):
22906 (JSC::BytecodeGenerator::emitNewFunction):
22907 (JSC::BytecodeGenerator::emitNewRegExp):
22908 (JSC::BytecodeGenerator::emitNewFunctionExpression):
22909 (JSC::BytecodeGenerator::emitCall):
22910 (JSC::BytecodeGenerator::emitCallEval):
22911 (JSC::BytecodeGenerator::emitReturn):
22912 (JSC::BytecodeGenerator::emitUnaryNoDstOp):
22913 (JSC::BytecodeGenerator::emitConstruct):
22914 (JSC::BytecodeGenerator::emitPushScope):
22915 (JSC::BytecodeGenerator::emitPopScope):
22916 (JSC::BytecodeGenerator::emitDebugHook):
22917 (JSC::BytecodeGenerator::pushFinallyContext):
22918 (JSC::BytecodeGenerator::popFinallyContext):
22919 (JSC::BytecodeGenerator::breakTarget):
22920 (JSC::BytecodeGenerator::continueTarget):
22921 (JSC::BytecodeGenerator::emitComplexJumpScopes):
22922 (JSC::BytecodeGenerator::emitJumpScopes):
22923 (JSC::BytecodeGenerator::emitNextPropertyName):
22924 (JSC::BytecodeGenerator::emitCatch):
22925 (JSC::BytecodeGenerator::emitNewError):
22926 (JSC::BytecodeGenerator::emitJumpSubroutine):
22927 (JSC::BytecodeGenerator::emitSubroutineReturn):
22928 (JSC::BytecodeGenerator::emitPushNewScope):
22929 (JSC::BytecodeGenerator::beginSwitch):
22930 (JSC::BytecodeGenerator::endSwitch):
22931 (JSC::BytecodeGenerator::emitThrowExpressionTooDeepException):
22936 (JSC::ThrowableExpressionData::emitThrowError):
22937 (JSC::NullNode::emitBytecode):
22938 (JSC::BooleanNode::emitBytecode):
22939 (JSC::NumberNode::emitBytecode):
22940 (JSC::StringNode::emitBytecode):
22941 (JSC::RegExpNode::emitBytecode):
22942 (JSC::ThisNode::emitBytecode):
22943 (JSC::ResolveNode::isPure):
22944 (JSC::ResolveNode::emitBytecode):
22945 (JSC::ArrayNode::emitBytecode):
22946 (JSC::ObjectLiteralNode::emitBytecode):
22947 (JSC::PropertyListNode::emitBytecode):
22948 (JSC::BracketAccessorNode::emitBytecode):
22949 (JSC::DotAccessorNode::emitBytecode):
22950 (JSC::ArgumentListNode::emitBytecode):
22951 (JSC::NewExprNode::emitBytecode):
22952 (JSC::EvalFunctionCallNode::emitBytecode):
22953 (JSC::FunctionCallValueNode::emitBytecode):
22954 (JSC::FunctionCallResolveNode::emitBytecode):
22955 (JSC::FunctionCallBracketNode::emitBytecode):
22956 (JSC::FunctionCallDotNode::emitBytecode):
22957 (JSC::emitPreIncOrDec):
22958 (JSC::emitPostIncOrDec):
22959 (JSC::PostfixResolveNode::emitBytecode):
22960 (JSC::PostfixBracketNode::emitBytecode):
22961 (JSC::PostfixDotNode::emitBytecode):
22962 (JSC::PostfixErrorNode::emitBytecode):
22963 (JSC::DeleteResolveNode::emitBytecode):
22964 (JSC::DeleteBracketNode::emitBytecode):
22965 (JSC::DeleteDotNode::emitBytecode):
22966 (JSC::DeleteValueNode::emitBytecode):
22967 (JSC::VoidNode::emitBytecode):
22968 (JSC::TypeOfResolveNode::emitBytecode):
22969 (JSC::TypeOfValueNode::emitBytecode):
22970 (JSC::PrefixResolveNode::emitBytecode):
22971 (JSC::PrefixBracketNode::emitBytecode):
22972 (JSC::PrefixDotNode::emitBytecode):
22973 (JSC::PrefixErrorNode::emitBytecode):
22974 (JSC::UnaryOpNode::emitBytecode):
22975 (JSC::BinaryOpNode::emitBytecode):
22976 (JSC::EqualNode::emitBytecode):
22977 (JSC::StrictEqualNode::emitBytecode):
22978 (JSC::ReverseBinaryOpNode::emitBytecode):
22979 (JSC::ThrowableBinaryOpNode::emitBytecode):
22980 (JSC::InstanceOfNode::emitBytecode):
22981 (JSC::LogicalOpNode::emitBytecode):
22982 (JSC::ConditionalNode::emitBytecode):
22983 (JSC::emitReadModifyAssignment):
22984 (JSC::ReadModifyResolveNode::emitBytecode):
22985 (JSC::AssignResolveNode::emitBytecode):
22986 (JSC::AssignDotNode::emitBytecode):
22987 (JSC::ReadModifyDotNode::emitBytecode):
22988 (JSC::AssignErrorNode::emitBytecode):
22989 (JSC::AssignBracketNode::emitBytecode):
22990 (JSC::ReadModifyBracketNode::emitBytecode):
22991 (JSC::CommaNode::emitBytecode):
22992 (JSC::ConstDeclNode::emitCodeSingle):
22993 (JSC::ConstDeclNode::emitBytecode):
22994 (JSC::ConstStatementNode::emitBytecode):
22995 (JSC::statementListEmitCode):
22996 (JSC::BlockNode::emitBytecode):
22997 (JSC::EmptyStatementNode::emitBytecode):
22998 (JSC::DebuggerStatementNode::emitBytecode):
22999 (JSC::ExprStatementNode::emitBytecode):
23000 (JSC::VarStatementNode::emitBytecode):
23001 (JSC::IfNode::emitBytecode):
23002 (JSC::IfElseNode::emitBytecode):
23003 (JSC::DoWhileNode::emitBytecode):
23004 (JSC::WhileNode::emitBytecode):
23005 (JSC::ForNode::emitBytecode):
23006 (JSC::ForInNode::emitBytecode):
23007 (JSC::ContinueNode::emitBytecode):
23008 (JSC::BreakNode::emitBytecode):
23009 (JSC::ReturnNode::emitBytecode):
23010 (JSC::WithNode::emitBytecode):
23011 (JSC::CaseBlockNode::emitBytecodeForBlock):
23012 (JSC::SwitchNode::emitBytecode):
23013 (JSC::LabelNode::emitBytecode):
23014 (JSC::ThrowNode::emitBytecode):
23015 (JSC::TryNode::emitBytecode):
23016 (JSC::EvalNode::emitBytecode):
23017 (JSC::EvalNode::generateBytecode):
23018 (JSC::FunctionBodyNode::generateBytecode):
23019 (JSC::FunctionBodyNode::emitBytecode):
23020 (JSC::ProgramNode::emitBytecode):
23021 (JSC::ProgramNode::generateBytecode):
23022 (JSC::FuncDeclNode::emitBytecode):
23023 (JSC::FuncExprNode::emitBytecode):
23025 (JSC::ExpressionNode::):
23026 (JSC::BooleanNode::):
23027 (JSC::NumberNode::):
23028 (JSC::StringNode::):
23029 (JSC::ProgramNode::):
23030 (JSC::EvalNode::):
23031 (JSC::FunctionBodyNode::):
23033 (JSC::Arguments::getArgumentsData):
23034 (JSC::JSActivation::copyRegisters):
23036 (JSC::JSActivation::mark):
23038 (JSC::JSActivation::JSActivationData::JSActivationData):
23040 (JSC::JSFunction::~JSFunction):
23050 (JSC::CTI::printBytecodeOperandTypes):
23051 (JSC::CTI::emitAllocateNumber):
23052 (JSC::CTI::emitNakedCall):
23053 (JSC::CTI::emitNakedFastCall):
23054 (JSC::CTI::emitCTICall):
23055 (JSC::CTI::emitJumpSlowCaseIfNotJSCell):
23056 (JSC::CTI::emitJumpSlowCaseIfNotImmNum):
23057 (JSC::CTI::emitJumpSlowCaseIfNotImmNums):
23058 (JSC::CTI::emitFastArithIntToImmOrSlowCase):
23059 (JSC::CTI::compileOpCall):
23060 (JSC::CTI::emitSlowScriptCheck):
23061 (JSC::CTI::compileBinaryArithOp):
23062 (JSC::CTI::compileBinaryArithOpSlowCase):
23063 (JSC::CTI::privateCompileMainPass):
23064 (JSC::CTI::privateCompileSlowCases):
23065 (JSC::CTI::privateCompile):
23067 (JSC::CallRecord::CallRecord):
23068 (JSC::SwitchRecord::SwitchRecord):
23070 (JSC::CodeBlock::printStructureIDs):
23071 (JSC::CodeBlock::dump):
23072 (JSC::CodeBlock::~CodeBlock):
23073 (JSC::CodeBlock::derefStructureIDs):
23074 (JSC::CodeBlock::refStructureIDs):
23076 (JSC::StructureStubInfo::StructureStubInfo):
23078 (JSC::createNotAnObjectError):
23080 (JSC::Instruction::Instruction):
23081 (JSC::Instruction::):
23083 (JSC::BytecodeInterpreter::isBytecode):
23084 (JSC::BytecodeInterpreter::throwException):
23085 (JSC::BytecodeInterpreter::execute):
23086 (JSC::BytecodeInterpreter::tryCachePutByID):
23087 (JSC::BytecodeInterpreter::uncachePutByID):
23088 (JSC::BytecodeInterpreter::tryCacheGetByID):
23089 (JSC::BytecodeInterpreter::uncacheGetByID):
23090 (JSC::BytecodeInterpreter::privateExecute):
23091 (JSC::BytecodeInterpreter::tryCTICachePutByID):
23092 (JSC::BytecodeInterpreter::tryCTICacheGetByID):
23093 (JSC::BytecodeInterpreter::cti_op_call_JSFunction):
23094 (JSC::BytecodeInterpreter::cti_vm_dontLazyLinkCall):
23095 (JSC::BytecodeInterpreter::cti_vm_lazyLinkCall):
23097 (JSC::BytecodeInterpreter::getBytecode):
23098 (JSC::BytecodeInterpreter::getBytecodeID):
23099 (JSC::BytecodeInterpreter::isCallBytecode):
23101 (JSC::):
23102 (JSC::BytecodeStats::BytecodeStats):
23103 (JSC::compareBytecodeIndices):
23104 (JSC::compareBytecodePairIndices):
23105 (JSC::BytecodeStats::~BytecodeStats):
23106 (JSC::BytecodeStats::recordInstruction):
23107 (JSC::BytecodeStats::resetLastInstruction):
23109 (JSC::):
23110 (JSC::padBytecodeName):
23112 (JSC::ScopeSampleRecord::sample):
23113 (JSC::SamplingTool::run):
23114 (JSC::compareBytecodeIndicesSampling):
23115 (JSC::SamplingTool::dump):
23117 (JSC::ScopeSampleRecord::ScopeSampleRecord):
23118 (JSC::SamplingTool::SamplingTool):
23120 (JSC::CodeGenerator::generate):
23121 (JSC::CodeGenerator::CodeGenerator):
23122 (JSC::CodeGenerator::emitLabel):
23123 (JSC::CodeGenerator::emitBytecode):
23124 (JSC::CodeGenerator::emitJump):
23125 (JSC::CodeGenerator::emitJumpIfTrue):
23126 (JSC::CodeGenerator::emitJumpIfFalse):
23127 (JSC::CodeGenerator::emitMove):
23128 (JSC::CodeGenerator::emitUnaryOp):
23129 (JSC::CodeGenerator::emitPreInc):
23130 (JSC::CodeGenerator::emitPreDec):
23131 (JSC::CodeGenerator::emitPostInc):
23132 (JSC::CodeGenerator::emitPostDec):
23133 (JSC::CodeGenerator::emitBinaryOp):
23134 (JSC::CodeGenerator::emitEqualityOp):
23135 (JSC::CodeGenerator::emitUnexpectedLoad):
23136 (JSC::CodeGenerator::emitInstanceOf):
23137 (JSC::CodeGenerator::emitResolve):
23138 (JSC::CodeGenerator::emitGetScopedVar):
23139 (JSC::CodeGenerator::emitPutScopedVar):
23140 (JSC::CodeGenerator::emitResolveBase):
23141 (JSC::CodeGenerator::emitResolveWithBase):
23142 (JSC::CodeGenerator::emitResolveFunction):
23143 (JSC::CodeGenerator::emitGetById):
23144 (JSC::CodeGenerator::emitPutById):
23145 (JSC::CodeGenerator::emitPutGetter):
23146 (JSC::CodeGenerator::emitPutSetter):
23147 (JSC::CodeGenerator::emitDeleteById):
23148 (JSC::CodeGenerator::emitGetByVal):
23149 (JSC::CodeGenerator::emitPutByVal):
23150 (JSC::CodeGenerator::emitDeleteByVal):
23151 (JSC::CodeGenerator::emitPutByIndex):
23152 (JSC::CodeGenerator::emitNewObject):
23153 (JSC::CodeGenerator::emitNewArray):
23154 (JSC::CodeGenerator::emitNewFunction):
23155 (JSC::CodeGenerator::emitNewRegExp):
23156 (JSC::CodeGenerator::emitNewFunctionExpression):
23157 (JSC::CodeGenerator::emitCall):
23158 (JSC::CodeGenerator::emitReturn):
23159 (JSC::CodeGenerator::emitUnaryNoDstOp):
23160 (JSC::CodeGenerator::emitConstruct):
23161 (JSC::CodeGenerator::emitPopScope):
23162 (JSC::CodeGenerator::emitDebugHook):
23163 (JSC::CodeGenerator::emitComplexJumpScopes):
23164 (JSC::CodeGenerator::emitJumpScopes):
23165 (JSC::CodeGenerator::emitNextPropertyName):
23166 (JSC::CodeGenerator::emitCatch):
23167 (JSC::CodeGenerator::emitNewError):
23168 (JSC::CodeGenerator::emitJumpSubroutine):
23169 (JSC::CodeGenerator::emitSubroutineReturn):
23170 (JSC::CodeGenerator::emitPushNewScope):
23171 (JSC::CodeGenerator::beginSwitch):
23172 (JSC::CodeGenerator::endSwitch):
23174 (JSC::CodeGenerator::emitNode):
23178 (JSC::X86Assembler::):
23179 (JSC::X86Assembler::emitModRm_opr):
23180 (JSC::X86Assembler::emitModRm_opr_Unchecked):
23181 (JSC::X86Assembler::emitModRm_opm):
23182 (JSC::X86Assembler::emitModRm_opm_Unchecked):
23183 (JSC::X86Assembler::emitModRm_opmsib):
23185 (JSC::NullNode::emitBytecode):
23186 (JSC::BooleanNode::emitBytecode):
23187 (JSC::NumberNode::emitBytecode):
23188 (JSC::StringNode::emitBytecode):
23189 (JSC::RegExpNode::emitBytecode):
23190 (JSC::ThisNode::emitBytecode):
23191 (JSC::ResolveNode::emitBytecode):
23192 (JSC::ArrayNode::emitBytecode):
23193 (JSC::ObjectLiteralNode::emitBytecode):
23194 (JSC::PropertyListNode::emitBytecode):
23195 (JSC::BracketAccessorNode::emitBytecode):
23196 (JSC::DotAccessorNode::emitBytecode):
23197 (JSC::ArgumentListNode::emitBytecode):
23198 (JSC::NewExprNode::emitBytecode):
23199 (JSC::EvalFunctionCallNode::emitBytecode):
23200 (JSC::FunctionCallValueNode::emitBytecode):
23201 (JSC::FunctionCallResolveNode::emitBytecode):
23202 (JSC::FunctionCallBracketNode::emitBytecode):
23203 (JSC::FunctionCallDotNode::emitBytecode):
23204 (JSC::PostfixResolveNode::emitBytecode):
23205 (JSC::PostfixBracketNode::emitBytecode):
23206 (JSC::PostfixDotNode::emitBytecode):
23207 (JSC::PostfixErrorNode::emitBytecode):
23208 (JSC::DeleteResolveNode::emitBytecode):
23209 (JSC::DeleteBracketNode::emitBytecode):
23210 (JSC::DeleteDotNode::emitBytecode):
23211 (JSC::DeleteValueNode::emitBytecode):
23212 (JSC::VoidNode::emitBytecode):
23213 (JSC::TypeOfResolveNode::emitBytecode):
23214 (JSC::TypeOfValueNode::emitBytecode):
23215 (JSC::PrefixResolveNode::emitBytecode):
23216 (JSC::PrefixBracketNode::emitBytecode):
23217 (JSC::PrefixDotNode::emitBytecode):
23218 (JSC::PrefixErrorNode::emitBytecode):
23219 (JSC::UnaryOpNode::emitBytecode):
23220 (JSC::BinaryOpNode::emitBytecode):
23221 (JSC::EqualNode::emitBytecode):
23222 (JSC::StrictEqualNode::emitBytecode):
23223 (JSC::ReverseBinaryOpNode::emitBytecode):
23224 (JSC::ThrowableBinaryOpNode::emitBytecode):
23225 (JSC::InstanceOfNode::emitBytecode):
23226 (JSC::LogicalOpNode::emitBytecode):
23227 (JSC::ConditionalNode::emitBytecode):
23228 (JSC::emitReadModifyAssignment):
23229 (JSC::ReadModifyResolveNode::emitBytecode):
23230 (JSC::AssignResolveNode::emitBytecode):
23231 (JSC::AssignDotNode::emitBytecode):
23232 (JSC::ReadModifyDotNode::emitBytecode):
23233 (JSC::AssignErrorNode::emitBytecode):
23234 (JSC::AssignBracketNode::emitBytecode):
23235 (JSC::ReadModifyBracketNode::emitBytecode):
23236 (JSC::CommaNode::emitBytecode):
23237 (JSC::ConstDeclNode::emitBytecode):
23238 (JSC::ConstStatementNode::emitBytecode):
23239 (JSC::BlockNode::emitBytecode):
23240 (JSC::EmptyStatementNode::emitBytecode):
23241 (JSC::DebuggerStatementNode::emitBytecode):
23242 (JSC::ExprStatementNode::emitBytecode):
23243 (JSC::VarStatementNode::emitBytecode):
23244 (JSC::IfNode::emitBytecode):
23245 (JSC::IfElseNode::emitBytecode):
23246 (JSC::DoWhileNode::emitBytecode):
23247 (JSC::WhileNode::emitBytecode):
23248 (JSC::ForNode::emitBytecode):
23249 (JSC::ForInNode::emitBytecode):
23250 (JSC::ContinueNode::emitBytecode):
23251 (JSC::BreakNode::emitBytecode):
23252 (JSC::ReturnNode::emitBytecode):
23253 (JSC::WithNode::emitBytecode):
23254 (JSC::SwitchNode::emitBytecode):
23255 (JSC::LabelNode::emitBytecode):
23256 (JSC::ThrowNode::emitBytecode):
23257 (JSC::TryNode::emitBytecode):
23258 (JSC::ScopeNode::ScopeNode):
23259 (JSC::EvalNode::emitBytecode):
23260 (JSC::FunctionBodyNode::emitBytecode):
23261 (JSC::ProgramNode::emitBytecode):
23262 (JSC::FuncDeclNode::emitBytecode):
23263 (JSC::FuncExprNode::emitBytecode):
23265 (JSC::UnaryPlusNode::):
23266 (JSC::NegateNode::):
23267 (JSC::BitwiseNotNode::):
23268 (JSC::LogicalNotNode::):
23269 (JSC::MultNode::):
23270 (JSC::DivNode::):
23271 (JSC::ModNode::):
23272 (JSC::AddNode::):
23273 (JSC::SubNode::):
23274 (JSC::LeftShiftNode::):
23275 (JSC::RightShiftNode::):
23276 (JSC::UnsignedRightShiftNode::):
23277 (JSC::LessNode::):
23278 (JSC::GreaterNode::):
23279 (JSC::LessEqNode::):
23280 (JSC::GreaterEqNode::):
23281 (JSC::InstanceOfNode::):
23282 (JSC::InNode::):
23283 (JSC::EqualNode::):
23284 (JSC::NotEqualNode::):
23285 (JSC::StrictEqualNode::):
23286 (JSC::NotStrictEqualNode::):
23287 (JSC::BitAndNode::):
23288 (JSC::BitOrNode::):
23289 (JSC::BitXOrNode::):
23290 (JSC::ProgramNode::):
23291 (JSC::EvalNode::):
23292 (JSC::FunctionBodyNode::):
23295 (JSC::StructureID::fromDictionaryTransition):
23309 (JSC::):
23310 (JSC::CTI::emitCTICall):
23311 (JSC::CTI::CTI):
23312 (JSC::CTI::compileOpCall):
23313 (JSC::CTI::emitSlowScriptCheck):
23314 (JSC::CTI::compileBinaryArithOpSlowCase):
23315 (JSC::CTI::privateCompileMainPass):
23316 (JSC::CTI::privateCompileSlowCases):
23317 (JSC::CTI::privateCompile):
23318 (JSC::CTI::privateCompileGetByIdSelf):
23319 (JSC::CTI::privateCompileGetByIdProto):
23320 (JSC::CTI::privateCompileGetByIdChain):
23321 (JSC::CTI::privateCompilePutByIdReplace):
23322 (JSC::CTI::privateCompilePutByIdTransition):
23323 (JSC::CTI::privateCompileCTIMachineTrampolines):
23324 (JSC::CTI::freeCTIMachineTrampolines):
23325 (JSC::CTI::patchGetByIdSelf):
23326 (JSC::CTI::patchPutByIdReplace):
23327 (JSC::CTI::privateCompilePatchGetArrayLength):
23328 (JSC::CTI::compileRegExp):
23331 (JSC::CodeBlock::printStructureIDs):
23332 (JSC::CodeBlock::dump):
23333 (JSC::CodeBlock::derefStructureIDs):
23334 (JSC::CodeBlock::refStructureIDs):
23336 (JSC::createNotAnObjectError):
23338 (JSC::jsLess):
23339 (JSC::jsLessEq):
23340 (JSC::BytecodeInterpreter::resolve):
23341 (JSC::BytecodeInterpreter::resolveSkip):
23342 (JSC::BytecodeInterpreter::resolveGlobal):
23343 (JSC::BytecodeInterpreter::resolveBase):
23344 (JSC::BytecodeInterpreter::resolveBaseAndProperty):
23345 (JSC::BytecodeInterpreter::resolveBaseAndFunc):
23346 (JSC::BytecodeInterpreter::slideRegisterWindowForCall):
23347 (JSC::BytecodeInterpreter::callEval):
23348 (JSC::BytecodeInterpreter::BytecodeInterpreter):
23349 (JSC::BytecodeInterpreter::initialize):
23350 (JSC::BytecodeInterpreter::~BytecodeInterpreter):
23351 (JSC::BytecodeInterpreter::dumpCallFrame):
23352 (JSC::BytecodeInterpreter::dumpRegisters):
23353 (JSC::BytecodeInterpreter::isOpcode):
23354 (JSC::BytecodeInterpreter::unwindCallFrame):
23355 (JSC::BytecodeInterpreter::throwException):
23356 (JSC::BytecodeInterpreter::execute):
23357 (JSC::BytecodeInterpreter::debug):
23358 (JSC::BytecodeInterpreter::resetTimeoutCheck):
23359 (JSC::BytecodeInterpreter::checkTimeout):
23360 (JSC::BytecodeInterpreter::createExceptionScope):
23361 (JSC::BytecodeInterpreter::tryCachePutByID):
23362 (JSC::BytecodeInterpreter::uncachePutByID):
23363 (JSC::BytecodeInterpreter::tryCacheGetByID):
23364 (JSC::BytecodeInterpreter::uncacheGetByID):
23365 (JSC::BytecodeInterpreter::privateExecute):
23366 (JSC::BytecodeInterpreter::retrieveArguments):
23367 (JSC::BytecodeInterpreter::retrieveCaller):
23368 (JSC::BytecodeInterpreter::retrieveLastCaller):
23369 (JSC::BytecodeInterpreter::findFunctionCallFrame):
23370 (JSC::BytecodeInterpreter::tryCTICachePutByID):
23371 (JSC::BytecodeInterpreter::tryCTICacheGetByID):
23372 (JSC::BytecodeInterpreter::cti_op_convert_this):
23373 (JSC::BytecodeInterpreter::cti_op_end):
23374 (JSC::BytecodeInterpreter::cti_op_add):
23375 (JSC::BytecodeInterpreter::cti_op_pre_inc):
23376 (JSC::BytecodeInterpreter::cti_timeout_check):
23377 (JSC::BytecodeInterpreter::cti_register_file_check):
23378 (JSC::BytecodeInterpreter::cti_op_loop_if_less):
23379 (JSC::BytecodeInterpreter::cti_op_loop_if_lesseq):
23380 (JSC::BytecodeInterpreter::cti_op_new_object):
23381 (JSC::BytecodeInterpreter::cti_op_put_by_id):
23382 (JSC::BytecodeInterpreter::cti_op_put_by_id_second):
23383 (JSC::BytecodeInterpreter::cti_op_put_by_id_generic):
23384 (JSC::BytecodeInterpreter::cti_op_put_by_id_fail):
23385 (JSC::BytecodeInterpreter::cti_op_get_by_id):
23386 (JSC::BytecodeInterpreter::cti_op_get_by_id_second):
23387 (JSC::BytecodeInterpreter::cti_op_get_by_id_generic):
23388 (JSC::BytecodeInterpreter::cti_op_get_by_id_fail):
23389 (JSC::BytecodeInterpreter::cti_op_instanceof):
23390 (JSC::BytecodeInterpreter::cti_op_del_by_id):
23391 (JSC::BytecodeInterpreter::cti_op_mul):
23392 (JSC::BytecodeInterpreter::cti_op_new_func):
23393 (JSC::BytecodeInterpreter::cti_op_call_JSFunction):
23394 (JSC::BytecodeInterpreter::cti_op_call_arityCheck):
23395 (JSC::BytecodeInterpreter::cti_vm_dontLazyLinkCall):
23396 (JSC::BytecodeInterpreter::cti_vm_lazyLinkCall):
23397 (JSC::BytecodeInterpreter::cti_op_push_activation):
23398 (JSC::BytecodeInterpreter::cti_op_call_NotJSFunction):
23399 (JSC::BytecodeInterpreter::cti_op_create_arguments):
23400 (JSC::BytecodeInterpreter::cti_op_create_arguments_no_params):
23401 (JSC::BytecodeInterpreter::cti_op_tear_off_activation):
23402 (JSC::BytecodeInterpreter::cti_op_tear_off_arguments):
23403 (JSC::BytecodeInterpreter::cti_op_profile_will_call):
23404 (JSC::BytecodeInterpreter::cti_op_profile_did_call):
23405 (JSC::BytecodeInterpreter::cti_op_ret_scopeChain):
23406 (JSC::BytecodeInterpreter::cti_op_new_array):
23407 (JSC::BytecodeInterpreter::cti_op_resolve):
23408 (JSC::BytecodeInterpreter::cti_op_construct_JSConstruct):
23409 (JSC::BytecodeInterpreter::cti_op_construct_NotJSConstruct):
23410 (JSC::BytecodeInterpreter::cti_op_get_by_val):
23411 (JSC::BytecodeInterpreter::cti_op_resolve_func):
23412 (JSC::BytecodeInterpreter::cti_op_sub):
23413 (JSC::BytecodeInterpreter::cti_op_put_by_val):
23414 (JSC::BytecodeInterpreter::cti_op_put_by_val_array):
23415 (JSC::BytecodeInterpreter::cti_op_lesseq):
23416 (JSC::BytecodeInterpreter::cti_op_loop_if_true):
23417 (JSC::BytecodeInterpreter::cti_op_negate):
23418 (JSC::BytecodeInterpreter::cti_op_resolve_base):
23419 (JSC::BytecodeInterpreter::cti_op_resolve_skip):
23420 (JSC::BytecodeInterpreter::cti_op_resolve_global):
23421 (JSC::BytecodeInterpreter::cti_op_div):
23422 (JSC::BytecodeInterpreter::cti_op_pre_dec):
23423 (JSC::BytecodeInterpreter::cti_op_jless):
23424 (JSC::BytecodeInterpreter::cti_op_not):
23425 (JSC::BytecodeInterpreter::cti_op_jtrue):
23426 (JSC::BytecodeInterpreter::cti_op_post_inc):
23427 (JSC::BytecodeInterpreter::cti_op_eq):
23428 (JSC::BytecodeInterpreter::cti_op_lshift):
23429 (JSC::BytecodeInterpreter::cti_op_bitand):
23430 (JSC::BytecodeInterpreter::cti_op_rshift):
23431 (JSC::BytecodeInterpreter::cti_op_bitnot):
23432 (JSC::BytecodeInterpreter::cti_op_resolve_with_base):
23433 (JSC::BytecodeInterpreter::cti_op_new_func_exp):
23434 (JSC::BytecodeInterpreter::cti_op_mod):
23435 (JSC::BytecodeInterpreter::cti_op_less):
23436 (JSC::BytecodeInterpreter::cti_op_neq):
23437 (JSC::BytecodeInterpreter::cti_op_post_dec):
23438 (JSC::BytecodeInterpreter::cti_op_urshift):
23439 (JSC::BytecodeInterpreter::cti_op_bitxor):
23440 (JSC::BytecodeInterpreter::cti_op_new_regexp):
23441 (JSC::BytecodeInterpreter::cti_op_bitor):
23442 (JSC::BytecodeInterpreter::cti_op_call_eval):
23443 (JSC::BytecodeInterpreter::cti_op_throw):
23444 (JSC::BytecodeInterpreter::cti_op_get_pnames):
23445 (JSC::BytecodeInterpreter::cti_op_next_pname):
23446 (JSC::BytecodeInterpreter::cti_op_push_scope):
23447 (JSC::BytecodeInterpreter::cti_op_pop_scope):
23448 (JSC::BytecodeInterpreter::cti_op_typeof):
23449 (JSC::BytecodeInterpreter::cti_op_is_undefined):
23450 (JSC::BytecodeInterpreter::cti_op_is_boolean):
23451 (JSC::BytecodeInterpreter::cti_op_is_number):
23452 (JSC::BytecodeInterpreter::cti_op_is_string):
23453 (JSC::BytecodeInterpreter::cti_op_is_object):
23454 (JSC::BytecodeInterpreter::cti_op_is_function):
23455 (JSC::BytecodeInterpreter::cti_op_stricteq):
23456 (JSC::BytecodeInterpreter::cti_op_nstricteq):
23457 (JSC::BytecodeInterpreter::cti_op_to_jsnumber):
23458 (JSC::BytecodeInterpreter::cti_op_in):
23459 (JSC::BytecodeInterpreter::cti_op_push_new_scope):
23460 (JSC::BytecodeInterpreter::cti_op_jmp_scopes):
23461 (JSC::BytecodeInterpreter::cti_op_put_by_index):
23462 (JSC::BytecodeInterpreter::cti_op_switch_imm):
23463 (JSC::BytecodeInterpreter::cti_op_switch_char):
23464 (JSC::BytecodeInterpreter::cti_op_switch_string):
23465 (JSC::BytecodeInterpreter::cti_op_del_by_val):
23466 (JSC::BytecodeInterpreter::cti_op_put_getter):
23467 (JSC::BytecodeInterpreter::cti_op_put_setter):
23468 (JSC::BytecodeInterpreter::cti_op_new_error):
23469 (JSC::BytecodeInterpreter::cti_op_debug):
23470 (JSC::BytecodeInterpreter::cti_vm_throw):
23474 (JSC::SamplingTool::run):
23476 (JSC::SamplingTool::SamplingTool):
23478 (JSC::CodeGenerator::generate):
23479 (JSC::CodeGenerator::CodeGenerator):
23480 (JSC::CodeGenerator::emitOpcode):
23482 (JSC::DebuggerCallFrame::evaluate):
23486 (JSC::ScopeNode::ScopeNode):
23488 (JSC::ProfileGenerator::addParentForConsoleStart):
23490 (JSC::arrayProtoFuncPop):
23491 (JSC::arrayProtoFuncPush):
23493 (JSC::Heap::collect):
23495 (JSC::ExecState::interpreter):
23497 (JSC::functionProtoFuncApply):
23499 (JSC::Interpreter::evaluate):
23502 (JSC::JSFunction::call):
23503 (JSC::JSFunction::argumentsGetter):
23504 (JSC::JSFunction::callerGetter):
23505 (JSC::JSFunction::construct):
23508 (JSC::JSGlobalData::JSGlobalData):
23509 (JSC::JSGlobalData::~JSGlobalData):
23512 (JSC::JSGlobalObject::~JSGlobalObject):
23513 (JSC::JSGlobalObject::setTimeoutTime):
23514 (JSC::JSGlobalObject::startTimeoutCheck):
23515 (JSC::JSGlobalObject::stopTimeoutCheck):
23516 (JSC::JSGlobalObject::mark):
23518 (JSC::globalFuncEval):
23521 (JSC::RegExp::RegExp):
23534 (JSC::Machine::retrieveArguments):
23536 (JSC::EvalNode::generateCode):
23537 (JSC::FunctionBodyNode::generateCode):
23540 (JSC::JSActivation::JSActivationData::JSActivationData):
23558 (JSC::CTI::privateCompileMainPass):
23559 (JSC::CTI::privateCompileSlowCases):
23572 (JSC::CTI::emitGetVirtualRegister):
23573 (JSC::CTI::emitGetVirtualRegisters):
23574 (JSC::CTI::emitPutCTIArgFromVirtualRegister):
23575 (JSC::CTI::emitPutCTIArg):
23576 (JSC::CTI::emitGetCTIArg):
23577 (JSC::CTI::emitPutCTIArgConstant):
23578 (JSC::CTI::emitPutVirtualRegister):
23579 (JSC::CTI::compileOpCallSetupArgs):
23580 (JSC::CTI::compileOpCallEvalSetupArgs):
23581 (JSC::CTI::compileOpConstructSetupArgs):
23582 (JSC::CTI::compileOpCall):
23583 (JSC::CTI::compileOpStrictEq):
23584 (JSC::CTI::putDoubleResultToJSNumberCellOrJSImmediate):
23585 (JSC::CTI::compileBinaryArithOp):
23586 (JSC::CTI::compileBinaryArithOpSlowCase):
23587 (JSC::CTI::privateCompileMainPass):
23588 (JSC::CTI::privateCompileSlowCases):
23589 (JSC::CTI::privateCompileCTIMachineTrampolines):
23611 (JSC::CTI::emitRetrieveArg):
23612 (JSC::CTI::emitNakedCall):
23613 (JSC::CTI::compileOpCallInitializeCallFrame):
23614 (JSC::CTI::compileOpCall):
23615 (JSC::CTI::privateCompileSlowCases):
23616 (JSC::CTI::privateCompileCTIMachineTrampolines):
23619 (JSC::getCallLinkInfoReturnLocation):
23620 (JSC::CodeBlock::getCallLinkInfo):
23622 (JSC::Machine::Machine):
23623 (JSC::Machine::cti_vm_dontLazyLinkCall):
23624 (JSC::Machine::cti_vm_lazyLinkCall):
23690 (JSC::JSObject::putDirect): First use addPropertyTransitionToExistingStructure
23694 (JSC::PropertyMapEntry::PropertyMapEntry): Add version of constructor which takes
23697 (JSC::StructureID::dumpStatistics): Add statistics on the number of StructureIDs
23699 (JSC::StructureID::StructureID): Rename m_cachedTransistionOffset to m_offset
23700 (JSC::isPowerOf2):
23701 (JSC::nextPowerOf2):
23702 (JSC::sizeForKeyCount): Returns the expected size of a PropertyMap for a key count.
23703 …(JSC::StructureID::materializePropertyMap): Builds the PropertyMap out of its previous pointer cha…
23704 (JSC::StructureID::addPropertyTransitionToExistingStructure): Only transitions if there is a
23706 … (JSC::StructureID::addPropertyTransition): Instead of always copying the ProperyMap, try and take
23708 … (JSC::StructureID::removePropertyTransition): Simplify by calling toDictionaryTransition() to do
23710 …(JSC::StructureID::changePrototypeTransition): Build the PropertyMap if necessary before transitio…
23713 (JSC::StructureID::getterSetterTransition): Ditto.
23714 …(JSC::StructureID::toDictionaryTransition): Pin the PropertyMap so that it is not destroyed on fur…
23715 …(JSC::StructureID::fromDictionaryTransition): We can only transition back from a dictionary transi…
23717 (JSC::StructureID::addPropertyWithoutTransition): Build PropertyMap on demands and pin.
23718 (JSC::StructureID::removePropertyWithoutTransition): Ditto.
23719 (JSC::StructureID::get): Build on demand.
23720 (JSC::StructureID::createPropertyMapHashTable): Add version of create that takes a size
23722 (JSC::StructureID::expandPropertyMapHashTable):
23723 (JSC::StructureID::rehashPropertyMapHashTable):
23724 (JSC::StructureID::getEnumerablePropertyNamesInternal): Build PropertyMap on demand.
23726 (JSC::StructureID::propertyStorageSize): Account for StructureIDs without PropertyMaps.
23727 (JSC::StructureID::isEmpty): Ditto.
23728 (JSC::StructureID::materializePropertyMapIfNecessary):
23729 (JSC::StructureID::get): Build PropertyMap on demand
23786 Move wtf/dtoa.h into the WTF namespace from the JSC namespace. This
23792 (JSC::Lexer::lex):
23795 (JSC::parseInt):
23797 (JSC::integerPartNoExp):
23798 (JSC::numberProtoFuncToExponential):
23800 (JSC::concatenate):
23801 (JSC::UString::from):
23802 (JSC::UString::toDouble):
23822 (JSC::CTI::putDoubleResultToJSNumberCellOrJSImmediate): Move the final
23824 (JSC::CTI::compileBinaryArithOp): Remove the killing of the final result
23878 (JSC::CTI::emitGetArgs):
23879 (JSC::CTI::compileOpStrictEq):
23880 (JSC::CTI::compileBinaryArithOp):
23881 (JSC::CTI::privateCompileMainPass):
23882 (JSC::CTI::privateCompileSlowCases):
23901 (JSC::CTI::emitGetArg):
23902 (JSC::CTI::privateCompileMainPass):
23909 misleading leak messages. There is still a lone JSC::Node leaking when
23944 (JSC::CTI::emitJumpSlowCaseIfNotJSCell):
23945 (JSC::CTI::linkSlowCaseIfNotJSCell):
23946 (JSC::CTI::compileBinaryArithOp):
23947 (JSC::CTI::compileBinaryArithOpSlowCase):
23948 (JSC::CTI::privateCompileMainPass):
23949 (JSC::CTI::privateCompileSlowCases):
23952 (JSC::CodeBlock::isKnownNotImmediate):
23994 (JSC::CTI::killLastResultRegister):
23995 (JSC::CTI::emitGetArg):
23996 (JSC::CTI::emitGetPutArg):
23997 (JSC::CTI::emitGetCTIParam):
23998 (JSC::CTI::emitGetFromCallFrameHeader):
23999 (JSC::CTI::emitPutResult):
24000 (JSC::CTI::emitCTICall):
24001 (JSC::CTI::CTI):
24002 (JSC::CTI::compileOpCall):
24003 (JSC::CTI::compileOpStrictEq):
24004 (JSC::CTI::emitSlowScriptCheck):
24005 (JSC::CTI::compileBinaryArithOp):
24006 (JSC::CTI::privateCompileMainPass):
24007 (JSC::CTI::privateCompileSlowCases):
24008 (JSC::CTI::privateCompileGetByIdProto):
24009 (JSC::CTI::privateCompilePatchGetArrayLength):
24012 (JSC::CodeBlock::isTemporaryRegisterIndex):
24014 (JSC::CodeGenerator::emitLabel):
24036 (JSC::returnToThrowTrampoline):
24037 (JSC::throwStackOverflowError):
24038 (JSC::Machine::cti_register_file_check):
24039 (JSC::Machine::cti_op_call_arityCheck):
24040 (JSC::Machine::cti_vm_throw): Moved the throw logic into a function, since
24044 (JSC::CodeGenerator::emitCall):
24045 (JSC::CodeGenerator::emitConstruct): Ensure that the function register
24059 (JSC::CTI::compileOpCallSetupArgs):
24060 (JSC::CTI::compileOpCallEvalSetupArgs):
24061 (JSC::CTI::compileOpConstructSetupArgs):
24062 (JSC::CTI::compileOpCall):
24063 (JSC::CTI::privateCompileMainPass):
24064 (JSC::CTI::privateCompileSlowCases):
24067 (JSC::CodeBlock::dump):
24069 (JSC::Machine::callEval):
24070 (JSC::Machine::dumpCallFrame):
24071 (JSC::Machine::dumpRegisters):
24072 (JSC::Machine::execute):
24073 (JSC::Machine::privateExecute):
24074 (JSC::Machine::cti_register_file_check):
24075 (JSC::Machine::cti_op_call_arityCheck):
24076 (JSC::Machine::cti_op_call_NotJSFunction):
24077 (JSC::Machine::cti_op_construct_JSConstruct):
24078 (JSC::Machine::cti_op_construct_NotJSConstruct):
24079 (JSC::Machine::cti_op_call_eval):
24080 (JSC::Machine::cti_vm_throw):
24083 (JSC::CodeGenerator::emitCall):
24084 (JSC::CodeGenerator::emitCallEval):
24085 (JSC::CodeGenerator::emitConstruct):
24088 (JSC::EvalFunctionCallNode::emitCode):
24089 (JSC::FunctionCallValueNode::emitCode):
24090 (JSC::FunctionCallResolveNode::emitCode):
24091 (JSC::FunctionCallBracketNode::emitCode):
24092 (JSC::FunctionCallDotNode::emitCode):
24094 (JSC::ScopeNode::neededConstants):
24105 (JSC::CTI::privateCompilePatchGetArrayLength):
24114 (JSC::CTI::compileOpCallSetupArgs):
24115 (JSC::CTI::compileOpCall):
24116 (JSC::CTI::privateCompileMainPass):
24117 (JSC::CTI::privateCompileSlowCases):
24120 (JSC::CodeBlock::dump):
24122 (JSC::Machine::callEval):
24123 (JSC::Machine::dumpCallFrame):
24124 (JSC::Machine::dumpRegisters):
24125 (JSC::Machine::execute):
24126 (JSC::Machine::privateExecute):
24127 (JSC::Machine::throwStackOverflowPreviousFrame):
24128 (JSC::Machine::cti_register_file_check):
24129 (JSC::Machine::cti_op_call_arityCheck):
24130 (JSC::Machine::cti_op_call_NotJSFunction):
24131 (JSC::Machine::cti_op_construct_JSConstruct):
24132 (JSC::Machine::cti_op_construct_NotJSConstruct):
24133 (JSC::Machine::cti_op_call_eval):
24134 (JSC::Machine::cti_vm_throw):
24137 (JSC::CodeGenerator::emitCall):
24138 (JSC::CodeGenerator::emitCallEval):
24139 (JSC::CodeGenerator::emitConstruct):
24142 (JSC::EvalFunctionCallNode::emitCode):
24143 (JSC::FunctionCallValueNode::emitCode):
24144 (JSC::FunctionCallResolveNode::emitCode):
24145 (JSC::FunctionCallBracketNode::emitCode):
24146 (JSC::FunctionCallDotNode::emitCode):
24148 (JSC::ScopeNode::neededConstants):
24165 (JSC::CTI::compileOpCallSetupArgs):
24166 (JSC::CTI::compileOpCallEvalSetupArgs):
24167 (JSC::CTI::compileOpConstructSetupArgs): Split apart these three versions
24171 (JSC::CTI::compileOpCall): Updated for the fact that op_construct doesn't
24174 (JSC::CTI::privateCompileMainPass):
24175 (JSC::CTI::privateCompileSlowCases): Merged a few call cases. Updated
24181 (JSC::CodeBlock::dump): Updated for new bytecode format of call / construct.
24184 (JSC::Machine::callEval): Updated for new bytecode format of call / construct.
24186 (JSC::Machine::dumpCallFrame):
24187 (JSC::Machine::dumpRegisters): Simplified these debugging functions,
24190 (JSC::Machine::execute): Fixed up the eval version of execute to be
24193 (JSC::Machine::privateExecute): Implemented the new call format in
24196 (JSC::Machine::cti_op_call_NotJSFunction):
24197 (JSC::Machine::cti_op_construct_JSConstruct):
24198 (JSC::Machine::cti_op_construct_NotJSConstruct):
24199 (JSC::Machine::cti_op_call_eval): Updated CTI helpers to match the new
24211 (JSC::CodeGenerator::emitCall):
24212 (JSC::CodeGenerator::emitCallEval):
24213 (JSC::CodeGenerator::emitConstruct):
24218 (JSC::EvalFunctionCallNode::emitCode):
24219 (JSC::FunctionCallValueNode::emitCode):
24220 (JSC::FunctionCallResolveNode::emitCode):
24221 (JSC::FunctionCallBracketNode::emitCode):
24222 (JSC::FunctionCallDotNode::emitCode):
24224 (JSC::ScopeNode::neededConstants): ditto
24255 (JSC::EvalCodeCache::get):
24278 (JSC::CTI::privateCompile):
24280 (JSC::SwitchRecord):
24281 (JSC::SwitchRecord::SwitchRecord):
24290 (JSC::asInteger):
24301 (JSC::CodeGenerator::generate):
24303 (JSC::SourceElements::releaseContentsIntoVector):
24335 (JSC::asInteger):
24346 (JSC::CTI::emitGetArg):
24347 (JSC::CTI::emitGetPutArg):
24348 (JSC::CTI::getConstantImmediateNumericArg):
24349 (JSC::CTI::printOpcodeOperandTypes):
24358 (JSC::CTI::emitGetArg):
24359 (JSC::CTI::emitGetPutArg):
24360 (JSC::CTI::getConstantImmediateNumericArg):
24361 (JSC::CTI::printOpcodeOperandTypes):
24362 (JSC::CTI::privateCompileMainPass):
24365 (JSC::CodeBlock::getConstant):
24374 (JSC::CTI::emitGetArg):
24375 (JSC::CTI::emitGetPutArg):
24376 (JSC::CTI::getConstantImmediateNumericArg):
24377 (JSC::CTI::printOpcodeOperandTypes):
24378 (JSC::CTI::privateCompileMainPass):
24380 (JSC::CodeBlock::isConstantRegisterIndex):
24382 (JSC::CodeGenerator::emitEqualityOp):
24389 (JSC::Machine::initialize):
24399 (JSC::LabelID::setLocation):
24411 (JSC::CTI::getConstant):
24412 (JSC::CTI::emitGetArg):
24413 (JSC::CTI::emitGetPutArg):
24414 (JSC::CTI::getConstantImmediateNumericArg):
24415 (JSC::CTI::printOpcodeOperandTypes):
24416 (JSC::CTI::CTI):
24417 (JSC::CTI::compileBinaryArithOp):
24418 (JSC::CTI::privateCompileMainPass):
24419 (JSC::CTI::privateCompileGetByIdProto):
24420 (JSC::CTI::privateCompileGetByIdChain):
24421 (JSC::CTI::privateCompileCTIMachineTrampolines):
24422 (JSC::CTI::freeCTIMachineTrampolines):
24424 (JSC::CTI::compile):
24425 (JSC::CTI::compileGetByIdSelf):
24426 (JSC::CTI::compileGetByIdProto):
24427 (JSC::CTI::compileGetByIdChain):
24428 (JSC::CTI::compilePutByIdReplace):
24429 (JSC::CTI::compilePutByIdTransition):
24430 (JSC::CTI::compileCTIMachineTrampolines):
24431 (JSC::CTI::compilePatchGetArrayLength):
24433 (JSC::Machine::initialize):
24434 (JSC::Machine::~Machine):
24435 (JSC::Machine::execute):
24436 (JSC::Machine::tryCTICachePutByID):
24437 (JSC::Machine::tryCTICacheGetByID):
24438 (JSC::Machine::cti_op_call_JSFunction):
24439 (JSC::Machine::cti_vm_lazyLinkCall):
24442 (JSC::JITCodeBuffer::isAligned):
24443 (JSC::X86Assembler::):
24444 (JSC::X86Assembler::align):
24446 (JSC::JSGlobalData::JSGlobalData):
24473 (JSC::CTI::compileBinaryArithOp):
24487 (JSC::::getOwnPropertySlot):
24504 (JSC::JSCallbackObject::getOwnPropertySlot):
24542 * VM/Machine.cpp: (JSC::Machine::execute): Use the types from
24546 (JSC::CodeGenerator::CodeGenerator): Ditto.
24558 (JSC::ThrowableExpressionData::emitThrowError): Use inline functions
24560 (JSC::BracketAccessorNode::emitCode): Ditto.
24561 (JSC::DotAccessorNode::emitCode): Ditto.
24562 (JSC::NewExprNode::emitCode): Ditto.
24563 (JSC::EvalFunctionCallNode::emitCode): Ditto.
24564 (JSC::FunctionCallValueNode::emitCode): Ditto.
24565 (JSC::FunctionCallResolveNode::emitCode): Ditto.
24566 (JSC::FunctionCallBracketNode::emitCode): Ditto.
24567 (JSC::FunctionCallDotNode::emitCode): Ditto.
24568 (JSC::PostfixResolveNode::emitCode): Ditto.
24569 (JSC::PostfixBracketNode::emitCode): Ditto.
24570 (JSC::PostfixDotNode::emitCode): Ditto.
24571 (JSC::DeleteResolveNode::emitCode): Ditto.
24572 (JSC::DeleteBracketNode::emitCode): Ditto.
24573 (JSC::DeleteDotNode::emitCode): Ditto.
24574 (JSC::PrefixResolveNode::emitCode): Ditto.
24575 (JSC::PrefixBracketNode::emitCode): Ditto.
24576 (JSC::PrefixDotNode::emitCode): Ditto.
24577 (JSC::ThrowableBinaryOpNode::emitCode): Ditto.
24578 (JSC::InstanceOfNode::emitCode): Ditto.
24579 (JSC::ReadModifyResolveNode::emitCode): Ditto.
24580 (JSC::AssignResolveNode::emitCode): Ditto.
24581 (JSC::AssignDotNode::emitCode): Ditto.
24582 (JSC::ReadModifyDotNode::emitCode): Ditto.
24583 (JSC::AssignBracketNode::emitCode): Ditto.
24584 (JSC::ReadModifyBracketNode::emitCode): Ditto.
24585 (JSC::statementListEmitCode): Take a const StatementVector instead
24587 (JSC::ForInNode::emitCode): Inline functions instead of member access.
24588 (JSC::ThrowNode::emitCode): Ditto.
24589 (JSC::EvalNode::emitCode): Ditto.
24590 (JSC::FunctionBodyNode::emitCode): Ditto.
24591 (JSC::ProgramNode::emitCode): Ditto.
24624 (JSC::CodeGenerator::CodeGenerator): Initialize depth to 0.
24625 (JSC::CodeGenerator::emitThrowExpressionTooDeepException): Added. Emits the code
24628 (JSC::CodeGenerator::emitNode): Check depth and emit an exception if we exceed
24632 (JSC::NodeReleaser::releaseAllNodes): Added. To be called inside node destructors
24634 (JSC::NodeReleaser::release): Added. To be called inside releaseNodes functions.
24637 (JSC::NodeReleaser::adopt): Added. Used by the release function.
24638 (JSC::NodeReleaser::adoptFunctionBodyNode): Added.
24665 (JSC::CodeGenerator::emitEqualityOp):
24675 (JSC::CTI::emitGetArg):
24676 (JSC::CTI::emitGetPutArg):
24677 (JSC::CTI::getConstantImmediateNumericArg):
24678 (JSC::CTI::printOpcodeOperandTypes):
24679 (JSC::CTI::privateCompileMainPass):
24682 (JSC::CodeBlock::isConstant):
24728 (JSC::CodeGenerator::addGlobalVar):
24729 (JSC::CodeGenerator::allocateConstants):
24730 (JSC::CodeGenerator::CodeGenerator):
24731 (JSC::CodeGenerator::addParameter):
24732 (JSC::CodeGenerator::addConstant):
24746 (JSC::CTI::compileOpCallInitializeCallFrame):
24747 (JSC::CTI::compileOpCall):
24748 (JSC::CTI::privateCompileSlowCases):
24751 (JSC::Machine::cti_op_call_JSFunction):
24752 (JSC::Machine::cti_op_call_arityCheck):
24753 (JSC::Machine::cti_op_construct_JSConstruct):
24815 (JSC::JSObject::toNumber):
24867 (JSC::AVLTree::remove): Remove second argument of get_lt/get_gt().
24868 (JSC::AVLTree::subst): Ditto.
24894 Bug 22099: Make the Qt port build the JSC shell in the correct place
24913 (JSC::allocateBlock):
24914 (JSC::freeBlock):
24945 (JSC::currentThreadStackBase):
24955 (JSC::GregorianDateTime::GregorianDateTime):
24956 (JSC::GregorianDateTime::operator tm):
25067 (JSC::CTI::compileOpCall):
25069 (JSC::Machine::cti_op_call_NotJSFunction):
25070 (JSC::Machine::cti_op_call_eval):
25072 (JSC::JSValue::toThisObject):
25074 (JSC::JSImmediate::toThisObject):
25230 (JSC::LabelID::setLocation):
25231 (JSC::LabelID::offsetFrom):
25232 (JSC::LabelID::ref):
25233 (JSC::LabelID::refCount):
25442 (JSC::StructureID::dumpStatistics):
25464 (JSC::CodeBlock::CodeBlock):
25465 (JSC::ProgramCodeBlock::ProgramCodeBlock):
25466 (JSC::EvalCodeBlock::EvalCodeBlock):
25476 (JSC::JSCallbackObject::JSCallbackObjectData::JSCallbackObjectData):
25478 (JSC::CodeBlock::CodeBlock):
25479 (JSC::ProgramCodeBlock::ProgramCodeBlock):
25480 (JSC::EvalCodeBlock::EvalCodeBlock):
25482 (JSC::Quantifier::Quantifier):
25500 (JSC::ForInNode::ForInNode):
25502 (JSC::ThrowableExpressionData::setExceptionSourceCode):
25508 Bug 22019: Move JSC::Interpreter::shouldPrintExceptions() to WebCore::Console
25511 The JSC::Interpreter::shouldPrintExceptions() function is not used at
25615 (JSC::CodeGenerator::CodeGenerator):
25616 (JSC::CodeGenerator::newLabelScope):
25617 (JSC::CodeGenerator::breakTarget):
25618 (JSC::CodeGenerator::continueTarget):
25626 (JSC::LabelScope::):
25627 (JSC::LabelScope::LabelScope):
25628 (JSC::LabelScope::ref):
25629 (JSC::LabelScope::deref):
25630 (JSC::LabelScope::refCount):
25631 (JSC::LabelScope::breakTarget):
25632 (JSC::LabelScope::continueTarget):
25633 (JSC::LabelScope::type):
25634 (JSC::LabelScope::name):
25635 (JSC::LabelScope::scopeDepth): Simple abstraction for holding everything
25645 (JSC::DoWhileNode::emitCode):
25646 (JSC::WhileNode::emitCode):
25647 (JSC::ForNode::emitCode):
25648 (JSC::ForInNode::emitCode):
25649 (JSC::ContinueNode::emitCode):
25650 (JSC::BreakNode::emitCode):
25651 (JSC::SwitchNode::emitCode):
25652 (JSC::LabelNode::emitCode):
25654 (JSC::StatementNode::):
25655 (JSC::LabelNode::): Use LabelScope where we used to use JumpContext.
25660 (JSC::LabelNode::streamTo): Updated for rename.
25746 (JSC::ForNode::emitCode): Emit the WillExecuteStatement
25750 (JSC::ForInNode::emitCode): Ditto.
25865 (JSC::JSGlobalData::JSGlobalData): Calls startProfilerServerIfNeeded.
25872 (JSC::startProfilerServerIfNeeded):
25913 (JSC::JSObject::removeDirect):
25915 (JSC::JSObject::putDirect):
25920 (JSC::StructureID::dumpStatistics):
25921 (JSC::StructureID::StructureID):
25922 (JSC::StructureID::~StructureID):
25923 (JSC::StructureID::getEnumerablePropertyNames):
25924 (JSC::StructureID::addPropertyTransition):
25925 (JSC::StructureID::removePropertyTransition):
25926 (JSC::StructureID::toDictionaryTransition):
25927 (JSC::StructureID::changePrototypeTransition):
25928 (JSC::StructureID::getterSetterTransition):
25929 (JSC::StructureID::addPropertyWithoutTransition):
25930 (JSC::StructureID::removePropertyWithoutTransition):
25931 (JSC::PropertyMapStatisticsExitLogger::~PropertyMapStatisticsExitLogger):
25932 (JSC::StructureID::checkConsistency):
25933 (JSC::StructureID::copyPropertyTable):
25934 (JSC::StructureID::get):
25935 (JSC::StructureID::put):
25936 (JSC::StructureID::remove):
25937 (JSC::StructureID::insertIntoPropertyMapHashTable):
25938 (JSC::StructureID::expandPropertyMapHashTable):
25939 (JSC::StructureID::createPropertyMapHashTable):
25940 (JSC::StructureID::rehashPropertyMapHashTable):
25941 (JSC::comparePropertyMapEntryIndices):
25942 (JSC::StructureID::getEnumerablePropertyNamesInternal):
25944 (JSC::StructureID::propertyStorageSize):
25945 (JSC::StructureID::isEmpty):
25946 (JSC::StructureID::get):
25960 (JSC::CTI::putDoubleResultToJSNumberCellOrJSImmediate):
25974 (JSC::CTI::privateCompileMainPass):
25984 (JSC::Machine::cti_op_call_JSFunction):
25985 (JSC::Machine::cti_op_construct_JSConstruct):
25986 (JSC::Machine::cti_op_resolve_func):
25987 (JSC::Machine::cti_op_post_inc):
25988 (JSC::Machine::cti_op_resolve_with_base):
25989 (JSC::Machine::cti_op_post_dec):
26007 (JSC::Machine::cti_op_call_JSFunction):
26008 (JSC::Machine::cti_op_construct_JSConstruct):
26009 (JSC::Machine::cti_op_resolve_func):
26010 (JSC::Machine::cti_op_post_inc):
26011 (JSC::Machine::cti_op_resolve_with_base):
26012 (JSC::Machine::cti_op_post_dec):
26014 (JSC::):
26032 (JSC::):
26033 (JSC::CTI::emitAllocateNumber):
26034 (JSC::CTI::emitNakedFastCall):
26035 (JSC::CTI::emitArithIntToImmWithJump):
26036 (JSC::CTI::privateCompileMainPass):
26037 (JSC::CTI::privateCompileSlowCases):
26040 (JSC::CodeBlock::dump):
26042 (JSC::CodeGenerator::emitUnaryOp):
26044 (JSC::CodeGenerator::emitToJSNumber):
26045 (JSC::CodeGenerator::emitTypeOf):
26046 (JSC::CodeGenerator::emitGetPropertyNames):
26048 (JSC::Machine::privateExecute):
26051 (JSC::ResultType::isReusableNumber):
26052 (JSC::ResultType::toInt):
26054 (JSC::UnaryOpNode::emitCode):
26055 (JSC::BinaryOpNode::emitCode):
26056 (JSC::EqualNode::emitCode):
26058 (JSC::X86Assembler::):
26059 (JSC::X86Assembler::negl_r):
26060 (JSC::X86Assembler::xorpd_mr):
26062 (JSC::JSNumberCell::JSNumberCell):
26093 (JSC::JSObject::mark):
26094 (JSC::JSObject::put):
26095 (JSC::JSObject::deleteProperty):
26096 (JSC::JSObject::getPropertyAttributes):
26097 (JSC::JSObject::removeDirect):
26099 (JSC::JSObject::getDirect):
26100 (JSC::JSObject::getDirectLocation):
26101 (JSC::JSObject::hasCustomProperties):
26102 (JSC::JSObject::JSObject):
26103 (JSC::JSObject::putDirect):
26105 (JSC::PropertyMap::get):
26107 (JSC::PropertyMap::isEmpty):
26108 (JSC::PropertyMap::get):
26110 (JSC::StructureID::dumpStatistics):
26112 (JSC::StructureID::propertyStorageSize):
26113 (JSC::StructureID::get):
26114 (JSC::StructureID::put):
26115 (JSC::StructureID::remove):
26116 (JSC::StructureID::isEmpty):
26128 (JSC::StructureID::addPropertyTransition):
26130 (JSC::StructureID::):
26132 (JSC::StructureIDTransitionTableHash::hash):
26133 (JSC::StructureIDTransitionTableHash::equal):
26143 (JSC::PropertyMap::propertyMapSize):
26145 (JSC::StructureID::dumpStatistics): Add additional size statistics when dumping.
26146 (JSC::StructureID::StructureID):
26167 (JSC::IfElseNode::emitCode): Emit the WillExecuteStatement
26225 (JSC::CodeBlock::dump):
26494 (JSC::CTI::privateCompileMainPass):
26495 (JSC::CTI::privateCompileSlowCases):
26497 (JSC::SamplingTool::run):
26530 (JSC::ScopeSampleRecord::sample):
26531 (JSC::compareScopeSampleRecords):
26532 (JSC::SamplingTool::dump):
26535 (JSC::ScopeSampleRecord::ScopeSampleRecord):
26536 (JSC::ScopeSampleRecord::~ScopeSampleRecord):
26546 (JSC::SamplingTool::run):
26547 (JSC::SamplingTool::notifyOfScope):
26560 (JSC::Machine::privateExecute): Provide a dummy value to the
26570 (JSC::SamplingTool::encodeSample): Explicitly cast bool to int, to
26589 (JSC::CTI::emitCTICall):
26590 (JSC::CTI::compileOpCall):
26591 (JSC::CTI::emitSlowScriptCheck):
26592 (JSC::CTI::compileBinaryArithOpSlowCase):
26593 (JSC::CTI::privateCompileMainPass):
26594 (JSC::CTI::privateCompileSlowCases):
26595 (JSC::CTI::privateCompile):
26607 (JSC::CodeBlock::lineNumberForVPC):
26613 (JSC::Machine::execute):
26614 (JSC::Machine::privateExecute):
26615 (JSC::Machine::cti_op_call_NotJSFunction):
26616 (JSC::Machine::cti_op_construct_NotJSConstruct):
26618 (JSC::Machine::setSampler):
26619 (JSC::Machine::sampler):
26620 (JSC::Machine::jitCodeBuffer): Upated for refactored #ifdefs. Changed
26625 (JSC::OpcodeStats::~OpcodeStats):
26630 (JSC::ScopeSampleRecord::sample): Only count a sample toward our total
26635 (JSC::SamplingTool::run): Read the current sample into a Sample helper
26641 (JSC::SamplingTool::dump): I reorganized this code a lot to print the
26651 (JSC::ScopeNode::ScopeNode): Updated for new sampling APIs.
26659 JSC Build fix, not reviewed.
26696 (JSC::ScopeChainNode::globalObject):
26698 (JSC::ScopeChain::bottom):
26711 (JSC::JSFunction::getOwnPropertySlot):
26713 (JSC::FuncDeclNode::makeFunction):
26714 (JSC::FuncExprNode::makeFunction):
26902 (JSC::CTI::CTI):
26903 (JSC::CTI::compileOpCall):
26904 (JSC::CTI::privateCompileMainPass):
26905 (JSC::CTI::privateCompileSlowCases):
26906 (JSC::CTI::privateCompile):
26907 (JSC::CTI::unlinkCall):
26908 (JSC::CTI::linkCall):
26911 (JSC::CodeBlock::dump):
26912 (JSC::CodeBlock::~CodeBlock):
26913 (JSC::CodeBlock::unlinkCallers):
26914 (JSC::CodeBlock::derefStructureIDs):
26916 (JSC::StructureStubInfo::StructureStubInfo):
26917 (JSC::CallLinkInfo::CallLinkInfo):
26918 (JSC::CallLinkInfo::setUnlinked):
26919 (JSC::CallLinkInfo::isLinked):
26920 (JSC::getStructureStubInfoReturnLocation):
26921 (JSC::binaryChop):
26922 (JSC::CodeBlock::addCaller):
26923 (JSC::CodeBlock::getStubInfo):
26925 (JSC::CodeGenerator::emitResolve):
26926 (JSC::CodeGenerator::emitGetById):
26927 (JSC::CodeGenerator::emitPutById):
26928 (JSC::CodeGenerator::emitCall):
26929 (JSC::CodeGenerator::emitConstruct):
26931 (JSC::Machine::cti_vm_lazyLinkCall):
26969 (JSC::CTI::asInteger):
26971 (JSC::CodeGenerator::addConstant):
26973 (JSC::CodeGenerator::JSValueHashTraits::constructDeletedValue):
26974 (JSC::CodeGenerator::JSValueHashTraits::isDeletedValue):
26976 (JSC::Machine::cti_op_add):
26977 (JSC::Machine::cti_op_pre_inc):
26978 (JSC::Machine::cti_op_get_by_id):
26979 (JSC::Machine::cti_op_get_by_id_second):
26980 (JSC::Machine::cti_op_get_by_id_generic):
26981 (JSC::Machine::cti_op_get_by_id_fail):
26982 (JSC::Machine::cti_op_instanceof):
26983 (JSC::Machine::cti_op_del_by_id):
26984 (JSC::Machine::cti_op_mul):
26985 (JSC::Machine::cti_op_call_NotJSFunction):
26986 (JSC::Machine::cti_op_resolve):
26987 (JSC::Machine::cti_op_construct_NotJSConstruct):
26988 (JSC::Machine::cti_op_get_by_val):
26989 (JSC::Machine::cti_op_sub):
26990 (JSC::Machine::cti_op_lesseq):
26991 (JSC::Machine::cti_op_negate):
26992 (JSC::Machine::cti_op_resolve_base):
26993 (JSC::Machine::cti_op_resolve_skip):
26994 (JSC::Machine::cti_op_resolve_global):
26995 (JSC::Machine::cti_op_div):
26996 (JSC::Machine::cti_op_pre_dec):
26997 (JSC::Machine::cti_op_not):
26998 (JSC::Machine::cti_op_eq):
26999 (JSC::Machine::cti_op_lshift):
27000 (JSC::Machine::cti_op_bitand):
27001 (JSC::Machine::cti_op_rshift):
27002 (JSC::Machine::cti_op_bitnot):
27003 (JSC::Machine::cti_op_mod):
27004 (JSC::Machine::cti_op_less):
27005 (JSC::Machine::cti_op_neq):
27006 (JSC::Machine::cti_op_urshift):
27007 (JSC::Machine::cti_op_bitxor):
27008 (JSC::Machine::cti_op_bitor):
27009 (JSC::Machine::cti_op_call_eval):
27010 (JSC::Machine::cti_op_throw):
27011 (JSC::Machine::cti_op_next_pname):
27012 (JSC::Machine::cti_op_typeof):
27013 (JSC::Machine::cti_op_is_undefined):
27014 (JSC::Machine::cti_op_is_boolean):
27015 (JSC::Machine::cti_op_is_number):
27016 (JSC::Machine::cti_op_is_string):
27017 (JSC::Machine::cti_op_is_object):
27018 (JSC::Machine::cti_op_is_function):
27019 (JSC::Machine::cti_op_stricteq):
27020 (JSC::Machine::cti_op_nstricteq):
27021 (JSC::Machine::cti_op_to_jsnumber):
27022 (JSC::Machine::cti_op_in):
27023 (JSC::Machine::cti_op_del_by_val):
27024 (JSC::Machine::cti_vm_throw):
27028 (JSC::Register::Register): Removed overload for JSCell and call
27033 (JSC::asCell): Changed cast from reinterpret_cast to static_cast.
27038 (JSC::JSValue::JSValue): Added empty protected inline constructor back.
27039 (JSC::JSValue::~JSValue): Same for destructor.
27043 (JSC::PropertySlot::PropertySlot): Chnaged argument to const JSValue*
27066 (JSC::CodeBlock::~CodeBlock):
27068 (JSC::RegExp::~RegExp):
27070 (JSC::JITCodeBuffer::copy):
27090 (JSC::JSCallbackConstructor::createStructureID): Set HasStandardGetOwnPropertySlot
27093 (JSC::JSCallbackFunction::createStructureID): Ditto.
27096 (JSC::InterruptedExecutionError::InterruptedExecutionError): Use a structure
27101 (JSC::Machine::cti_op_create_arguments_no_params): Rename
27107 (JSC::Arguments::createStructureID): Added. Returns a structure without
27109 (JSC::Arguments::Arguments): Added an assertion that there are no parameters.
27112 (JSC::DatePrototype::createStructureID): Added. Returns a structure without
27116 (JSC::FunctionPrototype::createStructureID): Set HasStandardGetOwnPropertySlot
27119 (JSC::InternalFunction::createStructureID): Ditto.
27122 (JSC::JSArray::createStructureID): Added. Returns a structure without
27130 (JSC::JSFunction::createStructureID): Added. Returns a structure without
27134 (JSC::JSGlobalData::JSGlobalData): Initialize new structures; removed
27139 (JSC::JSGlobalObject::createStructureID): Added. Returns a structure without
27143 (JSC::JSNotAnObjectErrorStub::JSNotAnObjectErrorStub): Use a structure
27146 (JSC::JSNotAnObjectErrorStub::isNotAnObjectErrorStub): Marked this function
27149 (JSC::JSNotAnObject::JSNotAnObject): Use a structure that's created just
27151 (JSC::JSNotAnObject::createStructureID): Added. Returns a structure without
27155 (JSC::JSObject::createStructureID): Added HasStandardGetOwnPropertySlot.
27156 (JSC::JSObject::inlineGetOwnPropertySlot): Added. Used so we can share code
27158 (JSC::JSObject::getOwnPropertySlot): Moved so that functions are above the
27161 (JSC::JSCell::fastGetOwnPropertySlot): Added. Checks the
27164 (JSC::JSObject::getPropertySlot): Changed to call fastGetOwnPropertySlot.
27165 (JSC::JSValue::get): Changed to call fastGetOwnPropertySlot.
27171 (JSC::MathObject::createStructureID): Added. Returns a structure without
27174 (JSC::NumberConstructor::createStructureID): Ditto.
27176 (JSC::RegExpConstructor::createStructureID): Ditto.
27178 (JSC::RegExpObject::createStructureID): Ditto.
27180 (JSC::StringObject::createStructureID): Ditto.
27200 (JSC::CTI::privateCompileMainPass):
27202 (JSC::CodeBlock::dump):
27204 (JSC::CodeGenerator::emitJumpIfTrue):
27205 (JSC::CodeGenerator::emitJumpIfFalse):
27207 (JSC::Machine::privateExecute):
27228 (JSC::Machine::privateExecute):
27265 (JSC::statementListEmitCode): Removed default argument, since we always want
27267 (JSC::ForNode::emitCode): Tolerate ignoredResult() as the dst -- means the
27269 (JSC::ReturnNode::emitCode): Ditto.
27270 (JSC::ThrowNode::emitCode): Ditto.
27271 (JSC::FunctionBodyNode::emitCode): Pass ignoredResult() so that we know we
27287 REGRESSION: 12 JSC tests fail
27294 (JSC::::JSCallbackObject):
27298 (JSC::JSGlobalObject::JSGlobalObject):
27312 (JSC::CodeGenerator::emitJumpIfFalse):
27321 (JSC::Machine::privateExecute):
27337 (JSC::ArrayConstructor::ArrayConstructor):
27339 (JSC::BooleanConstructor::BooleanConstructor):
27341 (JSC::BooleanPrototype::BooleanPrototype):
27343 (JSC::DateConstructor::DateConstructor):
27345 (JSC::ErrorConstructor::ErrorConstructor):
27347 (JSC::ErrorPrototype::ErrorPrototype):
27349 (JSC::FunctionConstructor::FunctionConstructor):
27351 (JSC::FunctionPrototype::FunctionPrototype):
27352 (JSC::FunctionPrototype::addFunctionProperties):
27354 (JSC::FunctionPrototype::createStructureID):
27357 (JSC::InternalFunction::InternalFunction):
27359 (JSC::JSGlobalObject::reset):
27362 (JSC::MathObject::MathObject):
27364 (JSC::NumberConstructor::NumberConstructor):
27366 (JSC::NumberPrototype::NumberPrototype):
27368 (JSC::ObjectConstructor::ObjectConstructor):
27370 (JSC::RegExpConstructor::RegExpConstructor):
27372 (JSC::RegExpPrototype::RegExpPrototype):
27374 (JSC::StringConstructor::StringConstructor):
27376 (JSC::StringPrototype::StringPrototype):
27378 (JSC::StructureID::dumpStatistics):
27380 (JSC::StructureID::setPrototypeWithoutTransition):
27394 (JSC::Machine::tryCacheGetByID): Removed a redundant and sometimes
27413 (JSC::minimumYearForDST):
27414 (JSC::equivalentYearForDST):
27445 (JSC::CTI::compileOpCall):
27446 (JSC::CTI::privateCompileMainPass):
27447 (JSC::CTI::privateCompileSlowCases): Nixed JITed profiler hooks. Profiler
27451 (JSC::CodeBlock::dump): Dump support for the new profiling opcodes.
27455 (JSC::CodeGenerator::CodeGenerator):
27456 (JSC::CodeGenerator::emitCall):
27457 (JSC::CodeGenerator::emitConstruct): Conditionally emit profiling hooks
27470 (JSC::Machine::callEval): Removed obsolete profiler hooks.
27472 (JSC::Machine::throwException): Added a check for an exception thrown
27475 (JSC::Machine::execute): Added a didExecute hook at the end of top-level
27478 (JSC::Machine::privateExecute): Removed obsolete profiler hooks. Added
27483 (JSC::Machine::cti_op_call_NotJSFunction): Removed obsolete profiler
27486 (JSC::Machine::cti_op_create_arguments_no_params): Added missing
27490 (JSC::Machine::cti_op_profile_will_call):
27491 (JSC::Machine::cti_op_profile_did_call): The new profiler opcode
27494 (JSC::Machine::cti_op_construct_NotJSConstruct): Removed obsolete profiler
27498 (JSC::Machine::isCallOpcode): Helper for exception handling.
27503 (JSC::JSGlobalObject::supportsProfiling): Added virtual interface that
27508 (JSC::Profiler::willExecute):
27509 (JSC::Profiler::didExecute):
27510 (JSC::Profiler::createCallIdentifier):
27523 (JSC::CTI::emitCTICall): Add an overload for functions that
27531 (JSC::Machine::cti_op_convert_this):
27532 (JSC::Machine::cti_op_add):
27533 (JSC::Machine::cti_op_pre_inc):
27534 (JSC::Machine::cti_op_new_object):
27535 (JSC::Machine::cti_op_get_by_id):
27536 (JSC::Machine::cti_op_get_by_id_second):
27537 (JSC::Machine::cti_op_get_by_id_generic):
27538 (JSC::Machine::cti_op_get_by_id_fail):
27539 (JSC::Machine::cti_op_instanceof):
27540 (JSC::Machine::cti_op_del_by_id):
27541 (JSC::Machine::cti_op_mul):
27542 (JSC::Machine::cti_op_new_func):
27543 (JSC::Machine::cti_op_push_activation):
27544 (JSC::Machine::cti_op_call_NotJSFunction):
27545 (JSC::Machine::cti_op_new_array):
27546 (JSC::Machine::cti_op_resolve):
27547 (JSC::Machine::cti_op_construct_JSConstructFast):
27548 (JSC::Machine::cti_op_construct_NotJSConstruct):
27549 (JSC::Machine::cti_op_get_by_val):
27550 (JSC::Machine::cti_op_sub):
27551 (JSC::Machine::cti_op_lesseq):
27552 (JSC::Machine::cti_op_negate):
27553 (JSC::Machine::cti_op_resolve_base):
27554 (JSC::Machine::cti_op_resolve_skip):
27555 (JSC::Machine::cti_op_resolve_global):
27556 (JSC::Machine::cti_op_div):
27557 (JSC::Machine::cti_op_pre_dec):
27558 (JSC::Machine::cti_op_not):
27559 (JSC::Machine::cti_op_eq):
27560 (JSC::Machine::cti_op_lshift):
27561 (JSC::Machine::cti_op_bitand):
27562 (JSC::Machine::cti_op_rshift):
27563 (JSC::Machine::cti_op_bitnot):
27564 (JSC::Machine::cti_op_new_func_exp):
27565 (JSC::Machine::cti_op_mod):
27566 (JSC::Machine::cti_op_less):
27567 (JSC::Machine::cti_op_neq):
27568 (JSC::Machine::cti_op_urshift):
27569 (JSC::Machine::cti_op_bitxor):
27570 (JSC::Machine::cti_op_new_regexp):
27571 (JSC::Machine::cti_op_bitor):
27572 (JSC::Machine::cti_op_call_eval):
27573 (JSC::Machine::cti_op_throw):
27574 (JSC::Machine::cti_op_next_pname):
27575 (JSC::Machine::cti_op_typeof):
27576 (JSC::Machine::cti_op_is_undefined):
27577 (JSC::Machine::cti_op_is_boolean):
27578 (JSC::Machine::cti_op_is_number):
27579 (JSC::Machine::cti_op_is_string):
27580 (JSC::Machine::cti_op_is_object):
27581 (JSC::Machine::cti_op_is_function):
27582 (JSC::Machine::cti_op_stricteq):
27583 (JSC::Machine::cti_op_nstricteq):
27584 (JSC::Machine::cti_op_to_jsnumber):
27585 (JSC::Machine::cti_op_in):
27586 (JSC::Machine::cti_op_push_new_scope):
27587 (JSC::Machine::cti_op_del_by_val):
27588 (JSC::Machine::cti_op_new_error):
27589 (JSC::Machine::cti_vm_throw):
27601 (JSC::CodeBlock::printStructureIDs): Fixed up an ASSERT caused by
27606 (JSC::Machine::privateExecute): Removed a redundant and sometimes
27630 (JSC::Machine::cti_op_call_profiler): Use asFunction.
27631 (JSC::Machine::cti_vm_lazyLinkCall): Ditto.
27632 (JSC::Machine::cti_op_construct_JSConstructFast): Use asObject.
27661 (JSC::CTI::asInteger): Ditto.
27664 (JSC::CodeGenerator::addConstant): Get at the payload directly.
27665 (JSC::CodeGenerator::emitLoad): Added an overload of JSCell* because
27674 (JSC::asCell): Use payload function.
27675 (JSC::JSValue::asCell): Use JSValue* instead of JSValuePtr.
27676 (JSC::JSValuePtr::JSValuePtr): Added. Constructor that takes JSCell*
27704 (JSC::fastToUInt32): Call toUInt32SlowCase function; no longer a member
27707 (JSC::JSNumberCell::toInt32): Ditto.
27708 (JSC::JSNumberCell::toUInt32): Ditto.
27711 (JSC::toInt32SlowCase): Made a non-member function.
27712 (JSC::JSValue::toInt32SlowCase): Changed to call non-member function.
27713 (JSC::toUInt32SlowCase): More of the same.
27714 (JSC::JSValue::toUInt32SlowCase): Ditto.
27730 (JSC::makeBitwiseNotNode): Call new non-member toInt32 function.
27731 (JSC::makeLeftShiftNode): More of the same.
27732 (JSC::makeRightShiftNode): Ditto.
27750 (JSC::CTI::unlinkCall): Call asPointer.
27753 (JSC::DebuggerCallFrame::DebuggerCallFrame): Call noValue.
27755 (JSC::JSGlobalData::JSGlobalData): Call noValue.
27757 (JSC::JSImmediate::toObject): Remove unneeded const_cast.
27759 (JSC::JSWrapperObject::JSWrapperObject): Call noValue.
27766 (JSC::Completion::Completion): Add include of JSValue.h.
27777 (JSC::Machine::cti_op_instanceof): Remove the bogus asCell casting that
27779 (JSC::Machine::cti_op_construct_NotJSConstruct): Moved the cast to
27815 (JSC::Machine::Machine): Use JSCell* type since MSVC seems to only allow
27955 (JSC::Machine::cti_op_call_eval): Removed stray parentheses from my
27985 (JSC::JSCallbackObject::asCallbackObject): Added.
27986 (JSC::JSCallbackObject::getOwnPropertySlot): Use asObject.
27987 (JSC::JSCallbackObject::call): Use noValue.
27988 (JSC::JSCallbackObject::staticValueGetter): Use asCallbackObject.
27989 (JSC::JSCallbackObject::staticFunctionGetter): Ditto.
27990 (JSC::JSCallbackObject::callbackGetter): Ditto.
27997 (JSC::CTI::asInteger): Added. For use casting a JSValue to an integer.
27998 (JSC::CTI::emitGetArg): Use asInteger.
27999 (JSC::CTI::emitGetPutArg): Ditto.
28000 (JSC::CTI::getConstantImmediateNumericArg): Ditto. Also use noValue.
28001 (JSC::CTI::emitInitRegister): Use asInteger.
28002 (JSC::CTI::getDeTaggedConstantImmediate): Ditto.
28003 (JSC::CTI::compileOpCallInitializeCallFrame): Ditto.
28004 (JSC::CTI::compileOpCall): Ditto.
28005 (JSC::CTI::compileOpStrictEq): Ditto.
28006 (JSC::CTI::privateCompileMainPass): Ditto.
28007 (JSC::CTI::privateCompileGetByIdProto): Ditto.
28008 (JSC::CTI::privateCompileGetByIdChain): Ditto.
28009 (JSC::CTI::privateCompilePutByIdTransition): Ditto.
28015 (JSC::CodeGenerator::emitEqualityOp): Use asString.
28016 (JSC::CodeGenerator::emitLoad): Use noValue.
28017 (JSC::CodeGenerator::findScopedProperty): Change globalObject argument
28019 (JSC::CodeGenerator::emitResolve): Remove unneeded cast.
28020 (JSC::CodeGenerator::emitGetScopedVar): Use asCell.
28021 (JSC::CodeGenerator::emitPutScopedVar): Ditto.
28027 (JSC::JSPropertyNameIterator::toPrimitive): Use noValue.
28029 (JSC::JSPropertyNameIterator::next): Ditto.
28032 (JSC::fastIsNumber): Moved isImmediate check here instead of
28034 (JSC::fastToInt32): Ditto.
28035 (JSC::fastToUInt32): Ditto.
28036 (JSC::jsLess): Use asString.
28037 (JSC::jsLessEq): Ditto.
28038 (JSC::jsAdd): Ditto.
28039 (JSC::jsTypeStringForValue): Use asObject.
28040 (JSC::jsIsObjectType): Ditto.
28041 (JSC::jsIsFunctionType): Ditto.
28042 (JSC::inlineResolveBase): Use noValue.
28043 (JSC::Machine::callEval): Use asString. Initialize result to
28045 (JSC::Machine::Machine): Remove unneeded casts to JSCell*.
28046 (JSC::Machine::throwException): Use asObject.
28047 (JSC::Machine::debug): Remove explicit calls to the DebuggerCallFrame
28049 (JSC::Machine::checkTimeout): Use noValue.
28050 (JSC::cachePrototypeChain): Use asObject.
28051 (JSC::Machine::tryCachePutByID): Use asCell.
28052 (JSC::Machine::tryCacheGetByID): Use aCell and asObject.
28053 (JSC::Machine::privateExecute): Use noValue, asCell, asObject, asString,
28059 (JSC::Machine::retrieveLastCaller): Use noValue.
28060 (JSC::Machine::tryCTICachePutByID): Use asCell.
28061 (JSC::Machine::tryCTICacheGetByID): Use aCell and asObject.
28062 (JSC::setUpThrowTrampolineReturnAddress): Added this function to restore
28064 (JSC::Machine::cti_op_add): Use asString.
28065 (JSC::Machine::cti_op_instanceof): Use asCell and asObject.
28066 (JSC::Machine::cti_op_call_JSFunction): Use asFunction.
28067 (JSC::Machine::cti_op_call_NotJSFunction): Changed code to pass 0 for
28069 (JSC::Machine::cti_op_tear_off_activation): Use asActivation.
28070 (JSC::Machine::cti_op_construct_JSConstruct): Use asFunction and asObject.
28071 (JSC::Machine::cti_op_construct_NotJSConstruct): use asObject.
28072 (JSC::Machine::cti_op_get_by_val): Use asArray and asString.
28073 (JSC::Machine::cti_op_resolve_func): Use asPointer; this helps prepare
28075 (JSC::Machine::cti_op_put_by_val): Use asArray.
28076 (JSC::Machine::cti_op_put_by_val_array): Ditto.
28077 (JSC::Machine::cti_op_resolve_global): Use asGlobalObject.
28078 (JSC::Machine::cti_op_post_inc): Change VM_CHECK_EXCEPTION_2 to
28081 (JSC::Machine::cti_op_resolve_with_base): Use asPointer.
28082 (JSC::Machine::cti_op_post_dec): Change VM_CHECK_EXCEPTION_2 to
28085 (JSC::Machine::cti_op_call_eval): Use asObject, noValue, and change
28087 (JSC::Machine::cti_op_throw): Change return value to a JSValue*.
28088 (JSC::Machine::cti_op_in): Use asObject.
28089 (JSC::Machine::cti_op_switch_char): Use asString.
28090 (JSC::Machine::cti_op_switch_string): Ditto.
28091 (JSC::Machine::cti_op_put_getter): Use asObject.
28092 (JSC::Machine::cti_op_put_setter): Ditto.
28093 (JSC::Machine::cti_vm_throw): Change return value to a JSValue*.
28104 (JSC::asArguments): Added.
28107 (JSC::getProperty): Use noValue.
28108 (JSC::arrayProtoFuncToString): Use asArray.
28109 (JSC::arrayProtoFuncToLocaleString): Ditto.
28110 (JSC::arrayProtoFuncConcat): Ditto.
28111 (JSC::arrayProtoFuncPop): Ditto. Also removed unneeded initialization
28113 (JSC::arrayProtoFuncPush): Ditto.
28114 (JSC::arrayProtoFuncShift): Removed unneeded initialization
28116 (JSC::arrayProtoFuncSort): Use asArray.
28119 (JSC::asBooleanObject): Added.
28122 (JSC::booleanProtoFuncToString): Use asBooleanObject.
28123 (JSC::booleanProtoFuncValueOf): Ditto.
28126 (JSC::call): Use asObject and asFunction.
28128 (JSC::construct): Ditto.
28131 (JSC::constructDate): Use asDateInstance.
28134 (JSC::asDateInstance): Added.
28137 (JSC::dateProtoFuncToString): Use asDateInstance.
28138 (JSC::dateProtoFuncToUTCString): Ditto.
28139 (JSC::dateProtoFuncToDateString): Ditto.
28140 (JSC::dateProtoFuncToTimeString): Ditto.
28141 (JSC::dateProtoFuncToLocaleString): Ditto.
28142 (JSC::dateProtoFuncToLocaleDateString): Ditto.
28143 (JSC::dateProtoFuncToLocaleTimeString): Ditto.
28144 (JSC::dateProtoFuncValueOf): Ditto.
28145 (JSC::dateProtoFuncGetTime): Ditto.
28146 (JSC::dateProtoFuncGetFullYear): Ditto.
28147 (JSC::dateProtoFuncGetUTCFullYear): Ditto.
28148 (JSC::dateProtoFuncToGMTString): Ditto.
28149 (JSC::dateProtoFuncGetMonth): Ditto.
28150 (JSC::dateProtoFuncGetUTCMonth): Ditto.
28151 (JSC::dateProtoFuncGetDate): Ditto.
28152 (JSC::dateProtoFuncGetUTCDate): Ditto.
28153 (JSC::dateProtoFuncGetDay): Ditto.
28154 (JSC::dateProtoFuncGetUTCDay): Ditto.
28155 (JSC::dateProtoFuncGetHours): Ditto.
28156 (JSC::dateProtoFuncGetUTCHours): Ditto.
28157 (JSC::dateProtoFuncGetMinutes): Ditto.
28158 (JSC::dateProtoFuncGetUTCMinutes): Ditto.
28159 (JSC::dateProtoFuncGetSeconds): Ditto.
28160 (JSC::dateProtoFuncGetUTCSeconds): Ditto.
28161 (JSC::dateProtoFuncGetMilliSeconds): Ditto.
28162 (JSC::dateProtoFuncGetUTCMilliseconds): Ditto.
28163 (JSC::dateProtoFuncGetTimezoneOffset): Ditto.
28164 (JSC::dateProtoFuncSetTime): Ditto.
28165 (JSC::setNewValueFromTimeArgs): Ditto.
28166 (JSC::setNewValueFromDateArgs): Ditto.
28167 (JSC::dateProtoFuncSetYear): Ditto.
28168 (JSC::dateProtoFuncGetYear): Ditto.
28171 (JSC::DebuggerCallFrame::thisObject): Use asObject.
28172 (JSC::DebuggerCallFrame::evaluate): Use noValue.
28177 (JSC::ExecState::clearException): Use noValue.
28180 (JSC::functionProtoFuncToString): Use asFunction.
28181 (JSC::functionProtoFuncApply): Use asArguments and asArray.
28184 (JSC::GetterSetter::getPrimitiveNumber): Use noValue.
28187 (JSC::asGetterSetter): Added.
28190 (JSC::InternalFunction::name): Use asString.
28193 (JSC::asInternalFunction): Added.
28196 (JSC::JSActivation::argumentsGetter): Use asActivation.
28199 (JSC::asActivation): Added.
28202 (JSC::JSArray::putSlowCase): Use noValue.
28203 (JSC::JSArray::deleteProperty): Ditto.
28204 (JSC::JSArray::increaseVectorLength): Ditto.
28205 (JSC::JSArray::setLength): Ditto.
28206 (JSC::JSArray::pop): Ditto.
28207 (JSC::JSArray::sort): Ditto.
28208 (JSC::JSArray::compactForSorting): Ditto.
28210 (JSC::asArray): Added.
28213 (JSC::JSCell::getJSNumber): Use noValue.
28216 (JSC::asCell): Added.
28217 (JSC::JSValue::asCell): Changed to not preserve const.
28220 (JSC::JSValue::isNumber): Use asValue.
28221 (JSC::JSValue::isString): Ditto.
28222 (JSC::JSValue::isGetterSetter): Ditto.
28223 (JSC::JSValue::isObject): Ditto.
28224 (JSC::JSValue::getNumber): Ditto.
28225 (JSC::JSValue::getString): Ditto.
28226 (JSC::JSValue::getObject): Ditto.
28227 (JSC::JSValue::getCallData): Ditto.
28228 (JSC::JSValue::getConstructData): Ditto.
28229 (JSC::JSValue::getUInt32): Ditto.
28230 (JSC::JSValue::getTruncatedInt32): Ditto.
28231 (JSC::JSValue::getTruncatedUInt32): Ditto.
28232 (JSC::JSValue::mark): Ditto.
28233 (JSC::JSValue::marked): Ditto.
28234 (JSC::JSValue::toPrimitive): Ditto.
28235 (JSC::JSValue::getPrimitiveNumber): Ditto.
28236 (JSC::JSValue::toBoolean): Ditto.
28237 (JSC::JSValue::toNumber): Ditto.
28238 (JSC::JSValue::toString): Ditto.
28239 (JSC::JSValue::toObject): Ditto.
28240 (JSC::JSValue::toThisObject): Ditto.
28241 (JSC::JSValue::needsThisConversion): Ditto.
28242 (JSC::JSValue::toThisString): Ditto.
28243 (JSC::JSValue::getJSNumber): Ditto.
28246 (JSC::JSFunction::argumentsGetter): Use asFunction.
28247 (JSC::JSFunction::callerGetter): Ditto.
28248 (JSC::JSFunction::lengthGetter): Ditto.
28249 (JSC::JSFunction::construct): Use asObject.
28252 (JSC::asFunction): Added.
28255 (JSC::lastInPrototypeChain): Use asObject.
28258 (JSC::asGlobalObject): Added.
28259 (JSC::ScopeChainNode::globalObject): Use asGlobalObject.
28266 (JSC::asNumberCell): Added.
28267 (JSC::JSValue::uncheckedGetNumber): Use asValue and asNumberCell.
28268 (JSC::JSValue::toJSNumber): Use asValue.
28271 (JSC::JSObject::put): Use asObject and asGetterSetter.
28272 (JSC::callDefaultValueFunction): Use noValue.
28273 (JSC::JSObject::defineGetter): Use asGetterSetter.
28274 (JSC::JSObject::defineSetter): Ditto.
28275 (JSC::JSObject::lookupGetter): Ditto. Also use asObject.
28276 (JSC::JSObject::lookupSetter): Ditto.
28277 (JSC::JSObject::hasInstance): Use asObject.
28278 (JSC::JSObject::fillGetterPropertySlot): Use asGetterSetter.
28281 (JSC::JSObject::getDirect): Use noValue.
28282 (JSC::asObject): Added.
28283 (JSC::JSValue::isObject): Use asValue.
28284 (JSC::JSObject::get): Removed unneeded const_cast.
28285 (JSC::JSObject::getPropertySlot): Use asObject.
28286 (JSC::JSValue::get): Removed unneeded const_cast.
28288 (JSC::JSValue::put): Ditto.
28289 (JSC::JSObject::allocatePropertyStorageInline): Fixed spelling
28293 (JSC::JSString::getOwnPropertySlot): Use asObject.
28296 (JSC::asString): Added.
28297 (JSC::JSValue::toThisJSString): Use asValue.
28305 (JSC::objectProtoFuncIsPrototypeOf): Use asObject.
28306 (JSC::objectProtoFuncDefineGetter): Ditto.
28307 (JSC::objectProtoFuncDefineSetter): Ditto.
28310 (JSC::PropertySlot::PropertySlot): Take a const JSValue* so the
28312 (JSC::PropertySlot::clearBase): Use noValue.
28313 (JSC::PropertySlot::clearValue): Ditto.
28316 (JSC::regExpConstructorDollar1): Use asRegExpConstructor.
28317 (JSC::regExpConstructorDollar2): Ditto.
28318 (JSC::regExpConstructorDollar3): Ditto.
28319 (JSC::regExpConstructorDollar4): Ditto.
28320 (JSC::regExpConstructorDollar5): Ditto.
28321 (JSC::regExpConstructorDollar6): Ditto.
28322 (JSC::regExpConstructorDollar7): Ditto.
28323 (JSC::regExpConstructorDollar8): Ditto.
28324 (JSC::regExpConstructorDollar9): Ditto.
28325 (JSC::regExpConstructorInput): Ditto.
28326 (JSC::regExpConstructorMultiline): Ditto.
28327 (JSC::regExpConstructorLastMatch): Ditto.
28328 (JSC::regExpConstructorLastParen): Ditto.
28329 (JSC::regExpConstructorLeftContext): Ditto.
28330 (JSC::regExpConstructorRightContext): Ditto.
28331 (JSC::setRegExpConstructorInput): Ditto.
28332 (JSC::setRegExpConstructorMultiline): Ditto.
28333 (JSC::constructRegExp): Use asObject.
28336 (JSC::asRegExpConstructor): Added.
28339 (JSC::regExpObjectGlobal): Use asRegExpObject.
28340 (JSC::regExpObjectIgnoreCase): Ditto.
28341 (JSC::regExpObjectMultiline): Ditto.
28342 (JSC::regExpObjectSource): Ditto.
28343 (JSC::regExpObjectLastIndex): Ditto.
28344 (JSC::setRegExpObjectLastIndex): Ditto.
28345 (JSC::callRegExpObject): Ditto.
28348 (JSC::asRegExpObject): Added.
28351 (JSC::regExpProtoFuncTest): Use asRegExpObject.
28352 (JSC::regExpProtoFuncExec): Ditto.
28353 (JSC::regExpProtoFuncCompile): Ditto.
28354 (JSC::regExpProtoFuncToString): Ditto.
28357 (JSC::StringObject::internalValue): Use asString.
28358 (JSC::asStringObject): Added.
28361 (JSC::stringProtoFuncReplace): Use asRegExpObject.
28362 (JSC::stringProtoFuncToString): Ue asStringObject.
28363 (JSC::stringProtoFuncMatch): Use asRegExpObject.
28364 (JSC::stringProtoFuncSearch): Ditto.
28365 (JSC::stringProtoFuncSplit): Ditto.
28368 (JSC::StructureID::getEnumerablePropertyNames): Use asObject.
28369 (JSC::StructureID::createCachedPrototypeChain): Ditto.
28370 (JSC::StructureIDChain::StructureIDChain): Use asCell and asObject.
28373 (JSC::Heap::isNumber): Removed null handling. This can only be called
28375 (JSC::Heap::cellBlock): Removed overload for const and non-const.
28380 (JSC::Interpreter::evaluate): Use noValue and noObject.
28383 (JSC::FunctionCallResolveNode::emitCode): Use JSObject for the global
28385 (JSC::PostfixResolveNode::emitCode): Ditto.
28386 (JSC::PrefixResolveNode::emitCode): Ditto.
28387 (JSC::ReadModifyResolveNode::emitCode): Ditto.
28388 (JSC::AssignResolveNode::emitCode): Ditto.
28391 (JSC::equalSlowCaseInline): Use asString, asCell, asNumberCell,
28392 (JSC::strictEqualSlowCaseInline): Ditto.
28405 (JSC::CTI::privateCompileMainPass):
28407 (JSC::Machine::cti_op_create_arguments_no_params):
28410 (JSC::Arguments::):
28411 (JSC::Arguments::Arguments):
28426 (JSC::doSetReturnAddress):
28427 (JSC::):
28428 (JSC::StackHack::StackHack):
28429 (JSC::StackHack::~StackHack):
28430 (JSC::Machine::cti_op_convert_this):
28431 (JSC::Machine::cti_op_end):
28432 (JSC::Machine::cti_op_add):
28433 (JSC::Machine::cti_op_pre_inc):
28434 (JSC::Machine::cti_timeout_check):
28435 (JSC::Machine::cti_register_file_check):
28436 (JSC::Machine::cti_op_loop_if_less):
28437 (JSC::Machine::cti_op_loop_if_lesseq):
28438 (JSC::Machine::cti_op_new_object):
28439 (JSC::Machine::cti_op_put_by_id):
28440 (JSC::Machine::cti_op_put_by_id_second):
28441 (JSC::Machine::cti_op_put_by_id_generic):
28442 (JSC::Machine::cti_op_put_by_id_fail):
28443 (JSC::Machine::cti_op_get_by_id):
28444 (JSC::Machine::cti_op_get_by_id_second):
28445 (JSC::Machine::cti_op_get_by_id_generic):
28446 (JSC::Machine::cti_op_get_by_id_fail):
28447 (JSC::Machine::cti_op_instanceof):
28448 (JSC::Machine::cti_op_del_by_id):
28449 (JSC::Machine::cti_op_mul):
28450 (JSC::Machine::cti_op_new_func):
28451 (JSC::Machine::cti_op_call_profiler):
28452 (JSC::Machine::cti_op_call_JSFunction):
28453 (JSC::Machine::cti_vm_lazyLinkCall):
28454 (JSC::Machine::cti_vm_compile):
28455 (JSC::Machine::cti_op_push_activation):
28456 (JSC::Machine::cti_op_call_NotJSFunction):
28457 (JSC::Machine::cti_op_create_arguments):
28458 (JSC::Machine::cti_op_tear_off_activation):
28459 (JSC::Machine::cti_op_tear_off_arguments):
28460 (JSC::Machine::cti_op_ret_profiler):
28461 (JSC::Machine::cti_op_ret_scopeChain):
28462 (JSC::Machine::cti_op_new_array):
28463 (JSC::Machine::cti_op_resolve):
28464 (JSC::Machine::cti_op_construct_JSConstructFast):
28465 (JSC::Machine::cti_op_construct_JSConstruct):
28466 (JSC::Machine::cti_op_construct_NotJSConstruct):
28467 (JSC::Machine::cti_op_get_by_val):
28468 (JSC::Machine::cti_op_resolve_func):
28469 (JSC::Machine::cti_op_sub):
28470 (JSC::Machine::cti_op_put_by_val):
28471 (JSC::Machine::cti_op_put_by_val_array):
28472 (JSC::Machine::cti_op_lesseq):
28473 (JSC::Machine::cti_op_loop_if_true):
28474 (JSC::Machine::cti_op_negate):
28475 (JSC::Machine::cti_op_resolve_base):
28476 (JSC::Machine::cti_op_resolve_skip):
28477 (JSC::Machine::cti_op_resolve_global):
28478 (JSC::Machine::cti_op_div):
28479 (JSC::Machine::cti_op_pre_dec):
28480 (JSC::Machine::cti_op_jless):
28481 (JSC::Machine::cti_op_not):
28482 (JSC::Machine::cti_op_jtrue):
28483 (JSC::Machine::cti_op_post_inc):
28484 (JSC::Machine::cti_op_eq):
28485 (JSC::Machine::cti_op_lshift):
28486 (JSC::Machine::cti_op_bitand):
28487 (JSC::Machine::cti_op_rshift):
28488 (JSC::Machine::cti_op_bitnot):
28489 (JSC::Machine::cti_op_resolve_with_base):
28490 (JSC::Machine::cti_op_new_func_exp):
28491 (JSC::Machine::cti_op_mod):
28492 (JSC::Machine::cti_op_less):
28493 (JSC::Machine::cti_op_neq):
28494 (JSC::Machine::cti_op_post_dec):
28495 (JSC::Machine::cti_op_urshift):
28496 (JSC::Machine::cti_op_bitxor):
28497 (JSC::Machine::cti_op_new_regexp):
28498 (JSC::Machine::cti_op_bitor):
28499 (JSC::Machine::cti_op_call_eval):
28500 (JSC::Machine::cti_op_throw):
28501 (JSC::Machine::cti_op_get_pnames):
28502 (JSC::Machine::cti_op_next_pname):
28503 (JSC::Machine::cti_op_push_scope):
28504 (JSC::Machine::cti_op_pop_scope):
28505 (JSC::Machine::cti_op_typeof):
28506 (JSC::Machine::cti_op_is_undefined):
28507 (JSC::Machine::cti_op_is_boolean):
28508 (JSC::Machine::cti_op_is_number):
28509 (JSC::Machine::cti_op_is_string):
28510 (JSC::Machine::cti_op_is_object):
28511 (JSC::Machine::cti_op_is_function):
28512 (JSC::Machine::cti_op_stricteq):
28513 (JSC::Machine::cti_op_nstricteq):
28514 (JSC::Machine::cti_op_to_jsnumber):
28515 (JSC::Machine::cti_op_in):
28516 (JSC::Machine::cti_op_push_new_scope):
28517 (JSC::Machine::cti_op_jmp_scopes):
28518 (JSC::Machine::cti_op_put_by_index):
28519 (JSC::Machine::cti_op_switch_imm):
28520 (JSC::Machine::cti_op_switch_char):
28521 (JSC::Machine::cti_op_switch_string):
28522 (JSC::Machine::cti_op_del_by_val):
28523 (JSC::Machine::cti_op_put_getter):
28524 (JSC::Machine::cti_op_put_setter):
28525 (JSC::Machine::cti_op_new_error):
28526 (JSC::Machine::cti_op_debug):
28527 (JSC::Machine::cti_vm_throw):
28555 (JSC::):
28556 (JSC::CTI::emitNakedCall):
28557 (JSC::unreachable):
28558 (JSC::CTI::compileOpCallInitializeCallFrame):
28559 (JSC::CTI::compileOpCallSetupArgs):
28560 (JSC::CTI::compileOpCall):
28561 (JSC::CTI::privateCompileMainPass):
28562 (JSC::CTI::privateCompileSlowCases):
28563 (JSC::CTI::privateCompile):
28564 (JSC::CTI::unlinkCall):
28565 (JSC::CTI::linkCall):
28568 (JSC::CodeBlock::~CodeBlock):
28569 (JSC::CodeBlock::unlinkCallers):
28570 (JSC::CodeBlock::derefStructureIDs):
28572 (JSC::StructureStubInfo::StructureStubInfo):
28573 (JSC::CallLinkInfo::CallLinkInfo):
28574 (JSC::CodeBlock::addCaller):
28575 (JSC::CodeBlock::removeCaller):
28576 (JSC::CodeBlock::getStubInfo):
28578 (JSC::CodeGenerator::emitCall):
28579 (JSC::CodeGenerator::emitConstruct):
28581 (JSC::Machine::cti_op_call_profiler):
28582 (JSC::Machine::cti_op_call_JSFunction):
28583 (JSC::Machine::cti_vm_lazyLinkCall):
28584 (JSC::Machine::cti_op_construct_JSConstructFast):
28585 (JSC::Machine::cti_op_construct_JSConstruct):
28586 (JSC::Machine::cti_op_construct_NotJSConstruct):
28589 (JSC::JSFunction::~JSFunction):
28592 (JSC::FunctionBodyNode::):
28594 (JSC::X86Assembler::getDifferenceBetweenLabels):
28603 (JSC::JSFunction::JSFunction):
28614 (JSC::CodeGenerator::emitReturn):
28647 (JSC::resizePropertyStorage): renamed from transitionObject, and reduced to just resize
28649 (JSC::CTI::privateCompilePutByIdTransition): Use a separate function for property storage
28654 (JSC::JSObject::allocatePropertyStorage): Just call the inline version.
28656 (JSC::JSObject::allocatePropertyStorageInline): Inline version of allocatePropertyStorage
28658 (JSC::X86Assembler::):
28659 …(JSC::X86Assembler::pushl_i32): Add code to assmeble push of a constant; code originally by Camero…
28668 (JSC::JITCodeBuffer::putIntUnchecked):
28669 (JSC::X86Assembler::link):
28670 (JSC::X86Assembler::linkAbsoluteAddress):
28671 (JSC::X86Assembler::getRelocatedAddress):
28680 (JSC::CTI::patchGetByIdSelf):
28681 (JSC::CTI::patchPutByIdReplace):
28683 (JSC::Machine::tryCTICachePutByID):
28684 (JSC::Machine::tryCTICacheGetByID):
28685 (JSC::Machine::cti_op_put_by_id):
28686 (JSC::Machine::cti_op_put_by_id_fail):
28687 (JSC::Machine::cti_op_get_by_id):
28688 (JSC::Machine::cti_op_get_by_id_fail):
28703 (JSC::CTI::emitCTICall):
28704 (JSC::CTI::compileOpCall):
28705 (JSC::CTI::emitSlowScriptCheck):
28706 (JSC::CTI::compileBinaryArithOpSlowCase):
28707 (JSC::CTI::privateCompileMainPass):
28708 (JSC::CTI::privateCompileSlowCases):
28709 (JSC::CTI::privateCompile):
28746 (JSC::Heap::collect): Avoid crashing when a GC occurs while no global objects are live.
28764 (JSC::JSGlobalObject::reset):
28766 (JSC::JSObject::putDirectFunctionWithoutTransition):
28768 (JSC::JSObject::putDirectWithoutTransition):
28770 (JSC::ObjectPrototype::ObjectPrototype):
28773 (JSC::StructureID::addPropertyWithoutTransition):
28785 (JSC::StructureID::~StructureID): Don't deref this object's parent's pointer to
28787 (JSC::StructureID::addPropertyTransition): Don't refer the single transition;
28800 (JSC::JSGlobalObject::markCrossHeapDependentObjects):
28803 (JSC::Heap::collect):
28815 (JSC::StructureID::StructureID):
28816 (JSC::StructureID::~StructureID):
28826 (JSC::StructureID::dumpStatistics):
28827 (JSC::StructureID::StructureID):
28828 (JSC::StructureID::~StructureID):
28843 (JSC::StructureID::StructureID):
28844 (JSC::StructureID::~StructureID):
28845 (JSC::StructureID::addPropertyTransition):
28847 (JSC::StructureID::):
28858 (JSC::fastIsNumber): ALWAYS_INLINE modifier added.
28871 (JSC::EvalCodeCache::get): Updated for tweak to parsing API.
28877 (JSC::DebuggerCallFrame::evaluate): Updated for tweak to parsing API.
28880 (JSC::constructFunction): Updated for tweak to parsing API.
28883 (JSC::JSFunction::JSFunction): Try to validate our SourceCode in debug
28888 (JSC::globalFuncEval): Updated for tweak to parsing API.
28891 (JSC::Parser::parse):
28893 (JSC::Parser::parse): Tweaked the parser to make it possible to parse
28903 (JSC::SourceCode::isNull): Added to help with ASSERTs.
28906 (JSC::Heap::heapAllocate):
28907 (JSC::Heap::sweep):
28908 (JSC::Heap::primaryHeapBegin):
28909 (JSC::Heap::primaryHeapEnd):
28911 (JSC::): Moved a bunch of declarations around to enable compilation of
28915 (JSC::Interpreter::checkSyntax):
28916 (JSC::Interpreter::evaluate): Updated for tweak to parsing API.
28919 (JSC::Lexer::sourceCode): BUG FIX: Calculate SourceCode ranges relative
28925 (JSC::FunctionBodyNode::FunctionBodyNode):
28926 (JSC::FunctionBodyNode::finishParsing):
28927 (JSC::FunctionBodyNode::create):
28928 (JSC::FunctionBodyNode::copyParameters):
28930 (JSC::ScopeNode::setSource):
28931 (JSC::FunctionBodyNode::parameterCount): Added some helper functions for
28956 (JSC::Machine::privateExecute):
28981 (JSC::Machine::cti_op_convert_this):
28982 (JSC::Machine::cti_op_end):
28983 (JSC::Machine::cti_op_add):
28984 (JSC::Machine::cti_op_pre_inc):
28985 (JSC::Machine::cti_timeout_check):
28986 (JSC::Machine::cti_register_file_check):
28987 (JSC::Machine::cti_op_loop_if_less):
28988 (JSC::Machine::cti_op_loop_if_lesseq):
28989 (JSC::Machine::cti_op_new_object):
28990 (JSC::Machine::cti_op_put_by_id):
28991 (JSC::Machine::cti_op_put_by_id_second):
28992 (JSC::Machine::cti_op_put_by_id_generic):
28993 (JSC::Machine::cti_op_put_by_id_fail):
28994 (JSC::Machine::cti_op_get_by_id):
28995 (JSC::Machine::cti_op_get_by_id_second):
28996 (JSC::Machine::cti_op_get_by_id_generic):
28997 (JSC::Machine::cti_op_get_by_id_fail):
28998 (JSC::Machine::cti_op_instanceof):
28999 (JSC::Machine::cti_op_del_by_id):
29000 (JSC::Machine::cti_op_mul):
29001 (JSC::Machine::cti_op_new_func):
29002 (JSC::Machine::cti_op_call_JSFunction):
29003 (JSC::Machine::cti_vm_compile):
29004 (JSC::Machine::cti_op_push_activation):
29005 (JSC::Machine::cti_op_call_NotJSFunction):
29006 (JSC::Machine::cti_op_create_arguments):
29007 (JSC::Machine::cti_op_tear_off_activation):
29008 (JSC::Machine::cti_op_tear_off_arguments):
29009 (JSC::Machine::cti_op_ret_profiler):
29010 (JSC::Machine::cti_op_ret_scopeChain):
29011 (JSC::Machine::cti_op_new_array):
29012 (JSC::Machine::cti_op_resolve):
29013 (JSC::Machine::cti_op_construct_JSConstruct):
29014 (JSC::Machine::cti_op_construct_NotJSConstruct):
29015 (JSC::Machine::cti_op_get_by_val):
29016 (JSC::Machine::cti_op_resolve_func):
29017 (JSC::Machine::cti_op_sub):
29018 (JSC::Machine::cti_op_put_by_val):
29019 (JSC::Machine::cti_op_put_by_val_array):
29020 (JSC::Machine::cti_op_lesseq):
29021 (JSC::Machine::cti_op_loop_if_true):
29022 (JSC::Machine::cti_op_negate):
29023 (JSC::Machine::cti_op_resolve_base):
29024 (JSC::Machine::cti_op_resolve_skip):
29025 (JSC::Machine::cti_op_resolve_global):
29026 (JSC::Machine::cti_op_div):
29027 (JSC::Machine::cti_op_pre_dec):
29028 (JSC::Machine::cti_op_jless):
29029 (JSC::Machine::cti_op_not):
29030 (JSC::Machine::cti_op_jtrue):
29031 (JSC::Machine::cti_op_post_inc):
29032 (JSC::Machine::cti_op_eq):
29033 (JSC::Machine::cti_op_lshift):
29034 (JSC::Machine::cti_op_bitand):
29035 (JSC::Machine::cti_op_rshift):
29036 (JSC::Machine::cti_op_bitnot):
29037 (JSC::Machine::cti_op_resolve_with_base):
29038 (JSC::Machine::cti_op_new_func_exp):
29039 (JSC::Machine::cti_op_mod):
29040 (JSC::Machine::cti_op_less):
29041 (JSC::Machine::cti_op_neq):
29042 (JSC::Machine::cti_op_post_dec):
29043 (JSC::Machine::cti_op_urshift):
29044 (JSC::Machine::cti_op_bitxor):
29045 (JSC::Machine::cti_op_new_regexp):
29046 (JSC::Machine::cti_op_bitor):
29047 (JSC::Machine::cti_op_call_eval):
29048 (JSC::Machine::cti_op_throw):
29049 (JSC::Machine::cti_op_get_pnames):
29050 (JSC::Machine::cti_op_next_pname):
29051 (JSC::Machine::cti_op_push_scope):
29052 (JSC::Machine::cti_op_pop_scope):
29053 (JSC::Machine::cti_op_typeof):
29054 (JSC::Machine::cti_op_is_undefined):
29055 (JSC::Machine::cti_op_is_boolean):
29056 (JSC::Machine::cti_op_is_number):
29057 (JSC::Machine::cti_op_is_string):
29058 (JSC::Machine::cti_op_is_object):
29059 (JSC::Machine::cti_op_is_function):
29060 (JSC::Machine::cti_op_stricteq):
29061 (JSC::Machine::cti_op_nstricteq):
29062 (JSC::Machine::cti_op_to_jsnumber):
29063 (JSC::Machine::cti_op_in):
29064 (JSC::Machine::cti_op_push_new_scope):
29065 (JSC::Machine::cti_op_jmp_scopes):
29066 (JSC::Machine::cti_op_put_by_index):
29067 (JSC::Machine::cti_op_switch_imm):
29068 (JSC::Machine::cti_op_switch_char):
29069 (JSC::Machine::cti_op_switch_string):
29070 (JSC::Machine::cti_op_del_by_val):
29071 (JSC::Machine::cti_op_put_getter):
29072 (JSC::Machine::cti_op_put_setter):
29073 (JSC::Machine::cti_op_new_error):
29074 (JSC::Machine::cti_op_debug):
29075 (JSC::Machine::cti_vm_throw):
29078 (JSC::X86Assembler::emitRestoreArgumentReference):
29079 (JSC::X86Assembler::emitRestoreArgumentReferenceForTrampoline):
29090 (JSC::JSGlobalData::JSGlobalData):
29091 (JSC::JSGlobalData::~JSGlobalData):
29107 (JSC::Machine::cti_op_convert_this):
29108 (JSC::Machine::cti_op_end):
29109 (JSC::Machine::cti_op_add):
29110 (JSC::Machine::cti_op_pre_inc):
29111 (JSC::Machine::cti_timeout_check):
29112 (JSC::Machine::cti_register_file_check):
29113 (JSC::Machine::cti_op_loop_if_less):
29114 (JSC::Machine::cti_op_loop_if_lesseq):
29115 (JSC::Machine::cti_op_new_object):
29116 (JSC::Machine::cti_op_put_by_id):
29117 (JSC::Machine::cti_op_put_by_id_second):
29118 (JSC::Machine::cti_op_put_by_id_generic):
29119 (JSC::Machine::cti_op_put_by_id_fail):
29120 (JSC::Machine::cti_op_get_by_id):
29121 (JSC::Machine::cti_op_get_by_id_second):
29122 (JSC::Machine::cti_op_get_by_id_generic):
29123 (JSC::Machine::cti_op_get_by_id_fail):
29124 (JSC::Machine::cti_op_instanceof):
29125 (JSC::Machine::cti_op_del_by_id):
29126 (JSC::Machine::cti_op_mul):
29127 (JSC::Machine::cti_op_new_func):
29128 (JSC::Machine::cti_op_call_JSFunction):
29129 (JSC::Machine::cti_vm_compile):
29130 (JSC::Machine::cti_op_push_activation):
29131 (JSC::Machine::cti_op_call_NotJSFunction):
29132 (JSC::Machine::cti_op_create_arguments):
29133 (JSC::Machine::cti_op_tear_off_activation):
29134 (JSC::Machine::cti_op_tear_off_arguments):
29135 (JSC::Machine::cti_op_ret_profiler):
29136 (JSC::Machine::cti_op_ret_scopeChain):
29137 (JSC::Machine::cti_op_new_array):
29138 (JSC::Machine::cti_op_resolve):
29139 (JSC::Machine::cti_op_construct_JSConstruct):
29140 (JSC::Machine::cti_op_construct_NotJSConstruct):
29141 (JSC::Machine::cti_op_get_by_val):
29142 (JSC::Machine::cti_op_resolve_func):
29143 (JSC::Machine::cti_op_sub):
29144 (JSC::Machine::cti_op_put_by_val):
29145 (JSC::Machine::cti_op_put_by_val_array):
29146 (JSC::Machine::cti_op_lesseq):
29147 (JSC::Machine::cti_op_loop_if_true):
29148 (JSC::Machine::cti_op_negate):
29149 (JSC::Machine::cti_op_resolve_base):
29150 (JSC::Machine::cti_op_resolve_skip):
29151 (JSC::Machine::cti_op_resolve_global):
29152 (JSC::Machine::cti_op_div):
29153 (JSC::Machine::cti_op_pre_dec):
29154 (JSC::Machine::cti_op_jless):
29155 (JSC::Machine::cti_op_not):
29156 (JSC::Machine::cti_op_jtrue):
29157 (JSC::Machine::cti_op_post_inc):
29158 (JSC::Machine::cti_op_eq):
29159 (JSC::Machine::cti_op_lshift):
29160 (JSC::Machine::cti_op_bitand):
29161 (JSC::Machine::cti_op_rshift):
29162 (JSC::Machine::cti_op_bitnot):
29163 (JSC::Machine::cti_op_resolve_with_base):
29164 (JSC::Machine::cti_op_new_func_exp):
29165 (JSC::Machine::cti_op_mod):
29166 (JSC::Machine::cti_op_less):
29167 (JSC::Machine::cti_op_neq):
29168 (JSC::Machine::cti_op_post_dec):
29169 (JSC::Machine::cti_op_urshift):
29170 (JSC::Machine::cti_op_bitxor):
29171 (JSC::Machine::cti_op_new_regexp):
29172 (JSC::Machine::cti_op_bitor):
29173 (JSC::Machine::cti_op_call_eval):
29174 (JSC::Machine::cti_op_throw):
29175 (JSC::Machine::cti_op_get_pnames):
29176 (JSC::Machine::cti_op_next_pname):
29177 (JSC::Machine::cti_op_push_scope):
29178 (JSC::Machine::cti_op_pop_scope):
29179 (JSC::Machine::cti_op_typeof):
29180 (JSC::Machine::cti_op_is_undefined):
29181 (JSC::Machine::cti_op_is_boolean):
29182 (JSC::Machine::cti_op_is_number):
29183 (JSC::Machine::cti_op_is_string):
29184 (JSC::Machine::cti_op_is_object):
29185 (JSC::Machine::cti_op_is_function):
29186 (JSC::Machine::cti_op_stricteq):
29187 (JSC::Machine::cti_op_nstricteq):
29188 (JSC::Machine::cti_op_to_jsnumber):
29189 (JSC::Machine::cti_op_in):
29190 (JSC::Machine::cti_op_push_new_scope):
29191 (JSC::Machine::cti_op_jmp_scopes):
29192 (JSC::Machine::cti_op_put_by_index):
29193 (JSC::Machine::cti_op_switch_imm):
29194 (JSC::Machine::cti_op_switch_char):
29195 (JSC::Machine::cti_op_switch_string):
29196 (JSC::Machine::cti_op_del_by_val):
29197 (JSC::Machine::cti_op_put_getter):
29198 (JSC::Machine::cti_op_put_setter):
29199 (JSC::Machine::cti_op_new_error):
29200 (JSC::Machine::cti_op_debug):
29201 (JSC::Machine::cti_vm_throw):
29204 (JSC::X86Assembler::emitRestoreArgumentReference):
29205 (JSC::X86Assembler::emitRestoreArgumentReferenceForTrampoline):
29218 (JSC::Machine::getArgumentsData):
29255 (JSC::CTI::privateCompile):
29257 (JSC::Machine::cti_register_file_check):
29258 (JSC::Machine::cti_op_call_JSFunction):
29259 (JSC::Machine::cti_op_construct_JSConstruct):
29263 (JSC::X86Assembler::):
29264 (JSC::X86Assembler::cmpl_mr):
29265 (JSC::X86Assembler::emitUnlinkedJg):
29280 (JSC::JSGlobalData::createLeaked):
29283 (JSC::StructureID::StructureID):
29284 (JSC::StructureID::~StructureID):
29285 (JSC::StructureID::startIgnoringLeaks):
29286 (JSC::StructureID::stopIgnoringLeaks):
29383 (JSC::RegExpMatchesArray::getOwnPropertySlot):
29384 (JSC::RegExpMatchesArray::put):
29385 (JSC::RegExpMatchesArray::deleteProperty):
29386 (JSC::RegExpMatchesArray::getPropertyNames):
29408 (JSC::PropertyNameArray::PropertyNameArray):
29409 (JSC::PropertyNameArray::setCacheable):
29410 (JSC::PropertyNameArray::cacheable):
29412 (JSC::StructureID::getEnumerablePropertyNames):
29438 (JSC::mathProtoFuncAbs): Remove workaround.
29439 (JSC::mathProtoFuncCeil): Ditto.
29440 (JSC::mathProtoFuncFloor): Ditto.
29451 (JSC::JSObject::JSObject):
29460 (JSC::PropertyMap::operator=):
29462 (JSC::PropertyMap::PropertyMap):
29471 (JSC::StructureID::StructureID):
29472 (JSC::StructureID::~StructureID):
29505 (JSC::RegExp::RegExp):
29506 (JSC::RegExp::~RegExp):
29507 (JSC::RegExp::match):
29510 (JSC::X86Assembler::emitConvertToFastCall):
29511 (JSC::X86Assembler::emitRestoreArgumentReferenceForTrampoline):
29512 (JSC::X86Assembler::emitRestoreArgumentReference):
29522 (JSC::CTI::emitFastArithDeTagImmediate):
29523 (JSC::CTI::emitFastArithDeTagImmediateJumpIfZero):
29524 (JSC::CTI::compileBinaryArithOp):
29525 (JSC::CTI::compileBinaryArithOpSlowCase):
29526 (JSC::CTI::privateCompileMainPass):
29527 (JSC::CTI::privateCompileSlowCases):
29530 (JSC::X86Assembler::):
29531 (JSC::X86Assembler::emitUnlinkedJs):
29552 (JSC::Arguments::mark):
29554 (JSC::Arguments::setActivation):
29555 (JSC::Arguments::Arguments):
29556 (JSC::JSActivation::copyRegisters):
29570 Bug 21497: REGRESSION (r37433): Bytecode JSC tests are severely broken
29573 Fix a typo in r37433 that causes the failure of a large number of JSC
29577 (JSC::Machine::privateExecute):
29584 (JSC::): Update type of argument to ctiTrampoline.
29613 (JSC::CTI::getConstant):
29614 (JSC::CTI::emitGetArg):
29615 (JSC::CTI::emitGetPutArg):
29616 (JSC::CTI::getConstantImmediateNumericArg):
29617 (JSC::CTI::printOpcodeOperandTypes):
29618 (JSC::CTI::CTI):
29619 (JSC::CTI::compileOpCall):
29620 (JSC::CTI::compileBinaryArithOp):
29621 (JSC::CTI::privateCompileMainPass):
29622 (JSC::CTI::privateCompile):
29623 (JSC::CTI::privateCompileGetByIdProto):
29624 (JSC::CTI::privateCompileGetByIdChain):
29625 (JSC::CTI::compileRegExp):
29629 (JSC::CodeGenerator::emitEqualityOp):
29630 (JSC::CodeGenerator::emitLoad):
29631 (JSC::CodeGenerator::emitUnexpectedLoad):
29632 (JSC::CodeGenerator::emitConstruct):
29635 (JSC::jsLess):
29636 (JSC::jsLessEq):
29637 (JSC::jsAddSlowCase):
29638 (JSC::jsAdd):
29639 (JSC::jsTypeStringForValue):
29640 (JSC::Machine::resolve):
29641 (JSC::Machine::resolveSkip):
29642 (JSC::Machine::resolveGlobal):
29643 (JSC::inlineResolveBase):
29644 (JSC::Machine::resolveBase):
29645 (JSC::Machine::resolveBaseAndProperty):
29646 (JSC::Machine::resolveBaseAndFunc):
29647 (JSC::Machine::slideRegisterWindowForCall):
29648 (JSC::isNotObject):
29649 (JSC::Machine::callEval):
29650 (JSC::Machine::dumpCallFrame):
29651 (JSC::Machine::dumpRegisters):
29652 (JSC::Machine::unwindCallFrame):
29653 (JSC::Machine::throwException):
29654 (JSC::DynamicGlobalObjectScope::DynamicGlobalObjectScope):
29655 (JSC::DynamicGlobalObjectScope::~DynamicGlobalObjectScope):
29656 (JSC::Machine::execute):
29657 (JSC::Machine::debug):
29658 (JSC::Machine::createExceptionScope):
29659 (JSC::cachePrototypeChain):
29660 (JSC::Machine::tryCachePutByID):
29661 (JSC::Machine::tryCacheGetByID):
29662 (JSC::Machine::privateExecute):
29663 (JSC::Machine::retrieveArguments):
29664 (JSC::Machine::retrieveCaller):
29665 (JSC::Machine::retrieveLastCaller):
29666 (JSC::Machine::findFunctionCallFrame):
29667 (JSC::Machine::getArgumentsData):
29668 (JSC::Machine::tryCTICachePutByID):
29669 (JSC::Machine::getCTIArrayLengthTrampoline):
29670 (JSC::Machine::getCTIStringLengthTrampoline):
29671 (JSC::Machine::tryCTICacheGetByID):
29672 (JSC::Machine::cti_op_convert_this):
29673 (JSC::Machine::cti_op_end):
29674 (JSC::Machine::cti_op_add):
29675 (JSC::Machine::cti_op_pre_inc):
29676 (JSC::Machine::cti_timeout_check):
29677 (JSC::Machine::cti_op_loop_if_less):
29678 (JSC::Machine::cti_op_loop_if_lesseq):
29679 (JSC::Machine::cti_op_new_object):
29680 (JSC::Machine::cti_op_put_by_id):
29681 (JSC::Machine::cti_op_put_by_id_second):
29682 (JSC::Machine::cti_op_put_by_id_generic):
29683 (JSC::Machine::cti_op_put_by_id_fail):
29684 (JSC::Machine::cti_op_get_by_id):
29685 (JSC::Machine::cti_op_get_by_id_second):
29686 (JSC::Machine::cti_op_get_by_id_generic):
29687 (JSC::Machine::cti_op_get_by_id_fail):
29688 (JSC::Machine::cti_op_instanceof):
29689 (JSC::Machine::cti_op_del_by_id):
29690 (JSC::Machine::cti_op_mul):
29691 (JSC::Machine::cti_op_new_func):
29692 (JSC::Machine::cti_op_call_JSFunction):
29693 (JSC::Machine::cti_vm_compile):
29694 (JSC::Machine::cti_op_push_activation):
29695 (JSC::Machine::cti_op_call_NotJSFunction):
29696 (JSC::Machine::cti_op_create_arguments):
29697 (JSC::Machine::cti_op_tear_off_activation):
29698 (JSC::Machine::cti_op_tear_off_arguments):
29699 (JSC::Machine::cti_op_ret_profiler):
29700 (JSC::Machine::cti_op_ret_scopeChain):
29701 (JSC::Machine::cti_op_new_array):
29702 (JSC::Machine::cti_op_resolve):
29703 (JSC::Machine::cti_op_construct_JSConstruct):
29704 (JSC::Machine::cti_op_construct_NotJSConstruct):
29705 (JSC::Machine::cti_op_get_by_val):
29706 (JSC::Machine::cti_op_resolve_func):
29707 (JSC::Machine::cti_op_sub):
29708 (JSC::Machine::cti_op_put_by_val):
29709 (JSC::Machine::cti_op_put_by_val_array):
29710 (JSC::Machine::cti_op_lesseq):
29711 (JSC::Machine::cti_op_loop_if_true):
29712 (JSC::Machine::cti_op_negate):
29713 (JSC::Machine::cti_op_resolve_base):
29714 (JSC::Machine::cti_op_resolve_skip):
29715 (JSC::Machine::cti_op_resolve_global):
29716 (JSC::Machine::cti_op_div):
29717 (JSC::Machine::cti_op_pre_dec):
29718 (JSC::Machine::cti_op_jless):
29719 (JSC::Machine::cti_op_not):
29720 (JSC::Machine::cti_op_jtrue):
29721 (JSC::Machine::cti_op_post_inc):
29722 (JSC::Machine::cti_op_eq):
29723 (JSC::Machine::cti_op_lshift):
29724 (JSC::Machine::cti_op_bitand):
29725 (JSC::Machine::cti_op_rshift):
29726 (JSC::Machine::cti_op_bitnot):
29727 (JSC::Machine::cti_op_resolve_with_base):
29728 (JSC::Machine::cti_op_new_func_exp):
29729 (JSC::Machine::cti_op_mod):
29730 (JSC::Machine::cti_op_less):
29731 (JSC::Machine::cti_op_neq):
29732 (JSC::Machine::cti_op_post_dec):
29733 (JSC::Machine::cti_op_urshift):
29734 (JSC::Machine::cti_op_bitxor):
29735 (JSC::Machine::cti_op_new_regexp):
29736 (JSC::Machine::cti_op_bitor):
29737 (JSC::Machine::cti_op_call_eval):
29738 (JSC::Machine::cti_op_throw):
29739 (JSC::Machine::cti_op_get_pnames):
29740 (JSC::Machine::cti_op_next_pname):
29741 (JSC::Machine::cti_op_push_scope):
29742 (JSC::Machine::cti_op_pop_scope):
29743 (JSC::Machine::cti_op_typeof):
29744 (JSC::Machine::cti_op_to_jsnumber):
29745 (JSC::Machine::cti_op_in):
29746 (JSC::Machine::cti_op_push_new_scope):
29747 (JSC::Machine::cti_op_jmp_scopes):
29748 (JSC::Machine::cti_op_put_by_index):
29749 (JSC::Machine::cti_op_switch_imm):
29750 (JSC::Machine::cti_op_switch_char):
29751 (JSC::Machine::cti_op_switch_string):
29752 (JSC::Machine::cti_op_del_by_val):
29753 (JSC::Machine::cti_op_put_getter):
29754 (JSC::Machine::cti_op_put_setter):
29755 (JSC::Machine::cti_op_new_error):
29756 (JSC::Machine::cti_op_debug):
29757 (JSC::Machine::cti_vm_throw):
29763 (JSC::DebuggerCallFrame::functionName):
29764 (JSC::DebuggerCallFrame::type):
29765 (JSC::DebuggerCallFrame::thisObject):
29766 (JSC::DebuggerCallFrame::evaluate):
29769 (JSC::CallFrame::thisValue):
29772 (JSC::constructFunction):
29774 (JSC::JSActivation::JSActivation):
29775 (JSC::JSActivation::argumentsGetter):
29778 (JSC::JSGlobalObject::init):
29780 (JSC::globalFuncEval):
29783 (JSC::Parser::parse):
29785 (JSC::constructRegExp):
29787 (JSC::regExpProtoFuncCompile):
29791 (JSC::stringProtoFuncMatch):
29792 (JSC::stringProtoFuncSearch):
29794 (JSC::Identifier::checkSameIdentifierTable):
29796 (JSC::Interpreter::checkSyntax):
29797 (JSC::Interpreter::evaluate):
29799 (JSC::ThrowableExpressionData::emitThrowError):
29800 (JSC::RegExpNode::emitCode):
29801 (JSC::ArrayNode::emitCode):
29802 (JSC::InstanceOfNode::emitCode):
29805 (JSC::RegExp::RegExp):
29806 (JSC::RegExp::create):
29820 (JSC::Machine::privateExecute):
29855 (JSC::CTI::getConstant):
29856 (JSC::CTI::emitGetArg):
29857 (JSC::CTI::emitGetPutArg):
29858 (JSC::CTI::getConstantImmediateNumericArg):
29859 (JSC::CTI::printOpcodeOperandTypes):
29860 (JSC::CTI::CTI):
29861 (JSC::CTI::compileOpCall):
29862 (JSC::CTI::compileBinaryArithOp):
29863 (JSC::CTI::privateCompileMainPass):
29864 (JSC::CTI::privateCompile):
29865 (JSC::CTI::privateCompileGetByIdProto):
29866 (JSC::CTI::privateCompileGetByIdChain):
29867 (JSC::CTI::compileRegExp):
29871 (JSC::CodeGenerator::emitEqualityOp):
29872 (JSC::CodeGenerator::emitLoad):
29873 (JSC::CodeGenerator::emitUnexpectedLoad):
29874 (JSC::CodeGenerator::emitConstruct):
29877 (JSC::jsLess):
29878 (JSC::jsLessEq):
29879 (JSC::jsAddSlowCase):
29880 (JSC::jsAdd):
29881 (JSC::jsTypeStringForValue):
29882 (JSC::Machine::resolve):
29883 (JSC::Machine::resolveSkip):
29884 (JSC::Machine::resolveGlobal):
29885 (JSC::inlineResolveBase):
29886 (JSC::Machine::resolveBase):
29887 (JSC::Machine::resolveBaseAndProperty):
29888 (JSC::Machine::resolveBaseAndFunc):
29889 (JSC::Machine::slideRegisterWindowForCall):
29890 (JSC::isNotObject):
29891 (JSC::Machine::callEval):
29892 (JSC::Machine::dumpCallFrame):
29893 (JSC::Machine::dumpRegisters):
29894 (JSC::Machine::unwindCallFrame):
29895 (JSC::Machine::throwException):
29896 (JSC::DynamicGlobalObjectScope::DynamicGlobalObjectScope):
29897 (JSC::DynamicGlobalObjectScope::~DynamicGlobalObjectScope):
29898 (JSC::Machine::execute):
29899 (JSC::Machine::debug):
29900 (JSC::Machine::createExceptionScope):
29901 (JSC::cachePrototypeChain):
29902 (JSC::Machine::tryCachePutByID):
29903 (JSC::Machine::tryCacheGetByID):
29904 (JSC::Machine::privateExecute):
29905 (JSC::Machine::retrieveArguments):
29906 (JSC::Machine::retrieveCaller):
29907 (JSC::Machine::retrieveLastCaller):
29908 (JSC::Machine::findFunctionCallFrame):
29909 (JSC::Machine::getArgumentsData):
29910 (JSC::Machine::tryCTICachePutByID):
29911 (JSC::Machine::getCTIArrayLengthTrampoline):
29912 (JSC::Machine::getCTIStringLengthTrampoline):
29913 (JSC::Machine::tryCTICacheGetByID):
29914 (JSC::Machine::cti_op_convert_this):
29915 (JSC::Machine::cti_op_end):
29916 (JSC::Machine::cti_op_add):
29917 (JSC::Machine::cti_op_pre_inc):
29918 (JSC::Machine::cti_timeout_check):
29919 (JSC::Machine::cti_op_loop_if_less):
29920 (JSC::Machine::cti_op_loop_if_lesseq):
29921 (JSC::Machine::cti_op_new_object):
29922 (JSC::Machine::cti_op_put_by_id):
29923 (JSC::Machine::cti_op_put_by_id_second):
29924 (JSC::Machine::cti_op_put_by_id_generic):
29925 (JSC::Machine::cti_op_put_by_id_fail):
29926 (JSC::Machine::cti_op_get_by_id):
29927 (JSC::Machine::cti_op_get_by_id_second):
29928 (JSC::Machine::cti_op_get_by_id_generic):
29929 (JSC::Machine::cti_op_get_by_id_fail):
29930 (JSC::Machine::cti_op_instanceof):
29931 (JSC::Machine::cti_op_del_by_id):
29932 (JSC::Machine::cti_op_mul):
29933 (JSC::Machine::cti_op_new_func):
29934 (JSC::Machine::cti_op_call_JSFunction):
29935 (JSC::Machine::cti_vm_compile):
29936 (JSC::Machine::cti_op_push_activation):
29937 (JSC::Machine::cti_op_call_NotJSFunction):
29938 (JSC::Machine::cti_op_create_arguments):
29939 (JSC::Machine::cti_op_tear_off_activation):
29940 (JSC::Machine::cti_op_tear_off_arguments):
29941 (JSC::Machine::cti_op_ret_profiler):
29942 (JSC::Machine::cti_op_ret_scopeChain):
29943 (JSC::Machine::cti_op_new_array):
29944 (JSC::Machine::cti_op_resolve):
29945 (JSC::Machine::cti_op_construct_JSConstruct):
29946 (JSC::Machine::cti_op_construct_NotJSConstruct):
29947 (JSC::Machine::cti_op_get_by_val):
29948 (JSC::Machine::cti_op_resolve_func):
29949 (JSC::Machine::cti_op_sub):
29950 (JSC::Machine::cti_op_put_by_val):
29951 (JSC::Machine::cti_op_put_by_val_array):
29952 (JSC::Machine::cti_op_lesseq):
29953 (JSC::Machine::cti_op_loop_if_true):
29954 (JSC::Machine::cti_op_negate):
29955 (JSC::Machine::cti_op_resolve_base):
29956 (JSC::Machine::cti_op_resolve_skip):
29957 (JSC::Machine::cti_op_resolve_global):
29958 (JSC::Machine::cti_op_div):
29959 (JSC::Machine::cti_op_pre_dec):
29960 (JSC::Machine::cti_op_jless):
29961 (JSC::Machine::cti_op_not):
29962 (JSC::Machine::cti_op_jtrue):
29963 (JSC::Machine::cti_op_post_inc):
29964 (JSC::Machine::cti_op_eq):
29965 (JSC::Machine::cti_op_lshift):
29966 (JSC::Machine::cti_op_bitand):
29967 (JSC::Machine::cti_op_rshift):
29968 (JSC::Machine::cti_op_bitnot):
29969 (JSC::Machine::cti_op_resolve_with_base):
29970 (JSC::Machine::cti_op_new_func_exp):
29971 (JSC::Machine::cti_op_mod):
29972 (JSC::Machine::cti_op_less):
29973 (JSC::Machine::cti_op_neq):
29974 (JSC::Machine::cti_op_post_dec):
29975 (JSC::Machine::cti_op_urshift):
29976 (JSC::Machine::cti_op_bitxor):
29977 (JSC::Machine::cti_op_new_regexp):
29978 (JSC::Machine::cti_op_bitor):
29979 (JSC::Machine::cti_op_call_eval):
29980 (JSC::Machine::cti_op_throw):
29981 (JSC::Machine::cti_op_get_pnames):
29982 (JSC::Machine::cti_op_next_pname):
29983 (JSC::Machine::cti_op_push_scope):
29984 (JSC::Machine::cti_op_pop_scope):
29985 (JSC::Machine::cti_op_typeof):
29986 (JSC::Machine::cti_op_to_jsnumber):
29987 (JSC::Machine::cti_op_in):
29988 (JSC::Machine::cti_op_push_new_scope):
29989 (JSC::Machine::cti_op_jmp_scopes):
29990 (JSC::Machine::cti_op_put_by_index):
29991 (JSC::Machine::cti_op_switch_imm):
29992 (JSC::Machine::cti_op_switch_char):
29993 (JSC::Machine::cti_op_switch_string):
29994 (JSC::Machine::cti_op_del_by_val):
29995 (JSC::Machine::cti_op_put_getter):
29996 (JSC::Machine::cti_op_put_setter):
29997 (JSC::Machine::cti_op_new_error):
29998 (JSC::Machine::cti_op_debug):
29999 (JSC::Machine::cti_vm_throw):
30005 (JSC::DebuggerCallFrame::functionName):
30006 (JSC::DebuggerCallFrame::type):
30007 (JSC::DebuggerCallFrame::thisObject):
30008 (JSC::DebuggerCallFrame::evaluate):
30011 (JSC::CallFrame::thisValue):
30014 (JSC::constructFunction):
30016 (JSC::JSActivation::JSActivation):
30017 (JSC::JSActivation::argumentsGetter):
30020 (JSC::JSGlobalObject::init):
30022 (JSC::globalFuncEval):
30025 (JSC::Parser::parse):
30027 (JSC::constructRegExp):
30029 (JSC::regExpProtoFuncCompile):
30033 (JSC::stringProtoFuncMatch):
30034 (JSC::stringProtoFuncSearch):
30036 (JSC::Identifier::checkSameIdentifierTable):
30038 (JSC::Interpreter::checkSyntax):
30039 (JSC::Interpreter::evaluate):
30041 (JSC::ThrowableExpressionData::emitThrowError):
30042 (JSC::RegExpNode::emitCode):
30043 (JSC::ArrayNode::emitCode):
30044 (JSC::InstanceOfNode::emitCode):
30047 (JSC::RegExp::RegExp):
30048 (JSC::RegExp::create):
30066 (JSC::Machine::privateExecute):
30083 (JSC::CTI::privateCompileMainPass): Optimize to_jsnumber for
30085 (JSC::CTI::privateCompileSlowCases): ditto
30087 (JSC::Machine::privateExecute): ditto
30101 (JSC::ExpressionNode::stripUnaryPlus): Helper for above
30103 (JSC::UnaryPlusNode::stripUnaryPlus): ditto
30112 (JSC::concatenate):
30131 (JSC::currentThreadStackBase):
30159 (JSC::):
30160 (JSC::CTI::privateCompilePutByIdTransition):
30161 (JSC::CTI::privateCompilePatchGetArrayLength):
30165 (JSC::X86Assembler::emitRestoreArgumentReference):
30166 (JSC::X86Assembler::emitRestoreArgumentReferenceForTrampoline):
30184 (JSC::CTI::privateCompileMainPass): Optimize to_jsnumber for
30186 (JSC::CTI::privateCompileSlowCases): ditto
30188 (JSC::Machine::privateExecute): ditto
30202 (JSC::ExpressionNode::stripUnaryPlus): Helper for above
30204 (JSC::UnaryPlusNode::stripUnaryPlus): ditto
30224 (JSC::JSObject::put):
30225 (JSC::JSObject::defineGetter):
30226 (JSC::JSObject::defineSetter):
30228 (JSC::JSObject::hasGetterSetterProperties):
30229 (JSC::JSObject::getOwnPropertySlotForWrite):
30230 (JSC::JSObject::getOwnPropertySlot):
30233 (JSC::StructureID::StructureID):
30234 (JSC::StructureID::addPropertyTransition):
30235 (JSC::StructureID::toDictionaryTransition):
30236 (JSC::StructureID::changePrototypeTransition):
30237 (JSC::StructureID::getterSetterTransition):
30239 (JSC::StructureID::hasGetterSetterProperties):
30240 (JSC::StructureID::setHasGetterSetterProperties):
30264 (JSC::):
30265 (JSC::CTI::emitCall):
30266 (JSC::CTI::compileOpCall):
30267 (JSC::CTI::privateCompileMainPass):
30268 (JSC::CTI::privateCompileSlowCases):
30269 (JSC::CTI::privateCompile):
30271 (JSC::CallRecord::CallRecord):
30273 (JSC::Machine::cti_op_call_JSFunction):
30274 (JSC::Machine::cti_op_construct_JSConstruct):
30275 (JSC::Machine::cti_op_resolve_func):
30276 (JSC::Machine::cti_op_post_inc):
30277 (JSC::Machine::cti_op_resolve_with_base):
30278 (JSC::Machine::cti_op_post_dec):
30315 (JSC::transitionWillNeedStorageRealloc):
30317 (JSC::Machine::privateExecute):
30322 (JSC::JSObject::put): Rename getOffset -> get.
30323 (JSC::JSObject::deleteProperty): Ditto.
30324 (JSC::JSObject::getPropertyAttributes): Ditto.
30325 (JSC::JSObject::removeDirect): Use returned offset to
30327 (JSC::JSObject::allocatePropertyStorage): Add assert.
30329 (JSC::JSObject::getDirect): Rename getOffset -> get
30330 (JSC::JSObject::getDirectLocation): Rename getOffset -> get
30331 (JSC::JSObject::putDirect): Use propertyStorageCapacity to determine whether
30335 (JSC::JSObject::transitionTo):
30337 (JSC::PropertyMap::checkConsistency): PropertyStorageArray is no longer
30339 (JSC::PropertyMap::operator=): Copy the delete offsets vector.
30340 (JSC::PropertyMap::put): Instead of setting the PropertyNameArray
30342 (JSC::PropertyMap::remove): Instead of removing from the PropertyNameArray
30344 (JSC::PropertyMap::get): Switch to using the stored offset, instead
30346 (JSC::PropertyMap::insert):
30347 (JSC::PropertyMap::expand): This is never called when m_table is null,
30349 (JSC::PropertyMap::createTable): Consistency checks no longer take
30351 (JSC::PropertyMap::rehash): No need to rehash the PropertyNameArray
30354 (JSC::PropertyMapEntry::PropertyMapEntry): Store offset into PropertyNameArray.
30355 (JSC::PropertyMap::get): Switch to using the stored offset, instead
30358 (JSC::StructureID::StructureID): Initialize the propertyStorageCapacity to
30360 (JSC::StructureID::growPropertyStorageCapacity): Grow the storage capacity as
30362 (JSC::StructureID::addPropertyTransition): Copy the storage capacity.
30363 (JSC::StructureID::toDictionaryTransition): Ditto.
30364 (JSC::StructureID::changePrototypeTransition): Ditto.
30365 (JSC::StructureID::getterSetterTransition): Ditto.
30367 (JSC::StructureID::propertyStorageCapacity): Add propertyStorageCapacity
30387 (JSC::CTI::privateCompileMainPass):
30389 (JSC::CodeBlock::dump):
30391 (JSC::CodeGenerator::CodeGenerator):
30392 (JSC::CodeGenerator::emitReturn):
30395 (JSC::Machine::dumpRegisters):
30396 (JSC::Machine::unwindCallFrame):
30397 (JSC::Machine::privateExecute):
30398 (JSC::Machine::cti_op_call_JSFunction):
30399 (JSC::Machine::cti_op_push_activation):
30400 (JSC::Machine::cti_op_tear_off_activation):
30401 (JSC::Machine::cti_op_construct_JSConstruct):
30403 (JSC::Machine::initializeCallFrame):
30405 (JSC::RegisterFile::):
30463 (JSC::CodeBlock::dump):
30465 (JSC::Machine::privateExecute):
30466 (JSC::Machine::cti_op_loop_if_true):
30467 (JSC::Machine::cti_op_not):
30468 (JSC::Machine::cti_op_jtrue):
30470 (JSC::arrayProtoFuncFilter):
30471 (JSC::arrayProtoFuncEvery):
30472 (JSC::arrayProtoFuncSome):
30474 (JSC::constructBoolean):
30475 (JSC::callBooleanConstructor):
30478 (JSC::JSValue::toBoolean):
30480 (JSC::JSNumberCell::toBoolean):
30483 (JSC::JSObject::toBoolean):
30486 (JSC::JSString::toBoolean):
30490 (JSC::setRegExpConstructorMultiline):
30492 (JSC::RegExpObject::match):
30494 (JSC::regExpProtoFuncToString):
30516 (JSC::CodeBlock::dump):
30518 (JSC::Machine::privateExecute):
30519 (JSC::Machine::cti_op_loop_if_true):
30520 (JSC::Machine::cti_op_not):
30521 (JSC::Machine::cti_op_jtrue):
30523 (JSC::arrayProtoFuncFilter):
30524 (JSC::arrayProtoFuncEvery):
30525 (JSC::arrayProtoFuncSome):
30527 (JSC::constructBoolean):
30528 (JSC::callBooleanConstructor):
30531 (JSC::JSValue::toBoolean):
30534 (JSC::JSNumberCell::toBoolean):
30537 (JSC::JSObject::toBoolean):
30538 (JSC::JSCell::toBoolean):
30541 (JSC::JSString::toBoolean):
30544 (JSC::setRegExpConstructorMultiline):
30546 (JSC::RegExpObject::match):
30548 (JSC::regExpProtoFuncToString):
30558 (JSC::highResUpTime):
30567 (JSC::ScopeNode::containsClosures):
30576 (JSC::Machine::unwindCallFrame): Update ExecState while unwinding call frames;
30599 (JSC::CTI::privateCompileMainPass):
30601 (JSC::CodeBlock::dump):
30603 (JSC::CodeGenerator::emitReturn):
30606 (JSC::Machine::unwindCallFrame):
30607 (JSC::Machine::privateExecute):
30608 (JSC::Machine::retrieveArguments):
30609 (JSC::Machine::cti_op_create_arguments):
30610 (JSC::Machine::cti_op_tear_off_activation):
30611 (JSC::Machine::cti_op_tear_off_arguments):
30615 (JSC::Arguments::mark):
30617 (JSC::Arguments::isTornOff):
30618 (JSC::Arguments::Arguments):
30619 (JSC::Arguments::copyRegisters):
30620 (JSC::JSActivation::copyRegisters):
30622 (JSC::JSActivation::argumentsGetter):
30641 (JSC::DynamicGlobalObjectScope::DynamicGlobalObjectScope): Helper class to temporarily
30643 (JSC::DynamicGlobalObjectScope::~DynamicGlobalObjectScope):
30644 (JSC::Machine::execute): In each version, establish a DynamicGlobalObjectScope.
30650 (JSC::JSGlobalData::JSGlobalData): Ininitalize new dynamicGlobalObject field to 0.
30653 (JSC::ExecState::dynamicGlobalObject): Moved here from ExecState for benefit of inlining.
30667 (JSC::PropertyMap::put):
30670 (JSC::StructureID::StructureID):
30671 (JSC::StructureID::addPropertyTransition):
30673 (JSC::StructureID::setCachedTransistionOffset):
30674 (JSC::StructureID::cachedTransistionOffset):
30689 (JSC::CodeBlock::CodeBlock):
30691 (JSC::CodeGenerator::generate):
30692 (JSC::CodeGenerator::CodeGenerator):
30693 (JSC::CodeGenerator::emitPushScope):
30694 (JSC::CodeGenerator::emitPushNewScope):
30696 (JSC::ScopeNode::needsActivation):
30709 (JSC::CTI::execute):
30711 (JSC::SamplingTool::privateExecuteReturned):
30733 (JSC::PropertyNameArrayData::setCachedStructureID):
30734 (JSC::PropertyNameArrayData::cachedStructureID):
30736 (JSC::StructureID::getEnumerablePropertyNames):
30737 (JSC::StructureID::clearEnumerationCache):
30738 (JSC::StructureID::~StructureID):
30760 (JSC::CTI::emitCall): Removed code to set ExecState::m_callFrame.
30761 (JSC::CTI::privateCompileMainPass): Removed code in catch to extract
30768 (JSC::CTI::execute): Removed the ExecState* argument.
30771 (JSC::InterruptedExecutionError::InterruptedExecutionError): Take
30773 (JSC::createInterruptedExecutionException): Ditto.
30777 (JSC::slideRegisterWindowForCall): Removed the exec and
30781 (JSC::Machine::unwindCallFrame): Removed the exec argument when
30784 (JSC::Machine::throwException): Removed the exec argument when
30786 (JSC::Machine::execute): Updated to use the register instead of
30788 (JSC::Machine::debug):
30789 (JSC::Machine::privateExecute): Put globalData into a local
30793 (JSC::Machine::retrieveLastCaller): Turn exec into a registers
30795 (JSC::Machine::callFrame): Ditto.
30799 (JSC::Machine::cti_op_add): Update to use new version of exception
30801 (JSC::Machine::cti_op_pre_inc): Ditto.
30802 (JSC::Machine::cti_timeout_check): Ditto.
30803 (JSC::Machine::cti_op_instanceof): Ditto.
30804 (JSC::Machine::cti_op_new_func): Ditto.
30805 (JSC::Machine::cti_op_call_JSFunction): Optimized by using the
30810 (JSC::Machine::cti_vm_compile): Update to make exec out of r since
30812 (JSC::Machine::cti_op_call_NotJSFunction): Ditto.
30813 (JSC::Machine::cti_op_init_arguments): Ditto.
30814 (JSC::Machine::cti_op_resolve): Ditto.
30815 (JSC::Machine::cti_op_construct_JSConstruct): Ditto.
30816 (JSC::Machine::cti_op_construct_NotJSConstruct): Ditto.
30817 (JSC::Machine::cti_op_resolve_func): Ditto.
30818 (JSC::Machine::cti_op_put_by_val): Ditto.
30819 (JSC::Machine::cti_op_put_by_val_array): Ditto.
30820 (JSC::Machine::cti_op_resolve_skip): Ditto.
30821 (JSC::Machine::cti_op_resolve_global): Ditto.
30822 (JSC::Machine::cti_op_post_inc): Ditto.
30823 (JSC::Machine::cti_op_resolve_with_base): Ditto.
30824 (JSC::Machine::cti_op_post_dec): Ditto.
30825 (JSC::Machine::cti_op_call_eval): Ditto.
30826 (JSC::Machine::cti_op_throw): Ditto. Also rearranged to return
30829 (JSC::Machine::cti_op_push_scope): Ditto.
30830 (JSC::Machine::cti_op_in): Ditto.
30831 (JSC::Machine::cti_op_del_by_val): Ditto.
30832 (JSC::Machine::cti_vm_throw): Ditto. Also rearranged to return
30837 (JSC::DebuggerCallFrame::functionName): Pass globalData.
30838 (JSC::DebuggerCallFrame::evaluate): Eliminated code to make a
30854 (JSC::functionProtoFuncToString): Pass globalData instead of exec.
30857 (JSC::InternalFunction::name): Take globalData instead of exec.
30866 (JSC::JSGlobalObject::init): Removed code to set up globalExec,
30868 (JSC::JSGlobalObject::reset): Get globalExec from our globalExec
30870 (JSC::JSGlobalObject::mark): Removed code to mark the exception;
30872 (JSC::JSGlobalObject::globalExec): Return a pointer to the end
30877 (JSC::JSObject::putDirectFunction): Pass globalData instead of exec.
30880 (JSC::Heap::collect): Mark the global exception.
30883 (JSC::ProfileGenerator::addParentForConsoleStart): Pass globalData
30887 (JSC::Profiler::willExecute): Pass globalData instead of exec to
30889 (JSC::Profiler::didExecute): Ditto.
30890 (JSC::Profiler::createCallIdentifier): Take globalData instead of
30892 (JSC::createCallIdentifierFromFunctionImp): Ditto.
30907 (JSC::CTI::privateCompileMainPass):
30909 (JSC::CodeBlock::dump):
30911 (JSC::CodeGenerator::CodeGenerator):
30913 (JSC::Machine::privateExecute):
30914 (JSC::Machine::cti_op_create_arguments):
30939 (JSC::CTI::privateCompileMainPass):
30940 (JSC::CTI::privateCompileSlowCases):
30942 (JSC::CodeBlock::dump):
30944 (JSC::CodeGenerator::generate):
30945 (JSC::CodeGenerator::CodeGenerator):
30947 (JSC::Machine::privateExecute):
30948 (JSC::Machine::cti_op_convert_this):
30952 (JSC::JSActivation::JSActivation):
30954 (JSC::JSActivation::createStructureID):
30956 (JSC::JSValue::needsThisConversion):
30958 (JSC::JSGlobalData::JSGlobalData):
30961 (JSC::JSNumberCell::createStructureID):
30963 (JSC::JSStaticScopeObject::JSStaticScopeObject):
30964 (JSC::JSStaticScopeObject::createStructureID):
30966 (JSC::JSString::createStructureID):
30969 (JSC::TypeInfo::needsThisConversion):
30971 (JSC::ScopeNode::usesThis):
30989 (JSC::RegisterFile::RegisterFile):
31006 (JSC::CodeBlock::CodeBlock):
31009 (JSC::Parser::didFinishParsing):
31011 (JSC::Parser::parse):
31014 (JSC::ScopeNode::ScopeNode):
31015 (JSC::ProgramNode::ProgramNode):
31016 (JSC::ProgramNode::create):
31017 (JSC::EvalNode::EvalNode):
31018 (JSC::EvalNode::create):
31019 (JSC::FunctionBodyNode::FunctionBodyNode):
31020 (JSC::FunctionBodyNode::create):
31022 (JSC::ScopeNode::usesEval):
31023 (JSC::ScopeNode::containsClosures):
31024 (JSC::ScopeNode::usesArguments):
31025 (JSC::ScopeNode::setUsesArguments):
31044 (JSC::Machine::getArgumentsData):
31047 (JSC::Arguments::getOwnPropertySlot):
31049 (JSC::Arguments::init):
31078 (JSC::JSCallbackFunction::JSCallbackFunction):
31080 (JSC::ArrayConstructor::ArrayConstructor):
31082 (JSC::BooleanConstructor::BooleanConstructor):
31084 (JSC::DateConstructor::DateConstructor):
31086 (JSC::ErrorConstructor::ErrorConstructor):
31088 (JSC::FunctionPrototype::FunctionPrototype):
31090 (JSC::JSFunction::JSFunction):
31092 (JSC::NativeErrorConstructor::NativeErrorConstructor):
31094 (JSC::NumberConstructor::NumberConstructor):
31096 (JSC::ObjectConstructor::ObjectConstructor):
31098 (JSC::PrototypeFunction::PrototypeFunction):
31100 (JSC::RegExpConstructor::RegExpConstructor):
31102 (JSC::StringConstructor::StringConstructor):
31111 (JSC::CTI::emitSlowScriptCheck): Changed to use ARGS_globalData
31122 (JSC::Machine::execute): Pass fewer arguments when constructing
31124 (JSC::Machine::firstCallFrame): Added. Used to get the dynamic global
31126 (JSC::Machine::cti_op_add): Use globalData instead of exec when
31129 (JSC::Machine::cti_timeout_check): Ditto.
31130 (JSC::Machine::cti_op_put_by_id_second): Ditto.
31131 (JSC::Machine::cti_op_get_by_id_second): Ditto.
31132 (JSC::Machine::cti_op_mul): Ditto.
31133 (JSC::Machine::cti_vm_compile): Ditto.
31134 (JSC::Machine::cti_op_get_by_val): Ditto.
31135 (JSC::Machine::cti_op_sub): Ditto.
31136 (JSC::Machine::cti_op_put_by_val): Ditto.
31137 (JSC::Machine::cti_op_put_by_val_array): Ditto.
31138 (JSC::Machine::cti_op_negate): Ditto.
31139 (JSC::Machine::cti_op_div): Ditto.
31140 (JSC::Machine::cti_op_pre_dec): Ditto.
31141 (JSC::Machine::cti_op_post_inc): Ditto.
31142 (JSC::Machine::cti_op_lshift): Ditto.
31143 (JSC::Machine::cti_op_bitand): Ditto.
31144 (JSC::Machine::cti_op_rshift): Ditto.
31145 (JSC::Machine::cti_op_bitnot): Ditto.
31146 (JSC::Machine::cti_op_mod): Ditto.
31147 (JSC::Machine::cti_op_post_dec): Ditto.
31148 (JSC::Machine::cti_op_urshift): Ditto.
31149 (JSC::Machine::cti_op_bitxor): Ditto.
31150 (JSC::Machine::cti_op_bitor): Ditto.
31151 (JSC::Machine::cti_op_call_eval): Ditto.
31152 (JSC::Machine::cti_op_throw): Ditto.
31153 (JSC::Machine::cti_op_is_string): Ditto.
31154 (JSC::Machine::cti_op_debug): Ditto.
31155 (JSC::Machine::cti_vm_throw): Ditto.
31160 (JSC::DebuggerCallFrame::evaluate): Pass fewer arguments when
31168 (JSC::ExecState::ExecState): Take only a single argument, a
31170 (JSC::ExecState::dynamicGlobalObject): Get the object from
31172 (JSC::ExecState::globalData): Get the global data from the
31174 (JSC::ExecState::identifierTable): Ditto.
31175 (JSC::ExecState::propertyNames): Ditto.
31176 (JSC::ExecState::emptyList): Ditto.
31177 (JSC::ExecState::lexer): Ditto.
31178 (JSC::ExecState::parser): Ditto.
31179 (JSC::ExecState::machine): Ditto.
31180 (JSC::ExecState::arrayTable): Ditto.
31181 (JSC::ExecState::dateTable): Ditto.
31182 (JSC::ExecState::mathTable): Ditto.
31183 (JSC::ExecState::numberTable): Ditto.
31184 (JSC::ExecState::regExpTable): Ditto.
31185 (JSC::ExecState::regExpConstructorTable): Ditto.
31186 (JSC::ExecState::stringTable): Ditto.
31187 (JSC::ExecState::heap): Ditto.
31190 (JSC::FunctionConstructor::FunctionConstructor): Pass
31193 (JSC::constructFunction): Pass the global data pointer when
31197 (JSC::InternalFunction::InternalFunction): Take a JSGlobalData*
31204 (JSC::JSCell::operator new): Added an overload that takes a
31208 (JSC::JSGlobalObject::init): Moved creation of the global scope
31220 (JSC::JSNumberCell::operator new): Added a version that takes
31222 (JSC::JSNumberCell::JSNumberCell): Ditto.
31223 (JSC::jsNumber): Ditto.
31225 (JSC::jsString): Ditto.
31226 (JSC::jsSubstring): Ditto.
31227 (JSC::jsOwnedString): Ditto.
31229 (JSC::JSString::JSString): Changed to take JSGlobalData*.
31230 (JSC::jsEmptyString): Added a version that takes JSGlobalData*.
31231 (JSC::jsSingleCharacterString): Ditto.
31232 (JSC::jsSingleCharacterSubstring): Ditto.
31233 (JSC::jsNontrivialString): Ditto.
31234 (JSC::JSString::getIndex): Ditto.
31235 (JSC::jsString): Ditto.
31236 (JSC::jsSubstring): Ditto.
31237 (JSC::jsOwnedString): Ditto.
31240 (JSC::ScopeChainNode::ScopeChainNode): Initialize the globalData
31242 (JSC::ScopeChainNode::push): Set the global data pointer in the
31244 (JSC::ScopeChain::ScopeChain): Take a globalData argument.
31247 (JSC::SmallStrings::createEmptyString): Take JSGlobalData* instead of
31249 (JSC::SmallStrings::createSingleCharacterString): Ditto.
31251 (JSC::SmallStrings::emptyString): Ditto.
31252 (JSC::SmallStrings::singleCharacterString): Ditto.
31266 (JSC::Arguments::getOwnPropertySlot):
31280 (JSC::JSGlobalData::~JSGlobalData): Remove call to heap.destroy() because
31295 (JSC::isSSE2Present):
31296 (JSC::CTI::compileBinaryArithOp):
31297 (JSC::CTI::compileBinaryArithOpSlowCase):
31357 (JSC::ExecState::heap): Update to use the & operator.
31360 (JSC::JSGlobalData::JSGlobalData): Update to initialize a heap member
31362 (JSC::JSGlobalData::~JSGlobalData): Destroy the heap with the destroy
31366 (JSC::JSGlobalObject::mark): Use the & operator here.
31367 (JSC::JSGlobalObject::operator new): Use heap. instead of heap-> to work
31381 (JSC::slideRegisterWindowForCall):
31382 (JSC::Machine::callEval):
31383 (JSC::Machine::execute):
31384 (JSC::Machine::privateExecute):
31385 (JSC::Machine::cti_op_call_JSFunction):
31386 (JSC::Machine::cti_op_construct_JSConstruct):
31388 (JSC::RegisterFile::~RegisterFile):
31390 (JSC::RegisterFile::RegisterFile):
31391 (JSC::RegisterFile::start):
31392 (JSC::RegisterFile::end):
31393 (JSC::RegisterFile::size):
31394 (JSC::RegisterFile::shrink):
31395 (JSC::RegisterFile::grow):
31396 (JSC::RegisterFile::lastGlobal):
31397 (JSC::RegisterFile::markGlobals):
31398 (JSC::RegisterFile::markCallFrames):
31400 (JSC::JSGlobalObject::copyGlobalsTo):
31423 (JSC::CharacterClassConstructor::put):
31424 (JSC::CharacterClassConstructor::flush):
31426 (JSC::CharacterClassConstructor::flushBeforeEscapedHyphen):
31428 (JSC::WRECGenerator::generateDisjunction):
31429 (JSC::WRECParser::parseCharacterClass):
31430 (JSC::WRECParser::parseDisjunction):
31452 (JSC::makeHostCallFramePointer):
31453 (JSC::isHostCallFrame):
31454 (JSC::stripHostCallFrameBit): Moved some things to the header so
31458 (JSC::JSGlobalObject::JSGlobalObjectData::JSGlobalObjectData): Call the
31470 (JSC::JSGlobalData::JSGlobalData):
31471 (JSC::JSGlobalData::~JSGlobalData):
31472 (JSC::JSGlobalData::ClientData::~ClientData):
31511 (JSC::EvalCodeCache::get): Provide a SourceCode to the Interpreter, since
31513 (JSC::CodeBlock::CodeBlock): ASSERT something that used to be ASSERTed
31517 (JSC::CodeGenerator::CodeGenerator): Updated for the fact that
31521 (JSC::Arguments::Arguments): ditto
31524 (JSC::DebuggerCallFrame::evaluate): Provide a SourceCode to the Parser,
31528 (JSC::constructFunction): Provide a SourceCode to the Parser, since
31533 (JSC::JSFunction::lengthGetter):
31534 (JSC::JSFunction::getParameterName): Updated for the fact that
31540 (JSC::globalFuncEval): Provide a SourceCode to the Parser, since
31544 (JSC::Parser::parse): Require a SourceCode argument, instead of a bunch
31550 (JSC::Parser::parse): Standardized the parsing interface to require a
31562 (JSC::SourceProvider::SourceProvider):
31563 (JSC::SourceProvider::url):
31564 (JSC::SourceProvider::asId):
31565 (JSC::UStringSourceProvider::create):
31566 (JSC::UStringSourceProvider::UStringSourceProvider): Added new
31570 (JSC::SourceCode::SourceCode):
31571 (JSC::SourceCode::toString):
31572 (JSC::SourceCode::provider):
31573 (JSC::SourceCode::firstLine):
31574 (JSC::SourceCode::data):
31575 (JSC::SourceCode::length): Added new responsibilities described above.
31588 (JSC::Interpreter::checkSyntax):
31589 (JSC::Interpreter::evaluate):
31593 (JSC::Lexer::setCode):
31595 (JSC::Lexer::sourceRange): Fold together the SourceProvider and line number
31600 (JSC::ScopeNode::ScopeNode):
31601 (JSC::ProgramNode::ProgramNode):
31602 (JSC::ProgramNode::create):
31603 (JSC::EvalNode::EvalNode):
31604 (JSC::EvalNode::generateCode):
31605 (JSC::EvalNode::create):
31606 (JSC::FunctionBodyNode::FunctionBodyNode):
31607 (JSC::FunctionBodyNode::finishParsing):
31608 (JSC::FunctionBodyNode::create):
31609 (JSC::FunctionBodyNode::generateCode):
31610 (JSC::ProgramNode::generateCode):
31611 (JSC::FunctionBodyNode::paramString):
31613 (JSC::ScopeNode::):
31614 (JSC::ScopeNode::sourceId):
31615 (JSC::FunctionBodyNode::):
31616 (JSC::FunctionBodyNode::parameterCount):
31617 (JSC::FuncExprNode::):
31618 (JSC::FuncDeclNode::): Store a SourceCode in all ScopeNodes, since
31645 (JSC::Arguments::mark):
31647 (JSC::Arguments::copyRegisters):
31667 (JSC::arrayProtoFuncToString): Use arrayVisitedElements set in global data rather
31669 (JSC::arrayProtoFuncToLocaleString): Ditto.
31670 (JSC::arrayProtoFuncJoin): Ditto.
31673 (JSC::JSGlobalData::JSGlobalData): Don't initialize opaqueJSClassData, since
31675 (JSC::JSGlobalData::~JSGlobalData): We still need to delete all the values, but
31722 (JSC::CTI::privateCompileMainPass):
31725 (JSC::CodeGenerator::CodeGenerator):
31727 (JSC::Machine::unwindCallFrame):
31728 (JSC::Machine::privateExecute):
31729 (JSC::Machine::retrieveArguments):
31730 (JSC::Machine::cti_op_init_arguments):
31731 (JSC::Machine::cti_op_ret_activation_arguments):
31734 (JSC::RegisterFile::):
31736 (JSC::Arguments::mark):
31737 (JSC::Arguments::fillArgList):
31738 (JSC::Arguments::getOwnPropertySlot):
31739 (JSC::Arguments::put):
31741 (JSC::Arguments::setRegisters):
31742 (JSC::Arguments::init):
31743 (JSC::Arguments::Arguments):
31744 (JSC::Arguments::copyRegisters):
31745 (JSC::JSActivation::copyRegisters):
31747 (JSC::JSActivation::argumentsGetter):
31749 (JSC::JSActivation::JSActivationData::JSActivationData):
31752 (JSC::ScopeNode::setUsesArguments):
31754 (JSC::X86Assembler::):
31755 (JSC::X86Assembler::orl_mr):
31784 (JSC::CTI::emitCall):
31785 (JSC::CTI::compileOpCall):
31786 (JSC::CTI::privateCompileMainPass):
31787 (JSC::CTI::privateCompileSlowCases):
31788 (JSC::CTI::privateCompilePutByIdTransition):
31826 (JSC::makeHostCallFramePointer): Added. Sets low bit.
31827 (JSC::isHostCallFrame): Added. Checks low bit.
31828 (JSC::stripHostCallFrameBit): Added. Clears low bit.
31829 (JSC::Machine::unwindCallFrame): Replaced null check that was
31831 (JSC::Machine::execute): Pass in a host call frame pointer rather than
31835 (JSC::Machine::privateExecute): Replaced null check that was
31837 (JSC::Machine::retrieveCaller): Ditto.
31838 (JSC::Machine::retrieveLastCaller): Ditto.
31839 (JSC::Machine::callFrame): Removed the code to walk up m_prev pointers
31857 (JSC::CodeGenerator::CodeGenerator):
31877 (JSC::InternalFunction::classInfo):
31895 (JSC::jsAddSlowCase): Make this NEVER_INLINE because somehow otherwise
31897 (JSC::jsAdd): Handle number + string special case.
31898 (JSC::Machine::cti_op_add): Integrate much of the logic of jsAdd to
31901 (JSC::expandedSize): Make this a non-member function, since it needs to be
31903 (JSC::expandCapacity): Ditto.
31904 (JSC::UString::expandCapacity): Call the non-member version.
31905 (JSC::createRep): Helper to make a rep from a char*.
31906 (JSC::UString::UString): Use above helper.
31907 (JSC::concatenate): Guts of concatenating constructor for cases where first
31909 (JSC::UString::append): Implement for cases where first item is a UString::Rep,
31925 (JSC::Machine::execute): Removed m_registerFile argument
31929 (JSC::DebuggerCallFrame::evaluate): Removed globalThisValue
31933 (JSC::ExecState::ExecState): Removed globalThisValue and
31940 (JSC::JSGlobalObject::init): Removed globalThisValue
31944 (JSC::JSGlobalObject::JSGlobalObject): Got rid of parameter
31960 (JSC::Machine::retrieveLastCaller):
32024 (JSC::depth):
32025 (JSC::Machine::unwindCallFrame):
32026 (JSC::Machine::privateExecute):
32027 (JSC::Machine::cti_op_ret_activation):
32084 (JSC::CTI::privateCompileMainPass):
32086 (JSC::CodeBlock::dump):
32088 (JSC::CodeGenerator::CodeGenerator):
32089 (JSC::CodeGenerator::registerFor):
32091 (JSC::CodeGenerator::registerFor):
32093 (JSC::Machine::initializeCallFrame):
32094 (JSC::Machine::dumpRegisters):
32095 (JSC::Machine::privateExecute):
32096 (JSC::Machine::retrieveArguments):
32097 (JSC::Machine::cti_op_call_JSFunction):
32098 (JSC::Machine::cti_op_create_arguments):
32099 (JSC::Machine::cti_op_construct_JSConstruct):
32103 (JSC::RegisterFile::):
32105 (JSC::JSActivation::mark):
32106 (JSC::JSActivation::argumentsGetter):
32108 (JSC::JSActivation::JSActivationData::JSActivationData):
32111 (JSC::Parser::didFinishParsing):
32113 (JSC::Parser::parse):
32116 (JSC::ScopeNode::ScopeNode):
32117 (JSC::ProgramNode::ProgramNode):
32118 (JSC::ProgramNode::create):
32119 (JSC::EvalNode::EvalNode):
32120 (JSC::EvalNode::create):
32121 (JSC::FunctionBodyNode::FunctionBodyNode):
32122 (JSC::FunctionBodyNode::create):
32124 (JSC::ScopeNode::usesArguments):
32140 (JSC::stringProtoFuncToLowerCase):
32141 (JSC::stringProtoFuncToUpperCase):
32153 (JSC::parseInt):
32154 (JSC::parseFloat):
32182 (JSC::):
32215 (JSC::CTI::compileOpCall): The speedup!
32216 (JSC::CTI::privateCompileSlowCases): ditto
32219 (JSC::): Fixed up magic trampoline constants to account for the nixed
32221 (JSC::CTI::execute): Changed trampoline function not to take a "codeBlock"
32260 (JSC::EvalNode::generateCode):
32261 (JSC::FunctionBodyNode::generateCode):
32262 (JSC::ProgramNode::generateCode):
32275 (JSC::JSObject::deleteProperty):
32276 (JSC::JSObject::getPropertyAttributes):
32278 (JSC::MathObject::getOwnPropertySlot):
32280 (JSC::numberConstructorNaNValue):
32281 (JSC::numberConstructorNegInfinity):
32282 (JSC::numberConstructorPosInfinity):
32283 (JSC::numberConstructorMaxValue):
32284 (JSC::numberConstructorMinValue):
32286 (JSC::PropertySlot::):
32288 (JSC::regExpConstructorDollar1):
32289 (JSC::regExpConstructorDollar2):
32290 (JSC::regExpConstructorDollar3):
32291 (JSC::regExpConstructorDollar4):
32292 (JSC::regExpConstructorDollar5):
32293 (JSC::regExpConstructorDollar6):
32294 (JSC::regExpConstructorDollar7):
32295 (JSC::regExpConstructorDollar8):
32296 (JSC::regExpConstructorDollar9):
32297 (JSC::regExpConstructorInput):
32298 (JSC::regExpConstructorMultiline):
32299 (JSC::regExpConstructorLastMatch):
32300 (JSC::regExpConstructorLastParen):
32301 (JSC::regExpConstructorLeftContext):
32302 (JSC::regExpConstructorRightContext):
32303 (JSC::setRegExpConstructorInput):
32304 (JSC::setRegExpConstructorMultiline):
32305 (JSC::RegExpConstructor::setInput):
32306 (JSC::RegExpConstructor::setMultiline):
32307 (JSC::RegExpConstructor::multiline):
32310 (JSC::regExpObjectGlobal):
32311 (JSC::regExpObjectIgnoreCase):
32312 (JSC::regExpObjectMultiline):
32313 (JSC::regExpObjectSource):
32314 (JSC::regExpObjectLastIndex):
32315 (JSC::setRegExpObjectLastIndex):
32317 (JSC::RegExpObject::setLastIndex):
32318 (JSC::RegExpObject::lastIndex):
32319 (JSC::RegExpObject::RegExpObjectData::RegExpObjectData):
32321 (JSC::StructureID::getEnumerablePropertyNames):
32324 (JSC::Lexer::lex):
32326 (JSC::HashTable::createTable):
32327 (JSC::HashTable::deleteTable):
32328 (JSC::setUpStaticFunctionSlot):
32330 (JSC::HashEntry::initialize):
32331 (JSC::HashEntry::setKey):
32332 (JSC::HashEntry::key):
32333 (JSC::HashEntry::attributes):
32334 (JSC::HashEntry::function):
32335 (JSC::HashEntry::functionLength):
32336 (JSC::HashEntry::propertyGetter):
32337 (JSC::HashEntry::propertyPutter):
32338 (JSC::HashEntry::lexerValue):
32339 (JSC::HashEntry::):
32340 (JSC::HashTable::entry):
32341 (JSC::getStaticPropertySlot):
32342 (JSC::getStaticValueSlot):
32343 (JSC::lookupPut):
32356 This patch changes three areas of JSC:
32418 (JSC::CTI::privateCompileMainPass): Added support for op_init_activation,
32421 (JSC::CTI::privateCompile): Removed previous code that did a similar
32425 (JSC::CodeBlock::dump): Added a case for dumping op_init_activation.
32428 (JSC::CodeGenerator::generate): Added fixup code to change op_init to
32433 (JSC::Instruction::Instruction):
32439 (JSC::Machine::execute): Removed clients of setScopeChain, the old
32442 (JSC::Machine::privateExecute): ditto
32444 (JSC::Machine::cti_op_push_activation): Renamed this function from
32463 (JSC::CTI::compileOpCall):
32464 (JSC::CTI::privateCompileMainPass):
32465 (JSC::CTI::privateCompileSlowCases):
32488 (JSC::CTI::privateCompileMainPass):
32489 (JSC::CTI::privateCompileSlowCases):
32491 (JSC::Machine::privateExecute):
32492 (JSC::Machine::cti_op_eq):
32493 (JSC::Machine::cti_op_neq):
32495 (JSC::equal):
32496 (JSC::equalSlowCase):
32498 (JSC::equalSlowCaseInline):
32511 (JSC::functionProtoFuncApply): Revert to the slow case if the object inherits from
32519 (JSC::statementListEmitCode):
32535 (JSC::statementListEmitCode): We don't want to blindly emit a debug hook
32537 (JSC::DoWhileNode::emitCode):
32538 (JSC::WhileNode::emitCode):
32539 (JSC::ForNode::emitCode):
32540 (JSC::ForInNode::emitCode):
32542 (JSC::StatementNode::):
32543 (JSC::DoWhileNode::):
32544 (JSC::WhileNode::):
32545 (JSC::ForInNode::):
32591 (JSC::JSActivation::copyRegisters): Moved here. Also removed the registerArraySize
32596 (JSC::JSGlobalObject::reset): Removed unnecessary clearing left over from when we
32611 (JSC::JSVariableObject::copyRegisterArray): Moved here ot make it inline.
32612 (JSC::JSVariableObject::setRegisters): Moved here to make it inline. Also
32628 (JSC::PropertyMap::getOffset):
32665 (JSC::Machine::Machine):
32670 (JSC::Machine::stopTimeoutCheck):
32674 (JSC::JSGlobalObject::init):
32694 (JSC::Machine::execute):
32703 (JSC::stringProtoFuncReplace):
32712 (JSC::CTI::compileOpCall):
32713 (JSC::CTI::privateCompileMainPass):
32751 (JSC::CTI::isConstant):
32752 (JSC::CTI::getConstant):
32753 (JSC::CTI::emitGetArg):
32754 (JSC::CTI::emitGetPutArg):
32755 (JSC::CTI::getConstantImmediateNumericArg):
32758 (JSC::CTI::emitPutToCallFrameHeader):
32759 (JSC::CTI::emitGetFromCallFrameHeader):
32760 (JSC::CTI::printOpcodeOperandTypes):
32763 (JSC::CTI::emitInitRegister):
32767 (JSC::CTI::emitCall):
32771 (JSC::CTI::compileOpCall):
32772 (JSC::CTI::privateCompileMainPass):
32773 (JSC::CTI::privateCompileSlowCases):
32774 (JSC::CTI::privateCompile):
32779 (JSC::CallRecord::CallRecord):
32784 (JSC::registerName):
32785 (JSC::CodeBlock::dump):
32791 (JSC::CodeBlock::CodeBlock):
32792 (JSC::CodeBlock::getStubInfo):
32801 (JSC::CodeGenerator::generate):
32802 (JSC::CodeGenerator::addVar):
32803 (JSC::CodeGenerator::addGlobalVar):
32804 (JSC::CodeGenerator::allocateConstants):
32805 (JSC::CodeGenerator::CodeGenerator):
32806 (JSC::CodeGenerator::addParameter):
32807 (JSC::CodeGenerator::registerFor):
32808 (JSC::CodeGenerator::constRegisterFor):
32809 (JSC::CodeGenerator::newRegister):
32810 (JSC::CodeGenerator::newTemporary):
32811 (JSC::CodeGenerator::highestUsedRegister):
32812 (JSC::CodeGenerator::addConstant):
32816 (JSC::CodeGenerator::emitCall):
32817 (JSC::CodeGenerator::emitConstruct):
32823 (JSC::CodeGenerator::registerFor):
32830 (JSC::vPCForPC):
32833 (JSC::Machine::initializeCallFrame):
32836 (JSC::slideRegisterWindowForCall):
32839 (JSC::scopeChainForCall):
32840 (JSC::Machine::callEval):
32841 (JSC::Machine::dumpRegisters):
32842 (JSC::Machine::unwindCallFrame):
32843 (JSC::Machine::execute):
32846 (JSC::Machine::privateExecute):
32849 (JSC::Machine::retrieveArguments):
32850 (JSC::Machine::retrieveCaller):
32851 (JSC::Machine::retrieveLastCaller):
32852 (JSC::Machine::callFrame):
32853 (JSC::Machine::getArgumentsData):
32856 (JSC::Machine::cti_op_call_JSFunction):
32857 (JSC::Machine::cti_op_call_NotJSFunction):
32858 (JSC::Machine::cti_op_ret_activation):
32859 (JSC::Machine::cti_op_ret_profiler):
32860 (JSC::Machine::cti_op_construct_JSConstruct):
32861 (JSC::Machine::cti_op_construct_NotJSConstruct):
32862 (JSC::Machine::cti_op_call_eval):
32875 (JSC::RegisterFile::):
32881 (JSC::RegisterID::RegisterID):
32882 (JSC::RegisterID::setTemporary):
32883 (JSC::RegisterID::isTemporary):
32889 (JSC::ArgumentsData::ArgumentsData):
32890 (JSC::Arguments::Arguments):
32891 (JSC::Arguments::fillArgList):
32892 (JSC::Arguments::getOwnPropertySlot):
32893 (JSC::Arguments::put):
32897 (JSC::DebuggerCallFrame::functionName):
32898 (JSC::DebuggerCallFrame::type):
32906 (JSC::JSActivation::mark):
32907 (JSC::JSActivation::copyRegisters):
32908 (JSC::JSActivation::createArgumentsObject):
32914 (JSC::JSGlobalObject::reset):
32915 (JSC::JSGlobalObject::mark):
32916 (JSC::JSGlobalObject::copyGlobalsFrom):
32917 (JSC::JSGlobalObject::copyGlobalsTo):
32919 (JSC::JSGlobalObject::addStaticGlobals):
32924 (JSC::JSStaticScopeObject::mark):
32925 (JSC::JSStaticScopeObject::~JSStaticScopeObject):
32927 (JSC::JSStaticScopeObject::JSStaticScopeObject):
32928 (JSC::JSStaticScopeObject::d):
32933 (JSC::JSVariableObject::copyRegisterArray):
32934 (JSC::JSVariableObject::setRegisters):
32940 (JSC::SymbolTableEntry::SymbolTableEntry):
32941 (JSC::SymbolTableEntry::isNull):
32942 (JSC::SymbolTableEntry::getIndex):
32943 (JSC::SymbolTableEntry::getAttributes):
32944 (JSC::SymbolTableEntry::setAttributes):
32945 (JSC::SymbolTableEntry::isReadOnly):
32946 (JSC::SymbolTableEntry::pack):
32947 (JSC::SymbolTableEntry::isValidIndex):
32953 (JSC::ResolveNode::emitCode):
32954 (JSC::NewExprNode::emitCode):
32955 (JSC::EvalFunctionCallNode::emitCode):
32956 (JSC::FunctionCallValueNode::emitCode):
32957 (JSC::FunctionCallResolveNode::emitCode):
32958 (JSC::FunctionCallBracketNode::emitCode):
32959 (JSC::FunctionCallDotNode::emitCode):
32960 (JSC::PostfixResolveNode::emitCode):
32961 (JSC::DeleteResolveNode::emitCode):
32962 (JSC::TypeOfResolveNode::emitCode):
32963 (JSC::PrefixResolveNode::emitCode):
32964 (JSC::ReadModifyResolveNode::emitCode):
32965 (JSC::AssignResolveNode::emitCode):
32966 (JSC::ConstDeclNode::emitCodeSingle):
32967 (JSC::ForInNode::emitCode):
32972 (JSC::X86Assembler::emitCall):
32990 (JSC::statementListEmitCode):
32992 (JSC::StatementNode::isDoWhile):
32993 (JSC::DoWhileNode::isDoWhile):
33005 (JSC::CTI::privateCompileMainPass):
33006 (JSC::CTI::privateCompileSlowCases):
33008 (JSC::Machine::cti_op_instanceof):
33017 (JSC::CTI::privateCompileSlowCases):
33028 (JSC::CTI::compileOpStrictEq): Factored stricteq codegen into this function,
33030 (JSC::CTI::privateCompileMainPass): Use the above for stricteq and nstricteq.
33032 (JSC::CTI::): Declare above stuff.
33034 (JSC::Machine::cti_op_nstricteq): Removed fast cases, now handled inline.
33051 (JSC::ArgumentsData::ArgumentsData):
33052 (JSC::Arguments::Arguments):
33053 (JSC::Arguments::mark):
33054 (JSC::Arguments::getOwnPropertySlot):
33055 (JSC::Arguments::put):
33056 (JSC::Arguments::deleteProperty):
33079 (JSC::JSCallbackObject::createStructureID):
33082 (JSC::Machine::cti_op_instanceof):
33084 (JSC::JSImmediate::isAnyImmediate):
33086 (JSC::TypeInfo::overridesHasInstance):
33087 (JSC::TypeInfo::flags):
33099 (JSC::FunctionBodyNode::FunctionBodyNode): Initialize m_refCount to 0.
33101 (JSC::FunctionBodyNode::ref): Call base class ref once, and thereafter use
33103 (JSC::FunctionBodyNode::deref): Ditto, but the deref side.
33110 (JSC::Arguments::fillArgList): Fix bad copy and paste. Oops!
33122 (JSC::ArgumentsData::ArgumentsData): Use a fixed buffer if there are 4 or fewer
33124 (JSC::Arguments::Arguments): Use a fixed buffer if there are 4 or fewer
33126 (JSC::Arguments::~Arguments): Delete the buffer if necessary.
33127 (JSC::Arguments::mark): Update since extraArguments are now Register.
33128 (JSC::Arguments::fillArgList): Added special case for the only case that's
33131 (JSC::Arguments::getOwnPropertySlot): Updated to use setValueSlot since there's
33144 (JSC::JSPropertyNameIterator::invalidate):
33146 (JSC::JSPropertyNameIterator::next):
33148 (JSC::PropertyNameArrayData::begin):
33149 (JSC::PropertyNameArrayData::end):
33150 (JSC::PropertyNameArrayData::setCachedStructureID):
33151 (JSC::PropertyNameArrayData::cachedStructureID):
33153 (JSC::StructureID::getEnumerablePropertyNames):
33154 (JSC::structureIDChainsAreEqual):
33213 (JSC::Arguments::fillArgList):
33216 (JSC::functionProtoFuncApply):
33218 (JSC::JSArray::fillArgList):
33231 (JSC::arrayProtoFuncPop): Call JSArray::pop when appropriate.
33232 (JSC::arrayProtoFuncPush): Call JSArray::push when appropriate.
33235 (JSC::JSArray::putSlowCase): Set m_fastAccessCutoff when appropriate, getting
33237 (JSC::JSArray::pop): Added.
33238 (JSC::JSArray::push): Added.
33242 (JSC::throwOutOfMemoryError): Don't inline this. Helps us avoid PIC branches.
33256 (JSC::JSCallbackConstructor::createStructureID):
33259 (JSC::JSCallbackFunction::createStructureID):
33261 (JSC::JSCallbackObject::createStructureID):
33263 (JSC::::hasInstance):
33268 (JSC::Machine::privateExecute):
33269 (JSC::Machine::cti_op_instanceof):
33272 (JSC::InternalFunction::createStructureID):
33276 (JSC::TypeInfo::implementsHasInstance):
33292 (JSC::CTI::privateCompileMainPass):
33294 (JSC::jsTypeStringForValue):
33295 (JSC::jsIsObjectType):
33296 (JSC::Machine::privateExecute):
33297 (JSC::Machine::cti_op_is_undefined):
33302 (JSC::StringObjectThatMasqueradesAsUndefined::create):
33303 (JSC::StringObjectThatMasqueradesAsUndefined::createStructureID):
33305 (JSC::StructureID::mutableTypeInfo):
33307 (JSC::TypeInfo::TypeInfo):
33308 (JSC::TypeInfo::masqueradesAsUndefined):
33310 (JSC::equal):
33312 (JSC::X86Assembler::):
33313 (JSC::X86Assembler::setne_r):
33314 (JSC::X86Assembler::setnz_r):
33315 (JSC::X86Assembler::testl_i32m):
33342 (JSC::StructureID::addPropertyTransition): Use typeInfo().type() instead of m_type.
33343 (JSC::StructureID::createCachedPrototypeChain): Ditto.
33355 (JSC::CTI::privateCompileMainPass):
33356 (JSC::CTI::privateCompilePutByIdTransition):
33358 (JSC::jsIsObjectType):
33359 (JSC::Machine::Machine):
33362 (JSC::JSCell::isObject):
33363 (JSC::JSCell::isString):
33365 (JSC::JSGlobalData::JSGlobalData):
33367 (JSC::JSGlobalObject::reset):
33369 (JSC::StructureID::prototypeForLookup):
33371 (JSC::JSNumberCell::createStructureID):
33373 (JSC::JSObject::createInheritorID):
33375 (JSC::JSObject::createStructureID):
33377 (JSC::JSString::createStructureID):
33379 (JSC::NativeErrorConstructor::NativeErrorConstructor):
33382 (JSC::RegExpMatchesArray::getOwnPropertySlot):
33383 (JSC::RegExpMatchesArray::put):
33384 (JSC::RegExpMatchesArray::deleteProperty):
33385 (JSC::RegExpMatchesArray::getPropertyNames):
33387 (JSC::StructureID::StructureID):
33388 (JSC::StructureID::addPropertyTransition):
33389 (JSC::StructureID::toDictionaryTransition):
33390 (JSC::StructureID::changePrototypeTransition):
33391 (JSC::StructureID::getterSetterTransition):
33393 (JSC::StructureID::create):
33394 (JSC::StructureID::typeInfo):
33396 (JSC::TypeInfo::TypeInfo):
33397 (JSC::TypeInfo::type):
33406 (JSC::Arguments::Arguments): Fix window where mark() function could
33408 (JSC::Arguments::mark): Check d->extraArguments for 0 to handle two
33417 (JSC::CodeGenerator::emitLoad): Add a special case for values the
33433 (JSC::Arguments::deleteProperty): Added the accidentally-omitted
33447 (JSC::CTI::privateCompileMainPass): Added op_eq.
33448 (JSC::CTI::privateCompileSlowCases): Added op_eq.
33451 (JSC::Machine::cti_op_eq): Removed fast case, since it's now
33485 (JSC::Arguments::Arguments): Pass in argument count instead of ArgList.
33487 (JSC::Arguments::mark): Updated.
33488 (JSC::Arguments::getOwnPropertySlot): Overload for the integer form so
33491 (JSC::Arguments::put): Ditto.
33492 (JSC::Arguments::deleteProperty): Ditto.
33502 (JSC::JSActivation::createArgumentsObject): Elminated ArgList.
33515 (JSC::CodeGenerator::emitLoad): One more tweak: Wrote this in a slightly
33528 (JSC::CodeGenerator::emitLoad): Use m_numberMap and m_stringMap to guarantee
33533 (JSC::StringNode::emitCode): Call the new emitLoad and let it do the
33574 (JSC::CTI::emitJumpSlowCaseIfNotImmediateNumber):
33575 (JSC::CTI::emitJumpSlowCaseIfNotImmediateNumbers):
33576 (JSC::CTI::emitJumpSlowCaseIfNotImmediates):
33577 (JSC::CTI::emitTagAsBoolImmediate):
33578 (JSC::CTI::privateCompileMainPass):
33579 (JSC::CTI::privateCompileSlowCases):
33582 (JSC::Machine::cti_op_stricteq):
33584 (JSC::X86Assembler::):
33585 (JSC::X86Assembler::sete_r):
33586 (JSC::X86Assembler::setz_r):
33587 (JSC::X86Assembler::movzbl_rr):
33588 (JSC::X86Assembler::emitUnlinkedJnz):
33598 (JSC::Arguments::~Arguments):
33619 (JSC::Arguments::Arguments):
33620 (JSC::Arguments::mark):
33621 (JSC::Arguments::getOwnPropertySlot):
33622 (JSC::Arguments::put):
33623 (JSC::Arguments::deleteProperty):
33625 (JSC::Arguments::ArgumentsData::ArgumentsData):
33627 (JSC::IndexToNameMap::size):
33629 (JSC::JSActivation::createArgumentsObject):
33631 (JSC::JSActivation::uncheckedSymbolTableGet):
33632 (JSC::JSActivation::uncheckedSymbolTableGetValue):
33633 (JSC::JSActivation::uncheckedSymbolTablePut):
33635 (JSC::JSFunction::numParameters):
33644 (JSC::JSGlobalObject::mark): Add back mark of arrayPrototype,
33665 (JSC::Machine::cti_op_stricteq): Use inline version of
33667 (JSC::Machine::cti_op_nstricteq): ditto
33669 (JSC::strictEqual): Use strictEqualSlowCaseInline
33670 (JSC::strictEqualSlowCase): ditto
33672 (JSC::strictEqualSlowCaseInline): Version of strictEqualSlowCase that can be inlined,
33680 make each distinct C++ class get a distinct JSC::Structure
33686 (JSC::JSCallbackConstructor::JSCallbackConstructor): Take a structure.
33689 (JSC::JSCallbackFunction::JSCallbackFunction): Pass a structure.
33692 (JSC::JSCallbackObject::JSCallbackObject): Ditto.
33704 (JSC::jsLess): Added a special case for when both arguments are strings.
33706 (JSC::jsLessEq): Ditto.
33707 (JSC::Machine::privateExecute): Pass in a structure.
33708 (JSC::Machine::cti_op_construct_JSConstruct): Ditto.
33709 (JSC::Machine::cti_op_new_regexp): Ditto.
33710 (JSC::Machine::cti_op_is_string): Ditto.
33714 (JSC::Arguments::Arguments): Pass in a structure.
33719 (JSC::markIfNeeded): Added an overload for marking structures.
33720 (JSC::JSGlobalObject::reset): Eliminate code to set data members to
33724 (JSC::JSGlobalObject::mark): Mark the structures.
33732 (JSC::JSImmediate::nonInlineNaN): Added.
33734 (JSC::JSImmediate::toDouble): Rewrote to avoid PIC branches.
33737 (JSC::jsNumberCell): Made non-inline to avoid PIC branches
33739 (JSC::jsNaN): Ditto.
33746 (JSC::ArrayConstructor::ArrayConstructor):
33747 (JSC::constructArrayWithSizeQuirk):
33750 (JSC::ArrayPrototype::ArrayPrototype):
33753 (JSC::BooleanConstructor::BooleanConstructor):
33754 (JSC::constructBoolean):
33755 (JSC::constructBooleanFromImmediateBoolean):
33758 (JSC::BooleanObject::BooleanObject):
33761 (JSC::BooleanPrototype::BooleanPrototype):
33764 (JSC::DateConstructor::DateConstructor):
33765 (JSC::constructDate):
33768 (JSC::DateInstance::DateInstance):
33771 (JSC::DatePrototype::DatePrototype):
33774 (JSC::ErrorConstructor::ErrorConstructor):
33775 (JSC::constructError):
33778 (JSC::ErrorInstance::ErrorInstance):
33781 (JSC::ErrorPrototype::ErrorPrototype):
33784 (JSC::FunctionConstructor::FunctionConstructor):
33787 (JSC::FunctionPrototype::FunctionPrototype):
33788 (JSC::FunctionPrototype::addFunctionProperties):
33791 (JSC::GlobalEvalFunction::GlobalEvalFunction):
33794 (JSC::InternalFunction::InternalFunction):
33796 (JSC::InternalFunction::InternalFunction):
33798 (JSC::JSArray::JSArray):
33799 (JSC::constructEmptyArray):
33800 (JSC::constructArray):
33803 (JSC::JSFunction::JSFunction):
33804 (JSC::JSFunction::construct):
33806 (JSC::constructEmptyObject):
33808 (JSC::StringObject::create):
33811 (JSC::MathObject::MathObject):
33814 (JSC::NativeErrorConstructor::NativeErrorConstructor):
33815 (JSC::NativeErrorConstructor::construct):
33818 (JSC::NativeErrorPrototype::NativeErrorPrototype):
33821 (JSC::NumberConstructor::NumberConstructor):
33822 (JSC::constructWithNumberConstructor):
33825 (JSC::NumberObject::NumberObject):
33826 (JSC::constructNumber):
33827 (JSC::constructNumberFromImmediateNumber):
33830 (JSC::NumberPrototype::NumberPrototype):
33833 (JSC::ObjectConstructor::ObjectConstructor):
33834 (JSC::constructObject):
33837 (JSC::ObjectPrototype::ObjectPrototype):
33840 (JSC::PrototypeFunction::PrototypeFunction):
33843 (JSC::RegExpConstructor::RegExpConstructor):
33844 (JSC::RegExpMatchesArray::RegExpMatchesArray):
33845 (JSC::constructRegExp):
33848 (JSC::RegExpObject::RegExpObject):
33851 (JSC::RegExpPrototype::RegExpPrototype):
33856 (JSC::StringConstructor::StringConstructor):
33857 (JSC::constructWithStringConstructor):
33860 (JSC::StringObject::StringObject):
33863 (JSC::StringObjectThatMasqueradesAsUndefined::StringObjectThatMasqueradesAsUndefined):
33865 (JSC::StringPrototype::StringPrototype):
33882 (JSC::JSPropertyNameIterator::~JSPropertyNameIterator):
33883 (JSC::JSPropertyNameIterator::invalidate):
33885 (JSC::JSPropertyNameIterator::JSPropertyNameIterator):
33886 (JSC::JSPropertyNameIterator::create):
33888 (JSC::JSObject::getPropertyNames):
33890 (JSC::PropertyMap::getEnumerablePropertyNames):
33893 (JSC::PropertyNameArray::add):
33895 (JSC::PropertyNameArrayData::create):
33896 (JSC::PropertyNameArrayData::propertyNameVector):
33897 (JSC::PropertyNameArrayData::setCachedPrototypeChain):
33898 (JSC::PropertyNameArrayData::cachedPrototypeChain):
33899 (JSC::PropertyNameArrayData::begin):
33900 (JSC::PropertyNameArrayData::end):
33901 (JSC::PropertyNameArrayData::PropertyNameArrayData):
33902 (JSC::PropertyNameArray::PropertyNameArray):
33903 (JSC::PropertyNameArray::addKnownUnique):
33904 (JSC::PropertyNameArray::size):
33905 (JSC::PropertyNameArray::operator[]):
33906 (JSC::PropertyNameArray::begin):
33907 (JSC::PropertyNameArray::end):
33908 (JSC::PropertyNameArray::setData):
33909 (JSC::PropertyNameArray::data):
33910 (JSC::PropertyNameArray::releaseData):
33912 (JSC::structureIDChainsAreEqual):
33913 (JSC::StructureID::getEnumerablePropertyNames):
33914 (JSC::StructureID::clearEnumerationCache):
33915 (JSC::StructureID::createCachedPrototypeChain):
33924 (JSC::JSPropertyNameIterator::~JSPropertyNameIterator):
33925 (JSC::JSPropertyNameIterator::invalidate):
33927 (JSC::JSPropertyNameIterator::JSPropertyNameIterator):
33928 (JSC::JSPropertyNameIterator::create):
33930 (JSC::JSObject::getPropertyNames):
33932 (JSC::PropertyMap::getEnumerablePropertyNames):
33935 (JSC::PropertyNameArray::add):
33937 (JSC::PropertyNameArray::PropertyNameArray):
33938 (JSC::PropertyNameArray::addKnownUnique):
33939 (JSC::PropertyNameArray::begin):
33940 (JSC::PropertyNameArray::end):
33941 (JSC::PropertyNameArray::size):
33942 (JSC::PropertyNameArray::operator[]):
33943 (JSC::PropertyNameArray::releaseIdentifiers):
33945 (JSC::StructureID::getEnumerablePropertyNames):
33947 (JSC::StructureID::clearEnumerationCache):
33964 (JSC::CTI::emitInitialiseRegister):
33965 (JSC::CTI::privateCompileMainPass):
33968 (JSC::CodeBlock::dump):
33970 (JSC::CodeGenerator::CodeGenerator):
33972 (JSC::slideRegisterWindowForCall):
33973 (JSC::Machine::privateExecute):
33987 (JSC::JSPropertyNameIterator::~JSPropertyNameIterator):
33988 (JSC::JSPropertyNameIterator::invalidate):
33990 (JSC::JSPropertyNameIterator::JSPropertyNameIterator):
33991 (JSC::JSPropertyNameIterator::create):
33993 (JSC::JSObject::getPropertyNames):
33995 (JSC::PropertyMap::getEnumerablePropertyNames):
33998 (JSC::PropertyNameArray::add):
34000 (JSC::PropertyNameArrayData::create):
34001 (JSC::PropertyNameArrayData::propertyNameVector):
34002 (JSC::PropertyNameArrayData::setCachedPrototypeChain):
34003 (JSC::PropertyNameArrayData::cachedPrototypeChain):
34004 (JSC::PropertyNameArrayData::begin):
34005 (JSC::PropertyNameArrayData::end):
34006 (JSC::PropertyNameArrayData::PropertyNameArrayData):
34007 (JSC::PropertyNameArray::PropertyNameArray):
34008 (JSC::PropertyNameArray::addKnownUnique):
34009 (JSC::PropertyNameArray::size):
34010 (JSC::PropertyNameArray::operator[]):
34011 (JSC::PropertyNameArray::begin):
34012 (JSC::PropertyNameArray::end):
34013 (JSC::PropertyNameArray::setData):
34014 (JSC::PropertyNameArray::data):
34015 (JSC::PropertyNameArray::releaseData):
34017 (JSC::ScopeChainNode::print):
34019 (JSC::structureIDChainsAreEqual):
34020 (JSC::StructureID::getEnumerablePropertyNames):
34021 (JSC::StructureID::clearEnumerationCache):
34022 (JSC::StructureID::createCachedPrototypeChain):
34032 (JSC::JSObject::allocatePropertyStorage): Spotted by valgrind.
34039 make each distinct C++ class get a distinct JSC::Structure
34082 make each distinct C++ class get a distinct JSC::Structure
34099 (JSC::Lexer::lex): Use makeIdentifier instead of makeUString for String.
34105 (JSC::keyForCharacterSwitch): Updated since StringNode now holds an Identifier.
34106 (JSC::prepareJumpTableForStringSwitch): Ditto.
34108 (JSC::StringNode::emitCode): Ditto. The comment from here is now in the lexer.
34109 (JSC::processClauseList): Ditto.
34111 (JSC::StringNode::streamTo): Ditto.
34118 (JSC::Instruction::Instruction):
34131 (JSC::Instruction::Instruction):
34153 needed for future WebCore use of JSC::StructureID.
34208 (JSC::CTI::privateCompileSlowCases):
34209 (JSC::CTI::privateCompile):
34227 (JSC::CodeGenerator::emitConstruct):
34230 (JSC::createInvalidParamError):
34231 (JSC::createNotAConstructorError):
34232 (JSC::createNotAnObjectError):
34235 (JSC::Machine::getOpcode):
34236 (JSC::Machine::privateExecute):
34239 (JSC::NewExprNode::emitCode):
34240 (JSC::InstanceOfNode::emitCode):
34252 (JSC::CTI::privateCompileMainPass):
34276 (JSC::highResUpTime):
34277 (JSC::lowResUTCTime):
34278 (JSC::qpcAvailable):
34279 (JSC::getCurrentUTCTimeWithMicroseconds):
34290 (JSC::CTI::compileOpCall):
34292 (JSC::Machine::cti_op_call_JSFunction):
34293 (JSC::Machine::cti_op_call_NotJSFunction):
34306 (JSC::CTI::compileOpCall):
34307 (JSC::CTI::privateCompileSlowCases):
34308 (JSC::CTI::privateCompile):
34310 (JSC::Machine::execute):
34311 (JSC::Machine::cti_op_call_JSFunction):
34312 (JSC::Machine::cti_vm_compile):
34313 (JSC::Machine::cti_vm_updateScopeChain):
34314 (JSC::Machine::cti_op_construct_JSConstruct):
34340 (JSC::CodeGenerator::emitConstruct):
34342 (JSC::NewExprNode::emitCode):
34349 (JSC::CTI::privateCompileMainPass):
34365 (JSC::CTI::emitPutCTIParam):
34366 (JSC::CTI::compileOpCall):
34367 (JSC::CTI::privateCompileMainPass):
34370 (JSC::Machine::cti_op_ret_activation):
34371 (JSC::Machine::cti_op_ret_profiler):
34372 (JSC::Machine::cti_op_ret_scopeChain):
34382 (JSC::Machine::privateExecute):
34383 (JSC::Machine::cti_op_stricteq):
34384 (JSC::Machine::cti_op_nstricteq):
34386 (JSC::strictEqual):
34397 (JSC::Machine::privateExecute):
34398 (JSC::Machine::cti_op_stricteq):
34399 (JSC::Machine::cti_op_nstricteq):
34401 (JSC::JSImmediate::areBothImmediate):
34403 (JSC::strictEqual):
34404 (JSC::strictEqualSlowCase):
34414 (JSC::Machine::privateExecute):
34431 (JSC::CTI::privateCompileMainPass):
34434 (JSC::CodeBlock::dump):
34436 (JSC::CodeGenerator::findScopedProperty):
34437 (JSC::CodeGenerator::emitResolve):
34439 (JSC::resolveGlobal):
34440 (JSC::Machine::privateExecute):
34441 (JSC::Machine::cti_op_resolve_global):
34450 (JSC::CTI::privateCompileMainPass):
34451 (JSC::CTI::privateCompileSlowCases):
34454 (JSC::Machine::Machine):
34455 (JSC::Machine::cti_op_eq_null):
34456 (JSC::Machine::cti_op_neq_null):
34458 (JSC::Machine::isJSString):
34473 the CTI case. This caused a JSC test failure. Correcting the argument
34477 (JSC::Machine::cti_op_construct_JSConstruct):
34495 (JSC::Machine::privateExecute): Set up baseObject before entering the
34511 (JSC::CTI::privateCompileMainPass): Codegen for the new opcode.
34514 (JSC::CodeBlock::dump):
34517 (JSC::CodeGenerator::emitCall): ... don't test for known non-zero value.
34518 (JSC::CodeGenerator::emitConstruct): ... ditto.
34521 (JSC::Machine::privateExecute): Implementation for the new opcode.
34522 (JSC::Machine::cti_op_ret): The speedup: no need to check whether we were
34524 (JSC::Machine::cti_op_construct_verify): Implementation for the new opcode.
34530 (JSC::RegisterFile::): No more CalledAsConstructor
34544 (JSC::CTI::emitJumpSlowCaseIfIsJSCell):
34545 (JSC::CTI::privateCompileMainPass):
34546 (JSC::CTI::privateCompileSlowCases):
34549 (JSC::Machine::Machine):
34550 (JSC::Machine::cti_op_eq_null):
34551 (JSC::Machine::cti_op_neq_null):
34553 (JSC::Machine::doesMasqueradesAsUndefined):
34555 (JSC::JSWrapperObject::):
34556 (JSC::JSWrapperObject::JSWrapperObject):
34558 (JSC::StringObject::StringObject):
34560 (JSC::StringObjectThatMasqueradesAsUndefined::StringObjectThatMasqueradesAsUndefined):
34572 (JSC::CodeBlock::dump):
34588 (JSC::Machine::cti_op_construct_NotJSConstruct):
34599 (JSC::JSObject::removeDirect): Clear enumeration cache
34602 (JSC::JSObject::putDirect): Ditto.
34604 (JSC::StructureID::clearEnumerationCache): Inline to handle the
34611 - fix JSC test failures introduced by fix for 20849
34614 (JSC::PropertyMap::getEnumerablePropertyNames): Use the correct count.
34630 (JSC::globalFuncParseInt):
34643 (JSC::JSObject::getPropertyNames):
34645 (JSC::PropertyMap::getEnumerablePropertyNames):
34648 (JSC::StructureID::StructureID):
34649 (JSC::StructureID::getEnumerablePropertyNames):
34662 (JSC::CTI::compileOpCall): Account for extra arg for prototype.
34663 (JSC::CTI::privateCompileMainPass): Account for increased size of op_construct.
34665 (JSC::CodeGenerator::emitConstruct): Emit separate lookup to get prototype property.
34667 (JSC::Machine::privateExecute): Expect prototype arg in op_construct.
34668 (JSC::Machine::cti_op_construct_JSConstruct): ditto
34669 (JSC::Machine::cti_op_construct_NotJSConstruct): ditto
34710 (JSC::CTI::emitCall):
34711 (JSC::CTI::emitJumpSlowCaseIfNotJSCell):
34712 (JSC::CTI::CTI):
34713 (JSC::CTI::privateCompileMainPass):
34714 (JSC::CTI::privateCompileSlowCases):
34715 (JSC::CTI::privateCompile):
34716 (JSC::CTI::privateCompileGetByIdSelf):
34717 (JSC::CTI::privateCompileGetByIdProto):
34718 (JSC::CTI::privateCompileGetByIdChain):
34719 (JSC::CTI::privateCompilePutByIdReplace):
34720 (JSC::CTI::privateCompilePutByIdTransition):
34721 (JSC::CTI::privateCompileArrayLengthTrampoline):
34722 (JSC::CTI::privateCompileStringLengthTrampoline):
34723 (JSC::CTI::patchGetByIdSelf):
34724 (JSC::CTI::patchPutByIdReplace):
34725 (JSC::CTI::privateCompilePatchGetArrayLength):
34726 (JSC::CTI::privateCompilePatchGetStringLength):
34728 (JSC::CTI::compileGetByIdSelf):
34729 (JSC::CTI::compileGetByIdProto):
34730 (JSC::CTI::compileGetByIdChain):
34731 (JSC::CTI::compilePutByIdReplace):
34732 (JSC::CTI::compilePutByIdTransition):
34733 (JSC::CTI::compileArrayLengthTrampoline):
34734 (JSC::CTI::compileStringLengthTrampoline):
34735 (JSC::CTI::compilePatchGetArrayLength):
34736 (JSC::CTI::compilePatchGetStringLength):
34738 (JSC::CodeBlock::dump):
34739 (JSC::CodeBlock::~CodeBlock):
34741 (JSC::StructureStubInfo::StructureStubInfo):
34742 (JSC::CodeBlock::getStubInfo):
34744 (JSC::Machine::tryCTICachePutByID):
34745 (JSC::Machine::tryCTICacheGetByID):
34746 (JSC::Machine::cti_op_put_by_val_array):
34749 (JSC::X86Assembler::):
34750 (JSC::X86Assembler::cmpl_i8m):
34751 (JSC::X86Assembler::emitUnlinkedJa):
34752 (JSC::X86Assembler::getRelocatedAddress):
34753 (JSC::X86Assembler::getDifferenceBetweenLabels):
34754 (JSC::X86Assembler::emitModRm_opmsib):
34766 (JSC::::hasInstance): Ditto.
34771 (JSC::CTI::privateCompileMainPass): Pass along prototype.
34773 (JSC::CodeBlock::dump): Print third arg.
34775 (JSC::CodeGenerator::emitInstanceOf): Implement this, now that there
34779 (JSC::Machine::privateExecute): Pass along the prototype.
34780 (JSC::Machine::cti_op_instanceof): ditto
34782 (JSC::JSObject::hasInstance): Expect to get a pre-looked-up prototype.
34785 (JSC::InstanceOfNode::emitCode): Emit a get_by_id of the prototype
34797 (JSC::Machine::cti_op_call_JSFunction):
34812 (JSC::CTI::privateCompileMainPass):
34814 (JSC::CodeBlock::dump):
34816 (JSC::CodeGenerator::emitEqualityOp):
34819 (JSC::jsIsObjectType):
34820 (JSC::jsIsFunctionType):
34821 (JSC::Machine::privateExecute):
34822 (JSC::Machine::cti_op_is_undefined):
34823 (JSC::Machine::cti_op_is_boolean):
34824 (JSC::Machine::cti_op_is_number):
34825 (JSC::Machine::cti_op_is_string):
34826 (JSC::Machine::cti_op_is_object):
34827 (JSC::Machine::cti_op_is_function):
34831 (JSC::BinaryOpNode::emitCode):
34832 (JSC::EqualNode::emitCode):
34833 (JSC::StrictEqualNode::emitCode):
34847 (JSC::globalFuncParseInt): Don't convert numbers to strings just to
34862 (JSC::CTI::privateCompileMainPass):
34863 (JSC::CTI::privateCompileSlowCases):
34865 (JSC::CodeBlock::dump):
34867 (JSC::CodeGenerator::emitJumpIfTrue):
34869 (JSC::Machine::privateExecute):
34870 (JSC::Machine::cti_op_loop_if_lesseq):
34881 (JSC::CTI::emitCall):
34882 (JSC::CTI::privateCompileMainPass):
34884 (JSC::CTI::execute):
34886 (JSC::):
34887 (JSC::SamplingTool::run):
34888 (JSC::SamplingTool::dump):
34890 (JSC::SamplingTool::callingHostFunction):
34905 (JSC::CTI::privateCompileMainPass):
34906 (JSC::):
34907 (JSC::transitionWillNeedStorageRealloc):
34908 (JSC::CTI::privateCompilePutByIdTransition):
34910 (JSC::CTI::compilePutByIdTransition):
34912 (JSC::printPutByIdOp):
34913 (JSC::CodeBlock::printStructureIDs):
34914 (JSC::CodeBlock::dump):
34915 (JSC::CodeBlock::derefStructureIDs):
34916 (JSC::CodeBlock::refStructureIDs):
34918 (JSC::CodeGenerator::emitPutById):
34920 (JSC::cachePrototypeChain):
34921 (JSC::Machine::tryCachePutByID):
34922 (JSC::Machine::tryCacheGetByID):
34923 (JSC::Machine::privateExecute):
34924 (JSC::Machine::tryCTICachePutByID):
34925 (JSC::Machine::tryCTICacheGetByID):
34929 (JSC::JSObject::putDirect):
34930 (JSC::JSObject::transitionTo):
34932 (JSC::PutPropertySlot::PutPropertySlot):
34933 (JSC::PutPropertySlot::wasTransition):
34934 (JSC::PutPropertySlot::setWasTransition):
34936 (JSC::StructureID::transitionTo):
34937 (JSC::StructureIDChain::StructureIDChain):
34939 (JSC::StructureID::previousID):
34940 (JSC::StructureID::setCachedPrototypeChain):
34941 (JSC::StructureID::cachedPrototypeChain):
34942 (JSC::StructureID::propertyMap):
34944 (JSC::X86Assembler::addl_i8m):
34945 (JSC::X86Assembler::subl_i8m):
34963 (JSC::JSCell::isObject):
34964 (JSC::JSCell::isString):
34969 (JSC::JSString::JSString):
34971 (JSC::StructureID::type):
34991 (JSC::):
34992 (JSC::getCharacterClassNewline):
34993 (JSC::getCharacterClassDigits):
34994 (JSC::getCharacterClassSpaces):
34995 (JSC::getCharacterClassWordchar):
34996 (JSC::getCharacterClassNondigits):
34997 (JSC::getCharacterClassNonspaces):
34998 (JSC::getCharacterClassNonwordchar):
34999 (JSC::CharacterClassConstructor::addSorted):
35000 (JSC::CharacterClassConstructor::addSortedRange):
35001 (JSC::CharacterClassConstructor::put):
35002 (JSC::CharacterClassConstructor::flush):
35003 (JSC::CharacterClassConstructor::append):
35005 (JSC::CharacterClassConstructor::CharacterClassConstructor):
35006 (JSC::CharacterClassConstructor::isUpsideDown):
35007 (JSC::CharacterClassConstructor::charClass):
35022 (JSC::):
35023 (JSC::getCharacterClassNewline):
35024 (JSC::getCharacterClassDigits):
35025 (JSC::getCharacterClassSpaces):
35026 (JSC::getCharacterClassWordchar):
35027 (JSC::getCharacterClassNondigits):
35028 (JSC::getCharacterClassNonspaces):
35029 (JSC::getCharacterClassNonwordchar):
35030 (JSC::CharacterClassConstructor::addSorted):
35031 (JSC::CharacterClassConstructor::addSortedRange):
35032 (JSC::CharacterClassConstructor::put):
35033 (JSC::CharacterClassConstructor::flush):
35034 (JSC::CharacterClassConstructor::append):
35036 (JSC::CharacterClassConstructor::CharacterClassConstructor):
35037 (JSC::CharacterClassConstructor::isUpsideDown):
35038 (JSC::CharacterClassConstructor::charClass):
35040 (JSC::WRECParser::parseCharacterClass):
35060 (JSC::CTI::emitFastArithPotentiallyReTagImmediate):
35062 (JSC::X86Assembler::orl_i32r):
35064 (JSC::WRECGenerator::generatePatternCharacter):
35065 (JSC::WRECGenerator::generateCharacterClassInverted):
35077 (JSC::CTI::privateCompileGetByIdProto):
35078 (JSC::CTI::privateCompileGetByIdChain):
35080 (JSC::JSObject::mark): There is no reason to check storageSize now that
35082 (JSC::JSObject::allocatePropertyStorage): Allocates/reallocates heap storage.
35084 (JSC::JSObject::offsetForLocation): m_propertyStorage is not an OwnArrayPtr
35086 (JSC::JSObject::usingInlineStorage):
35087 (JSC::JSObject::JSObject): Start with m_propertyStorage pointing to the
35089 (JSC::JSObject::~JSObject): Free the heap storage if not using the inline
35091 (JSC::JSObject::putDirect): Switch to the heap storage only when we know
35095 (JSC::PropertyMap::createTable): Don't allocate the propertyStorage, that is
35097 (JSC::PropertyMap::rehash): PropertyStorage is not a OwnArrayPtr anymore.
35099 (JSC::PropertyMap::storageSize): Rename from markingCount.
35101 (JSC::StructureID::addPropertyTransition): Don't resize the property storage
35118 (JSC::CTI::privateCompileMainPass):
35119 (JSC::CTI::privateCompileSlowCases):
35121 (JSC::X86Assembler::):
35122 (JSC::X86Assembler::imull_rr):
35123 (JSC::X86Assembler::imull_i32r):
35145 (JSC::CTI::privateCompileMainPass):
35146 (JSC::CTI::emitGetVariableObjectRegister):
35147 (JSC::CTI::emitPutVariableObjectRegister):
35150 (JSC::CodeBlock::dump):
35152 (JSC::CodeGenerator::findScopedProperty):
35153 (JSC::CodeGenerator::emitResolve):
35154 (JSC::CodeGenerator::emitGetScopedVar):
35155 (JSC::CodeGenerator::emitPutScopedVar):
35158 (JSC::Machine::privateExecute):
35161 (JSC::FunctionCallResolveNode::emitCode):
35162 (JSC::PostfixResolveNode::emitCode):
35163 (JSC::PrefixResolveNode::emitCode):
35164 (JSC::ReadModifyResolveNode::emitCode):
35165 (JSC::AssignResolveNode::emitCode):
35185 (JSC::CTI::privateCompileGetByIdProto):
35186 (JSC::CTI::privateCompileGetByIdChain):
35188 (JSC::CTI::compileGetByIdProto):
35189 (JSC::CTI::compileGetByIdChain):
35191 (JSC::JSPropertyNameIterator::JSPropertyNameIterator):
35193 (JSC::Machine::Machine):
35194 (JSC::cachePrototypeChain):
35195 (JSC::Machine::tryCachePutByID):
35196 (JSC::Machine::tryCacheGetByID):
35197 (JSC::Machine::privateExecute):
35198 (JSC::Machine::tryCTICachePutByID):
35199 (JSC::Machine::tryCTICacheGetByID):
35201 (JSC::GetterSetter::GetterSetter):
35204 (JSC::JSGlobalData::JSGlobalData):
35207 (JSC::StructureID::prototypeForLookup):
35209 (JSC::JSNumberCell::JSNumberCell):
35210 (JSC::jsNumberCell):
35212 (JSC::JSObject::prototype):
35214 (JSC::jsString):
35215 (JSC::jsSubstring):
35216 (JSC::jsOwnedString):
35218 (JSC::JSString::JSString):
35219 (JSC::JSString::):
35220 (JSC::jsSingleCharacterString):
35221 (JSC::jsSingleCharacterSubstring):
35222 (JSC::jsNontrivialString):
35224 (JSC::SmallStrings::createEmptyString):
35225 (JSC::SmallStrings::createSingleCharacterString):
35227 (JSC::StructureID::StructureID):
35228 (JSC::StructureID::addPropertyTransition):
35229 (JSC::StructureID::getterSetterTransition):
35230 (JSC::StructureIDChain::StructureIDChain):
35232 (JSC::StructureID::create):
35233 (JSC::StructureID::storedPrototype):
35255 (JSC::JSObject::getDirectLocation):
35256 (JSC::JSObject::getOwnPropertySlotForWrite):
35257 (JSC::JSObject::putDirect):
35273 (JSC::CTI::emitGetArg):
35274 (JSC::CTI::emitGetPutArg):
35275 (JSC::CTI::emitPutArg):
35276 (JSC::CTI::emitPutCTIParam):
35277 (JSC::CTI::emitGetCTIParam):
35278 (JSC::CTI::emitPutToCallFrameHeader):
35279 (JSC::CTI::emitGetFromCallFrameHeader):
35280 (JSC::CTI::emitPutResult):
35281 (JSC::CTI::emitDebugExceptionCheck):
35282 (JSC::CTI::emitJumpSlowCaseIfNotImm):
35283 (JSC::CTI::emitJumpSlowCaseIfNotImms):
35284 (JSC::CTI::emitFastArithDeTagImmediate):
35285 (JSC::CTI::emitFastArithReTagImmediate):
35286 (JSC::CTI::emitFastArithPotentiallyReTagImmediate):
35287 (JSC::CTI::emitFastArithImmToInt):
35288 (JSC::CTI::emitFastArithIntToImmOrSlowCase):
35289 (JSC::CTI::emitFastArithIntToImmNoCheck):
35290 (JSC::CTI::compileOpCall):
35291 (JSC::CTI::emitSlowScriptCheck):
35292 (JSC::CTI::privateCompileMainPass):
35293 (JSC::CTI::privateCompileSlowCases):
35294 (JSC::CTI::privateCompile):
35295 (JSC::CTI::privateCompileGetByIdSelf):
35296 (JSC::CTI::privateCompileGetByIdProto):
35297 (JSC::CTI::privateCompileGetByIdChain):
35298 (JSC::CTI::privateCompilePutByIdReplace):
35299 (JSC::CTI::privateArrayLengthTrampoline):
35300 (JSC::CTI::privateStringLengthTrampoline):
35301 (JSC::CTI::compileRegExp):
35303 (JSC::CallRecord::CallRecord):
35304 (JSC::JmpTable::JmpTable):
35305 (JSC::SlowCaseEntry::SlowCaseEntry):
35306 (JSC::CTI::JSRInfo::JSRInfo):
35310 (JSC::X86Assembler::emitConvertToFastCall):
35311 (JSC::X86Assembler::emitRestoreArgumentReference):
35313 (JSC::WRECGenerator::WRECGenerator):
35314 (JSC::WRECParser::WRECParser):
35328 (JSC::JSObject::mark):
35330 (JSC::PropertyMap::put):
35331 (JSC::PropertyMap::remove):
35332 (JSC::PropertyMap::getOffset):
35333 (JSC::PropertyMap::insert):
35334 (JSC::PropertyMap::rehash):
35335 (JSC::PropertyMap::resizePropertyStorage):
35336 (JSC::PropertyMap::checkConsistency):
35338 (JSC::PropertyMap::markingCount): Fix typo.
35347 (JSC::MacroAssembler::emitConvertToFastCall):
35348 (JSC::MacroAssembler::emitRestoreArgumentReference):
35361 (JSC::CTI::emitGetArg):
35362 (JSC::CTI::emitGetPutArg):
35363 (JSC::CTI::emitPutArg):
35364 (JSC::CTI::emitPutArgConstant):
35365 (JSC::CTI::emitPutCTIParam):
35366 (JSC::CTI::emitGetCTIParam):
35367 (JSC::CTI::emitPutToCallFrameHeader):
35368 (JSC::CTI::emitGetFromCallFrameHeader):
35369 (JSC::CTI::emitPutResult):
35370 (JSC::CTI::emitDebugExceptionCheck):
35371 (JSC::CTI::emitJumpSlowCaseIfNotImms):
35372 (JSC::CTI::compileOpCall):
35373 (JSC::CTI::emitSlowScriptCheck):
35374 (JSC::CTI::privateCompileMainPass):
35375 (JSC::CTI::privateCompileSlowCases):
35376 (JSC::CTI::privateCompile):
35377 (JSC::CTI::privateCompileGetByIdSelf):
35378 (JSC::CTI::privateCompileGetByIdProto):
35379 (JSC::CTI::privateCompileGetByIdChain):
35380 (JSC::CTI::privateCompilePutByIdReplace):
35381 (JSC::CTI::privateArrayLengthTrampoline):
35382 (JSC::CTI::privateStringLengthTrampoline):
35383 (JSC::CTI::compileRegExp):
35386 (JSC::X86::):
35387 (JSC::X86Assembler::emitModRm_rm):
35388 (JSC::X86Assembler::emitModRm_rm_Unchecked):
35389 (JSC::X86Assembler::emitModRm_rmsib):
35391 (JSC::WRECGenerator::generateNonGreedyQuantifier):
35392 (JSC::WRECGenerator::generateGreedyQuantifier):
35393 (JSC::WRECGenerator::generateParentheses):
35394 (JSC::WRECGenerator::generateBackreference):
35395 (JSC::WRECGenerator::gernerateDisjunction):
35417 (JSC::JSObject::put):
35418 (JSC::JSObject::deleteProperty):
35419 (JSC::JSObject::getPropertyAttributes):
35421 (JSC::JSObject::getDirect):
35422 (JSC::JSObject::getDirectLocation):
35423 (JSC::JSObject::locationForOffset):
35425 (JSC::PropertyMap::remove):
35426 (JSC::PropertyMap::getOffset):
35437 (JSC::CTI::emitGetArg):
35438 (JSC::CTI::emitGetPutArg):
35439 (JSC::CTI::emitPutArg):
35440 (JSC::CTI::emitPutArgConstant):
35441 (JSC::CTI::emitPutCTIParam):
35442 (JSC::CTI::emitGetCTIParam):
35443 (JSC::CTI::emitPutToCallFrameHeader):
35444 (JSC::CTI::emitGetFromCallFrameHeader):
35445 (JSC::CTI::emitPutResult):
35446 (JSC::CTI::emitDebugExceptionCheck):
35447 (JSC::CTI::emitCall):
35448 (JSC::CTI::emitJumpSlowCaseIfNotImm):
35449 (JSC::CTI::emitJumpSlowCaseIfNotImms):
35450 (JSC::CTI::emitFastArithDeTagImmediate):
35451 (JSC::CTI::emitFastArithReTagImmediate):
35452 (JSC::CTI::emitFastArithPotentiallyReTagImmediate):
35453 (JSC::CTI::emitFastArithImmToInt):
35454 (JSC::CTI::emitFastArithIntToImmOrSlowCase):
35455 (JSC::CTI::emitFastArithIntToImmNoCheck):
35456 (JSC::CTI::compileOpCall):
35457 (JSC::CTI::emitSlowScriptCheck):
35458 (JSC::CTI::privateCompileMainPass):
35459 (JSC::CTI::privateCompileSlowCases):
35460 (JSC::CTI::privateCompile):
35461 (JSC::CTI::privateCompileGetByIdSelf):
35462 (JSC::CTI::privateCompileGetByIdProto):
35463 (JSC::CTI::privateCompileGetByIdChain):
35464 (JSC::CTI::privateCompilePutByIdReplace):
35465 (JSC::CTI::privateArrayLengthTrampoline):
35466 (JSC::CTI::privateStringLengthTrampoline):
35467 (JSC::CTI::compileRegExp):
35469 (JSC::MacroAssembler::emitConvertToFastCall):
35470 (JSC::MacroAssembler::emitRestoreArgumentReference):
35472 (JSC::X86Assembler::pushl_r):
35473 (JSC::X86Assembler::pushl_m):
35474 (JSC::X86Assembler::popl_r):
35475 (JSC::X86Assembler::popl_m):
35476 (JSC::X86Assembler::movl_rr):
35477 (JSC::X86Assembler::addl_rr):
35478 (JSC::X86Assembler::addl_i8r):
35479 (JSC::X86Assembler::addl_i32r):
35480 (JSC::X86Assembler::addl_mr):
35481 (JSC::X86Assembler::andl_rr):
35482 (JSC::X86Assembler::andl_i32r):
35483 (JSC::X86Assembler::cmpl_i8r):
35484 (JSC::X86Assembler::cmpl_rr):
35485 (JSC::X86Assembler::cmpl_rm):
35486 (JSC::X86Assembler::cmpl_i32r):
35487 (JSC::X86Assembler::cmpl_i32m):
35488 (JSC::X86Assembler::cmpw_rm):
35489 (JSC::X86Assembler::orl_rr):
35490 (JSC::X86Assembler::subl_rr):
35491 (JSC::X86Assembler::subl_i8r):
35492 (JSC::X86Assembler::subl_i32r):
35493 (JSC::X86Assembler::subl_mr):
35494 (JSC::X86Assembler::testl_i32r):
35495 (JSC::X86Assembler::testl_rr):
35496 (JSC::X86Assembler::xorl_i8r):
35497 (JSC::X86Assembler::xorl_rr):
35498 (JSC::X86Assembler::sarl_i8r):
35499 (JSC::X86Assembler::sarl_CLr):
35500 (JSC::X86Assembler::shl_i8r):
35501 (JSC::X86Assembler::shll_CLr):
35502 (JSC::X86Assembler::mull_rr):
35503 (JSC::X86Assembler::idivl_r):
35504 (JSC::X86Assembler::cdq):
35505 (JSC::X86Assembler::movl_mr):
35506 (JSC::X86Assembler::movzwl_mr):
35507 (JSC::X86Assembler::movl_rm):
35508 (JSC::X86Assembler::movl_i32r):
35509 (JSC::X86Assembler::movl_i32m):
35510 (JSC::X86Assembler::leal_mr):
35511 (JSC::X86Assembler::ret):
35512 (JSC::X86Assembler::jmp_r):
35513 (JSC::X86Assembler::jmp_m):
35514 (JSC::X86Assembler::call_r):
35516 (JSC::WRECGenerator::generateBacktrack1):
35517 (JSC::WRECGenerator::generateBacktrackBackreference):
35518 (JSC::WRECGenerator::generateBackreferenceQuantifier):
35519 (JSC::WRECGenerator::generateNonGreedyQuantifier):
35520 (JSC::WRECGenerator::generateGreedyQuantifier):
35521 (JSC::WRECGenerator::generatePatternCharacter):
35522 (JSC::WRECGenerator::generateCharacterClassInvertedRange):
35523 (JSC::WRECGenerator::generateCharacterClassInverted):
35524 (JSC::WRECGenerator::generateCharacterClass):
35525 (JSC::WRECGenerator::generateParentheses):
35526 (JSC::WRECGenerator::gererateParenthesesResetTrampoline):
35527 (JSC::WRECGenerator::generateAssertionBOL):
35528 (JSC::WRECGenerator::generateAssertionEOL):
35529 (JSC::WRECGenerator::generateAssertionWordBoundary):
35530 (JSC::WRECGenerator::generateBackreference):
35531 (JSC::WRECGenerator::gernerateDisjunction):
35540 (JSC::CTI::compileRegExp):
35542 (JSC::getCharacterClassNewline):
35543 (JSC::getCharacterClassDigits):
35544 (JSC::getCharacterClassSpaces):
35545 (JSC::getCharacterClassWordchar):
35546 (JSC::getCharacterClassNondigits):
35547 (JSC::getCharacterClassNonspaces):
35548 (JSC::getCharacterClassNonwordchar):
35549 (JSC::WRECGenerator::generateBacktrack1):
35550 (JSC::WRECGenerator::generateBacktrackBackreference):
35551 (JSC::WRECGenerator::generateBackreferenceQuantifier):
35552 (JSC::WRECGenerator::generateNonGreedyQuantifier):
35553 (JSC::WRECGenerator::generateGreedyQuantifier):
35554 (JSC::WRECGenerator::generatePatternCharacter):
35555 (JSC::WRECGenerator::generateCharacterClassInvertedRange):
35556 (JSC::WRECGenerator::generateCharacterClassInverted):
35557 (JSC::WRECGenerator::generateCharacterClass):
35558 (JSC::WRECGenerator::generateParentheses):
35559 (JSC::WRECGenerator::gererateParenthesesResetTrampoline):
35560 (JSC::WRECGenerator::generateAssertionBOL):
35561 (JSC::WRECGenerator::generateAssertionEOL):
35562 (JSC::WRECGenerator::generateAssertionWordBoundary):
35563 (JSC::WRECGenerator::generateBackreference):
35564 (JSC::WRECGenerator::gernerateDisjunction):
35565 (JSC::WRECParser::parseCharacterClass):
35566 (JSC::WRECParser::parseEscape):
35567 (JSC::WRECParser::parseTerm):
35594 (JSC::Identifier::addSlowCase): #ifdef the call to checkSameIdentifierTable so that
35596 (JSC::Identifier::checkSameIdentifierTable): Add empty functions for Release builds.
35598 (JSC::Identifier::add): #ifdef the calls to checkSameIdentifierTable so that there is
35608 (JSC::):
35609 (JSC::getCharacterClass_newline):
35610 (JSC::getCharacterClass_d):
35611 (JSC::getCharacterClass_s):
35612 (JSC::getCharacterClass_w):
35613 (JSC::getCharacterClass_D):
35614 (JSC::getCharacterClass_S):
35615 (JSC::getCharacterClass_W):
35616 (JSC::CharacterClassConstructor::append):
35617 (JSC::WRECGenerator::generateNonGreedyQuantifier):
35618 (JSC::WRECGenerator::generateGreedyQuantifier):
35619 (JSC::WRECGenerator::generateCharacterClassInverted):
35620 (JSC::WRECParser::parseQuantifier):
35621 (JSC::WRECParser::parsePatternCharacterQualifier):
35622 (JSC::WRECParser::parseCharacterClassQuantifier):
35623 (JSC::WRECParser::parseBackreferenceQuantifier):
35625 (JSC::Quantifier::):
35626 (JSC::Quantifier::Quantifier):
35648 (JSC::WRECGenerator::generatePatternCharacter):
35659 (JSC::MathObject::getOwnPropertySlot):
35661 (JSC::setUpStaticFunctionSlot):
35663 (JSC::getStaticPropertySlot):
35682 (JSC::CTI::privateCompileGetByIdSelf): Get the storage directly off the JSObject.
35683 (JSC::CTI::privateCompileGetByIdProto): Ditto.
35684 (JSC::CTI::privateCompileGetByIdChain): Ditto.
35685 (JSC::CTI::privateCompilePutByIdReplace): Ditto.
35687 (JSC::JSObject::mark): Mark the PropertyStorage.
35688 (JSC::JSObject::put): Update to get the propertyMap of the StructureID.
35689 (JSC::JSObject::deleteProperty): Ditto.
35690 (JSC::JSObject::defineGetter): Return early if the property is already a getter/setter.
35691 (JSC::JSObject::defineSetter): Ditto.
35692 (JSC::JSObject::getPropertyAttributes): Update to get the propertyMap of the StructureID
35693 (JSC::JSObject::getPropertyNames): Ditto.
35694 (JSC::JSObject::removeDirect): Ditto.
35696 (JSC::JSObject::propertyStorage): return the PropertyStorage.
35697 (JSC::JSObject::getDirect): Update to get the propertyMap of the StructureID.
35698 (JSC::JSObject::getDirectLocation): Ditto.
35699 (JSC::JSObject::offsetForLocation): Compute location directly.
35700 (JSC::JSObject::hasCustomProperties): Update to get the propertyMap of the StructureID.
35701 (JSC::JSObject::hasGetterSetterProperties): Ditto.
35702 (JSC::JSObject::getDirectOffset): Get by indexing into PropertyStorage.
35703 (JSC::JSObject::putDirectOffset): Put by indexing into PropertyStorage.
35704 … (JSC::JSObject::getOwnPropertySlotForWrite): Update to get the propertyMap of the StructureID.
35705 (JSC::JSObject::getOwnPropertySlot): Ditto.
35706 … (JSC::JSObject::putDirect): Move putting into the StructureID unless the property already exists.
35708 (JSC::PropertyMap::checkConsistency):
35709 (JSC::PropertyMap::operator=):
35710 (JSC::PropertyMap::~PropertyMap):
35711 (JSC::PropertyMap::get):
35712 (JSC::PropertyMap::getLocation):
35713 (JSC::PropertyMap::put):
35714 (JSC::PropertyMap::getOffset):
35715 (JSC::PropertyMap::insert):
35716 (JSC::PropertyMap::expand):
35717 (JSC::PropertyMap::rehash):
35718 (JSC::PropertyMap::createTable):
35719 (JSC::PropertyMap::resizePropertyStorage): Resize the storage to match the size of the map
35720 (JSC::PropertyMap::remove):
35721 (JSC::PropertyMap::getEnumerablePropertyNames):
35723 (JSC::PropertyMapEntry::PropertyMapEntry):
35724 (JSC::PropertyMap::isEmpty):
35725 (JSC::PropertyMap::size):
35726 (JSC::PropertyMap::makingCount):
35727 (JSC::PropertyMap::PropertyMap):
35730 (JSC::StructureID::addPropertyTransition): Transitions now are based off the property name
35732 (JSC::StructureID::toDictionaryTransition): Copy the map.
35733 (JSC::StructureID::changePrototypeTransition): Copy the map.
35734 (JSC::StructureID::getterSetterTransition): Copy the map.
35735 (JSC::StructureID::~StructureID):
35737 (JSC::TransitionTableHash::hash): Custom hash for transition map.
35738 (JSC::TransitionTableHash::equal): Ditto.
35739 (JSC::TransitionTableHashTraits::emptyValue): Custom traits for transition map
35740 (JSC::TransitionTableHashTraits::constructDeletedValue): Ditto.
35741 (JSC::TransitionTableHashTraits::isDeletedValue): Ditto.
35742 (JSC::StructureID::propertyMap): Added.
35758 (JSC::CTI::emitSlowScriptCheck):
35759 (JSC::CTI::privateCompileMainPass):
35760 (JSC::CTI::privateCompileSlowCases):
35786 (JSC::StatementNode::):
35787 (JSC::BlockNode::):
35824 (JSC::EvalCodeCache::get):
35826 (JSC::Machine::callEval):
35827 (JSC::Machine::privateExecute):
35828 (JSC::Machine::cti_op_call_eval):
35835 Bug 20711: Change KJS prefix on preprocessor macros to JSC
35839 (JSC::CommonIdentifiers::CommonIdentifiers):
35842 (JSC::PropertySlot::getValue):
35843 (JSC::PropertySlot::putValue):
35844 (JSC::PropertySlot::setValueSlot):
35845 (JSC::PropertySlot::setValue):
35846 (JSC::PropertySlot::setRegisterSlot):
35850 (JSC::Node::):
35851 (JSC::ExpressionNode::):
35852 (JSC::StatementNode::):
35853 (JSC::NullNode::):
35854 (JSC::BooleanNode::):
35855 (JSC::NumberNode::):
35856 (JSC::ImmediateNumberNode::):
35857 (JSC::StringNode::):
35858 (JSC::RegExpNode::):
35859 (JSC::ThisNode::):
35860 (JSC::ResolveNode::):
35861 (JSC::ElementNode::):
35862 (JSC::ArrayNode::):
35863 (JSC::PropertyNode::):
35864 (JSC::PropertyListNode::):
35865 (JSC::ObjectLiteralNode::):
35866 (JSC::BracketAccessorNode::):
35867 (JSC::DotAccessorNode::):
35868 (JSC::ArgumentListNode::):
35869 (JSC::ArgumentsNode::):
35870 (JSC::NewExprNode::):
35871 (JSC::EvalFunctionCallNode::):
35872 (JSC::FunctionCallValueNode::):
35873 (JSC::FunctionCallResolveNode::):
35874 (JSC::FunctionCallBracketNode::):
35875 (JSC::FunctionCallDotNode::):
35876 (JSC::PrePostResolveNode::):
35877 (JSC::PostfixResolveNode::):
35878 (JSC::PostfixBracketNode::):
35879 (JSC::PostfixDotNode::):
35880 (JSC::PostfixErrorNode::):
35881 (JSC::DeleteResolveNode::):
35882 (JSC::DeleteBracketNode::):
35883 (JSC::DeleteDotNode::):
35884 (JSC::DeleteValueNode::):
35885 (JSC::VoidNode::):
35886 (JSC::TypeOfResolveNode::):
35887 (JSC::TypeOfValueNode::):
35888 (JSC::PrefixResolveNode::):
35889 (JSC::PrefixBracketNode::):
35890 (JSC::PrefixDotNode::):
35891 (JSC::PrefixErrorNode::):
35892 (JSC::UnaryPlusNode::):
35893 (JSC::NegateNode::):
35894 (JSC::BitwiseNotNode::):
35895 (JSC::LogicalNotNode::):
35896 (JSC::MultNode::):
35897 (JSC::DivNode::):
35898 (JSC::ModNode::):
35899 (JSC::AddNode::):
35900 (JSC::SubNode::):
35901 (JSC::LeftShiftNode::):
35902 (JSC::RightShiftNode::):
35903 (JSC::UnsignedRightShiftNode::):
35904 (JSC::LessNode::):
35905 (JSC::GreaterNode::):
35906 (JSC::LessEqNode::):
35907 (JSC::GreaterEqNode::):
35908 (JSC::ThrowableBinaryOpNode::):
35909 (JSC::InstanceOfNode::):
35910 (JSC::InNode::):
35911 (JSC::EqualNode::):
35912 (JSC::NotEqualNode::):
35913 (JSC::StrictEqualNode::):
35914 (JSC::NotStrictEqualNode::):
35915 (JSC::BitAndNode::):
35916 (JSC::BitOrNode::):
35917 (JSC::BitXOrNode::):
35918 (JSC::LogicalOpNode::):
35919 (JSC::ConditionalNode::):
35920 (JSC::ReadModifyResolveNode::):
35921 (JSC::AssignResolveNode::):
35922 (JSC::ReadModifyBracketNode::):
35923 (JSC::AssignBracketNode::):
35924 (JSC::AssignDotNode::):
35925 (JSC::ReadModifyDotNode::):
35926 (JSC::AssignErrorNode::):
35927 (JSC::CommaNode::):
35928 (JSC::VarDeclCommaNode::):
35929 (JSC::ConstDeclNode::):
35930 (JSC::ConstStatementNode::):
35931 (JSC::EmptyStatementNode::):
35932 (JSC::DebuggerStatementNode::):
35933 (JSC::ExprStatementNode::):
35934 (JSC::VarStatementNode::):
35935 (JSC::IfNode::):
35936 (JSC::IfElseNode::):
35937 (JSC::DoWhileNode::):
35938 (JSC::WhileNode::):
35939 (JSC::ForNode::):
35940 (JSC::ContinueNode::):
35941 (JSC::BreakNode::):
35942 (JSC::ReturnNode::):
35943 (JSC::WithNode::):
35944 (JSC::LabelNode::):
35945 (JSC::ThrowNode::):
35946 (JSC::TryNode::):
35947 (JSC::ParameterNode::):
35948 (JSC::ScopeNode::):
35949 (JSC::ProgramNode::):
35950 (JSC::EvalNode::):
35951 (JSC::FunctionBodyNode::):
35952 (JSC::FuncExprNode::):
35953 (JSC::FuncDeclNode::):
35954 (JSC::CaseClauseNode::):
35955 (JSC::ClauseListNode::):
35956 (JSC::CaseBlockNode::):
35957 (JSC::SwitchNode::):
35966 Rename the KJS namespace to JSC. There are still some uses of KJS in
35997 (JSC::):
36047 (JSC::DateInstance::msToGregorianDateTime):
36079 (JSC::InternalFunction::InternalFunction):
36088 (JSC::JSFunction::JSFunction):
36090 (JSC::JSGlobalData::JSGlobalData):
36139 (JSC::PropertyMapStatisticsExitLogger::~PropertyMapStatisticsExitLogger):
36184 (JSC::Identifier::equal):
36188 (JSC::Lexer::Lexer):
36189 (JSC::Lexer::clear):
36190 (JSC::Lexer::makeIdentifier):
36204 (JSC::operator!=):
36205 (JSC::IdentifierRepHash::hash):
39124 Bug 20093: JSC shell does not clear exceptions after it executes toString on an expression
39127 Clear exceptions after evaluating any code in the JSC shell. We do not