Changeset 195528 in webkit
- Timestamp:
- Jan 25, 2016 12:18:11 AM (8 years ago)
- Location:
- trunk/Source/JavaScriptCore
- Files:
-
- 24 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/ChangeLog
r195503 r195528 1 2016-01-25 Andreas Kling <akling@apple.com> 2 3 Reduce number of Structures created at startup. 4 <https://webkit.org/b/153399> 5 6 Reviewed by Darin Adler. 7 8 For *Constructor and *Prototype objects that are only created once per JSGlobalObject, 9 build up the Structures using addPropertyWithoutTransition() helpers to avoid creating 10 tons of transitions that would just end up floating around and never getting used. 11 12 * inspector/JSInjectedScriptHostPrototype.cpp: 13 (Inspector::JSInjectedScriptHostPrototype::finishCreation): 14 * inspector/JSJavaScriptCallFramePrototype.cpp: 15 (Inspector::JSJavaScriptCallFramePrototype::finishCreation): 16 * runtime/ArrayPrototype.cpp: 17 (JSC::ArrayPrototype::finishCreation): 18 * runtime/ConsolePrototype.cpp: 19 (JSC::ConsolePrototype::finishCreation): 20 * runtime/DatePrototype.cpp: 21 (JSC::DatePrototype::finishCreation): 22 * runtime/JSArrayBufferConstructor.cpp: 23 (JSC::JSArrayBufferConstructor::finishCreation): 24 * runtime/JSArrayBufferPrototype.cpp: 25 (JSC::JSArrayBufferPrototype::finishCreation): 26 * runtime/JSObject.cpp: 27 (JSC::JSObject::putDirectNativeFunctionWithoutTransition): 28 (JSC::JSObject::putDirectBuiltinFunctionWithoutTransition): Deleted. 29 * runtime/JSObject.h: 30 * runtime/JSPromiseConstructor.cpp: 31 (JSC::JSPromiseConstructor::addOwnInternalSlots): 32 * runtime/JSPromisePrototype.cpp: 33 (JSC::JSPromisePrototype::addOwnInternalSlots): 34 * runtime/JSTypedArrayViewConstructor.cpp: 35 (JSC::JSTypedArrayViewConstructor::finishCreation): 36 * runtime/JSTypedArrayViewPrototype.cpp: 37 (JSC::JSTypedArrayViewPrototype::finishCreation): 38 * runtime/MapIteratorPrototype.cpp: 39 (JSC::MapIteratorPrototype::finishCreation): 40 * runtime/MapPrototype.cpp: 41 (JSC::MapPrototype::finishCreation): 42 * runtime/NumberPrototype.cpp: 43 (JSC::NumberPrototype::finishCreation): 44 * runtime/ObjectConstructor.cpp: 45 (JSC::ObjectConstructor::finishCreation): 46 * runtime/ObjectPrototype.cpp: 47 (JSC::ObjectPrototype::finishCreation): 48 * runtime/SetIteratorPrototype.cpp: 49 (JSC::SetIteratorPrototype::finishCreation): 50 * runtime/SetPrototype.cpp: 51 (JSC::SetPrototype::finishCreation): 52 * runtime/StringPrototype.cpp: 53 (JSC::StringPrototype::finishCreation): 54 * runtime/WeakMapPrototype.cpp: 55 (JSC::WeakMapPrototype::finishCreation): 56 * runtime/WeakSetPrototype.cpp: 57 (JSC::WeakSetPrototype::finishCreation): 58 1 59 2016-01-22 Filip Pizlo <fpizlo@apple.com> 2 60 -
trunk/Source/JavaScriptCore/inspector/JSInjectedScriptHostPrototype.cpp
r183025 r195528 60 60 vm.prototypeMap.addPrototype(this); 61 61 62 JSC_NATIVE_FUNCTION ("subtype", jsInjectedScriptHostPrototypeFunctionSubtype, DontEnum, 1);63 JSC_NATIVE_FUNCTION ("functionDetails", jsInjectedScriptHostPrototypeFunctionFunctionDetails, DontEnum, 1);64 JSC_NATIVE_FUNCTION ("getInternalProperties", jsInjectedScriptHostPrototypeFunctionGetInternalProperties, DontEnum, 1);65 JSC_NATIVE_FUNCTION ("internalConstructorName", jsInjectedScriptHostPrototypeFunctionInternalConstructorName, DontEnum, 1);66 JSC_NATIVE_FUNCTION ("isHTMLAllCollection", jsInjectedScriptHostPrototypeFunctionIsHTMLAllCollection, DontEnum, 1);67 JSC_NATIVE_FUNCTION ("weakMapSize", jsInjectedScriptHostPrototypeFunctionWeakMapSize, DontEnum, 1);68 JSC_NATIVE_FUNCTION ("weakMapEntries", jsInjectedScriptHostPrototypeFunctionWeakMapEntries, DontEnum, 1);69 JSC_NATIVE_FUNCTION ("weakSetSize", jsInjectedScriptHostPrototypeFunctionWeakSetSize, DontEnum, 1);70 JSC_NATIVE_FUNCTION ("weakSetEntries", jsInjectedScriptHostPrototypeFunctionWeakSetEntries, DontEnum, 1);71 JSC_NATIVE_FUNCTION ("iteratorEntries", jsInjectedScriptHostPrototypeFunctionIteratorEntries, DontEnum, 1);62 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("subtype", jsInjectedScriptHostPrototypeFunctionSubtype, DontEnum, 1); 63 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("functionDetails", jsInjectedScriptHostPrototypeFunctionFunctionDetails, DontEnum, 1); 64 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("getInternalProperties", jsInjectedScriptHostPrototypeFunctionGetInternalProperties, DontEnum, 1); 65 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("internalConstructorName", jsInjectedScriptHostPrototypeFunctionInternalConstructorName, DontEnum, 1); 66 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("isHTMLAllCollection", jsInjectedScriptHostPrototypeFunctionIsHTMLAllCollection, DontEnum, 1); 67 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("weakMapSize", jsInjectedScriptHostPrototypeFunctionWeakMapSize, DontEnum, 1); 68 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("weakMapEntries", jsInjectedScriptHostPrototypeFunctionWeakMapEntries, DontEnum, 1); 69 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("weakSetSize", jsInjectedScriptHostPrototypeFunctionWeakSetSize, DontEnum, 1); 70 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("weakSetEntries", jsInjectedScriptHostPrototypeFunctionWeakSetEntries, DontEnum, 1); 71 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("iteratorEntries", jsInjectedScriptHostPrototypeFunctionIteratorEntries, DontEnum, 1); 72 72 73 73 Identifier evaluateIdentifier = Identifier::fromString(&vm, "evaluate"); -
trunk/Source/JavaScriptCore/inspector/JSJavaScriptCallFramePrototype.cpp
r193425 r195528 69 69 vm.prototypeMap.addPrototype(this); 70 70 71 JSC_NATIVE_FUNCTION ("evaluate", jsJavaScriptCallFramePrototypeFunctionEvaluate, DontEnum, 1);72 JSC_NATIVE_FUNCTION ("scopeType", jsJavaScriptCallFramePrototypeFunctionScopeType, DontEnum, 1);71 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("evaluate", jsJavaScriptCallFramePrototypeFunctionEvaluate, DontEnum, 1); 72 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("scopeType", jsJavaScriptCallFramePrototypeFunctionScopeType, DontEnum, 1); 73 73 74 74 JSC_NATIVE_NON_INDEX_ACCESSOR("caller", jsJavaScriptCallFrameAttributeCaller, DontEnum | Accessor); -
trunk/Source/JavaScriptCore/runtime/ArrayPrototype.cpp
r195431 r195528 91 91 putDirectWithoutTransition(vm, vm.propertyNames->iteratorSymbol, globalObject->arrayProtoValuesFunction(), DontEnum); 92 92 93 JSC_NATIVE_FUNCTION (vm.propertyNames->toString, arrayProtoFuncToString, DontEnum, 0);94 JSC_NATIVE_FUNCTION (vm.propertyNames->toLocaleString, arrayProtoFuncToLocaleString, DontEnum, 0);95 JSC_NATIVE_FUNCTION ("concat", arrayProtoFuncConcat, DontEnum, 1);96 JSC_BUILTIN_FUNCTION ("fill", arrayPrototypeFillCodeGenerator, DontEnum);97 JSC_NATIVE_FUNCTION (vm.propertyNames->join, arrayProtoFuncJoin, DontEnum, 1);98 JSC_NATIVE_INTRINSIC_FUNCTION ("pop", arrayProtoFuncPop, DontEnum, 0, ArrayPopIntrinsic);99 JSC_NATIVE_INTRINSIC_FUNCTION (vm.propertyNames->builtinNames().pushPublicName(), arrayProtoFuncPush, DontEnum, 1, ArrayPushIntrinsic);100 JSC_NATIVE_INTRINSIC_FUNCTION (vm.propertyNames->builtinNames().pushPrivateName(), arrayProtoFuncPush, DontEnum | DontDelete | ReadOnly, 1, ArrayPushIntrinsic);101 JSC_NATIVE_FUNCTION ("reverse", arrayProtoFuncReverse, DontEnum, 0);102 JSC_NATIVE_FUNCTION (vm.propertyNames->builtinNames().shiftPublicName(), arrayProtoFuncShift, DontEnum, 0);103 JSC_NATIVE_FUNCTION (vm.propertyNames->builtinNames().shiftPrivateName(), arrayProtoFuncShift, DontEnum | DontDelete | ReadOnly, 0);104 JSC_NATIVE_FUNCTION (vm.propertyNames->slice, arrayProtoFuncSlice, DontEnum, 2);105 JSC_BUILTIN_FUNCTION ("sort", arrayPrototypeSortCodeGenerator, DontEnum);106 JSC_NATIVE_FUNCTION ("splice", arrayProtoFuncSplice, DontEnum, 2);107 JSC_NATIVE_FUNCTION ("unshift", arrayProtoFuncUnShift, DontEnum, 1);108 JSC_BUILTIN_FUNCTION ("every", arrayPrototypeEveryCodeGenerator, DontEnum);109 JSC_BUILTIN_FUNCTION ("forEach", arrayPrototypeForEachCodeGenerator, DontEnum);110 JSC_BUILTIN_FUNCTION ("some", arrayPrototypeSomeCodeGenerator, DontEnum);111 JSC_NATIVE_FUNCTION ("indexOf", arrayProtoFuncIndexOf, DontEnum, 1);112 JSC_NATIVE_FUNCTION ("lastIndexOf", arrayProtoFuncLastIndexOf, DontEnum, 1);113 JSC_BUILTIN_FUNCTION ("filter", arrayPrototypeFilterCodeGenerator, DontEnum);114 JSC_BUILTIN_FUNCTION ("reduce", arrayPrototypeReduceCodeGenerator, DontEnum);115 JSC_BUILTIN_FUNCTION ("reduceRight", arrayPrototypeReduceRightCodeGenerator, DontEnum);116 JSC_BUILTIN_FUNCTION ("map", arrayPrototypeMapCodeGenerator, DontEnum);117 JSC_NATIVE_FUNCTION (vm.propertyNames->entries, arrayProtoFuncEntries, DontEnum, 0);118 JSC_NATIVE_FUNCTION (vm.propertyNames->keys, arrayProtoFuncKeys, DontEnum, 0);119 JSC_BUILTIN_FUNCTION ("find", arrayPrototypeFindCodeGenerator, DontEnum);120 JSC_BUILTIN_FUNCTION ("findIndex", arrayPrototypeFindIndexCodeGenerator, DontEnum);121 JSC_BUILTIN_FUNCTION ("includes", arrayPrototypeIncludesCodeGenerator, DontEnum);122 JSC_BUILTIN_FUNCTION ("copyWithin", arrayPrototypeCopyWithinCodeGenerator, DontEnum);93 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->toString, arrayProtoFuncToString, DontEnum, 0); 94 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->toLocaleString, arrayProtoFuncToLocaleString, DontEnum, 0); 95 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("concat", arrayProtoFuncConcat, DontEnum, 1); 96 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("fill", arrayPrototypeFillCodeGenerator, DontEnum); 97 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->join, arrayProtoFuncJoin, DontEnum, 1); 98 JSC_NATIVE_INTRINSIC_FUNCTION_WITHOUT_TRANSITION("pop", arrayProtoFuncPop, DontEnum, 0, ArrayPopIntrinsic); 99 JSC_NATIVE_INTRINSIC_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->builtinNames().pushPublicName(), arrayProtoFuncPush, DontEnum, 1, ArrayPushIntrinsic); 100 JSC_NATIVE_INTRINSIC_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->builtinNames().pushPrivateName(), arrayProtoFuncPush, DontEnum | DontDelete | ReadOnly, 1, ArrayPushIntrinsic); 101 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("reverse", arrayProtoFuncReverse, DontEnum, 0); 102 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->builtinNames().shiftPublicName(), arrayProtoFuncShift, DontEnum, 0); 103 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->builtinNames().shiftPrivateName(), arrayProtoFuncShift, DontEnum | DontDelete | ReadOnly, 0); 104 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->slice, arrayProtoFuncSlice, DontEnum, 2); 105 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("sort", arrayPrototypeSortCodeGenerator, DontEnum); 106 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("splice", arrayProtoFuncSplice, DontEnum, 2); 107 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("unshift", arrayProtoFuncUnShift, DontEnum, 1); 108 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("every", arrayPrototypeEveryCodeGenerator, DontEnum); 109 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("forEach", arrayPrototypeForEachCodeGenerator, DontEnum); 110 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("some", arrayPrototypeSomeCodeGenerator, DontEnum); 111 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("indexOf", arrayProtoFuncIndexOf, DontEnum, 1); 112 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("lastIndexOf", arrayProtoFuncLastIndexOf, DontEnum, 1); 113 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("filter", arrayPrototypeFilterCodeGenerator, DontEnum); 114 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("reduce", arrayPrototypeReduceCodeGenerator, DontEnum); 115 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("reduceRight", arrayPrototypeReduceRightCodeGenerator, DontEnum); 116 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("map", arrayPrototypeMapCodeGenerator, DontEnum); 117 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->entries, arrayProtoFuncEntries, DontEnum, 0); 118 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->keys, arrayProtoFuncKeys, DontEnum, 0); 119 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("find", arrayPrototypeFindCodeGenerator, DontEnum); 120 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("findIndex", arrayPrototypeFindIndexCodeGenerator, DontEnum); 121 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("includes", arrayPrototypeIncludesCodeGenerator, DontEnum); 122 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("copyWithin", arrayPrototypeCopyWithinCodeGenerator, DontEnum); 123 123 124 124 JSObject* unscopables = constructEmptyObject(globalObject->globalExec(), globalObject->nullPrototypeObjectStructure()); -
trunk/Source/JavaScriptCore/runtime/ConsolePrototype.cpp
r183659 r195528 69 69 // and all have a length of 0. This may change if Console is standardized. 70 70 71 JSC_NATIVE_FUNCTION ("debug", consoleProtoFuncDebug, None, 0);72 JSC_NATIVE_FUNCTION ("error", consoleProtoFuncError, None, 0);73 JSC_NATIVE_FUNCTION ("log", consoleProtoFuncLog, None, 0);74 JSC_NATIVE_FUNCTION ("info", consoleProtoFuncInfo, None, 0);75 JSC_NATIVE_FUNCTION ("warn", consoleProtoFuncWarn, None, 0);76 77 JSC_NATIVE_FUNCTION ("clear", consoleProtoFuncClear, None, 0);78 JSC_NATIVE_FUNCTION ("dir", consoleProtoFuncDir, None, 0);79 JSC_NATIVE_FUNCTION ("dirxml", consoleProtoFuncDirXML, None, 0);80 JSC_NATIVE_FUNCTION ("table", consoleProtoFuncTable, None, 0);81 JSC_NATIVE_FUNCTION ("trace", consoleProtoFuncTrace, None, 0);82 JSC_NATIVE_FUNCTION ("assert", consoleProtoFuncAssert, None, 0);83 JSC_NATIVE_FUNCTION ("count", consoleProtoFuncCount, None, 0);84 JSC_NATIVE_FUNCTION ("profile", consoleProtoFuncProfile, None, 0);85 JSC_NATIVE_FUNCTION ("profileEnd", consoleProtoFuncProfileEnd, None, 0);86 JSC_NATIVE_FUNCTION ("time", consoleProtoFuncTime, None, 0);87 JSC_NATIVE_FUNCTION ("timeEnd", consoleProtoFuncTimeEnd, None, 0);88 JSC_NATIVE_FUNCTION ("timeStamp", consoleProtoFuncTimeStamp, None, 0);89 JSC_NATIVE_FUNCTION ("group", consoleProtoFuncGroup, None, 0);90 JSC_NATIVE_FUNCTION ("groupCollapsed", consoleProtoFuncGroupCollapsed, None, 0);91 JSC_NATIVE_FUNCTION ("groupEnd", consoleProtoFuncGroupEnd, None, 0);71 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("debug", consoleProtoFuncDebug, None, 0); 72 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("error", consoleProtoFuncError, None, 0); 73 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("log", consoleProtoFuncLog, None, 0); 74 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("info", consoleProtoFuncInfo, None, 0); 75 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("warn", consoleProtoFuncWarn, None, 0); 76 77 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("clear", consoleProtoFuncClear, None, 0); 78 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("dir", consoleProtoFuncDir, None, 0); 79 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("dirxml", consoleProtoFuncDirXML, None, 0); 80 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("table", consoleProtoFuncTable, None, 0); 81 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("trace", consoleProtoFuncTrace, None, 0); 82 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("assert", consoleProtoFuncAssert, None, 0); 83 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("count", consoleProtoFuncCount, None, 0); 84 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("profile", consoleProtoFuncProfile, None, 0); 85 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("profileEnd", consoleProtoFuncProfileEnd, None, 0); 86 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("time", consoleProtoFuncTime, None, 0); 87 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("timeEnd", consoleProtoFuncTimeEnd, None, 0); 88 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("timeStamp", consoleProtoFuncTimeStamp, None, 0); 89 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("group", consoleProtoFuncGroup, None, 0); 90 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("groupCollapsed", consoleProtoFuncGroupCollapsed, None, 0); 91 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("groupEnd", consoleProtoFuncGroupEnd, None, 0); 92 92 } 93 93 -
trunk/Source/JavaScriptCore/runtime/DatePrototype.cpp
r195381 r195528 493 493 494 494 #if ENABLE(INTL) 495 JSC_BUILTIN_FUNCTION ("toLocaleString", datePrototypeToLocaleStringCodeGenerator, DontEnum);496 JSC_BUILTIN_FUNCTION ("toLocaleDateString", datePrototypeToLocaleDateStringCodeGenerator, DontEnum);497 JSC_BUILTIN_FUNCTION ("toLocaleTimeString", datePrototypeToLocaleTimeStringCodeGenerator, DontEnum);495 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("toLocaleString", datePrototypeToLocaleStringCodeGenerator, DontEnum); 496 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("toLocaleDateString", datePrototypeToLocaleDateStringCodeGenerator, DontEnum); 497 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("toLocaleTimeString", datePrototypeToLocaleTimeStringCodeGenerator, DontEnum); 498 498 #else 499 499 UNUSED_PARAM(globalObject); -
trunk/Source/JavaScriptCore/runtime/JSArrayBufferConstructor.cpp
r195460 r195528 57 57 58 58 JSGlobalObject* globalObject = this->globalObject(); 59 JSC_NATIVE_FUNCTION (vm.propertyNames->isView, arrayBufferFuncIsView, DontEnum, 1);59 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->isView, arrayBufferFuncIsView, DontEnum, 1); 60 60 } 61 61 -
trunk/Source/JavaScriptCore/runtime/JSArrayBufferPrototype.cpp
r191864 r195528 83 83 Base::finishCreation(vm); 84 84 85 JSC_NATIVE_FUNCTION (vm.propertyNames->slice, arrayBufferProtoFuncSlice, DontEnum, 2);85 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->slice, arrayBufferProtoFuncSlice, DontEnum, 2); 86 86 putDirectWithoutTransition(vm, vm.propertyNames->toStringTagSymbol, jsString(&vm, "ArrayBuffer"), DontEnum | ReadOnly); 87 87 } -
trunk/Source/JavaScriptCore/runtime/JSObject.cpp
r194248 r195528 2331 2331 JSFunction* JSObject::putDirectBuiltinFunctionWithoutTransition(VM& vm, JSGlobalObject* globalObject, const PropertyName& propertyName, FunctionExecutable* functionExecutable, unsigned attributes) 2332 2332 { 2333 JSFunction* function = JSFunction::createBuiltinFunction(vm, static_cast<FunctionExecutable*>(functionExecutable), globalObject); 2334 putDirectWithoutTransition(vm, propertyName, function, attributes); 2335 return function; 2336 } 2337 2338 void JSObject::putDirectNativeFunctionWithoutTransition(VM& vm, JSGlobalObject* globalObject, const PropertyName& propertyName, unsigned functionLength, NativeFunction nativeFunction, Intrinsic intrinsic, unsigned attributes) 2339 { 2333 2340 StringImpl* name = propertyName.publicName(); 2334 2341 if (!name) 2335 2342 name = vm.propertyNames->anonymous.impl(); 2336 2343 ASSERT(name); 2337 JSFunction* function = JSFunction::createBuiltinFunction(vm, static_cast<FunctionExecutable*>(functionExecutable), globalObject);2338 putDirectWithoutTransition(vm, propertyName, function, attributes);2339 return function;2340 }2341 2342 void JSObject::putDirectNativeFunctionWithoutTransition(VM& vm, JSGlobalObject* globalObject, const PropertyName& propertyName, unsigned functionLength, NativeFunction nativeFunction, Intrinsic intrinsic, unsigned attributes)2343 {2344 StringImpl* name = propertyName.publicName();2345 ASSERT(name);2346 2347 2344 JSFunction* function = JSFunction::create(vm, globalObject, functionLength, name, nativeFunction, intrinsic); 2348 2345 putDirectWithoutTransition(vm, propertyName, function, attributes); -
trunk/Source/JavaScriptCore/runtime/JSObject.h
r194863 r195528 1481 1481 (intrinsic), (attributes)) 1482 1482 1483 #define JSC_NATIVE_INTRINSIC_FUNCTION_WITHOUT_TRANSITION(jsName, cppName, attributes, length, intrinsic) \ 1484 putDirectNativeFunctionWithoutTransition(\ 1485 vm, globalObject, makeIdentifier(vm, (jsName)), (length), cppName, \ 1486 (intrinsic), (attributes)) 1487 1483 1488 // As above, but this assumes that the function you're defining doesn't have an 1484 1489 // intrinsic. 1485 1490 #define JSC_NATIVE_FUNCTION(jsName, cppName, attributes, length) \ 1486 1491 JSC_NATIVE_INTRINSIC_FUNCTION(jsName, cppName, (attributes), (length), NoIntrinsic) 1492 1493 #define JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(jsName, cppName, attributes, length) \ 1494 JSC_NATIVE_INTRINSIC_FUNCTION_WITHOUT_TRANSITION(jsName, cppName, (attributes), (length), NoIntrinsic) 1487 1495 1488 1496 // Identical helpers but for builtins. Note that currently, we don't support builtins that are … … 1492 1500 vm, globalObject, makeIdentifier(vm, (jsName)), (generatorName)(vm), (attributes)) 1493 1501 1502 #define JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION(jsName, generatorName, attributes) \ 1503 putDirectBuiltinFunctionWithoutTransition(\ 1504 vm, globalObject, makeIdentifier(vm, (jsName)), (generatorName)(vm), (attributes)) 1505 1494 1506 // Helper for defining native getters on properties. 1495 1507 #define JSC_NATIVE_INTRINSIC_GETTER(jsName, cppName, attributes, intrinsic) \ -
trunk/Source/JavaScriptCore/runtime/JSPromiseConstructor.cpp
r195460 r195528 91 91 void JSPromiseConstructor::addOwnInternalSlots(VM& vm, JSGlobalObject* globalObject) 92 92 { 93 JSC_BUILTIN_FUNCTION (vm.propertyNames->builtinNames().resolvePrivateName(), promiseConstructorResolveCodeGenerator, DontEnum | DontDelete | ReadOnly);94 JSC_BUILTIN_FUNCTION (vm.propertyNames->builtinNames().rejectPrivateName(), promiseConstructorRejectCodeGenerator, DontEnum | DontDelete | ReadOnly);93 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->builtinNames().resolvePrivateName(), promiseConstructorResolveCodeGenerator, DontEnum | DontDelete | ReadOnly); 94 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->builtinNames().rejectPrivateName(), promiseConstructorRejectCodeGenerator, DontEnum | DontDelete | ReadOnly); 95 95 } 96 96 -
trunk/Source/JavaScriptCore/runtime/JSPromisePrototype.cpp
r192865 r195528 83 83 void JSPromisePrototype::addOwnInternalSlots(VM& vm, JSGlobalObject* globalObject) 84 84 { 85 JSC_BUILTIN_FUNCTION (vm.propertyNames->builtinNames().thenPrivateName(), promisePrototypeThenCodeGenerator, DontEnum | DontDelete | ReadOnly);85 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->builtinNames().thenPrivateName(), promisePrototypeThenCodeGenerator, DontEnum | DontDelete | ReadOnly); 86 86 } 87 87 -
trunk/Source/JavaScriptCore/runtime/JSTypedArrayViewConstructor.cpp
r195460 r195528 53 53 putDirectNonIndexAccessor(vm, vm.propertyNames->speciesSymbol, speciesSymbol, Accessor | ReadOnly | DontEnum | DontDelete); 54 54 55 JSC_BUILTIN_FUNCTION (vm.propertyNames->of, typedArrayConstructorOfCodeGenerator, DontEnum);56 JSC_BUILTIN_FUNCTION (vm.propertyNames->from, typedArrayConstructorFromCodeGenerator, DontEnum);55 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->of, typedArrayConstructorOfCodeGenerator, DontEnum); 56 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->from, typedArrayConstructorFromCodeGenerator, DontEnum); 57 57 } 58 58 -
trunk/Source/JavaScriptCore/runtime/JSTypedArrayViewPrototype.cpp
r195360 r195528 250 250 JSC_NATIVE_INTRINSIC_GETTER(vm.propertyNames->byteLength, typedArrayViewProtoGetterFuncByteLength, DontEnum | ReadOnly | DontDelete, TypedArrayByteLengthIntrinsic); 251 251 JSC_NATIVE_INTRINSIC_GETTER(vm.propertyNames->byteOffset, typedArrayViewProtoGetterFuncByteOffset, DontEnum | ReadOnly | DontDelete, TypedArrayByteOffsetIntrinsic); 252 JSC_NATIVE_FUNCTION ("copyWithin", typedArrayViewProtoFuncCopyWithin, DontEnum, 2);253 JSC_BUILTIN_FUNCTION ("every", typedArrayPrototypeEveryCodeGenerator, DontEnum);254 JSC_BUILTIN_FUNCTION ("filter", typedArrayPrototypeFilterCodeGenerator, DontEnum);255 JSC_BUILTIN_FUNCTION ("sort", typedArrayPrototypeSortCodeGenerator, DontEnum);256 JSC_NATIVE_FUNCTION (vm.propertyNames->entries, typedArrayViewProtoFuncEntries, DontEnum, 0);257 JSC_NATIVE_FUNCTION ("fill", typedArrayViewProtoFuncFill, DontEnum, 1);258 JSC_BUILTIN_FUNCTION ("find", typedArrayPrototypeFindCodeGenerator, DontEnum);259 JSC_BUILTIN_FUNCTION ("findIndex", typedArrayPrototypeFindIndexCodeGenerator, DontEnum);260 JSC_BUILTIN_FUNCTION (vm.propertyNames->forEach, typedArrayPrototypeForEachCodeGenerator, DontEnum);261 JSC_NATIVE_FUNCTION ("indexOf", typedArrayViewProtoFuncIndexOf, DontEnum, 1);262 JSC_NATIVE_FUNCTION (vm.propertyNames->join, typedArrayViewProtoFuncJoin, DontEnum, 1);263 JSC_NATIVE_FUNCTION (vm.propertyNames->keys, typedArrayViewProtoFuncKeys, DontEnum, 0);264 JSC_NATIVE_FUNCTION ("lastIndexOf", typedArrayViewProtoFuncLastIndexOf, DontEnum, 1);252 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("copyWithin", typedArrayViewProtoFuncCopyWithin, DontEnum, 2); 253 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("every", typedArrayPrototypeEveryCodeGenerator, DontEnum); 254 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("filter", typedArrayPrototypeFilterCodeGenerator, DontEnum); 255 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("sort", typedArrayPrototypeSortCodeGenerator, DontEnum); 256 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->entries, typedArrayViewProtoFuncEntries, DontEnum, 0); 257 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("fill", typedArrayViewProtoFuncFill, DontEnum, 1); 258 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("find", typedArrayPrototypeFindCodeGenerator, DontEnum); 259 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("findIndex", typedArrayPrototypeFindIndexCodeGenerator, DontEnum); 260 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->forEach, typedArrayPrototypeForEachCodeGenerator, DontEnum); 261 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("indexOf", typedArrayViewProtoFuncIndexOf, DontEnum, 1); 262 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->join, typedArrayViewProtoFuncJoin, DontEnum, 1); 263 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->keys, typedArrayViewProtoFuncKeys, DontEnum, 0); 264 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("lastIndexOf", typedArrayViewProtoFuncLastIndexOf, DontEnum, 1); 265 265 JSC_NATIVE_INTRINSIC_GETTER(vm.propertyNames->length, typedArrayViewProtoGetterFuncLength, DontEnum | ReadOnly | DontDelete, TypedArrayLengthIntrinsic); 266 JSC_BUILTIN_FUNCTION ("map", typedArrayPrototypeMapCodeGenerator, DontEnum);267 JSC_BUILTIN_FUNCTION ("reduce", typedArrayPrototypeReduceCodeGenerator, DontEnum);268 JSC_BUILTIN_FUNCTION ("reduceRight", typedArrayPrototypeReduceRightCodeGenerator, DontEnum);269 JSC_NATIVE_FUNCTION ("reverse", typedArrayViewProtoFuncReverse, DontEnum, 0);270 JSC_NATIVE_FUNCTION (vm.propertyNames->set, typedArrayViewProtoFuncSet, DontEnum, 1);271 JSC_NATIVE_FUNCTION (vm.propertyNames->slice, typedArrayViewProtoFuncSlice, DontEnum, 2);272 JSC_BUILTIN_FUNCTION ("some", typedArrayPrototypeSomeCodeGenerator, DontEnum);273 JSC_NATIVE_FUNCTION (vm.propertyNames->subarray, typedArrayViewProtoFuncSubarray, DontEnum, 2);274 JSC_BUILTIN_FUNCTION (vm.propertyNames->toLocaleString, typedArrayPrototypeToLocaleStringCodeGenerator, DontEnum);275 JSC_NATIVE_FUNCTION (vm.propertyNames->toString, arrayProtoFuncToString, DontEnum, 0);266 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("map", typedArrayPrototypeMapCodeGenerator, DontEnum); 267 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("reduce", typedArrayPrototypeReduceCodeGenerator, DontEnum); 268 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("reduceRight", typedArrayPrototypeReduceRightCodeGenerator, DontEnum); 269 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("reverse", typedArrayViewProtoFuncReverse, DontEnum, 0); 270 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->set, typedArrayViewProtoFuncSet, DontEnum, 1); 271 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->slice, typedArrayViewProtoFuncSlice, DontEnum, 2); 272 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("some", typedArrayPrototypeSomeCodeGenerator, DontEnum); 273 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->subarray, typedArrayViewProtoFuncSubarray, DontEnum, 2); 274 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->toLocaleString, typedArrayPrototypeToLocaleStringCodeGenerator, DontEnum); 275 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->toString, arrayProtoFuncToString, DontEnum, 0); 276 276 JSC_NATIVE_GETTER(vm.propertyNames->toStringTagSymbol, typedArrayViewProtoGetterFuncToStringTag, DontEnum | ReadOnly); 277 277 -
trunk/Source/JavaScriptCore/runtime/MapIteratorPrototype.cpp
r191864 r195528 45 45 vm.prototypeMap.addPrototype(this); 46 46 47 JSC_NATIVE_FUNCTION (vm.propertyNames->next, MapIteratorPrototypeFuncNext, DontEnum, 0);47 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->next, MapIteratorPrototypeFuncNext, DontEnum, 0); 48 48 putDirectWithoutTransition(vm, vm.propertyNames->toStringTagSymbol, jsString(&vm, "Map Iterator"), DontEnum | ReadOnly); 49 49 } -
trunk/Source/JavaScriptCore/runtime/MapPrototype.cpp
r194838 r195528 69 69 vm.prototypeMap.addPrototype(this); 70 70 71 JSC_NATIVE_FUNCTION (vm.propertyNames->clear, mapProtoFuncClear, DontEnum, 0);72 JSC_NATIVE_FUNCTION (vm.propertyNames->deleteKeyword, mapProtoFuncDelete, DontEnum, 1);73 JSC_NATIVE_FUNCTION (vm.propertyNames->get, mapProtoFuncGet, DontEnum, 1);74 JSC_NATIVE_FUNCTION (vm.propertyNames->has, mapProtoFuncHas, DontEnum, 1);75 JSC_NATIVE_FUNCTION (vm.propertyNames->set, mapProtoFuncSet, DontEnum, 2);76 JSC_NATIVE_FUNCTION (vm.propertyNames->keys, mapProtoFuncKeys, DontEnum, 0);77 JSC_NATIVE_FUNCTION (vm.propertyNames->values, mapProtoFuncValues, DontEnum, 0);71 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->clear, mapProtoFuncClear, DontEnum, 0); 72 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->deleteKeyword, mapProtoFuncDelete, DontEnum, 1); 73 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->get, mapProtoFuncGet, DontEnum, 1); 74 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->has, mapProtoFuncHas, DontEnum, 1); 75 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->set, mapProtoFuncSet, DontEnum, 2); 76 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->keys, mapProtoFuncKeys, DontEnum, 0); 77 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->values, mapProtoFuncValues, DontEnum, 0); 78 78 79 79 // Private get / set operations. 80 JSC_NATIVE_FUNCTION (vm.propertyNames->getPrivateName, mapProtoFuncGet, DontEnum, 1);81 JSC_NATIVE_FUNCTION (vm.propertyNames->setPrivateName, mapProtoFuncSet, DontEnum, 2);80 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->getPrivateName, mapProtoFuncGet, DontEnum, 1); 81 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->setPrivateName, mapProtoFuncSet, DontEnum, 2); 82 82 83 83 JSFunction* entries = JSFunction::create(vm, globalObject, 0, vm.propertyNames->entries.string(), mapProtoFuncEntries); -
trunk/Source/JavaScriptCore/runtime/NumberPrototype.cpp
r194534 r195528 83 83 84 84 #if ENABLE(INTL) 85 JSC_BUILTIN_FUNCTION ("toLocaleString", numberPrototypeToLocaleStringCodeGenerator, DontEnum);85 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("toLocaleString", numberPrototypeToLocaleStringCodeGenerator, DontEnum); 86 86 #else 87 87 UNUSED_PARAM(globalObject); -
trunk/Source/JavaScriptCore/runtime/ObjectConstructor.cpp
r192204 r195528 98 98 putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), ReadOnly | DontEnum | DontDelete); 99 99 100 JSC_NATIVE_FUNCTION ("getOwnPropertySymbols", objectConstructorGetOwnPropertySymbols, DontEnum, 1);101 JSC_NATIVE_FUNCTION (vm.propertyNames->getPrototypeOfPrivateName, objectConstructorGetPrototypeOf, DontEnum, 1);102 JSC_NATIVE_FUNCTION (vm.propertyNames->getOwnPropertyNamesPrivateName, objectConstructorGetOwnPropertyNames, DontEnum, 1);100 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("getOwnPropertySymbols", objectConstructorGetOwnPropertySymbols, DontEnum, 1); 101 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->getPrototypeOfPrivateName, objectConstructorGetPrototypeOf, DontEnum, 1); 102 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->getOwnPropertyNamesPrivateName, objectConstructorGetOwnPropertyNames, DontEnum, 1); 103 103 } 104 104 -
trunk/Source/JavaScriptCore/runtime/ObjectPrototype.cpp
r192321 r195528 58 58 vm.prototypeMap.addPrototype(this); 59 59 60 JSC_NATIVE_FUNCTION (vm.propertyNames->toString, objectProtoFuncToString, DontEnum, 0);61 JSC_NATIVE_FUNCTION (vm.propertyNames->toLocaleString, objectProtoFuncToLocaleString, DontEnum, 0);62 JSC_NATIVE_FUNCTION (vm.propertyNames->valueOf, objectProtoFuncValueOf, DontEnum, 0);63 JSC_NATIVE_FUNCTION (vm.propertyNames->hasOwnProperty, objectProtoFuncHasOwnProperty, DontEnum, 1);64 JSC_NATIVE_FUNCTION (vm.propertyNames->propertyIsEnumerable, objectProtoFuncPropertyIsEnumerable, DontEnum, 1);65 JSC_NATIVE_FUNCTION (vm.propertyNames->isPrototypeOf, objectProtoFuncIsPrototypeOf, DontEnum, 1);66 JSC_NATIVE_FUNCTION (vm.propertyNames->__defineGetter__, objectProtoFuncDefineGetter, DontEnum, 2);67 JSC_NATIVE_FUNCTION (vm.propertyNames->__defineSetter__, objectProtoFuncDefineSetter, DontEnum, 2);68 JSC_NATIVE_FUNCTION (vm.propertyNames->__lookupGetter__, objectProtoFuncLookupGetter, DontEnum, 1);69 JSC_NATIVE_FUNCTION (vm.propertyNames->__lookupSetter__, objectProtoFuncLookupSetter, DontEnum, 1);60 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->toString, objectProtoFuncToString, DontEnum, 0); 61 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->toLocaleString, objectProtoFuncToLocaleString, DontEnum, 0); 62 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->valueOf, objectProtoFuncValueOf, DontEnum, 0); 63 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->hasOwnProperty, objectProtoFuncHasOwnProperty, DontEnum, 1); 64 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->propertyIsEnumerable, objectProtoFuncPropertyIsEnumerable, DontEnum, 1); 65 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->isPrototypeOf, objectProtoFuncIsPrototypeOf, DontEnum, 1); 66 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->__defineGetter__, objectProtoFuncDefineGetter, DontEnum, 2); 67 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->__defineSetter__, objectProtoFuncDefineSetter, DontEnum, 2); 68 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->__lookupGetter__, objectProtoFuncLookupGetter, DontEnum, 1); 69 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->__lookupSetter__, objectProtoFuncLookupSetter, DontEnum, 1); 70 70 } 71 71 -
trunk/Source/JavaScriptCore/runtime/SetIteratorPrototype.cpp
r191864 r195528 45 45 vm.prototypeMap.addPrototype(this); 46 46 47 JSC_NATIVE_FUNCTION (vm.propertyNames->next, SetIteratorPrototypeFuncNext, DontEnum, 0);47 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->next, SetIteratorPrototypeFuncNext, DontEnum, 0); 48 48 putDirectWithoutTransition(vm, vm.propertyNames->toStringTagSymbol, jsString(&vm, "Set Iterator"), DontEnum | ReadOnly); 49 49 } -
trunk/Source/JavaScriptCore/runtime/SetPrototype.cpp
r194838 r195528 68 68 vm.prototypeMap.addPrototype(this); 69 69 70 JSC_NATIVE_FUNCTION (vm.propertyNames->add, setProtoFuncAdd, DontEnum, 1);71 JSC_NATIVE_FUNCTION (vm.propertyNames->clear, setProtoFuncClear, DontEnum, 0);72 JSC_NATIVE_FUNCTION (vm.propertyNames->deleteKeyword, setProtoFuncDelete, DontEnum, 1);73 JSC_NATIVE_FUNCTION (vm.propertyNames->has, setProtoFuncHas, DontEnum, 1);74 JSC_NATIVE_FUNCTION (vm.propertyNames->entries, setProtoFuncEntries, DontEnum, 0);70 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->add, setProtoFuncAdd, DontEnum, 1); 71 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->clear, setProtoFuncClear, DontEnum, 0); 72 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->deleteKeyword, setProtoFuncDelete, DontEnum, 1); 73 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->has, setProtoFuncHas, DontEnum, 1); 74 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->entries, setProtoFuncEntries, DontEnum, 0); 75 75 76 76 JSFunction* values = JSFunction::create(vm, globalObject, 0, vm.propertyNames->values.string(), setProtoFuncValues); -
trunk/Source/JavaScriptCore/runtime/StringPrototype.cpp
r194509 r195528 114 114 ASSERT(inherits(info())); 115 115 116 JSC_NATIVE_INTRINSIC_FUNCTION (vm.propertyNames->toString, stringProtoFuncToString, DontEnum, 0, StringPrototypeValueOfIntrinsic);117 JSC_NATIVE_INTRINSIC_FUNCTION (vm.propertyNames->valueOf, stringProtoFuncToString, DontEnum, 0, StringPrototypeValueOfIntrinsic);118 JSC_NATIVE_INTRINSIC_FUNCTION ("charAt", stringProtoFuncCharAt, DontEnum, 1, CharAtIntrinsic);119 JSC_NATIVE_INTRINSIC_FUNCTION ("charCodeAt", stringProtoFuncCharCodeAt, DontEnum, 1, CharCodeAtIntrinsic);120 JSC_NATIVE_FUNCTION ("codePointAt", stringProtoFuncCodePointAt, DontEnum, 1);121 JSC_NATIVE_FUNCTION ("concat", stringProtoFuncConcat, DontEnum, 1);122 JSC_NATIVE_FUNCTION ("indexOf", stringProtoFuncIndexOf, DontEnum, 1);123 JSC_NATIVE_FUNCTION ("lastIndexOf", stringProtoFuncLastIndexOf, DontEnum, 1);124 JSC_NATIVE_FUNCTION ("match", stringProtoFuncMatch, DontEnum, 1);125 JSC_NATIVE_FUNCTION ("repeat", stringProtoFuncRepeat, DontEnum, 1);126 JSC_NATIVE_FUNCTION ("replace", stringProtoFuncReplace, DontEnum, 2);127 JSC_NATIVE_FUNCTION ("search", stringProtoFuncSearch, DontEnum, 1);128 JSC_NATIVE_FUNCTION ("slice", stringProtoFuncSlice, DontEnum, 2);129 JSC_NATIVE_FUNCTION ("split", stringProtoFuncSplit, DontEnum, 2);130 JSC_NATIVE_FUNCTION ("substr", stringProtoFuncSubstr, DontEnum, 2);131 JSC_NATIVE_FUNCTION ("substring", stringProtoFuncSubstring, DontEnum, 2);132 JSC_NATIVE_FUNCTION ("toLowerCase", stringProtoFuncToLowerCase, DontEnum, 0);133 JSC_NATIVE_FUNCTION ("toUpperCase", stringProtoFuncToUpperCase, DontEnum, 0);116 JSC_NATIVE_INTRINSIC_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->toString, stringProtoFuncToString, DontEnum, 0, StringPrototypeValueOfIntrinsic); 117 JSC_NATIVE_INTRINSIC_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->valueOf, stringProtoFuncToString, DontEnum, 0, StringPrototypeValueOfIntrinsic); 118 JSC_NATIVE_INTRINSIC_FUNCTION_WITHOUT_TRANSITION("charAt", stringProtoFuncCharAt, DontEnum, 1, CharAtIntrinsic); 119 JSC_NATIVE_INTRINSIC_FUNCTION_WITHOUT_TRANSITION("charCodeAt", stringProtoFuncCharCodeAt, DontEnum, 1, CharCodeAtIntrinsic); 120 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("codePointAt", stringProtoFuncCodePointAt, DontEnum, 1); 121 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("concat", stringProtoFuncConcat, DontEnum, 1); 122 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("indexOf", stringProtoFuncIndexOf, DontEnum, 1); 123 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("lastIndexOf", stringProtoFuncLastIndexOf, DontEnum, 1); 124 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("match", stringProtoFuncMatch, DontEnum, 1); 125 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("repeat", stringProtoFuncRepeat, DontEnum, 1); 126 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("replace", stringProtoFuncReplace, DontEnum, 2); 127 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("search", stringProtoFuncSearch, DontEnum, 1); 128 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("slice", stringProtoFuncSlice, DontEnum, 2); 129 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("split", stringProtoFuncSplit, DontEnum, 2); 130 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("substr", stringProtoFuncSubstr, DontEnum, 2); 131 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("substring", stringProtoFuncSubstring, DontEnum, 2); 132 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("toLowerCase", stringProtoFuncToLowerCase, DontEnum, 0); 133 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("toUpperCase", stringProtoFuncToUpperCase, DontEnum, 0); 134 134 #if ENABLE(INTL) 135 JSC_BUILTIN_FUNCTION ("localeCompare", stringPrototypeLocaleCompareCodeGenerator, DontEnum);136 JSC_NATIVE_FUNCTION ("toLocaleLowerCase", stringProtoFuncToLocaleLowerCase, DontEnum, 0);137 JSC_NATIVE_FUNCTION ("toLocaleUpperCase", stringProtoFuncToLocaleUpperCase, DontEnum, 0);135 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION("localeCompare", stringPrototypeLocaleCompareCodeGenerator, DontEnum); 136 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("toLocaleLowerCase", stringProtoFuncToLocaleLowerCase, DontEnum, 0); 137 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("toLocaleUpperCase", stringProtoFuncToLocaleUpperCase, DontEnum, 0); 138 138 #else 139 JSC_NATIVE_FUNCTION ("localeCompare", stringProtoFuncLocaleCompare, DontEnum, 1);140 JSC_NATIVE_FUNCTION ("toLocaleLowerCase", stringProtoFuncToLowerCase, DontEnum, 0);141 JSC_NATIVE_FUNCTION ("toLocaleUpperCase", stringProtoFuncToUpperCase, DontEnum, 0);139 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("localeCompare", stringProtoFuncLocaleCompare, DontEnum, 1); 140 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("toLocaleLowerCase", stringProtoFuncToLowerCase, DontEnum, 0); 141 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("toLocaleUpperCase", stringProtoFuncToUpperCase, DontEnum, 0); 142 142 #endif 143 JSC_NATIVE_FUNCTION ("big", stringProtoFuncBig, DontEnum, 0);144 JSC_NATIVE_FUNCTION ("small", stringProtoFuncSmall, DontEnum, 0);145 JSC_NATIVE_FUNCTION ("blink", stringProtoFuncBlink, DontEnum, 0);146 JSC_NATIVE_FUNCTION ("bold", stringProtoFuncBold, DontEnum, 0);147 JSC_NATIVE_FUNCTION ("fixed", stringProtoFuncFixed, DontEnum, 0);148 JSC_NATIVE_FUNCTION ("italics", stringProtoFuncItalics, DontEnum, 0);149 JSC_NATIVE_FUNCTION ("strike", stringProtoFuncStrike, DontEnum, 0);150 JSC_NATIVE_FUNCTION ("sub", stringProtoFuncSub, DontEnum, 0);151 JSC_NATIVE_FUNCTION ("sup", stringProtoFuncSup, DontEnum, 0);152 JSC_NATIVE_FUNCTION ("fontcolor", stringProtoFuncFontcolor, DontEnum, 1);153 JSC_NATIVE_FUNCTION ("fontsize", stringProtoFuncFontsize, DontEnum, 1);154 JSC_NATIVE_FUNCTION ("anchor", stringProtoFuncAnchor, DontEnum, 1);155 JSC_NATIVE_FUNCTION ("link", stringProtoFuncLink, DontEnum, 1);156 JSC_NATIVE_FUNCTION ("trim", stringProtoFuncTrim, DontEnum, 0);157 JSC_NATIVE_FUNCTION ("trimLeft", stringProtoFuncTrimLeft, DontEnum, 0);158 JSC_NATIVE_FUNCTION ("trimRight", stringProtoFuncTrimRight, DontEnum, 0);159 JSC_NATIVE_FUNCTION ("startsWith", stringProtoFuncStartsWith, DontEnum, 1);160 JSC_NATIVE_FUNCTION ("endsWith", stringProtoFuncEndsWith, DontEnum, 1);161 JSC_NATIVE_FUNCTION ("includes", stringProtoFuncIncludes, DontEnum, 1);162 JSC_NATIVE_FUNCTION ("normalize", stringProtoFuncNormalize, DontEnum, 1);163 JSC_NATIVE_FUNCTION (vm.propertyNames->iteratorSymbol, stringProtoFuncIterator, DontEnum, 0);164 165 JSC_NATIVE_INTRINSIC_FUNCTION (vm.propertyNames->charCodeAtPrivateName, stringProtoFuncCharCodeAt, DontEnum, 1, CharCodeAtIntrinsic);143 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("big", stringProtoFuncBig, DontEnum, 0); 144 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("small", stringProtoFuncSmall, DontEnum, 0); 145 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("blink", stringProtoFuncBlink, DontEnum, 0); 146 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("bold", stringProtoFuncBold, DontEnum, 0); 147 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("fixed", stringProtoFuncFixed, DontEnum, 0); 148 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("italics", stringProtoFuncItalics, DontEnum, 0); 149 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("strike", stringProtoFuncStrike, DontEnum, 0); 150 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("sub", stringProtoFuncSub, DontEnum, 0); 151 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("sup", stringProtoFuncSup, DontEnum, 0); 152 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("fontcolor", stringProtoFuncFontcolor, DontEnum, 1); 153 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("fontsize", stringProtoFuncFontsize, DontEnum, 1); 154 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("anchor", stringProtoFuncAnchor, DontEnum, 1); 155 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("link", stringProtoFuncLink, DontEnum, 1); 156 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("trim", stringProtoFuncTrim, DontEnum, 0); 157 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("trimLeft", stringProtoFuncTrimLeft, DontEnum, 0); 158 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("trimRight", stringProtoFuncTrimRight, DontEnum, 0); 159 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("startsWith", stringProtoFuncStartsWith, DontEnum, 1); 160 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("endsWith", stringProtoFuncEndsWith, DontEnum, 1); 161 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("includes", stringProtoFuncIncludes, DontEnum, 1); 162 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION("normalize", stringProtoFuncNormalize, DontEnum, 1); 163 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->iteratorSymbol, stringProtoFuncIterator, DontEnum, 0); 164 165 JSC_NATIVE_INTRINSIC_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->charCodeAtPrivateName, stringProtoFuncCharCodeAt, DontEnum, 1, CharCodeAtIntrinsic); 166 166 167 167 // The constructor will be added later, after StringConstructor has been built -
trunk/Source/JavaScriptCore/runtime/WeakMapPrototype.cpp
r191864 r195528 47 47 vm.prototypeMap.addPrototype(this); 48 48 49 JSC_NATIVE_FUNCTION (vm.propertyNames->deleteKeyword, protoFuncWeakMapDelete, DontEnum, 1);50 JSC_NATIVE_FUNCTION (vm.propertyNames->get, protoFuncWeakMapGet, DontEnum, 1);51 JSC_NATIVE_FUNCTION (vm.propertyNames->has, protoFuncWeakMapHas, DontEnum, 1);52 JSC_NATIVE_FUNCTION (vm.propertyNames->set, protoFuncWeakMapSet, DontEnum, 2);49 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->deleteKeyword, protoFuncWeakMapDelete, DontEnum, 1); 50 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->get, protoFuncWeakMapGet, DontEnum, 1); 51 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->has, protoFuncWeakMapHas, DontEnum, 1); 52 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->set, protoFuncWeakMapSet, DontEnum, 2); 53 53 54 54 putDirectWithoutTransition(vm, vm.propertyNames->toStringTagSymbol, jsString(&vm, "WeakMap"), DontEnum | ReadOnly); -
trunk/Source/JavaScriptCore/runtime/WeakSetPrototype.cpp
r191864 r195528 46 46 vm.prototypeMap.addPrototype(this); 47 47 48 JSC_NATIVE_FUNCTION (vm.propertyNames->deleteKeyword, protoFuncWeakSetDelete, DontEnum, 1);49 JSC_NATIVE_FUNCTION (vm.propertyNames->has, protoFuncWeakSetHas, DontEnum, 1);50 JSC_NATIVE_FUNCTION (vm.propertyNames->add, protoFuncWeakSetAdd, DontEnum, 1);48 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->deleteKeyword, protoFuncWeakSetDelete, DontEnum, 1); 49 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->has, protoFuncWeakSetHas, DontEnum, 1); 50 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->add, protoFuncWeakSetAdd, DontEnum, 1); 51 51 52 52 putDirectWithoutTransition(vm, vm.propertyNames->toStringTagSymbol, jsString(&vm, "WeakSet"), DontEnum | ReadOnly);
Note: See TracChangeset
for help on using the changeset viewer.