Changeset 196331 in webkit


Ignore:
Timestamp:
Feb 9, 2016 1:19:59 PM (8 years ago)
Author:
barraclough@apple.com
Message:

GetValueFunc/PutValueFunc should not take both slotBase and thisValue
https://bugs.webkit.org/show_bug.cgi?id=154009

Reviewed by Geoff Garen.

In JavaScript there are two types of properties - regular value properties, and accessor properties.
One difference between these is how they are reflected by getOwnPropertyDescriptor, and another is
what object they operate on in the case of a prototype access. If you access a value property of a
prototype object it return a value pertinent to the prototype, but in the case of a prototype object
returning an accessor, then the accessor function is applied to the base object of the access.

JSC supports special 'custom' properties implemented as a c++ callback, and these custom properties
can be used to implement either value- or accessor-like behavior. getOwnPropertyDescriptor behavior
is selected via the CustomAccessor attribute. Value- or accessor-like object selection is current
supported by passing both the slotBase and the thisValue to the callback,and hoping it uses the
right one. This is probably inefficient, bug-prone, and leads to crazy like JSBoundSlotBaseFunction.

Instead, just pass one thisValue to the callback functions, consistent with CustomAccessor.

Source/JavaScriptCore:

  • API/JSCallbackObject.h:
  • API/JSCallbackObjectFunctions.h:

(JSC::JSCallbackObject<Parent>::getStaticValue):
(JSC::JSCallbackObject<Parent>::staticFunctionGetter):
(JSC::JSCallbackObject<Parent>::callbackGetter):

  • Merged slotBase & thisValue to custom property callbacks.
  • bytecode/PolymorphicAccess.cpp:

(JSC::AccessCase::generate):

  • Modified the call being JIT generated - GetValueFunc/PutValueFunc now only take 3, rather than 4 arguments. Selects which one to keep/drop based on access type.

(WTF::printInternal):

  • bytecode/PolymorphicAccess.h:

(JSC::AccessCase::isGet):
(JSC::AccessCase::isPut):
(JSC::AccessCase::isIn):
(JSC::AccessCase::doesCalls):
(JSC::AccessCase::isGetter):

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeForStubInfo):

  • jit/Repatch.cpp:

(JSC::tryCacheGetByID):
(JSC::tryCachePutByID):

  • Split the CustomGetter/Setter access types into Value/Accessor variants.
  • jsc.cpp:

(WTF::CustomGetter::getOwnPropertySlot):
(WTF::CustomGetter::customGetter):
(WTF::RuntimeArray::RuntimeArray):
(WTF::RuntimeArray::lengthGetter):

  • Merged slotBase & thisValue to custom property callbacks.
  • runtime/CustomGetterSetter.cpp:

(JSC::callCustomSetter):

  • Pass 3 arguments when calling PutValueFunc.
  • runtime/CustomGetterSetter.h:
  • runtime/JSBoundSlotBaseFunction.cpp:

(JSC::boundSlotBaseFunctionCall):
(JSC::JSBoundSlotBaseFunction::JSBoundSlotBaseFunction):

  • runtime/JSCJSValue.cpp:

(JSC::JSValue::putToPrimitive):

  • callCustomSetter currently takes a flag to distinguish value/accessor calls.
  • runtime/JSFunction.cpp:

(JSC::retrieveArguments):
(JSC::JSFunction::argumentsGetter):
(JSC::retrieveCallerFunction):
(JSC::JSFunction::callerGetter):
(JSC::JSFunction::lengthGetter):
(JSC::JSFunction::nameGetter):

  • runtime/JSFunction.h:
  • runtime/JSModuleNamespaceObject.cpp:

(JSC::JSModuleNamespaceObject::visitChildren):
(JSC::callbackGetter):

  • Merged slotBase & thisValue to custom property callbacks.
  • runtime/JSObject.cpp:

(JSC::JSObject::putInlineSlow):

  • callCustomSetter currently takes a flag to distinguish value/accessor calls.
  • runtime/Lookup.h:

(JSC::putEntry):

  • split PutPropertySlot setCustom into Value/Accessor variants.
  • runtime/PropertySlot.cpp:

(JSC::PropertySlot::functionGetter):
(JSC::PropertySlot::customGetter):

  • runtime/PropertySlot.h:

(JSC::PropertySlot::PropertySlot):
(JSC::PropertySlot::getValue):

  • added customGetter helper to call GetValueFunc.
  • runtime/PutPropertySlot.h:

(JSC::PutPropertySlot::PutPropertySlot):
(JSC::PutPropertySlot::setNewProperty):
(JSC::PutPropertySlot::setCustomValue):
(JSC::PutPropertySlot::setCustomAccessor):
(JSC::PutPropertySlot::setThisValue):
(JSC::PutPropertySlot::customSetter):
(JSC::PutPropertySlot::context):
(JSC::PutPropertySlot::isStrictMode):
(JSC::PutPropertySlot::isCacheablePut):
(JSC::PutPropertySlot::isCacheableSetter):
(JSC::PutPropertySlot::isCacheableCustom):
(JSC::PutPropertySlot::isCustomAccessor):
(JSC::PutPropertySlot::isInitialization):
(JSC::PutPropertySlot::cachedOffset):
(JSC::PutPropertySlot::setCustomProperty): Deleted.

  • split PutPropertySlot setCustom into Value/Accessor variants.
  • runtime/RegExpConstructor.cpp:

(JSC::RegExpConstructor::getOwnPropertySlot):
(JSC::regExpConstructorDollar1):
(JSC::regExpConstructorDollar2):
(JSC::regExpConstructorDollar3):
(JSC::regExpConstructorDollar4):
(JSC::regExpConstructorDollar5):
(JSC::regExpConstructorDollar6):
(JSC::regExpConstructorDollar7):
(JSC::regExpConstructorDollar8):
(JSC::regExpConstructorDollar9):
(JSC::regExpConstructorInput):
(JSC::regExpConstructorMultiline):
(JSC::regExpConstructorLastMatch):
(JSC::regExpConstructorLastParen):
(JSC::regExpConstructorLeftContext):
(JSC::regExpConstructorRightContext):
(JSC::setRegExpConstructorInput):
(JSC::setRegExpConstructorMultiline):

  • runtime/RegExpObject.cpp:

(JSC::RegExpObject::defineOwnProperty):
(JSC::regExpObjectSetLastIndexStrict):
(JSC::regExpObjectSetLastIndexNonStrict):
(JSC::RegExpObject::put):

  • Merged slotBase & thisValue to custom property callbacks.

Source/WebCore:

  • bindings/js/JSDOMBinding.cpp:

(WebCore::printErrorMessageForFrame):
(WebCore::objectToStringFunctionGetter):

  • bindings/js/JSDOMBinding.h:

(WebCore::propertyNameToString):
(WebCore::getStaticValueSlotEntryWithoutCaching<JSDOMObject>):
(WebCore::nonCachingStaticFunctionGetter):

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::JSDOMWindow::visitAdditionalChildren):
(WebCore::childFrameGetter):
(WebCore::namedItemGetter):
(WebCore::jsDOMWindowWebKit):
(WebCore::jsDOMWindowIndexedDB):

  • add missing null check, in case indexDB acessor is applied to non-window object.
  • bindings/js/JSPluginElementFunctions.cpp:

(WebCore::pluginScriptObject):
(WebCore::pluginElementPropertyGetter):

  • bindings/js/JSPluginElementFunctions.h:
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):

  • bridge/runtime_array.cpp:

(JSC::RuntimeArray::destroy):
(JSC::RuntimeArray::lengthGetter):

  • bridge/runtime_array.h:
  • bridge/runtime_method.cpp:

(JSC::RuntimeMethod::finishCreation):
(JSC::RuntimeMethod::lengthGetter):

  • bridge/runtime_method.h:
  • bridge/runtime_object.cpp:

(JSC::Bindings::RuntimeObject::invalidate):
(JSC::Bindings::RuntimeObject::fallbackObjectGetter):
(JSC::Bindings::RuntimeObject::fieldGetter):
(JSC::Bindings::RuntimeObject::methodGetter):

  • bridge/runtime_object.h:
    • Merged slotBase & thisValue to custom property callbacks.

Source/WebKit2:

  • WebProcess/Plugins/Netscape/JSNPObject.cpp:

(WebKit::JSNPObject::getOwnPropertyNames):
(WebKit::JSNPObject::propertyGetter):
(WebKit::JSNPObject::methodGetter):

  • WebProcess/Plugins/Netscape/JSNPObject.h:
    • Merged slotBase & thisValue to custom property callbacks.
Location:
trunk/Source
Files:
60 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/API/JSCallbackObject.h

    r194369 r196331  
    212212   
    213213    JSValue getStaticValue(ExecState*, PropertyName);
    214     static EncodedJSValue staticFunctionGetter(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    215     static EncodedJSValue callbackGetter(ExecState*, JSObject*, EncodedJSValue, PropertyName);
     214    static EncodedJSValue staticFunctionGetter(ExecState*, EncodedJSValue, PropertyName);
     215    static EncodedJSValue callbackGetter(ExecState*, EncodedJSValue, PropertyName);
    216216
    217217    std::unique_ptr<JSCallbackObjectData> m_callbackObjectData;
  • trunk/Source/JavaScriptCore/API/JSCallbackObjectFunctions.h

    r187279 r196331  
    601601
    602602template <class Parent>
    603 EncodedJSValue JSCallbackObject<Parent>::staticFunctionGetter(ExecState* exec, JSObject* slotParent, EncodedJSValue, PropertyName propertyName)
    604 {
    605     JSCallbackObject* thisObj = asCallbackObject(slotParent);
     603EncodedJSValue JSCallbackObject<Parent>::staticFunctionGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName propertyName)
     604{
     605    JSCallbackObject* thisObj = asCallbackObject(thisValue);
    606606   
    607607    // Check for cached or override property.
     
    629629
    630630template <class Parent>
    631 EncodedJSValue JSCallbackObject<Parent>::callbackGetter(ExecState* exec, JSObject* slotParent, EncodedJSValue, PropertyName propertyName)
    632 {
    633     JSCallbackObject* thisObj = asCallbackObject(slotParent);
     631EncodedJSValue JSCallbackObject<Parent>::callbackGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName propertyName)
     632{
     633    JSCallbackObject* thisObj = asCallbackObject(thisValue);
    634634   
    635635    JSObjectRef thisRef = toRef(thisObj);
  • trunk/Source/JavaScriptCore/ChangeLog

    r196323 r196331  
     12016-02-07  Gavin Barraclough  <barraclough@apple.com>
     2
     3        GetValueFunc/PutValueFunc should not take both slotBase and thisValue
     4        https://bugs.webkit.org/show_bug.cgi?id=154009
     5
     6        Reviewed by Geoff Garen.
     7
     8        In JavaScript there are two types of properties - regular value properties, and accessor properties.
     9        One difference between these is how they are reflected by getOwnPropertyDescriptor, and another is
     10        what object they operate on in the case of a prototype access. If you access a value property of a
     11        prototype object it return a value pertinent to the prototype, but in the case of a prototype object
     12        returning an accessor, then the accessor function is applied to the base object of the access.
     13
     14        JSC supports special 'custom' properties implemented as a c++ callback, and these custom properties
     15        can be used to implement either value- or accessor-like behavior. getOwnPropertyDescriptor behavior
     16        is selected via the CustomAccessor attribute. Value- or accessor-like object selection is current
     17        supported by passing both the slotBase and the thisValue to the callback,and hoping it uses the
     18        right one. This is probably inefficient, bug-prone, and leads to crazy like JSBoundSlotBaseFunction.
     19
     20        Instead, just pass one thisValue to the callback functions, consistent with CustomAccessor.
     21
     22        * API/JSCallbackObject.h:
     23        * API/JSCallbackObjectFunctions.h:
     24        (JSC::JSCallbackObject<Parent>::getStaticValue):
     25        (JSC::JSCallbackObject<Parent>::staticFunctionGetter):
     26        (JSC::JSCallbackObject<Parent>::callbackGetter):
     27            - Merged slotBase & thisValue to custom property callbacks.
     28        * bytecode/PolymorphicAccess.cpp:
     29        (JSC::AccessCase::generate):
     30            - Modified the call being JIT generated - GetValueFunc/PutValueFunc now only take 3,
     31              rather than 4 arguments. Selects which one to keep/drop based on access type.
     32        (WTF::printInternal):
     33        * bytecode/PolymorphicAccess.h:
     34        (JSC::AccessCase::isGet):
     35        (JSC::AccessCase::isPut):
     36        (JSC::AccessCase::isIn):
     37        (JSC::AccessCase::doesCalls):
     38        (JSC::AccessCase::isGetter):
     39        * bytecode/PutByIdStatus.cpp:
     40        (JSC::PutByIdStatus::computeForStubInfo):
     41        * jit/Repatch.cpp:
     42        (JSC::tryCacheGetByID):
     43        (JSC::tryCachePutByID):
     44            - Split the CustomGetter/Setter access types into Value/Accessor variants.
     45        * jsc.cpp:
     46        (WTF::CustomGetter::getOwnPropertySlot):
     47        (WTF::CustomGetter::customGetter):
     48        (WTF::RuntimeArray::RuntimeArray):
     49        (WTF::RuntimeArray::lengthGetter):
     50            - Merged slotBase & thisValue to custom property callbacks.
     51        * runtime/CustomGetterSetter.cpp:
     52        (JSC::callCustomSetter):
     53            - Pass 3 arguments when calling PutValueFunc.
     54        * runtime/CustomGetterSetter.h:
     55        * runtime/JSBoundSlotBaseFunction.cpp:
     56        (JSC::boundSlotBaseFunctionCall):
     57        (JSC::JSBoundSlotBaseFunction::JSBoundSlotBaseFunction):
     58        * runtime/JSCJSValue.cpp:
     59        (JSC::JSValue::putToPrimitive):
     60            - callCustomSetter currently takes a flag to distinguish value/accessor calls.
     61        * runtime/JSFunction.cpp:
     62        (JSC::retrieveArguments):
     63        (JSC::JSFunction::argumentsGetter):
     64        (JSC::retrieveCallerFunction):
     65        (JSC::JSFunction::callerGetter):
     66        (JSC::JSFunction::lengthGetter):
     67        (JSC::JSFunction::nameGetter):
     68        * runtime/JSFunction.h:
     69        * runtime/JSModuleNamespaceObject.cpp:
     70        (JSC::JSModuleNamespaceObject::visitChildren):
     71        (JSC::callbackGetter):
     72            - Merged slotBase & thisValue to custom property callbacks.
     73        * runtime/JSObject.cpp:
     74        (JSC::JSObject::putInlineSlow):
     75            - callCustomSetter currently takes a flag to distinguish value/accessor calls.
     76        * runtime/Lookup.h:
     77        (JSC::putEntry):
     78            - split PutPropertySlot setCustom into Value/Accessor variants.
     79        * runtime/PropertySlot.cpp:
     80        (JSC::PropertySlot::functionGetter):
     81        (JSC::PropertySlot::customGetter):
     82        * runtime/PropertySlot.h:
     83        (JSC::PropertySlot::PropertySlot):
     84        (JSC::PropertySlot::getValue):
     85            - added customGetter helper to call GetValueFunc.
     86        * runtime/PutPropertySlot.h:
     87        (JSC::PutPropertySlot::PutPropertySlot):
     88        (JSC::PutPropertySlot::setNewProperty):
     89        (JSC::PutPropertySlot::setCustomValue):
     90        (JSC::PutPropertySlot::setCustomAccessor):
     91        (JSC::PutPropertySlot::setThisValue):
     92        (JSC::PutPropertySlot::customSetter):
     93        (JSC::PutPropertySlot::context):
     94        (JSC::PutPropertySlot::isStrictMode):
     95        (JSC::PutPropertySlot::isCacheablePut):
     96        (JSC::PutPropertySlot::isCacheableSetter):
     97        (JSC::PutPropertySlot::isCacheableCustom):
     98        (JSC::PutPropertySlot::isCustomAccessor):
     99        (JSC::PutPropertySlot::isInitialization):
     100        (JSC::PutPropertySlot::cachedOffset):
     101        (JSC::PutPropertySlot::setCustomProperty): Deleted.
     102            - split PutPropertySlot setCustom into Value/Accessor variants.
     103        * runtime/RegExpConstructor.cpp:
     104        (JSC::RegExpConstructor::getOwnPropertySlot):
     105        (JSC::regExpConstructorDollar1):
     106        (JSC::regExpConstructorDollar2):
     107        (JSC::regExpConstructorDollar3):
     108        (JSC::regExpConstructorDollar4):
     109        (JSC::regExpConstructorDollar5):
     110        (JSC::regExpConstructorDollar6):
     111        (JSC::regExpConstructorDollar7):
     112        (JSC::regExpConstructorDollar8):
     113        (JSC::regExpConstructorDollar9):
     114        (JSC::regExpConstructorInput):
     115        (JSC::regExpConstructorMultiline):
     116        (JSC::regExpConstructorLastMatch):
     117        (JSC::regExpConstructorLastParen):
     118        (JSC::regExpConstructorLeftContext):
     119        (JSC::regExpConstructorRightContext):
     120        (JSC::setRegExpConstructorInput):
     121        (JSC::setRegExpConstructorMultiline):
     122        * runtime/RegExpObject.cpp:
     123        (JSC::RegExpObject::defineOwnProperty):
     124        (JSC::regExpObjectSetLastIndexStrict):
     125        (JSC::regExpObjectSetLastIndexNonStrict):
     126        (JSC::RegExpObject::put):
     127            - Merged slotBase & thisValue to custom property callbacks.
     128
    11292016-02-09  Filip Pizlo  <fpizlo@apple.com>
    2130
  • trunk/Source/JavaScriptCore/bytecode/PolymorphicAccess.cpp

    r194496 r196331  
    524524    case Getter:
    525525    case Setter:
    526     case CustomGetter:
    527     case CustomSetter: {
     526    case CustomValueGetter:
     527    case CustomAccessorGetter:
     528    case CustomValueSetter:
     529    case CustomAccessorSetter: {
    528530        if (isValidOffset(m_offset)) {
    529531            Structure* currStructure;
     
    554556
    555557        GPRReg loadedValueGPR = InvalidGPRReg;
    556         if (m_type != CustomGetter && m_type != CustomSetter) {
     558        if (m_type != CustomValueGetter && m_type != CustomAccessorGetter && m_type != CustomValueSetter && m_type != CustomAccessorSetter) {
    557559            if (m_type == Load)
    558560                loadedValueGPR = valueRegs.payloadGPR();
     
    751753                jit.makeSpaceOnStackForCCall();
    752754
    753             // getter: EncodedJSValue (*GetValueFunc)(ExecState*, JSObject* slotBase, EncodedJSValue thisValue, PropertyName);
    754             // setter: void (*PutValueFunc)(ExecState*, JSObject* base, EncodedJSValue thisObject, EncodedJSValue value);
     755            // getter: EncodedJSValue (*GetValueFunc)(ExecState*, EncodedJSValue thisValue, PropertyName);
     756            // setter: void (*PutValueFunc)(ExecState*, EncodedJSValue thisObject, EncodedJSValue value);
     757            // Custom values are passed the slotBase (the property holder), custom accessors are passed the thisVaule (reciever).
     758            GPRReg baseForCustomValue = m_type == CustomValueGetter || m_type == CustomValueSetter ? baseForAccessGPR : baseForGetGPR;
    755759#if USE(JSVALUE64)
    756             if (m_type == CustomGetter) {
     760            if (m_type == CustomValueGetter || m_type == CustomAccessorGetter) {
    757761                jit.setupArgumentsWithExecState(
    758                     baseForAccessGPR, baseForGetGPR,
     762                    baseForCustomValue,
    759763                    CCallHelpers::TrustedImmPtr(ident.impl()));
    760764            } else
    761                 jit.setupArgumentsWithExecState(baseForAccessGPR, baseForGetGPR, valueRegs.gpr());
     765                jit.setupArgumentsWithExecState(baseForCustomValue, valueRegs.gpr());
    762766#else
    763             if (m_type == CustomGetter) {
     767            if (m_type == CustomValueGetter || m_type == CustomAccessorGetter) {
    764768                jit.setupArgumentsWithExecState(
    765                     baseForAccessGPR, baseForGetGPR,
     769                    baseForCustomValue,
    766770                    CCallHelpers::TrustedImm32(JSValue::CellTag),
    767771                    CCallHelpers::TrustedImmPtr(ident.impl()));
    768772            } else {
    769773                jit.setupArgumentsWithExecState(
    770                     baseForAccessGPR, baseForGetGPR,
     774                    baseForCustomValue,
    771775                    CCallHelpers::TrustedImm32(JSValue::CellTag),
    772776                    valueRegs.payloadGPR(), valueRegs.tagGPR());
     
    776780
    777781            operationCall = jit.call();
    778             if (m_type == CustomGetter)
     782            if (m_type == CustomValueGetter || m_type == CustomAccessorGetter)
    779783                jit.setupResults(valueRegs);
    780784            if (needsToMakeRoomOnStackForCCall)
     
    14191423        out.print("Setter");
    14201424        return;
    1421     case AccessCase::CustomGetter:
    1422         out.print("CustomGetter");
    1423         return;
    1424     case AccessCase::CustomSetter:
    1425         out.print("CustomSetter");
     1425    case AccessCase::CustomValueGetter:
     1426        out.print("CustomValueGetter");
     1427        return;
     1428    case AccessCase::CustomAccessorGetter:
     1429        out.print("CustomAccessorGetter");
     1430        return;
     1431    case AccessCase::CustomValueSetter:
     1432        out.print("CustomValueSetter");
     1433        return;
     1434    case AccessCase::CustomAccessorSetter:
     1435        out.print("CustomAccessorSetter");
    14261436        return;
    14271437    case AccessCase::IntrinsicGetter:
  • trunk/Source/JavaScriptCore/bytecode/PolymorphicAccess.h

    r195865 r196331  
    5959        Getter,
    6060        Setter,
    61         CustomGetter,
    62         CustomSetter,
     61        CustomValueGetter,
     62        CustomAccessorGetter,
     63        CustomValueSetter,
     64        CustomAccessorSetter,
    6365        IntrinsicGetter,
    6466        InHit,
     
    7476        case Replace:
    7577        case Setter:
    76         case CustomSetter:
     78        case CustomValueSetter:
     79        case CustomAccessorSetter:
    7780        case InHit:
    7881        case InMiss:
     
    8184        case Miss:
    8285        case Getter:
    83         case CustomGetter:
     86        case CustomValueGetter:
     87        case CustomAccessorGetter:
    8488        case IntrinsicGetter:
    8589        case ArrayLength:
     
    9599        case Miss:
    96100        case Getter:
    97         case CustomGetter:
     101        case CustomValueGetter:
     102        case CustomAccessorGetter:
    98103        case IntrinsicGetter:
    99104        case InHit:
     
    105110        case Replace:
    106111        case Setter:
    107         case CustomSetter:
     112        case CustomValueSetter:
     113        case CustomAccessorSetter:
    108114            return true;
    109115        }
     
    116122        case Miss:
    117123        case Getter:
    118         case CustomGetter:
     124        case CustomValueGetter:
     125        case CustomAccessorGetter:
    119126        case IntrinsicGetter:
    120127        case Transition:
    121128        case Replace:
    122129        case Setter:
    123         case CustomSetter:
     130        case CustomValueSetter:
     131        case CustomAccessorSetter:
    124132        case ArrayLength:
    125133        case StringLength:
     
    209217        case Getter:
    210218        case Setter:
    211         case CustomGetter:
    212         case CustomSetter:
     219        case CustomValueGetter:
     220        case CustomAccessorGetter:
     221        case CustomValueSetter:
     222        case CustomAccessorSetter:
    213223            return true;
    214224        default:
     
    221231        switch (type()) {
    222232        case Getter:
    223         case CustomGetter:
     233        case CustomValueGetter:
     234        case CustomAccessorGetter:
    224235            return true;
    225236        default:
  • trunk/Source/JavaScriptCore/bytecode/PutByIdStatus.cpp

    r194496 r196331  
    239239            }
    240240               
    241             case AccessCase::CustomSetter:
     241            case AccessCase::CustomValueSetter:
     242            case AccessCase::CustomAccessorSetter:
    242243                return PutByIdStatus(MakesCalls);
    243244
  • trunk/Source/JavaScriptCore/jit/CCallHelpers.h

    r194766 r196331  
    679679    }
    680680
     681    ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, TrustedImm32 arg2, GPRReg arg3, GPRReg arg4)
     682    {
     683        resetCallArguments();
     684        addCallArgument(GPRInfo::callFrameRegister);
     685        addCallArgument(arg1);
     686        addCallArgument(arg2);
     687        addCallArgument(arg3);
     688        addCallArgument(arg4);
     689    }
     690   
    681691    ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, GPRReg arg3, GPRReg arg4, GPRReg arg5)
    682692    {
     
    16791689    }
    16801690
     1691    ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, TrustedImm32 arg2, GPRReg arg3, GPRReg arg4)
     1692    {
     1693        poke(arg4, POKE_ARGUMENT_OFFSET);
     1694        setupArgumentsWithExecState(arg1, arg2, arg3);
     1695    }
     1696
    16811697    ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, TrustedImm32 arg3, GPRReg arg4, GPRReg arg5)
    16821698    {
  • trunk/Source/JavaScriptCore/jit/Repatch.cpp

    r194496 r196331  
    304304            else if (slot.isCacheableGetter())
    305305                type = AccessCase::Getter;
     306            else if (slot.attributes() & CustomAccessor)
     307                type = AccessCase::CustomAccessorGetter;
    306308            else
    307                 type = AccessCase::CustomGetter;
     309                type = AccessCase::CustomValueGetter;
    308310
    309311            newCase = AccessCase::get(
     
    435437
    436438            newCase = AccessCase::setter(
    437                 vm, codeBlock, AccessCase::CustomSetter, structure, invalidOffset, conditionSet,
     439                vm, codeBlock, slot.isCustomAccessor() ? AccessCase::CustomAccessorSetter : AccessCase::CustomValueSetter, structure, invalidOffset, conditionSet,
    438440                slot.customSetter(), slot.base());
    439441        } else {
  • trunk/Source/JavaScriptCore/jsc.cpp

    r196165 r196331  
    350350
    351351private:
    352     static EncodedJSValue customGetter(ExecState* exec, JSObject*, EncodedJSValue thisValue, PropertyName)
     352    static EncodedJSValue customGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName)
    353353    {
    354354        CustomGetter* thisObject = jsDynamicCast<CustomGetter*>(JSValue::decode(thisValue));
     
    455455    }
    456456
    457     static EncodedJSValue lengthGetter(ExecState* exec, JSObject*, EncodedJSValue thisValue, PropertyName)
     457    static EncodedJSValue lengthGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName)
    458458    {
    459459        RuntimeArray* thisObject = jsDynamicCast<RuntimeArray*>(JSValue::decode(thisValue));
  • trunk/Source/JavaScriptCore/runtime/CustomGetterSetter.cpp

    r171824 r196331  
    2828
    2929#include "JSCJSValueInlines.h"
     30#include "JSObject.h"
    3031#include "SlotVisitorInlines.h"
    3132#include <wtf/Assertions.h>
     
    3738const ClassInfo CustomGetterSetter::s_info = { "CustomGetterSetter", 0, 0, CREATE_METHOD_TABLE(CustomGetterSetter) };
    3839
    39 void callCustomSetter(ExecState* exec, JSValue customGetterSetter, JSObject* base, JSValue thisValue, JSValue value)
     40void callCustomSetter(ExecState* exec, JSValue customGetterSetter, bool isAccessor, JSObject* base, JSValue thisValue, JSValue value)
    4041{
    4142    CustomGetterSetter::CustomSetter setter = jsCast<CustomGetterSetter*>(customGetterSetter)->setter();
    4243    if (!setter)
    4344        return;
    44     setter(exec, base, JSValue::encode(thisValue), JSValue::encode(value));
     45    if (!isAccessor)
     46        thisValue = base;
     47    setter(exec, JSValue::encode(thisValue), JSValue::encode(value));
    4548}
    4649
  • trunk/Source/JavaScriptCore/runtime/CustomGetterSetter.h

    r194175 r196331  
    7171};
    7272
    73 JS_EXPORT_PRIVATE void callCustomSetter(ExecState*, JSValue customGetterSetter, JSObject* base, JSValue thisValue, JSValue value);
     73JS_EXPORT_PRIVATE void callCustomSetter(ExecState*, JSValue customGetterSetter, bool isAccessor, JSObject* slotBase, JSValue thisValue, JSValue);
    7474
    7575} // namespace JSC
  • trunk/Source/JavaScriptCore/runtime/JSBoundSlotBaseFunction.cpp

    r196001 r196331  
    4343
    4444    if (boundSlotBaseFunction->isSetter()) {
    45         callCustomSetter(exec, customGetterSetter, baseObject, exec->thisValue(), exec->argument(0));
     45        callCustomSetter(exec, customGetterSetter, true, baseObject, exec->thisValue(), exec->argument(0));
    4646        return JSValue::encode(jsUndefined());
    4747    }
     
    5252
    5353    const String& name = boundSlotBaseFunction->name(exec);
    54     return getter(exec, baseObject, JSValue::encode(exec->thisValue()), PropertyName(Identifier::fromString(exec, name)));
     54    return getter(exec, JSValue::encode(exec->thisValue()), PropertyName(Identifier::fromString(exec, name)));
    5555}
    5656
  • trunk/Source/JavaScriptCore/runtime/JSCJSValue.cpp

    r189811 r196331  
    170170
    171171            if (gs.isCustomGetterSetter()) {
    172                 callCustomSetter(exec, gs, obj, slot.thisValue(), value);
     172                callCustomSetter(exec, gs, attributes & CustomAccessor, obj, slot.thisValue(), value);
    173173                return;
    174174            }
  • trunk/Source/JavaScriptCore/runtime/JSFunction.cpp

    r195070 r196331  
    270270}
    271271
    272 EncodedJSValue JSFunction::argumentsGetter(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName)
    273 {
    274     JSFunction* thisObj = jsCast<JSFunction*>(slotBase);
     272EncodedJSValue JSFunction::argumentsGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName)
     273{
     274    JSFunction* thisObj = jsCast<JSFunction*>(JSValue::decode(thisValue));
    275275    ASSERT(!thisObj->isHostFunction());
    276276
     
    325325}
    326326
    327 EncodedJSValue JSFunction::callerGetter(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName)
    328 {
    329     JSFunction* thisObj = jsCast<JSFunction*>(slotBase);
     327EncodedJSValue JSFunction::callerGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName)
     328{
     329    JSFunction* thisObj = jsCast<JSFunction*>(JSValue::decode(thisValue));
    330330    ASSERT(!thisObj->isHostFunction());
    331331    JSValue caller = retrieveCallerFunction(exec, thisObj);
     
    344344}
    345345
    346 EncodedJSValue JSFunction::lengthGetter(ExecState*, JSObject* slotBase, EncodedJSValue, PropertyName)
    347 {
    348     JSFunction* thisObj = jsCast<JSFunction*>(slotBase);
     346EncodedJSValue JSFunction::lengthGetter(ExecState*, EncodedJSValue thisValue, PropertyName)
     347{
     348    JSFunction* thisObj = jsCast<JSFunction*>(JSValue::decode(thisValue));
    349349    ASSERT(!thisObj->isHostFunction());
    350350    return JSValue::encode(jsNumber(thisObj->jsExecutable()->parameterCount()));
    351351}
    352352
    353 EncodedJSValue JSFunction::nameGetter(ExecState*, JSObject* slotBase, EncodedJSValue, PropertyName)
    354 {
    355     JSFunction* thisObj = jsCast<JSFunction*>(slotBase);
     353EncodedJSValue JSFunction::nameGetter(ExecState*, EncodedJSValue thisValue, PropertyName)
     354{
     355    JSFunction* thisObj = jsCast<JSFunction*>(JSValue::decode(thisValue));
    356356    ASSERT(!thisObj->isHostFunction());
    357357    return JSValue::encode(thisObj->jsExecutable()->nameValue());
  • trunk/Source/JavaScriptCore/runtime/JSFunction.h

    r195070 r196331  
    190190    friend class LLIntOffsetsExtractor;
    191191
    192     static EncodedJSValue argumentsGetter(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    193     static EncodedJSValue callerGetter(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    194     static EncodedJSValue lengthGetter(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    195     static EncodedJSValue nameGetter(ExecState*, JSObject*, EncodedJSValue, PropertyName);
     192    static EncodedJSValue argumentsGetter(ExecState*, EncodedJSValue, PropertyName);
     193    static EncodedJSValue callerGetter(ExecState*, EncodedJSValue, PropertyName);
     194    static EncodedJSValue lengthGetter(ExecState*, EncodedJSValue, PropertyName);
     195    static EncodedJSValue nameGetter(ExecState*, EncodedJSValue, PropertyName);
    196196
    197197    WriteBarrier<ExecutableBase> m_executable;
  • trunk/Source/JavaScriptCore/runtime/JSModuleNamespaceObject.cpp

    r191864 r196331  
    9696}
    9797
    98 static EncodedJSValue callbackGetter(ExecState* exec, JSObject*, EncodedJSValue thisValue, PropertyName propertyName)
     98static EncodedJSValue callbackGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName propertyName)
    9999{
    100100    JSModuleNamespaceObject* thisObject = jsCast<JSModuleNamespaceObject*>(JSValue::decode(thisValue));
  • trunk/Source/JavaScriptCore/runtime/JSObject.cpp

    r196220 r196331  
    401401            }
    402402            if (gs.isCustomGetterSetter()) {
    403                 callCustomSetter(exec, gs, obj, slot.thisValue(), value);
    404                 slot.setCustomProperty(obj, jsCast<CustomGetterSetter*>(gs.asCell())->setter());
     403                callCustomSetter(exec, gs, attributes & CustomAccessor, obj, slot.thisValue(), value);
     404                if (attributes & CustomAccessor)
     405                    slot.setCustomAccessor(obj, jsCast<CustomGetterSetter*>(gs.asCell())->setter());
     406                else
     407                    slot.setCustomValue(obj, jsCast<CustomGetterSetter*>(gs.asCell())->setter());
    405408                return;
    406409            }
  • trunk/Source/JavaScriptCore/runtime/Lookup.h

    r196145 r196331  
    277277            throwTypeError(exec, StrictModeReadonlyPropertyWriteError);
    278278    } else if (!(entry->attributes() & ReadOnly)) {
    279         entry->propertyPutter()(exec, base, JSValue::encode(slot.thisValue()), JSValue::encode(value));
    280         slot.setCustomProperty(base, entry->propertyPutter());
     279        JSValue thisValue = entry->attributes() & CustomAccessor ? slot.thisValue() : JSValue(base);
     280        entry->propertyPutter()(exec, JSValue::encode(thisValue), JSValue::encode(value));
     281        if (entry->attributes() & CustomAccessor)
     282            slot.setCustomAccessor(base, entry->propertyPutter());
     283        else
     284            slot.setCustomValue(base, entry->propertyPutter());
    281285    } else if (slot.isStrictMode())
    282286        throwTypeError(exec, StrictModeReadonlyPropertyWriteError);
  • trunk/Source/JavaScriptCore/runtime/PropertySlot.cpp

    r153556 r196331  
    2424#include "GetterSetter.h"
    2525#include "JSCJSValueInlines.h"
     26#include "JSObject.h"
    2627
    2728namespace JSC {
     
    3334}
    3435
     36JSValue PropertySlot::customGetter(ExecState* exec, PropertyName propertyName) const
     37{
     38    JSValue thisValue = m_attributes & CustomAccessor ? m_thisValue : JSValue(slotBase());
     39    return JSValue::decode(m_data.custom.getValue(exec, JSValue::encode(thisValue), propertyName));
     40}
     41
    3542} // namespace JSC
  • trunk/Source/JavaScriptCore/runtime/PropertySlot.h

    r189160 r196331  
    8383    }
    8484
    85     typedef EncodedJSValue (*GetValueFunc)(ExecState*, JSObject* slotBase, EncodedJSValue thisValue, PropertyName);
     85    typedef EncodedJSValue (*GetValueFunc)(ExecState*, EncodedJSValue thisValue, PropertyName);
    8686
    8787    JSValue getValue(ExecState*, PropertyName) const;
     
    250250private:
    251251    JS_EXPORT_PRIVATE JSValue functionGetter(ExecState*) const;
     252    JS_EXPORT_PRIVATE JSValue customGetter(ExecState*, PropertyName) const;
    252253
    253254    unsigned m_attributes;
     
    276277    if (m_propertyType == TypeGetter)
    277278        return functionGetter(exec);
    278     return JSValue::decode(m_data.custom.getValue(exec, slotBase(), JSValue::encode(m_thisValue), propertyName));
     279    return customGetter(exec, propertyName);
    279280}
    280281
     
    285286    if (m_propertyType == TypeGetter)
    286287        return functionGetter(exec);
    287     return JSValue::decode(m_data.custom.getValue(exec, slotBase(), JSValue::encode(m_thisValue), Identifier::from(exec, propertyName)));
     288    return customGetter(exec, Identifier::from(exec, propertyName));
    288289}
    289290
  • trunk/Source/JavaScriptCore/runtime/PutPropertySlot.h

    r189279 r196331  
    3939class PutPropertySlot {
    4040public:
    41     enum Type { Uncachable, ExistingProperty, NewProperty, SetterProperty, CustomProperty };
     41    enum Type { Uncachable, ExistingProperty, NewProperty, SetterProperty, CustomValue, CustomAccessor };
    4242    enum Context { UnknownContext, PutById, PutByIdEval };
    43     typedef void (*PutValueFunc)(ExecState*, JSObject* base, EncodedJSValue thisObject, EncodedJSValue value);
     43    typedef void (*PutValueFunc)(ExecState*, EncodedJSValue thisObject, EncodedJSValue value);
    4444
    4545    PutPropertySlot(JSValue thisValue, bool isStrictMode = false, Context context = UnknownContext, bool isInitialization = false)
     
    6969    }
    7070
    71     void setCustomProperty(JSObject* base, PutValueFunc function)
     71    void setCustomValue(JSObject* base, PutValueFunc function)
    7272    {
    73         m_type = CustomProperty;
     73        m_type = CustomValue;
     74        m_base = base;
     75        m_putFunction = function;
     76    }
     77
     78    void setCustomAccessor(JSObject* base, PutValueFunc function)
     79    {
     80        m_type = CustomAccessor;
    7481        m_base = base;
    7582        m_putFunction = function;
     
    8895    }
    8996
    90     PutValueFunc customSetter() const { return m_putFunction; }
     97    PutValueFunc customSetter() const
     98    {
     99        ASSERT(isCacheableCustom());
     100        return m_putFunction;
     101    }
    91102
    92103    Context context() const { return static_cast<Context>(m_context); }
     
    99110    bool isCacheablePut() const { return m_type == NewProperty || m_type == ExistingProperty; }
    100111    bool isCacheableSetter() const { return m_type == SetterProperty; }
    101     bool isCacheableCustom() const { return m_type == CustomProperty; }
     112    bool isCacheableCustom() const { return m_type == CustomValue || m_type == CustomAccessor; }
     113    bool isCustomAccessor() const { return m_type == CustomAccessor; }
    102114    bool isInitialization() const { return m_isInitialization; }
    103115
  • trunk/Source/JavaScriptCore/runtime/RegExpConstructor.cpp

    r195460 r196331  
    3232namespace JSC {
    3333
    34 static EncodedJSValue regExpConstructorInput(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    35 static EncodedJSValue regExpConstructorMultiline(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    36 static EncodedJSValue regExpConstructorLastMatch(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    37 static EncodedJSValue regExpConstructorLastParen(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    38 static EncodedJSValue regExpConstructorLeftContext(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    39 static EncodedJSValue regExpConstructorRightContext(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    40 static EncodedJSValue regExpConstructorDollar1(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    41 static EncodedJSValue regExpConstructorDollar2(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    42 static EncodedJSValue regExpConstructorDollar3(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    43 static EncodedJSValue regExpConstructorDollar4(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    44 static EncodedJSValue regExpConstructorDollar5(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    45 static EncodedJSValue regExpConstructorDollar6(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    46 static EncodedJSValue regExpConstructorDollar7(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    47 static EncodedJSValue regExpConstructorDollar8(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    48 static EncodedJSValue regExpConstructorDollar9(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    49 
    50 static void setRegExpConstructorInput(ExecState*, JSObject*, EncodedJSValue, EncodedJSValue);
    51 static void setRegExpConstructorMultiline(ExecState*, JSObject*, EncodedJSValue, EncodedJSValue);
     34static EncodedJSValue regExpConstructorInput(ExecState*, EncodedJSValue, PropertyName);
     35static EncodedJSValue regExpConstructorMultiline(ExecState*, EncodedJSValue, PropertyName);
     36static EncodedJSValue regExpConstructorLastMatch(ExecState*, EncodedJSValue, PropertyName);
     37static EncodedJSValue regExpConstructorLastParen(ExecState*, EncodedJSValue, PropertyName);
     38static EncodedJSValue regExpConstructorLeftContext(ExecState*, EncodedJSValue, PropertyName);
     39static EncodedJSValue regExpConstructorRightContext(ExecState*, EncodedJSValue, PropertyName);
     40static EncodedJSValue regExpConstructorDollar1(ExecState*, EncodedJSValue, PropertyName);
     41static EncodedJSValue regExpConstructorDollar2(ExecState*, EncodedJSValue, PropertyName);
     42static EncodedJSValue regExpConstructorDollar3(ExecState*, EncodedJSValue, PropertyName);
     43static EncodedJSValue regExpConstructorDollar4(ExecState*, EncodedJSValue, PropertyName);
     44static EncodedJSValue regExpConstructorDollar5(ExecState*, EncodedJSValue, PropertyName);
     45static EncodedJSValue regExpConstructorDollar6(ExecState*, EncodedJSValue, PropertyName);
     46static EncodedJSValue regExpConstructorDollar7(ExecState*, EncodedJSValue, PropertyName);
     47static EncodedJSValue regExpConstructorDollar8(ExecState*, EncodedJSValue, PropertyName);
     48static EncodedJSValue regExpConstructorDollar9(ExecState*, EncodedJSValue, PropertyName);
     49
     50static void setRegExpConstructorInput(ExecState*, EncodedJSValue, EncodedJSValue);
     51static void setRegExpConstructorMultiline(ExecState*, EncodedJSValue, EncodedJSValue);
    5252
    5353} // namespace JSC
     
    160160}
    161161   
    162 EncodedJSValue regExpConstructorDollar1(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName)
    163 {
    164     return JSValue::encode(asRegExpConstructor(slotBase)->getBackref(exec, 1));
    165 }
    166 
    167 EncodedJSValue regExpConstructorDollar2(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName)
    168 {
    169     return JSValue::encode(asRegExpConstructor(slotBase)->getBackref(exec, 2));
    170 }
    171 
    172 EncodedJSValue regExpConstructorDollar3(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName)
    173 {
    174     return JSValue::encode(asRegExpConstructor(slotBase)->getBackref(exec, 3));
    175 }
    176 
    177 EncodedJSValue regExpConstructorDollar4(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName)
    178 {
    179     return JSValue::encode(asRegExpConstructor(slotBase)->getBackref(exec, 4));
    180 }
    181 
    182 EncodedJSValue regExpConstructorDollar5(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName)
    183 {
    184     return JSValue::encode(asRegExpConstructor(slotBase)->getBackref(exec, 5));
    185 }
    186 
    187 EncodedJSValue regExpConstructorDollar6(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName)
    188 {
    189     return JSValue::encode(asRegExpConstructor(slotBase)->getBackref(exec, 6));
    190 }
    191 
    192 EncodedJSValue regExpConstructorDollar7(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName)
    193 {
    194     return JSValue::encode(asRegExpConstructor(slotBase)->getBackref(exec, 7));
    195 }
    196 
    197 EncodedJSValue regExpConstructorDollar8(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName)
    198 {
    199     return JSValue::encode(asRegExpConstructor(slotBase)->getBackref(exec, 8));
    200 }
    201 
    202 EncodedJSValue regExpConstructorDollar9(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName)
    203 {
    204     return JSValue::encode(asRegExpConstructor(slotBase)->getBackref(exec, 9));
    205 }
    206 
    207 EncodedJSValue regExpConstructorInput(ExecState*, JSObject* slotBase, EncodedJSValue, PropertyName)
    208 {
    209     return JSValue::encode(asRegExpConstructor(slotBase)->input());
    210 }
    211 
    212 EncodedJSValue regExpConstructorMultiline(ExecState*, JSObject* slotBase, EncodedJSValue, PropertyName)
    213 {
    214     return JSValue::encode(jsBoolean(asRegExpConstructor(slotBase)->multiline()));
    215 }
    216 
    217 EncodedJSValue regExpConstructorLastMatch(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName)
    218 {
    219     return JSValue::encode(asRegExpConstructor(slotBase)->getBackref(exec, 0));
    220 }
    221 
    222 EncodedJSValue regExpConstructorLastParen(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName)
    223 {
    224     return JSValue::encode(asRegExpConstructor(slotBase)->getLastParen(exec));
    225 }
    226 
    227 EncodedJSValue regExpConstructorLeftContext(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName)
    228 {
    229     return JSValue::encode(asRegExpConstructor(slotBase)->getLeftContext(exec));
    230 }
    231 
    232 EncodedJSValue regExpConstructorRightContext(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName)
    233 {
    234     return JSValue::encode(asRegExpConstructor(slotBase)->getRightContext(exec));
    235 }
    236 
    237 void setRegExpConstructorInput(ExecState* exec, JSObject* baseObject, EncodedJSValue, EncodedJSValue value)
    238 {
    239     if (auto constructor = jsDynamicCast<RegExpConstructor*>(baseObject))
     162EncodedJSValue regExpConstructorDollar1(ExecState* exec, EncodedJSValue thisValue, PropertyName)
     163{
     164    return JSValue::encode(asRegExpConstructor(JSValue::decode(thisValue))->getBackref(exec, 1));
     165}
     166
     167EncodedJSValue regExpConstructorDollar2(ExecState* exec, EncodedJSValue thisValue, PropertyName)
     168{
     169    return JSValue::encode(asRegExpConstructor(JSValue::decode(thisValue))->getBackref(exec, 2));
     170}
     171
     172EncodedJSValue regExpConstructorDollar3(ExecState* exec, EncodedJSValue thisValue, PropertyName)
     173{
     174    return JSValue::encode(asRegExpConstructor(JSValue::decode(thisValue))->getBackref(exec, 3));
     175}
     176
     177EncodedJSValue regExpConstructorDollar4(ExecState* exec, EncodedJSValue thisValue, PropertyName)
     178{
     179    return JSValue::encode(asRegExpConstructor(JSValue::decode(thisValue))->getBackref(exec, 4));
     180}
     181
     182EncodedJSValue regExpConstructorDollar5(ExecState* exec, EncodedJSValue thisValue, PropertyName)
     183{
     184    return JSValue::encode(asRegExpConstructor(JSValue::decode(thisValue))->getBackref(exec, 5));
     185}
     186
     187EncodedJSValue regExpConstructorDollar6(ExecState* exec, EncodedJSValue thisValue, PropertyName)
     188{
     189    return JSValue::encode(asRegExpConstructor(JSValue::decode(thisValue))->getBackref(exec, 6));
     190}
     191
     192EncodedJSValue regExpConstructorDollar7(ExecState* exec, EncodedJSValue thisValue, PropertyName)
     193{
     194    return JSValue::encode(asRegExpConstructor(JSValue::decode(thisValue))->getBackref(exec, 7));
     195}
     196
     197EncodedJSValue regExpConstructorDollar8(ExecState* exec, EncodedJSValue thisValue, PropertyName)
     198{
     199    return JSValue::encode(asRegExpConstructor(JSValue::decode(thisValue))->getBackref(exec, 8));
     200}
     201
     202EncodedJSValue regExpConstructorDollar9(ExecState* exec, EncodedJSValue thisValue, PropertyName)
     203{
     204    return JSValue::encode(asRegExpConstructor(JSValue::decode(thisValue))->getBackref(exec, 9));
     205}
     206
     207EncodedJSValue regExpConstructorInput(ExecState*, EncodedJSValue thisValue, PropertyName)
     208{
     209    return JSValue::encode(asRegExpConstructor(JSValue::decode(thisValue))->input());
     210}
     211
     212EncodedJSValue regExpConstructorMultiline(ExecState*, EncodedJSValue thisValue, PropertyName)
     213{
     214    return JSValue::encode(jsBoolean(asRegExpConstructor(JSValue::decode(thisValue))->multiline()));
     215}
     216
     217EncodedJSValue regExpConstructorLastMatch(ExecState* exec, EncodedJSValue thisValue, PropertyName)
     218{
     219    return JSValue::encode(asRegExpConstructor(JSValue::decode(thisValue))->getBackref(exec, 0));
     220}
     221
     222EncodedJSValue regExpConstructorLastParen(ExecState* exec, EncodedJSValue thisValue, PropertyName)
     223{
     224    return JSValue::encode(asRegExpConstructor(JSValue::decode(thisValue))->getLastParen(exec));
     225}
     226
     227EncodedJSValue regExpConstructorLeftContext(ExecState* exec, EncodedJSValue thisValue, PropertyName)
     228{
     229    return JSValue::encode(asRegExpConstructor(JSValue::decode(thisValue))->getLeftContext(exec));
     230}
     231
     232EncodedJSValue regExpConstructorRightContext(ExecState* exec, EncodedJSValue thisValue, PropertyName)
     233{
     234    return JSValue::encode(asRegExpConstructor(JSValue::decode(thisValue))->getRightContext(exec));
     235}
     236
     237void setRegExpConstructorInput(ExecState* exec, EncodedJSValue thisValue, EncodedJSValue value)
     238{
     239    if (auto constructor = jsDynamicCast<RegExpConstructor*>(JSValue::decode(thisValue)))
    240240        constructor->setInput(exec, JSValue::decode(value).toString(exec));
    241241}
    242242
    243 void setRegExpConstructorMultiline(ExecState* exec, JSObject* baseObject, EncodedJSValue, EncodedJSValue value)
    244 {
    245     if (auto constructor = jsDynamicCast<RegExpConstructor*>(baseObject))
     243void setRegExpConstructorMultiline(ExecState* exec, EncodedJSValue thisValue, EncodedJSValue value)
     244{
     245    if (auto constructor = jsDynamicCast<RegExpConstructor*>(JSValue::decode(thisValue)))
    246246        constructor->setMultiline(JSValue::decode(value).toBoolean(exec));
    247247}
  • trunk/Source/JavaScriptCore/runtime/RegExpObject.cpp

    r185370 r196331  
    138138}
    139139
    140 static void regExpObjectSetLastIndexStrict(ExecState* exec, JSObject* slotBase, EncodedJSValue, EncodedJSValue value)
    141 {
    142     asRegExpObject(slotBase)->setLastIndex(exec, JSValue::decode(value), true);
    143 }
    144 
    145 static void regExpObjectSetLastIndexNonStrict(ExecState* exec, JSObject* slotBase, EncodedJSValue, EncodedJSValue value)
    146 {
    147     asRegExpObject(slotBase)->setLastIndex(exec, JSValue::decode(value), false);
     140static void regExpObjectSetLastIndexStrict(ExecState* exec, EncodedJSValue thisValue, EncodedJSValue value)
     141{
     142    asRegExpObject(JSValue::decode(thisValue))->setLastIndex(exec, JSValue::decode(value), true);
     143}
     144
     145static void regExpObjectSetLastIndexNonStrict(ExecState* exec, EncodedJSValue thisValue, EncodedJSValue value)
     146{
     147    asRegExpObject(JSValue::decode(thisValue))->setLastIndex(exec, JSValue::decode(value), false);
    148148}
    149149
     
    152152    if (propertyName == exec->propertyNames().lastIndex) {
    153153        asRegExpObject(cell)->setLastIndex(exec, value, slot.isStrictMode());
    154         slot.setCustomProperty(asRegExpObject(cell), slot.isStrictMode()
     154        slot.setCustomValue(asRegExpObject(cell), slot.isStrictMode()
    155155            ? regExpObjectSetLastIndexStrict
    156156            : regExpObjectSetLastIndexNonStrict);
  • trunk/Source/WebCore/ChangeLog

    r196330 r196331  
     12016-02-07  Gavin Barraclough  <barraclough@apple.com>
     2
     3        GetValueFunc/PutValueFunc should not take both slotBase and thisValue
     4        https://bugs.webkit.org/show_bug.cgi?id=154009
     5
     6        Reviewed by Geoff Garen.
     7
     8        In JavaScript there are two types of properties - regular value properties, and accessor properties.
     9        One difference between these is how they are reflected by getOwnPropertyDescriptor, and another is
     10        what object they operate on in the case of a prototype access. If you access a value property of a
     11        prototype object it return a value pertinent to the prototype, but in the case of a prototype object
     12        returning an accessor, then the accessor function is applied to the base object of the access.
     13
     14        JSC supports special 'custom' properties implemented as a c++ callback, and these custom properties
     15        can be used to implement either value- or accessor-like behavior. getOwnPropertyDescriptor behavior
     16        is selected via the CustomAccessor attribute. Value- or accessor-like object selection is current
     17        supported by passing both the slotBase and the thisValue to the callback,and hoping it uses the
     18        right one. This is probably inefficient, bug-prone, and leads to crazy like JSBoundSlotBaseFunction.
     19
     20        Instead, just pass one thisValue to the callback functions, consistent with CustomAccessor.
     21
     22        * bindings/js/JSDOMBinding.cpp:
     23        (WebCore::printErrorMessageForFrame):
     24        (WebCore::objectToStringFunctionGetter):
     25        * bindings/js/JSDOMBinding.h:
     26        (WebCore::propertyNameToString):
     27        (WebCore::getStaticValueSlotEntryWithoutCaching<JSDOMObject>):
     28        (WebCore::nonCachingStaticFunctionGetter):
     29        * bindings/js/JSDOMWindowCustom.cpp:
     30        (WebCore::JSDOMWindow::visitAdditionalChildren):
     31        (WebCore::childFrameGetter):
     32        (WebCore::namedItemGetter):
     33        (WebCore::jsDOMWindowWebKit):
     34        (WebCore::jsDOMWindowIndexedDB):
     35            - add missing null check, in case indexDB acessor is applied to non-window object.
     36        * bindings/js/JSPluginElementFunctions.cpp:
     37        (WebCore::pluginScriptObject):
     38        (WebCore::pluginElementPropertyGetter):
     39        * bindings/js/JSPluginElementFunctions.h:
     40        * bindings/scripts/CodeGeneratorJS.pm:
     41        (GenerateHeader):
     42        (GenerateImplementation):
     43        * bridge/runtime_array.cpp:
     44        (JSC::RuntimeArray::destroy):
     45        (JSC::RuntimeArray::lengthGetter):
     46        * bridge/runtime_array.h:
     47        * bridge/runtime_method.cpp:
     48        (JSC::RuntimeMethod::finishCreation):
     49        (JSC::RuntimeMethod::lengthGetter):
     50        * bridge/runtime_method.h:
     51        * bridge/runtime_object.cpp:
     52        (JSC::Bindings::RuntimeObject::invalidate):
     53        (JSC::Bindings::RuntimeObject::fallbackObjectGetter):
     54        (JSC::Bindings::RuntimeObject::fieldGetter):
     55        (JSC::Bindings::RuntimeObject::methodGetter):
     56        * bridge/runtime_object.h:
     57            - Merged slotBase & thisValue to custom property callbacks.
     58
    1592016-02-09  Jer Noble  <jer.noble@apple.com>
    260
  • trunk/Source/WebCore/bindings/js/JSDOMBinding.cpp

    r193428 r196331  
    335335}
    336336
    337 EncodedJSValue objectToStringFunctionGetter(ExecState* exec, JSObject*, EncodedJSValue, PropertyName propertyName)
     337EncodedJSValue objectToStringFunctionGetter(ExecState* exec, EncodedJSValue, PropertyName propertyName)
    338338{
    339339    return JSValue::encode(JSFunction::create(exec->vm(), exec->lexicalGlobalObject(), 0, propertyName.publicName(), objectProtoFuncToString));
  • trunk/Source/WebCore/bindings/js/JSDOMBinding.h

    r196128 r196331  
    654654
    655655void printErrorMessageForFrame(Frame*, const String& message);
    656 JSC::EncodedJSValue objectToStringFunctionGetter(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
     656JSC::EncodedJSValue objectToStringFunctionGetter(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
    657657
    658658inline String propertyNameToString(JSC::PropertyName propertyName)
     
    684684
    685685template<JSC::NativeFunction nativeFunction, int length>
    686 JSC::EncodedJSValue nonCachingStaticFunctionGetter(JSC::ExecState* exec, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName propertyName)
     686JSC::EncodedJSValue nonCachingStaticFunctionGetter(JSC::ExecState* exec, JSC::EncodedJSValue, JSC::PropertyName propertyName)
    687687{
    688688    return JSC::JSValue::encode(JSC::JSFunction::create(exec->vm(), exec->lexicalGlobalObject(), length, propertyName.publicName(), nativeFunction));
  • trunk/Source/WebCore/bindings/js/JSDOMWindowCustom.cpp

    r195594 r196331  
    6767}
    6868
    69 static EncodedJSValue childFrameGetter(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName propertyName)
    70 {
    71     return JSValue::encode(toJS(exec, jsCast<JSDOMWindow*>(slotBase)->wrapped().frame()->tree().scopedChild(propertyNameToAtomicString(propertyName))->document()->domWindow()));
    72 }
    73 
    74 static EncodedJSValue namedItemGetter(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName propertyName)
    75 {
    76     JSDOMWindowBase* thisObj = jsCast<JSDOMWindow*>(slotBase);
     69static EncodedJSValue childFrameGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName propertyName)
     70{
     71    return JSValue::encode(toJS(exec, jsCast<JSDOMWindow*>(JSValue::decode(thisValue))->wrapped().frame()->tree().scopedChild(propertyNameToAtomicString(propertyName))->document()->domWindow()));
     72}
     73
     74static EncodedJSValue namedItemGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName propertyName)
     75{
     76    JSDOMWindowBase* thisObj = jsCast<JSDOMWindow*>(JSValue::decode(thisValue));
    7777    Document* document = thisObj->wrapped().frame()->document();
    7878
     
    9494
    9595#if ENABLE(USER_MESSAGE_HANDLERS)
    96 static EncodedJSValue jsDOMWindowWebKit(ExecState* exec, JSObject*, EncodedJSValue thisValue, PropertyName)
     96static EncodedJSValue jsDOMWindowWebKit(ExecState* exec, EncodedJSValue thisValue, PropertyName)
    9797{
    9898    JSDOMWindow* castedThis = toJSDOMWindow(JSValue::decode(thisValue));
     
    104104
    105105#if ENABLE(INDEXED_DATABASE)
    106 static EncodedJSValue jsDOMWindowIndexedDB(ExecState* exec, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     106static EncodedJSValue jsDOMWindowIndexedDB(ExecState* exec, EncodedJSValue thisValue, PropertyName)
    107107{
    108108    UNUSED_PARAM(exec);
    109     UNUSED_PARAM(slotBase);
    110     UNUSED_PARAM(thisValue);
    111109    auto* castedThis = toJSDOMWindow(JSValue::decode(thisValue));
    112110    if (!RuntimeEnabledFeatures::sharedFeatures().indexedDBEnabled())
    113111        return JSValue::encode(jsUndefined());
    114     if (!BindingSecurity::shouldAllowAccessToDOMWindow(exec, castedThis->wrapped()))
     112    if (!castedThis || !BindingSecurity::shouldAllowAccessToDOMWindow(exec, castedThis->wrapped()))
    115113        return JSValue::encode(jsUndefined());
    116114    auto& impl = castedThis->wrapped();
  • trunk/Source/WebCore/bindings/js/JSPluginElementFunctions.cpp

    r191887 r196331  
    9595}
    9696   
    97 EncodedJSValue pluginElementPropertyGetter(ExecState* exec, JSObject*, EncodedJSValue thisValue, PropertyName propertyName)
     97EncodedJSValue pluginElementPropertyGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName propertyName)
    9898{
    9999
  • trunk/Source/WebCore/bindings/js/JSPluginElementFunctions.h

    r195904 r196331  
    3939    WEBCORE_EXPORT JSC::JSObject* pluginScriptObject(JSC::ExecState*, JSHTMLElement*);
    4040
    41     JSC::EncodedJSValue pluginElementPropertyGetter(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
     41    JSC::EncodedJSValue pluginElementPropertyGetter(JSC::ExecState*,
     42    JSC::EncodedJSValue, JSC::PropertyName);
    4243    bool pluginElementCustomGetOwnPropertySlot(JSC::ExecState*, JSC::PropertyName, JSC::PropertySlot&, JSHTMLElement*);
    4344    bool pluginElementCustomPut(JSC::ExecState*, JSC::PropertyName, JSC::JSValue, JSHTMLElement*, JSC::PutPropertySlot&);
  • trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm

    r196303 r196331  
    13031303            push(@headerContent, "#if ${conditionalString}\n") if $conditionalString;
    13041304            my $getter = GetAttributeGetterName($interfaceName, $className, $interface, $attribute);
    1305             push(@headerContent, "JSC::EncodedJSValue ${getter}(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);\n");
     1305            push(@headerContent, "JSC::EncodedJSValue ${getter}(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);\n");
    13061306            if (!IsReadonly($attribute)) {
    13071307                my $setter = GetAttributeSetterName($interfaceName, $className, $interface, $attribute);
    1308                 push(@headerContent, "void ${setter}(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);\n");
     1308                push(@headerContent, "void ${setter}(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);\n");
    13091309            }
    13101310            push(@headerContent, "#endif\n") if $conditionalString;
     
    18361836            push(@implContent, "#if ${conditionalString}\n") if $conditionalString;
    18371837            my $getter = GetAttributeGetterName($interfaceName, $className, $interface, $attribute);
    1838             push(@implContent, "JSC::EncodedJSValue ${getter}(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);\n");
     1838            push(@implContent, "JSC::EncodedJSValue ${getter}(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);\n");
    18391839            if (!IsReadonly($attribute)) {
    18401840                my $setter = GetAttributeSetterName($interfaceName, $className, $interface, $attribute);
    1841                 push(@implContent, "void ${setter}(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);\n");
     1841                push(@implContent, "void ${setter}(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);\n");
    18421842            }
    18431843            push(@implContent, "#endif\n") if $conditionalString;
     
    18461846        if (NeedsConstructorProperty($interface)) {
    18471847            my $getter = "js" . $interfaceName . "Constructor";
    1848             push(@implContent, "JSC::EncodedJSValue ${getter}(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);\n");
     1848            push(@implContent, "JSC::EncodedJSValue ${getter}(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);\n");
    18491849        }
    18501850
    18511851        my $constructorFunctionName = "setJS" . $interfaceName . "Constructor";
    1852         push(@implContent, "void ${constructorFunctionName}(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);\n");
     1852        push(@implContent, "void ${constructorFunctionName}(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);\n");
    18531853
    18541854        push(@implContent, "\n");
     
    22792279            push(@implContent, "#if ${attributeConditionalString}\n") if $attributeConditionalString;
    22802280
    2281             push(@implContent, "EncodedJSValue ${getFunctionName}(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)\n");
     2281            push(@implContent, "EncodedJSValue ${getFunctionName}(ExecState* state, EncodedJSValue thisValue, PropertyName)\n");
    22822282            push(@implContent, "{\n");
    22832283
    22842284            push(@implContent, "    UNUSED_PARAM(state);\n");
    2285             push(@implContent, "    UNUSED_PARAM(slotBase);\n");
    22862285            push(@implContent, "    UNUSED_PARAM(thisValue);\n");
    22872286
     
    24892488
    24902489            if ($interface->extendedAttributes->{"CustomProxyToJSObject"}) {
    2491                 push(@implContent, "EncodedJSValue ${constructorFunctionName}(ExecState* state, JSObject*, EncodedJSValue thisValue, PropertyName)\n");
     2490                push(@implContent, "EncodedJSValue ${constructorFunctionName}(ExecState* state, EncodedJSValue thisValue, PropertyName)\n");
    24922491                push(@implContent, "{\n");
    24932492                push(@implContent, "    ${className}* domObject = to${className}(JSValue::decode(thisValue));\n");
    24942493            } elsif (ConstructorShouldBeOnInstance($interface)) {
    2495                 push(@implContent, "EncodedJSValue ${constructorFunctionName}(ExecState* state, JSObject*, EncodedJSValue thisValue, PropertyName)\n");
     2494                push(@implContent, "EncodedJSValue ${constructorFunctionName}(ExecState* state, EncodedJSValue thisValue, PropertyName)\n");
    24962495                push(@implContent, "{\n");
    24972496                push(@implContent, "    ${className}* domObject = " . GetCastingHelperForThisObject($interface) . "(JSValue::decode(thisValue));\n");
    24982497            } else {
    2499                 push(@implContent, "EncodedJSValue ${constructorFunctionName}(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)\n");
     2498                push(@implContent, "EncodedJSValue ${constructorFunctionName}(ExecState* state, EncodedJSValue thisValue, PropertyName)\n");
    25002499                push(@implContent, "{\n");
    2501                 push(@implContent, "    ${className}Prototype* domObject = jsDynamicCast<${className}Prototype*>(baseValue);\n");
     2500                push(@implContent, "    ${className}Prototype* domObject = jsDynamicCast<${className}Prototype*>(JSValue::decode(thisValue));\n");
    25022501            }
    25032502            push(@implContent, "    if (!domObject)\n");
     
    25232522        my $constructorFunctionName = "setJS" . $interfaceName . "Constructor";
    25242523
    2525         push(@implContent, "void ${constructorFunctionName}(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)\n");
     2524        push(@implContent, "void ${constructorFunctionName}(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)\n");
    25262525        push(@implContent, "{\n");
    25272526        push(@implContent, "    JSValue value = JSValue::decode(encodedValue);\n");
    25282527        if ($interface->extendedAttributes->{"CustomProxyToJSObject"}) {
    2529             push(@implContent, "    UNUSED_PARAM(baseValue);\n");
    25302528            push(@implContent, "    ${className}* domObject = to${className}(JSValue::decode(thisValue));\n");
    25312529        } elsif (ConstructorShouldBeOnInstance($interface)) {
    2532             push(@implContent, "    UNUSED_PARAM(baseValue);\n");
    25332530            push(@implContent, "    ${className}* domObject = " . GetCastingHelperForThisObject($interface) . "(JSValue::decode(thisValue));\n");
    25342531        } else {
    2535             push(@implContent, "    UNUSED_PARAM(thisValue);\n");
    2536             push(@implContent, "    ${className}Prototype* domObject = jsDynamicCast<${className}Prototype*>(baseValue);\n");
     2532            push(@implContent, "    ${className}Prototype* domObject = jsDynamicCast<${className}Prototype*>(JSValue::decode(thisValue));\n");
    25372533        }
    25382534        push(@implContent, "    if (UNLIKELY(!domObject)) {\n");
     
    26212617            push(@implContent, "#if ${attributeConditionalString}\n") if $attributeConditionalString;
    26222618
    2623             push(@implContent, "void ${putFunctionName}(ExecState* state, JSObject* baseObject, EncodedJSValue");
    2624             push(@implContent, " thisValue") if !$attribute->isStatic;
    2625             push(@implContent, ", EncodedJSValue encodedValue)\n");
     2619            push(@implContent, "void ${putFunctionName}(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)\n");
    26262620            push(@implContent, "{\n");
    26272621            push(@implContent, "    JSValue value = JSValue::decode(encodedValue);\n");
    2628             push(@implContent, "    UNUSED_PARAM(baseObject);\n");
     2622            push(@implContent, "    UNUSED_PARAM(thisValue);\n") if !$attribute->isStatic;
    26292623            if (!$attribute->isStatic) {
    26302624                if ($interface->extendedAttributes->{"CustomProxyToJSObject"}) {
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestActiveDOMObject.cpp

    r196303 r196331  
    4040// Attributes
    4141
    42 JSC::EncodedJSValue jsTestActiveDOMObjectExcitingAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    43 JSC::EncodedJSValue jsTestActiveDOMObjectConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    44 void setJSTestActiveDOMObjectConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     42JSC::EncodedJSValue jsTestActiveDOMObjectExcitingAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     43JSC::EncodedJSValue jsTestActiveDOMObjectConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     44void setJSTestActiveDOMObjectConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    4545
    4646class JSTestActiveDOMObjectPrototype : public JSC::JSNonFinalObject {
     
    145145}
    146146
    147 EncodedJSValue jsTestActiveDOMObjectExcitingAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     147EncodedJSValue jsTestActiveDOMObjectExcitingAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
    148148{
    149149    UNUSED_PARAM(state);
    150     UNUSED_PARAM(slotBase);
    151150    UNUSED_PARAM(thisValue);
    152151    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    163162
    164163
    165 EncodedJSValue jsTestActiveDOMObjectConstructor(ExecState* state, JSObject*, EncodedJSValue thisValue, PropertyName)
     164EncodedJSValue jsTestActiveDOMObjectConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
    166165{
    167166    JSTestActiveDOMObject* domObject = jsDynamicCast<JSTestActiveDOMObject*>(JSValue::decode(thisValue));
     
    173172}
    174173
    175 void setJSTestActiveDOMObjectConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     174void setJSTestActiveDOMObjectConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    176175{
    177176    JSValue value = JSValue::decode(encodedValue);
    178     UNUSED_PARAM(baseValue);
    179177    JSTestActiveDOMObject* domObject = jsDynamicCast<JSTestActiveDOMObject*>(JSValue::decode(thisValue));
    180178    if (UNLIKELY(!domObject)) {
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestClassWithJSBuiltinConstructor.cpp

    r195907 r196331  
    3333// Attributes
    3434
    35 JSC::EncodedJSValue jsTestClassWithJSBuiltinConstructorConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    36 void setJSTestClassWithJSBuiltinConstructorConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     35JSC::EncodedJSValue jsTestClassWithJSBuiltinConstructorConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     36void setJSTestClassWithJSBuiltinConstructorConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    3737
    3838class JSTestClassWithJSBuiltinConstructorPrototype : public JSC::JSNonFinalObject {
     
    120120}
    121121
    122 EncodedJSValue jsTestClassWithJSBuiltinConstructorConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    123 {
    124     JSTestClassWithJSBuiltinConstructorPrototype* domObject = jsDynamicCast<JSTestClassWithJSBuiltinConstructorPrototype*>(baseValue);
     122EncodedJSValue jsTestClassWithJSBuiltinConstructorConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     123{
     124    JSTestClassWithJSBuiltinConstructorPrototype* domObject = jsDynamicCast<JSTestClassWithJSBuiltinConstructorPrototype*>(JSValue::decode(thisValue));
    125125    if (!domObject)
    126126        return throwVMTypeError(state);
     
    128128}
    129129
    130 void setJSTestClassWithJSBuiltinConstructorConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     130void setJSTestClassWithJSBuiltinConstructorConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    131131{
    132132    JSValue value = JSValue::decode(encodedValue);
    133     UNUSED_PARAM(thisValue);
    134     JSTestClassWithJSBuiltinConstructorPrototype* domObject = jsDynamicCast<JSTestClassWithJSBuiltinConstructorPrototype*>(baseValue);
     133    JSTestClassWithJSBuiltinConstructorPrototype* domObject = jsDynamicCast<JSTestClassWithJSBuiltinConstructorPrototype*>(JSValue::decode(thisValue));
    135134    if (UNLIKELY(!domObject)) {
    136135        throwVMTypeError(state);
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCustomConstructorWithNoInterfaceObject.cpp

    r195907 r196331  
    3232// Attributes
    3333
    34 JSC::EncodedJSValue jsTestCustomConstructorWithNoInterfaceObjectConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    35 void setJSTestCustomConstructorWithNoInterfaceObjectConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     34JSC::EncodedJSValue jsTestCustomConstructorWithNoInterfaceObjectConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     35void setJSTestCustomConstructorWithNoInterfaceObjectConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    3636
    3737class JSTestCustomConstructorWithNoInterfaceObjectPrototype : public JSC::JSNonFinalObject {
     
    114114}
    115115
    116 EncodedJSValue jsTestCustomConstructorWithNoInterfaceObjectConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    117 {
    118     JSTestCustomConstructorWithNoInterfaceObjectPrototype* domObject = jsDynamicCast<JSTestCustomConstructorWithNoInterfaceObjectPrototype*>(baseValue);
     116EncodedJSValue jsTestCustomConstructorWithNoInterfaceObjectConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     117{
     118    JSTestCustomConstructorWithNoInterfaceObjectPrototype* domObject = jsDynamicCast<JSTestCustomConstructorWithNoInterfaceObjectPrototype*>(JSValue::decode(thisValue));
    119119    if (!domObject)
    120120        return throwVMTypeError(state);
     
    125125}
    126126
    127 void setJSTestCustomConstructorWithNoInterfaceObjectConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     127void setJSTestCustomConstructorWithNoInterfaceObjectConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    128128{
    129129    JSValue value = JSValue::decode(encodedValue);
    130     UNUSED_PARAM(thisValue);
    131     JSTestCustomConstructorWithNoInterfaceObjectPrototype* domObject = jsDynamicCast<JSTestCustomConstructorWithNoInterfaceObjectPrototype*>(baseValue);
     130    JSTestCustomConstructorWithNoInterfaceObjectPrototype* domObject = jsDynamicCast<JSTestCustomConstructorWithNoInterfaceObjectPrototype*>(JSValue::decode(thisValue));
    132131    if (UNLIKELY(!domObject)) {
    133132        throwVMTypeError(state);
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp

    r195908 r196331  
    3939// Attributes
    4040
    41 JSC::EncodedJSValue jsTestCustomNamedGetterConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    42 void setJSTestCustomNamedGetterConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     41JSC::EncodedJSValue jsTestCustomNamedGetterConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     42void setJSTestCustomNamedGetterConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    4343
    4444class JSTestCustomNamedGetterPrototype : public JSC::JSNonFinalObject {
     
    152152}
    153153
    154 EncodedJSValue jsTestCustomNamedGetterConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    155 {
    156     JSTestCustomNamedGetterPrototype* domObject = jsDynamicCast<JSTestCustomNamedGetterPrototype*>(baseValue);
     154EncodedJSValue jsTestCustomNamedGetterConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     155{
     156    JSTestCustomNamedGetterPrototype* domObject = jsDynamicCast<JSTestCustomNamedGetterPrototype*>(JSValue::decode(thisValue));
    157157    if (!domObject)
    158158        return throwVMTypeError(state);
     
    160160}
    161161
    162 void setJSTestCustomNamedGetterConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     162void setJSTestCustomNamedGetterConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    163163{
    164164    JSValue value = JSValue::decode(encodedValue);
    165     UNUSED_PARAM(thisValue);
    166     JSTestCustomNamedGetterPrototype* domObject = jsDynamicCast<JSTestCustomNamedGetterPrototype*>(baseValue);
     165    JSTestCustomNamedGetterPrototype* domObject = jsDynamicCast<JSTestCustomNamedGetterPrototype*>(JSValue::decode(thisValue));
    167166    if (UNLIKELY(!domObject)) {
    168167        throwVMTypeError(state);
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventConstructor.cpp

    r196303 r196331  
    3636// Attributes
    3737
    38 JSC::EncodedJSValue jsTestEventConstructorAttr1(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    39 JSC::EncodedJSValue jsTestEventConstructorAttr2(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    40 JSC::EncodedJSValue jsTestEventConstructorConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    41 void setJSTestEventConstructorConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     38JSC::EncodedJSValue jsTestEventConstructorAttr1(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     39JSC::EncodedJSValue jsTestEventConstructorAttr2(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     40JSC::EncodedJSValue jsTestEventConstructorConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     41void setJSTestEventConstructorConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    4242
    4343class JSTestEventConstructorPrototype : public JSC::JSNonFinalObject {
     
    157157}
    158158
    159 EncodedJSValue jsTestEventConstructorAttr1(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     159EncodedJSValue jsTestEventConstructorAttr1(ExecState* state, EncodedJSValue thisValue, PropertyName)
    160160{
    161161    UNUSED_PARAM(state);
    162     UNUSED_PARAM(slotBase);
    163162    UNUSED_PARAM(thisValue);
    164163    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    173172
    174173
    175 EncodedJSValue jsTestEventConstructorAttr2(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     174EncodedJSValue jsTestEventConstructorAttr2(ExecState* state, EncodedJSValue thisValue, PropertyName)
    176175{
    177176    UNUSED_PARAM(state);
    178     UNUSED_PARAM(slotBase);
    179177    UNUSED_PARAM(thisValue);
    180178    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    189187
    190188
    191 EncodedJSValue jsTestEventConstructorConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    192 {
    193     JSTestEventConstructorPrototype* domObject = jsDynamicCast<JSTestEventConstructorPrototype*>(baseValue);
     189EncodedJSValue jsTestEventConstructorConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     190{
     191    JSTestEventConstructorPrototype* domObject = jsDynamicCast<JSTestEventConstructorPrototype*>(JSValue::decode(thisValue));
    194192    if (!domObject)
    195193        return throwVMTypeError(state);
     
    197195}
    198196
    199 void setJSTestEventConstructorConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     197void setJSTestEventConstructorConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    200198{
    201199    JSValue value = JSValue::decode(encodedValue);
    202     UNUSED_PARAM(thisValue);
    203     JSTestEventConstructorPrototype* domObject = jsDynamicCast<JSTestEventConstructorPrototype*>(baseValue);
     200    JSTestEventConstructorPrototype* domObject = jsDynamicCast<JSTestEventConstructorPrototype*>(JSValue::decode(thisValue));
    204201    if (UNLIKELY(!domObject)) {
    205202        throwVMTypeError(state);
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventTarget.cpp

    r195908 r196331  
    4848// Attributes
    4949
    50 JSC::EncodedJSValue jsTestEventTargetConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    51 void setJSTestEventTargetConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     50JSC::EncodedJSValue jsTestEventTargetConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     51void setJSTestEventTargetConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    5252
    5353class JSTestEventTargetPrototype : public JSC::JSNonFinalObject {
     
    168168}
    169169
    170 EncodedJSValue jsTestEventTargetConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    171 {
    172     JSTestEventTargetPrototype* domObject = jsDynamicCast<JSTestEventTargetPrototype*>(baseValue);
     170EncodedJSValue jsTestEventTargetConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     171{
     172    JSTestEventTargetPrototype* domObject = jsDynamicCast<JSTestEventTargetPrototype*>(JSValue::decode(thisValue));
    173173    if (!domObject)
    174174        return throwVMTypeError(state);
     
    176176}
    177177
    178 void setJSTestEventTargetConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     178void setJSTestEventTargetConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    179179{
    180180    JSValue value = JSValue::decode(encodedValue);
    181     UNUSED_PARAM(thisValue);
    182     JSTestEventTargetPrototype* domObject = jsDynamicCast<JSTestEventTargetPrototype*>(baseValue);
     181    JSTestEventTargetPrototype* domObject = jsDynamicCast<JSTestEventTargetPrototype*>(JSValue::decode(thisValue));
    183182    if (UNLIKELY(!domObject)) {
    184183        throwVMTypeError(state);
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestException.cpp

    r196303 r196331  
    3434// Attributes
    3535
    36 JSC::EncodedJSValue jsTestExceptionName(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    37 JSC::EncodedJSValue jsTestExceptionConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    38 void setJSTestExceptionConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     36JSC::EncodedJSValue jsTestExceptionName(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     37JSC::EncodedJSValue jsTestExceptionConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     38void setJSTestExceptionConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    3939
    4040class JSTestExceptionPrototype : public JSC::JSNonFinalObject {
     
    135135}
    136136
    137 EncodedJSValue jsTestExceptionName(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     137EncodedJSValue jsTestExceptionName(ExecState* state, EncodedJSValue thisValue, PropertyName)
    138138{
    139139    UNUSED_PARAM(state);
    140     UNUSED_PARAM(slotBase);
    141140    UNUSED_PARAM(thisValue);
    142141    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    151150
    152151
    153 EncodedJSValue jsTestExceptionConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    154 {
    155     JSTestExceptionPrototype* domObject = jsDynamicCast<JSTestExceptionPrototype*>(baseValue);
     152EncodedJSValue jsTestExceptionConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     153{
     154    JSTestExceptionPrototype* domObject = jsDynamicCast<JSTestExceptionPrototype*>(JSValue::decode(thisValue));
    156155    if (!domObject)
    157156        return throwVMTypeError(state);
     
    159158}
    160159
    161 void setJSTestExceptionConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     160void setJSTestExceptionConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    162161{
    163162    JSValue value = JSValue::decode(encodedValue);
    164     UNUSED_PARAM(thisValue);
    165     JSTestExceptionPrototype* domObject = jsDynamicCast<JSTestExceptionPrototype*>(baseValue);
     163    JSTestExceptionPrototype* domObject = jsDynamicCast<JSTestExceptionPrototype*>(JSValue::decode(thisValue));
    166164    if (UNLIKELY(!domObject)) {
    167165        throwVMTypeError(state);
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp

    r195907 r196331  
    3232// Attributes
    3333
    34 JSC::EncodedJSValue jsTestGenerateIsReachableConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    35 void setJSTestGenerateIsReachableConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     34JSC::EncodedJSValue jsTestGenerateIsReachableConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     35void setJSTestGenerateIsReachableConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    3636
    3737class JSTestGenerateIsReachablePrototype : public JSC::JSNonFinalObject {
     
    109109}
    110110
    111 EncodedJSValue jsTestGenerateIsReachableConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    112 {
    113     JSTestGenerateIsReachablePrototype* domObject = jsDynamicCast<JSTestGenerateIsReachablePrototype*>(baseValue);
     111EncodedJSValue jsTestGenerateIsReachableConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     112{
     113    JSTestGenerateIsReachablePrototype* domObject = jsDynamicCast<JSTestGenerateIsReachablePrototype*>(JSValue::decode(thisValue));
    114114    if (!domObject)
    115115        return throwVMTypeError(state);
     
    117117}
    118118
    119 void setJSTestGenerateIsReachableConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     119void setJSTestGenerateIsReachableConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    120120{
    121121    JSValue value = JSValue::decode(encodedValue);
    122     UNUSED_PARAM(thisValue);
    123     JSTestGenerateIsReachablePrototype* domObject = jsDynamicCast<JSTestGenerateIsReachablePrototype*>(baseValue);
     122    JSTestGenerateIsReachablePrototype* domObject = jsDynamicCast<JSTestGenerateIsReachablePrototype*>(JSValue::decode(thisValue));
    124123    if (UNLIKELY(!domObject)) {
    125124        throwVMTypeError(state);
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestInterface.cpp

    r196303 r196331  
    7979
    8080#if ENABLE(Condition22) || ENABLE(Condition23)
    81 JSC::EncodedJSValue jsTestInterfaceConstructorImplementsStaticReadOnlyAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    82 #endif
    83 #if ENABLE(Condition22) || ENABLE(Condition23)
    84 JSC::EncodedJSValue jsTestInterfaceConstructorImplementsStaticAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    85 void setJSTestInterfaceConstructorImplementsStaticAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    86 #endif
    87 #if ENABLE(Condition22) || ENABLE(Condition23)
    88 JSC::EncodedJSValue jsTestInterfaceImplementsStr1(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    89 #endif
    90 #if ENABLE(Condition22) || ENABLE(Condition23)
    91 JSC::EncodedJSValue jsTestInterfaceImplementsStr2(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    92 void setJSTestInterfaceImplementsStr2(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    93 #endif
    94 #if ENABLE(Condition22) || ENABLE(Condition23)
    95 JSC::EncodedJSValue jsTestInterfaceImplementsStr3(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    96 void setJSTestInterfaceImplementsStr3(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    97 #endif
    98 #if ENABLE(Condition22) || ENABLE(Condition23)
    99 JSC::EncodedJSValue jsTestInterfaceImplementsNode(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    100 void setJSTestInterfaceImplementsNode(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    101 #endif
    102 #if ENABLE(Condition11) || ENABLE(Condition12)
    103 JSC::EncodedJSValue jsTestInterfaceConstructorSupplementalStaticReadOnlyAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    104 #endif
    105 #if ENABLE(Condition11) || ENABLE(Condition12)
    106 JSC::EncodedJSValue jsTestInterfaceConstructorSupplementalStaticAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    107 void setJSTestInterfaceConstructorSupplementalStaticAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    108 #endif
    109 #if ENABLE(Condition11) || ENABLE(Condition12)
    110 JSC::EncodedJSValue jsTestInterfaceSupplementalStr1(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    111 #endif
    112 #if ENABLE(Condition11) || ENABLE(Condition12)
    113 JSC::EncodedJSValue jsTestInterfaceSupplementalStr2(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    114 void setJSTestInterfaceSupplementalStr2(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    115 #endif
    116 #if ENABLE(Condition11) || ENABLE(Condition12)
    117 JSC::EncodedJSValue jsTestInterfaceSupplementalStr3(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    118 void setJSTestInterfaceSupplementalStr3(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    119 #endif
    120 #if ENABLE(Condition11) || ENABLE(Condition12)
    121 JSC::EncodedJSValue jsTestInterfaceSupplementalNode(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    122 void setJSTestInterfaceSupplementalNode(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    123 #endif
    124 JSC::EncodedJSValue jsTestInterfaceConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    125 void setJSTestInterfaceConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     81JSC::EncodedJSValue jsTestInterfaceConstructorImplementsStaticReadOnlyAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     82#endif
     83#if ENABLE(Condition22) || ENABLE(Condition23)
     84JSC::EncodedJSValue jsTestInterfaceConstructorImplementsStaticAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     85void setJSTestInterfaceConstructorImplementsStaticAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     86#endif
     87#if ENABLE(Condition22) || ENABLE(Condition23)
     88JSC::EncodedJSValue jsTestInterfaceImplementsStr1(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     89#endif
     90#if ENABLE(Condition22) || ENABLE(Condition23)
     91JSC::EncodedJSValue jsTestInterfaceImplementsStr2(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     92void setJSTestInterfaceImplementsStr2(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     93#endif
     94#if ENABLE(Condition22) || ENABLE(Condition23)
     95JSC::EncodedJSValue jsTestInterfaceImplementsStr3(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     96void setJSTestInterfaceImplementsStr3(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     97#endif
     98#if ENABLE(Condition22) || ENABLE(Condition23)
     99JSC::EncodedJSValue jsTestInterfaceImplementsNode(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     100void setJSTestInterfaceImplementsNode(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     101#endif
     102#if ENABLE(Condition11) || ENABLE(Condition12)
     103JSC::EncodedJSValue jsTestInterfaceConstructorSupplementalStaticReadOnlyAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     104#endif
     105#if ENABLE(Condition11) || ENABLE(Condition12)
     106JSC::EncodedJSValue jsTestInterfaceConstructorSupplementalStaticAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     107void setJSTestInterfaceConstructorSupplementalStaticAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     108#endif
     109#if ENABLE(Condition11) || ENABLE(Condition12)
     110JSC::EncodedJSValue jsTestInterfaceSupplementalStr1(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     111#endif
     112#if ENABLE(Condition11) || ENABLE(Condition12)
     113JSC::EncodedJSValue jsTestInterfaceSupplementalStr2(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     114void setJSTestInterfaceSupplementalStr2(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     115#endif
     116#if ENABLE(Condition11) || ENABLE(Condition12)
     117JSC::EncodedJSValue jsTestInterfaceSupplementalStr3(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     118void setJSTestInterfaceSupplementalStr3(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     119#endif
     120#if ENABLE(Condition11) || ENABLE(Condition12)
     121JSC::EncodedJSValue jsTestInterfaceSupplementalNode(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     122void setJSTestInterfaceSupplementalNode(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     123#endif
     124JSC::EncodedJSValue jsTestInterfaceConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     125void setJSTestInterfaceConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    126126
    127127class JSTestInterfacePrototype : public JSC::JSNonFinalObject {
     
    405405
    406406#if ENABLE(Condition22) || ENABLE(Condition23)
    407 EncodedJSValue jsTestInterfaceConstructorImplementsStaticReadOnlyAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    408 {
    409     UNUSED_PARAM(state);
    410     UNUSED_PARAM(slotBase);
     407EncodedJSValue jsTestInterfaceConstructorImplementsStaticReadOnlyAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     408{
     409    UNUSED_PARAM(state);
    411410    UNUSED_PARAM(thisValue);
    412411    JSValue result = jsNumber(TestInterface::implementsStaticReadOnlyAttr());
     
    417416
    418417#if ENABLE(Condition22) || ENABLE(Condition23)
    419 EncodedJSValue jsTestInterfaceConstructorImplementsStaticAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    420 {
    421     UNUSED_PARAM(state);
    422     UNUSED_PARAM(slotBase);
     418EncodedJSValue jsTestInterfaceConstructorImplementsStaticAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     419{
     420    UNUSED_PARAM(state);
    423421    UNUSED_PARAM(thisValue);
    424422    JSValue result = jsStringWithCache(state, TestInterface::implementsStaticAttr());
     
    429427
    430428#if ENABLE(Condition22) || ENABLE(Condition23)
    431 EncodedJSValue jsTestInterfaceImplementsStr1(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    432 {
    433     UNUSED_PARAM(state);
    434     UNUSED_PARAM(slotBase);
     429EncodedJSValue jsTestInterfaceImplementsStr1(ExecState* state, EncodedJSValue thisValue, PropertyName)
     430{
     431    UNUSED_PARAM(state);
    435432    UNUSED_PARAM(thisValue);
    436433    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    447444
    448445#if ENABLE(Condition22) || ENABLE(Condition23)
    449 EncodedJSValue jsTestInterfaceImplementsStr2(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    450 {
    451     UNUSED_PARAM(state);
    452     UNUSED_PARAM(slotBase);
     446EncodedJSValue jsTestInterfaceImplementsStr2(ExecState* state, EncodedJSValue thisValue, PropertyName)
     447{
     448    UNUSED_PARAM(state);
    453449    UNUSED_PARAM(thisValue);
    454450    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    465461
    466462#if ENABLE(Condition22) || ENABLE(Condition23)
    467 EncodedJSValue jsTestInterfaceImplementsStr3(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    468 {
    469     UNUSED_PARAM(state);
    470     UNUSED_PARAM(slotBase);
     463EncodedJSValue jsTestInterfaceImplementsStr3(ExecState* state, EncodedJSValue thisValue, PropertyName)
     464{
     465    UNUSED_PARAM(state);
    471466    UNUSED_PARAM(thisValue);
    472467    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    481476
    482477#if ENABLE(Condition22) || ENABLE(Condition23)
    483 EncodedJSValue jsTestInterfaceImplementsNode(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    484 {
    485     UNUSED_PARAM(state);
    486     UNUSED_PARAM(slotBase);
     478EncodedJSValue jsTestInterfaceImplementsNode(ExecState* state, EncodedJSValue thisValue, PropertyName)
     479{
     480    UNUSED_PARAM(state);
    487481    UNUSED_PARAM(thisValue);
    488482    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    499493
    500494#if ENABLE(Condition11) || ENABLE(Condition12)
    501 EncodedJSValue jsTestInterfaceConstructorSupplementalStaticReadOnlyAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    502 {
    503     UNUSED_PARAM(state);
    504     UNUSED_PARAM(slotBase);
     495EncodedJSValue jsTestInterfaceConstructorSupplementalStaticReadOnlyAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     496{
     497    UNUSED_PARAM(state);
    505498    UNUSED_PARAM(thisValue);
    506499    JSValue result = jsNumber(WebCore::TestSupplemental::supplementalStaticReadOnlyAttr());
     
    511504
    512505#if ENABLE(Condition11) || ENABLE(Condition12)
    513 EncodedJSValue jsTestInterfaceConstructorSupplementalStaticAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    514 {
    515     UNUSED_PARAM(state);
    516     UNUSED_PARAM(slotBase);
     506EncodedJSValue jsTestInterfaceConstructorSupplementalStaticAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     507{
     508    UNUSED_PARAM(state);
    517509    UNUSED_PARAM(thisValue);
    518510    JSValue result = jsStringWithCache(state, WebCore::TestSupplemental::supplementalStaticAttr());
     
    523515
    524516#if ENABLE(Condition11) || ENABLE(Condition12)
    525 EncodedJSValue jsTestInterfaceSupplementalStr1(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    526 {
    527     UNUSED_PARAM(state);
    528     UNUSED_PARAM(slotBase);
     517EncodedJSValue jsTestInterfaceSupplementalStr1(ExecState* state, EncodedJSValue thisValue, PropertyName)
     518{
     519    UNUSED_PARAM(state);
    529520    UNUSED_PARAM(thisValue);
    530521    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    541532
    542533#if ENABLE(Condition11) || ENABLE(Condition12)
    543 EncodedJSValue jsTestInterfaceSupplementalStr2(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    544 {
    545     UNUSED_PARAM(state);
    546     UNUSED_PARAM(slotBase);
     534EncodedJSValue jsTestInterfaceSupplementalStr2(ExecState* state, EncodedJSValue thisValue, PropertyName)
     535{
     536    UNUSED_PARAM(state);
    547537    UNUSED_PARAM(thisValue);
    548538    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    559549
    560550#if ENABLE(Condition11) || ENABLE(Condition12)
    561 EncodedJSValue jsTestInterfaceSupplementalStr3(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    562 {
    563     UNUSED_PARAM(state);
    564     UNUSED_PARAM(slotBase);
     551EncodedJSValue jsTestInterfaceSupplementalStr3(ExecState* state, EncodedJSValue thisValue, PropertyName)
     552{
     553    UNUSED_PARAM(state);
    565554    UNUSED_PARAM(thisValue);
    566555    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    575564
    576565#if ENABLE(Condition11) || ENABLE(Condition12)
    577 EncodedJSValue jsTestInterfaceSupplementalNode(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    578 {
    579     UNUSED_PARAM(state);
    580     UNUSED_PARAM(slotBase);
     566EncodedJSValue jsTestInterfaceSupplementalNode(ExecState* state, EncodedJSValue thisValue, PropertyName)
     567{
     568    UNUSED_PARAM(state);
    581569    UNUSED_PARAM(thisValue);
    582570    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    592580#endif
    593581
    594 EncodedJSValue jsTestInterfaceConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    595 {
    596     JSTestInterfacePrototype* domObject = jsDynamicCast<JSTestInterfacePrototype*>(baseValue);
     582EncodedJSValue jsTestInterfaceConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     583{
     584    JSTestInterfacePrototype* domObject = jsDynamicCast<JSTestInterfacePrototype*>(JSValue::decode(thisValue));
    597585    if (!domObject)
    598586        return throwVMTypeError(state);
     
    600588}
    601589
    602 void setJSTestInterfaceConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     590void setJSTestInterfaceConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    603591{
    604592    JSValue value = JSValue::decode(encodedValue);
    605     UNUSED_PARAM(thisValue);
    606     JSTestInterfacePrototype* domObject = jsDynamicCast<JSTestInterfacePrototype*>(baseValue);
     593    JSTestInterfacePrototype* domObject = jsDynamicCast<JSTestInterfacePrototype*>(JSValue::decode(thisValue));
    607594    if (UNLIKELY(!domObject)) {
    608595        throwVMTypeError(state);
     
    634621
    635622#if ENABLE(Condition22) || ENABLE(Condition23)
    636 void setJSTestInterfaceConstructorImplementsStaticAttr(ExecState* state, JSObject* baseObject, EncodedJSValue, EncodedJSValue encodedValue)
     623void setJSTestInterfaceConstructorImplementsStaticAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    637624{
    638625    JSValue value = JSValue::decode(encodedValue);
    639     UNUSED_PARAM(baseObject);
    640626    String nativeValue = value.toString(state)->value(state);
    641627    if (UNLIKELY(state->hadException()))
     
    647633
    648634#if ENABLE(Condition22) || ENABLE(Condition23)
    649 void setJSTestInterfaceImplementsStr2(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     635void setJSTestInterfaceImplementsStr2(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    650636{
    651637    JSValue value = JSValue::decode(encodedValue);
    652     UNUSED_PARAM(baseObject);
     638    UNUSED_PARAM(thisValue);
    653639    JSTestInterface* castedThis = jsDynamicCast<JSTestInterface*>(JSValue::decode(thisValue));
    654640    if (UNLIKELY(!castedThis)) {
     
    666652
    667653#if ENABLE(Condition22) || ENABLE(Condition23)
    668 void setJSTestInterfaceImplementsStr3(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     654void setJSTestInterfaceImplementsStr3(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    669655{
    670656    JSValue value = JSValue::decode(encodedValue);
    671     UNUSED_PARAM(baseObject);
     657    UNUSED_PARAM(thisValue);
    672658    JSTestInterface* castedThis = jsDynamicCast<JSTestInterface*>(JSValue::decode(thisValue));
    673659    if (UNLIKELY(!castedThis)) {
     
    681667
    682668#if ENABLE(Condition22) || ENABLE(Condition23)
    683 void setJSTestInterfaceImplementsNode(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     669void setJSTestInterfaceImplementsNode(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    684670{
    685671    JSValue value = JSValue::decode(encodedValue);
    686     UNUSED_PARAM(baseObject);
     672    UNUSED_PARAM(thisValue);
    687673    JSTestInterface* castedThis = jsDynamicCast<JSTestInterface*>(JSValue::decode(thisValue));
    688674    if (UNLIKELY(!castedThis)) {
     
    700686
    701687#if ENABLE(Condition11) || ENABLE(Condition12)
    702 void setJSTestInterfaceConstructorSupplementalStaticAttr(ExecState* state, JSObject* baseObject, EncodedJSValue, EncodedJSValue encodedValue)
     688void setJSTestInterfaceConstructorSupplementalStaticAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    703689{
    704690    JSValue value = JSValue::decode(encodedValue);
    705     UNUSED_PARAM(baseObject);
    706691    String nativeValue = value.toString(state)->value(state);
    707692    if (UNLIKELY(state->hadException()))
     
    713698
    714699#if ENABLE(Condition11) || ENABLE(Condition12)
    715 void setJSTestInterfaceSupplementalStr2(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     700void setJSTestInterfaceSupplementalStr2(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    716701{
    717702    JSValue value = JSValue::decode(encodedValue);
    718     UNUSED_PARAM(baseObject);
     703    UNUSED_PARAM(thisValue);
    719704    JSTestInterface* castedThis = jsDynamicCast<JSTestInterface*>(JSValue::decode(thisValue));
    720705    if (UNLIKELY(!castedThis)) {
     
    732717
    733718#if ENABLE(Condition11) || ENABLE(Condition12)
    734 void setJSTestInterfaceSupplementalStr3(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     719void setJSTestInterfaceSupplementalStr3(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    735720{
    736721    JSValue value = JSValue::decode(encodedValue);
    737     UNUSED_PARAM(baseObject);
     722    UNUSED_PARAM(thisValue);
    738723    JSTestInterface* castedThis = jsDynamicCast<JSTestInterface*>(JSValue::decode(thisValue));
    739724    if (UNLIKELY(!castedThis)) {
     
    747732
    748733#if ENABLE(Condition11) || ENABLE(Condition12)
    749 void setJSTestInterfaceSupplementalNode(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     734void setJSTestInterfaceSupplementalNode(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    750735{
    751736    JSValue value = JSValue::decode(encodedValue);
    752     UNUSED_PARAM(baseObject);
     737    UNUSED_PARAM(thisValue);
    753738    JSTestInterface* castedThis = jsDynamicCast<JSTestInterface*>(JSValue::decode(thisValue));
    754739    if (UNLIKELY(!castedThis)) {
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestJSBuiltinConstructor.cpp

    r196303 r196331  
    3838// Attributes
    3939
    40 JSC::EncodedJSValue jsTestJSBuiltinConstructorTestAttributeCustom(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    41 JSC::EncodedJSValue jsTestJSBuiltinConstructorTestAttributeRWCustom(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    42 void setJSTestJSBuiltinConstructorTestAttributeRWCustom(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    43 JSC::EncodedJSValue jsTestJSBuiltinConstructorConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    44 void setJSTestJSBuiltinConstructorConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     40JSC::EncodedJSValue jsTestJSBuiltinConstructorTestAttributeCustom(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     41JSC::EncodedJSValue jsTestJSBuiltinConstructorTestAttributeRWCustom(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     42void setJSTestJSBuiltinConstructorTestAttributeRWCustom(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     43JSC::EncodedJSValue jsTestJSBuiltinConstructorConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     44void setJSTestJSBuiltinConstructorConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    4545
    4646class JSTestJSBuiltinConstructorPrototype : public JSC::JSNonFinalObject {
     
    126126}
    127127
    128 EncodedJSValue jsTestJSBuiltinConstructorTestAttributeCustom(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     128EncodedJSValue jsTestJSBuiltinConstructorTestAttributeCustom(ExecState* state, EncodedJSValue thisValue, PropertyName)
    129129{
    130130    UNUSED_PARAM(state);
    131     UNUSED_PARAM(slotBase);
    132131    UNUSED_PARAM(thisValue);
    133132    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    140139
    141140
    142 EncodedJSValue jsTestJSBuiltinConstructorTestAttributeRWCustom(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     141EncodedJSValue jsTestJSBuiltinConstructorTestAttributeRWCustom(ExecState* state, EncodedJSValue thisValue, PropertyName)
    143142{
    144143    UNUSED_PARAM(state);
    145     UNUSED_PARAM(slotBase);
    146144    UNUSED_PARAM(thisValue);
    147145    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    154152
    155153
    156 EncodedJSValue jsTestJSBuiltinConstructorConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    157 {
    158     JSTestJSBuiltinConstructorPrototype* domObject = jsDynamicCast<JSTestJSBuiltinConstructorPrototype*>(baseValue);
     154EncodedJSValue jsTestJSBuiltinConstructorConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     155{
     156    JSTestJSBuiltinConstructorPrototype* domObject = jsDynamicCast<JSTestJSBuiltinConstructorPrototype*>(JSValue::decode(thisValue));
    159157    if (!domObject)
    160158        return throwVMTypeError(state);
     
    162160}
    163161
    164 void setJSTestJSBuiltinConstructorConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     162void setJSTestJSBuiltinConstructorConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    165163{
    166164    JSValue value = JSValue::decode(encodedValue);
    167     UNUSED_PARAM(thisValue);
    168     JSTestJSBuiltinConstructorPrototype* domObject = jsDynamicCast<JSTestJSBuiltinConstructorPrototype*>(baseValue);
     165    JSTestJSBuiltinConstructorPrototype* domObject = jsDynamicCast<JSTestJSBuiltinConstructorPrototype*>(JSValue::decode(thisValue));
    169166    if (UNLIKELY(!domObject)) {
    170167        throwVMTypeError(state);
     
    175172}
    176173
    177 void setJSTestJSBuiltinConstructorTestAttributeRWCustom(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     174void setJSTestJSBuiltinConstructorTestAttributeRWCustom(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    178175{
    179176    JSValue value = JSValue::decode(encodedValue);
    180     UNUSED_PARAM(baseObject);
     177    UNUSED_PARAM(thisValue);
    181178    JSTestJSBuiltinConstructor* castedThis = jsDynamicCast<JSTestJSBuiltinConstructor*>(JSValue::decode(thisValue));
    182179    if (UNLIKELY(!castedThis)) {
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp

    r195907 r196331  
    3939// Attributes
    4040
    41 JSC::EncodedJSValue jsTestMediaQueryListListenerConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    42 void setJSTestMediaQueryListListenerConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     41JSC::EncodedJSValue jsTestMediaQueryListListenerConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     42void setJSTestMediaQueryListListenerConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    4343
    4444class JSTestMediaQueryListListenerPrototype : public JSC::JSNonFinalObject {
     
    117117}
    118118
    119 EncodedJSValue jsTestMediaQueryListListenerConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    120 {
    121     JSTestMediaQueryListListenerPrototype* domObject = jsDynamicCast<JSTestMediaQueryListListenerPrototype*>(baseValue);
     119EncodedJSValue jsTestMediaQueryListListenerConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     120{
     121    JSTestMediaQueryListListenerPrototype* domObject = jsDynamicCast<JSTestMediaQueryListListenerPrototype*>(JSValue::decode(thisValue));
    122122    if (!domObject)
    123123        return throwVMTypeError(state);
     
    125125}
    126126
    127 void setJSTestMediaQueryListListenerConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     127void setJSTestMediaQueryListListenerConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    128128{
    129129    JSValue value = JSValue::decode(encodedValue);
    130     UNUSED_PARAM(thisValue);
    131     JSTestMediaQueryListListenerPrototype* domObject = jsDynamicCast<JSTestMediaQueryListListenerPrototype*>(baseValue);
     130    JSTestMediaQueryListListenerPrototype* domObject = jsDynamicCast<JSTestMediaQueryListListenerPrototype*>(JSValue::decode(thisValue));
    132131    if (UNLIKELY(!domObject)) {
    133132        throwVMTypeError(state);
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNamedConstructor.cpp

    r195907 r196331  
    3434// Attributes
    3535
    36 JSC::EncodedJSValue jsTestNamedConstructorConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    37 void setJSTestNamedConstructorConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     36JSC::EncodedJSValue jsTestNamedConstructorConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     37void setJSTestNamedConstructorConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    3838
    3939class JSTestNamedConstructorPrototype : public JSC::JSNonFinalObject {
     
    144144}
    145145
    146 EncodedJSValue jsTestNamedConstructorConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    147 {
    148     JSTestNamedConstructorPrototype* domObject = jsDynamicCast<JSTestNamedConstructorPrototype*>(baseValue);
     146EncodedJSValue jsTestNamedConstructorConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     147{
     148    JSTestNamedConstructorPrototype* domObject = jsDynamicCast<JSTestNamedConstructorPrototype*>(JSValue::decode(thisValue));
    149149    if (!domObject)
    150150        return throwVMTypeError(state);
     
    152152}
    153153
    154 void setJSTestNamedConstructorConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     154void setJSTestNamedConstructorConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    155155{
    156156    JSValue value = JSValue::decode(encodedValue);
    157     UNUSED_PARAM(thisValue);
    158     JSTestNamedConstructorPrototype* domObject = jsDynamicCast<JSTestNamedConstructorPrototype*>(baseValue);
     157    JSTestNamedConstructorPrototype* domObject = jsDynamicCast<JSTestNamedConstructorPrototype*>(JSValue::decode(thisValue));
    159158    if (UNLIKELY(!domObject)) {
    160159        throwVMTypeError(state);
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNode.cpp

    r196303 r196331  
    3636// Attributes
    3737
    38 JSC::EncodedJSValue jsTestNodeName(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    39 void setJSTestNodeName(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    40 JSC::EncodedJSValue jsTestNodeConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    41 void setJSTestNodeConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     38JSC::EncodedJSValue jsTestNodeName(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     39void setJSTestNodeName(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     40JSC::EncodedJSValue jsTestNodeConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     41void setJSTestNodeConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    4242
    4343class JSTestNodePrototype : public JSC::JSNonFinalObject {
     
    117117}
    118118
    119 EncodedJSValue jsTestNodeName(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     119EncodedJSValue jsTestNodeName(ExecState* state, EncodedJSValue thisValue, PropertyName)
    120120{
    121121    UNUSED_PARAM(state);
    122     UNUSED_PARAM(slotBase);
    123122    UNUSED_PARAM(thisValue);
    124123    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    133132
    134133
    135 EncodedJSValue jsTestNodeConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
     134EncodedJSValue jsTestNodeConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
    136135{
    137     JSTestNodePrototype* domObject = jsDynamicCast<JSTestNodePrototype*>(baseValue);
     136    JSTestNodePrototype* domObject = jsDynamicCast<JSTestNodePrototype*>(JSValue::decode(thisValue));
    138137    if (!domObject)
    139138        return throwVMTypeError(state);
     
    141140}
    142141
    143 void setJSTestNodeConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     142void setJSTestNodeConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    144143{
    145144    JSValue value = JSValue::decode(encodedValue);
    146     UNUSED_PARAM(thisValue);
    147     JSTestNodePrototype* domObject = jsDynamicCast<JSTestNodePrototype*>(baseValue);
     145    JSTestNodePrototype* domObject = jsDynamicCast<JSTestNodePrototype*>(JSValue::decode(thisValue));
    148146    if (UNLIKELY(!domObject)) {
    149147        throwVMTypeError(state);
     
    154152}
    155153
    156 void setJSTestNodeName(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     154void setJSTestNodeName(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    157155{
    158156    JSValue value = JSValue::decode(encodedValue);
    159     UNUSED_PARAM(baseObject);
     157    UNUSED_PARAM(thisValue);
    160158    JSTestNode* castedThis = jsDynamicCast<JSTestNode*>(JSValue::decode(thisValue));
    161159    if (UNLIKELY(!castedThis)) {
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNondeterministic.cpp

    r196303 r196331  
    4646// Attributes
    4747
    48 JSC::EncodedJSValue jsTestNondeterministicNondeterministicReadonlyAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    49 JSC::EncodedJSValue jsTestNondeterministicNondeterministicWriteableAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    50 void setJSTestNondeterministicNondeterministicWriteableAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    51 JSC::EncodedJSValue jsTestNondeterministicNondeterministicExceptionAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    52 void setJSTestNondeterministicNondeterministicExceptionAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    53 JSC::EncodedJSValue jsTestNondeterministicNondeterministicGetterExceptionAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    54 void setJSTestNondeterministicNondeterministicGetterExceptionAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    55 JSC::EncodedJSValue jsTestNondeterministicNondeterministicSetterExceptionAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    56 void setJSTestNondeterministicNondeterministicSetterExceptionAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    57 JSC::EncodedJSValue jsTestNondeterministicConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    58 void setJSTestNondeterministicConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     48JSC::EncodedJSValue jsTestNondeterministicNondeterministicReadonlyAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     49JSC::EncodedJSValue jsTestNondeterministicNondeterministicWriteableAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     50void setJSTestNondeterministicNondeterministicWriteableAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     51JSC::EncodedJSValue jsTestNondeterministicNondeterministicExceptionAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     52void setJSTestNondeterministicNondeterministicExceptionAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     53JSC::EncodedJSValue jsTestNondeterministicNondeterministicGetterExceptionAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     54void setJSTestNondeterministicNondeterministicGetterExceptionAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     55JSC::EncodedJSValue jsTestNondeterministicNondeterministicSetterExceptionAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     56void setJSTestNondeterministicNondeterministicSetterExceptionAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     57JSC::EncodedJSValue jsTestNondeterministicConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     58void setJSTestNondeterministicConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    5959
    6060class JSTestNondeterministicPrototype : public JSC::JSNonFinalObject {
     
    138138}
    139139
    140 EncodedJSValue jsTestNondeterministicNondeterministicReadonlyAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     140EncodedJSValue jsTestNondeterministicNondeterministicReadonlyAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
    141141{
    142142    UNUSED_PARAM(state);
    143     UNUSED_PARAM(slotBase);
    144143    UNUSED_PARAM(thisValue);
    145144    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    174173
    175174
    176 EncodedJSValue jsTestNondeterministicNondeterministicWriteableAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     175EncodedJSValue jsTestNondeterministicNondeterministicWriteableAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
    177176{
    178177    UNUSED_PARAM(state);
    179     UNUSED_PARAM(slotBase);
    180178    UNUSED_PARAM(thisValue);
    181179    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    210208
    211209
    212 EncodedJSValue jsTestNondeterministicNondeterministicExceptionAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     210EncodedJSValue jsTestNondeterministicNondeterministicExceptionAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
    213211{
    214212    UNUSED_PARAM(state);
    215     UNUSED_PARAM(slotBase);
    216213    UNUSED_PARAM(thisValue);
    217214    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    246243
    247244
    248 EncodedJSValue jsTestNondeterministicNondeterministicGetterExceptionAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     245EncodedJSValue jsTestNondeterministicNondeterministicGetterExceptionAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
    249246{
    250247    UNUSED_PARAM(state);
    251     UNUSED_PARAM(slotBase);
    252248    UNUSED_PARAM(thisValue);
    253249    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    286282
    287283
    288 EncodedJSValue jsTestNondeterministicNondeterministicSetterExceptionAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     284EncodedJSValue jsTestNondeterministicNondeterministicSetterExceptionAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
    289285{
    290286    UNUSED_PARAM(state);
    291     UNUSED_PARAM(slotBase);
    292287    UNUSED_PARAM(thisValue);
    293288    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    322317
    323318
    324 EncodedJSValue jsTestNondeterministicConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    325 {
    326     JSTestNondeterministicPrototype* domObject = jsDynamicCast<JSTestNondeterministicPrototype*>(baseValue);
     319EncodedJSValue jsTestNondeterministicConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     320{
     321    JSTestNondeterministicPrototype* domObject = jsDynamicCast<JSTestNondeterministicPrototype*>(JSValue::decode(thisValue));
    327322    if (!domObject)
    328323        return throwVMTypeError(state);
     
    330325}
    331326
    332 void setJSTestNondeterministicConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     327void setJSTestNondeterministicConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    333328{
    334329    JSValue value = JSValue::decode(encodedValue);
    335     UNUSED_PARAM(thisValue);
    336     JSTestNondeterministicPrototype* domObject = jsDynamicCast<JSTestNondeterministicPrototype*>(baseValue);
     330    JSTestNondeterministicPrototype* domObject = jsDynamicCast<JSTestNondeterministicPrototype*>(JSValue::decode(thisValue));
    337331    if (UNLIKELY(!domObject)) {
    338332        throwVMTypeError(state);
     
    343337}
    344338
    345 void setJSTestNondeterministicNondeterministicWriteableAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     339void setJSTestNondeterministicNondeterministicWriteableAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    346340{
    347341    JSValue value = JSValue::decode(encodedValue);
    348     UNUSED_PARAM(baseObject);
     342    UNUSED_PARAM(thisValue);
    349343    JSTestNondeterministic* castedThis = jsDynamicCast<JSTestNondeterministic*>(JSValue::decode(thisValue));
    350344    if (UNLIKELY(!castedThis)) {
     
    360354
    361355
    362 void setJSTestNondeterministicNondeterministicExceptionAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     356void setJSTestNondeterministicNondeterministicExceptionAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    363357{
    364358    JSValue value = JSValue::decode(encodedValue);
    365     UNUSED_PARAM(baseObject);
     359    UNUSED_PARAM(thisValue);
    366360    JSTestNondeterministic* castedThis = jsDynamicCast<JSTestNondeterministic*>(JSValue::decode(thisValue));
    367361    if (UNLIKELY(!castedThis)) {
     
    377371
    378372
    379 void setJSTestNondeterministicNondeterministicGetterExceptionAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     373void setJSTestNondeterministicNondeterministicGetterExceptionAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    380374{
    381375    JSValue value = JSValue::decode(encodedValue);
    382     UNUSED_PARAM(baseObject);
     376    UNUSED_PARAM(thisValue);
    383377    JSTestNondeterministic* castedThis = jsDynamicCast<JSTestNondeterministic*>(JSValue::decode(thisValue));
    384378    if (UNLIKELY(!castedThis)) {
     
    394388
    395389
    396 void setJSTestNondeterministicNondeterministicSetterExceptionAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     390void setJSTestNondeterministicNondeterministicSetterExceptionAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    397391{
    398392    JSValue value = JSValue::decode(encodedValue);
    399     UNUSED_PARAM(baseObject);
     393    UNUSED_PARAM(thisValue);
    400394    JSTestNondeterministic* castedThis = jsDynamicCast<JSTestNondeterministic*>(JSValue::decode(thisValue));
    401395    if (UNLIKELY(!castedThis)) {
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp

    r196303 r196331  
    181181// Attributes
    182182
    183 JSC::EncodedJSValue jsTestObjReadOnlyLongAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    184 JSC::EncodedJSValue jsTestObjReadOnlyStringAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    185 JSC::EncodedJSValue jsTestObjReadOnlyTestObjAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    186 JSC::EncodedJSValue jsTestObjConstructorStaticReadOnlyLongAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    187 JSC::EncodedJSValue jsTestObjConstructorStaticStringAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    188 void setJSTestObjConstructorStaticStringAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    189 JSC::EncodedJSValue jsTestObjConstructorTestSubObj(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    190 JSC::EncodedJSValue jsTestObjTestSubObjEnabledBySettingConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    191 void setJSTestObjTestSubObjEnabledBySettingConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    192 JSC::EncodedJSValue jsTestObjEnumAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    193 void setJSTestObjEnumAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    194 JSC::EncodedJSValue jsTestObjByteAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    195 void setJSTestObjByteAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    196 JSC::EncodedJSValue jsTestObjOctetAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    197 void setJSTestObjOctetAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    198 JSC::EncodedJSValue jsTestObjShortAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    199 void setJSTestObjShortAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    200 JSC::EncodedJSValue jsTestObjUnsignedShortAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    201 void setJSTestObjUnsignedShortAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    202 JSC::EncodedJSValue jsTestObjLongAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    203 void setJSTestObjLongAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    204 JSC::EncodedJSValue jsTestObjLongLongAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    205 void setJSTestObjLongLongAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    206 JSC::EncodedJSValue jsTestObjUnsignedLongLongAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    207 void setJSTestObjUnsignedLongLongAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    208 JSC::EncodedJSValue jsTestObjStringAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    209 void setJSTestObjStringAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    210 JSC::EncodedJSValue jsTestObjTestObjAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    211 void setJSTestObjTestObjAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    212 JSC::EncodedJSValue jsTestObjLenientTestObjAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    213 void setJSTestObjLenientTestObjAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    214 JSC::EncodedJSValue jsTestObjXMLObjAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    215 void setJSTestObjXMLObjAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    216 JSC::EncodedJSValue jsTestObjCreate(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    217 void setJSTestObjCreate(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    218 JSC::EncodedJSValue jsTestObjReadOnlySymbolAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    219 JSC::EncodedJSValue jsTestObjConstructorStaticReadOnlySymbolAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    220 JSC::EncodedJSValue jsTestObjReflectedStringAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    221 void setJSTestObjReflectedStringAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    222 JSC::EncodedJSValue jsTestObjReflectedIntegralAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    223 void setJSTestObjReflectedIntegralAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    224 JSC::EncodedJSValue jsTestObjReflectedUnsignedIntegralAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    225 void setJSTestObjReflectedUnsignedIntegralAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    226 JSC::EncodedJSValue jsTestObjReflectedBooleanAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    227 void setJSTestObjReflectedBooleanAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    228 JSC::EncodedJSValue jsTestObjReflectedURLAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    229 void setJSTestObjReflectedURLAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    230 JSC::EncodedJSValue jsTestObjReflectedStringAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    231 void setJSTestObjReflectedStringAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    232 JSC::EncodedJSValue jsTestObjReflectedCustomIntegralAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    233 void setJSTestObjReflectedCustomIntegralAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    234 JSC::EncodedJSValue jsTestObjReflectedCustomBooleanAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    235 void setJSTestObjReflectedCustomBooleanAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    236 JSC::EncodedJSValue jsTestObjReflectedCustomURLAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    237 void setJSTestObjReflectedCustomURLAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    238 JSC::EncodedJSValue jsTestObjTypedArrayAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    239 void setJSTestObjTypedArrayAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    240 JSC::EncodedJSValue jsTestObjAttrWithGetterException(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    241 void setJSTestObjAttrWithGetterException(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    242 JSC::EncodedJSValue jsTestObjAttrWithGetterExceptionWithMessage(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    243 void setJSTestObjAttrWithGetterExceptionWithMessage(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    244 JSC::EncodedJSValue jsTestObjAttrWithSetterException(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    245 void setJSTestObjAttrWithSetterException(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    246 JSC::EncodedJSValue jsTestObjAttrWithSetterExceptionWithMessage(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    247 void setJSTestObjAttrWithSetterExceptionWithMessage(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    248 JSC::EncodedJSValue jsTestObjStringAttrWithGetterException(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    249 void setJSTestObjStringAttrWithGetterException(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    250 JSC::EncodedJSValue jsTestObjStringAttrWithSetterException(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    251 void setJSTestObjStringAttrWithSetterException(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    252 JSC::EncodedJSValue jsTestObjStrictTypeCheckingAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    253 void setJSTestObjStrictTypeCheckingAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    254 JSC::EncodedJSValue jsTestObjCustomAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    255 void setJSTestObjCustomAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    256 JSC::EncodedJSValue jsTestObjOnfoo(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    257 void setJSTestObjOnfoo(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    258 JSC::EncodedJSValue jsTestObjWithScriptStateAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    259 void setJSTestObjWithScriptStateAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    260 JSC::EncodedJSValue jsTestObjWithCallWithAndSetterCallWithAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    261 void setJSTestObjWithCallWithAndSetterCallWithAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    262 JSC::EncodedJSValue jsTestObjWithScriptExecutionContextAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    263 void setJSTestObjWithScriptExecutionContextAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    264 JSC::EncodedJSValue jsTestObjWithScriptStateAttributeRaises(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    265 void setJSTestObjWithScriptStateAttributeRaises(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    266 JSC::EncodedJSValue jsTestObjWithScriptExecutionContextAttributeRaises(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    267 void setJSTestObjWithScriptExecutionContextAttributeRaises(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    268 JSC::EncodedJSValue jsTestObjWithScriptExecutionContextAndScriptStateAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    269 void setJSTestObjWithScriptExecutionContextAndScriptStateAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    270 JSC::EncodedJSValue jsTestObjWithScriptExecutionContextAndScriptStateAttributeRaises(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    271 void setJSTestObjWithScriptExecutionContextAndScriptStateAttributeRaises(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    272 JSC::EncodedJSValue jsTestObjWithScriptExecutionContextAndScriptStateWithSpacesAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    273 void setJSTestObjWithScriptExecutionContextAndScriptStateWithSpacesAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    274 JSC::EncodedJSValue jsTestObjWithScriptArgumentsAndCallStackAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    275 void setJSTestObjWithScriptArgumentsAndCallStackAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     183JSC::EncodedJSValue jsTestObjReadOnlyLongAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     184JSC::EncodedJSValue jsTestObjReadOnlyStringAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     185JSC::EncodedJSValue jsTestObjReadOnlyTestObjAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     186JSC::EncodedJSValue jsTestObjConstructorStaticReadOnlyLongAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     187JSC::EncodedJSValue jsTestObjConstructorStaticStringAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     188void setJSTestObjConstructorStaticStringAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     189JSC::EncodedJSValue jsTestObjConstructorTestSubObj(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     190JSC::EncodedJSValue jsTestObjTestSubObjEnabledBySettingConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     191void setJSTestObjTestSubObjEnabledBySettingConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     192JSC::EncodedJSValue jsTestObjEnumAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     193void setJSTestObjEnumAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     194JSC::EncodedJSValue jsTestObjByteAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     195void setJSTestObjByteAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     196JSC::EncodedJSValue jsTestObjOctetAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     197void setJSTestObjOctetAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     198JSC::EncodedJSValue jsTestObjShortAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     199void setJSTestObjShortAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     200JSC::EncodedJSValue jsTestObjUnsignedShortAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     201void setJSTestObjUnsignedShortAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     202JSC::EncodedJSValue jsTestObjLongAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     203void setJSTestObjLongAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     204JSC::EncodedJSValue jsTestObjLongLongAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     205void setJSTestObjLongLongAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     206JSC::EncodedJSValue jsTestObjUnsignedLongLongAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     207void setJSTestObjUnsignedLongLongAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     208JSC::EncodedJSValue jsTestObjStringAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     209void setJSTestObjStringAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     210JSC::EncodedJSValue jsTestObjTestObjAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     211void setJSTestObjTestObjAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     212JSC::EncodedJSValue jsTestObjLenientTestObjAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     213void setJSTestObjLenientTestObjAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     214JSC::EncodedJSValue jsTestObjXMLObjAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     215void setJSTestObjXMLObjAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     216JSC::EncodedJSValue jsTestObjCreate(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     217void setJSTestObjCreate(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     218JSC::EncodedJSValue jsTestObjReadOnlySymbolAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     219JSC::EncodedJSValue jsTestObjConstructorStaticReadOnlySymbolAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     220JSC::EncodedJSValue jsTestObjReflectedStringAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     221void setJSTestObjReflectedStringAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     222JSC::EncodedJSValue jsTestObjReflectedIntegralAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     223void setJSTestObjReflectedIntegralAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     224JSC::EncodedJSValue jsTestObjReflectedUnsignedIntegralAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     225void setJSTestObjReflectedUnsignedIntegralAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     226JSC::EncodedJSValue jsTestObjReflectedBooleanAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     227void setJSTestObjReflectedBooleanAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     228JSC::EncodedJSValue jsTestObjReflectedURLAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     229void setJSTestObjReflectedURLAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     230JSC::EncodedJSValue jsTestObjReflectedStringAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     231void setJSTestObjReflectedStringAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     232JSC::EncodedJSValue jsTestObjReflectedCustomIntegralAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     233void setJSTestObjReflectedCustomIntegralAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     234JSC::EncodedJSValue jsTestObjReflectedCustomBooleanAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     235void setJSTestObjReflectedCustomBooleanAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     236JSC::EncodedJSValue jsTestObjReflectedCustomURLAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     237void setJSTestObjReflectedCustomURLAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     238JSC::EncodedJSValue jsTestObjTypedArrayAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     239void setJSTestObjTypedArrayAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     240JSC::EncodedJSValue jsTestObjAttrWithGetterException(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     241void setJSTestObjAttrWithGetterException(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     242JSC::EncodedJSValue jsTestObjAttrWithGetterExceptionWithMessage(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     243void setJSTestObjAttrWithGetterExceptionWithMessage(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     244JSC::EncodedJSValue jsTestObjAttrWithSetterException(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     245void setJSTestObjAttrWithSetterException(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     246JSC::EncodedJSValue jsTestObjAttrWithSetterExceptionWithMessage(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     247void setJSTestObjAttrWithSetterExceptionWithMessage(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     248JSC::EncodedJSValue jsTestObjStringAttrWithGetterException(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     249void setJSTestObjStringAttrWithGetterException(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     250JSC::EncodedJSValue jsTestObjStringAttrWithSetterException(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     251void setJSTestObjStringAttrWithSetterException(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     252JSC::EncodedJSValue jsTestObjStrictTypeCheckingAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     253void setJSTestObjStrictTypeCheckingAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     254JSC::EncodedJSValue jsTestObjCustomAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     255void setJSTestObjCustomAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     256JSC::EncodedJSValue jsTestObjOnfoo(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     257void setJSTestObjOnfoo(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     258JSC::EncodedJSValue jsTestObjWithScriptStateAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     259void setJSTestObjWithScriptStateAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     260JSC::EncodedJSValue jsTestObjWithCallWithAndSetterCallWithAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     261void setJSTestObjWithCallWithAndSetterCallWithAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     262JSC::EncodedJSValue jsTestObjWithScriptExecutionContextAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     263void setJSTestObjWithScriptExecutionContextAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     264JSC::EncodedJSValue jsTestObjWithScriptStateAttributeRaises(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     265void setJSTestObjWithScriptStateAttributeRaises(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     266JSC::EncodedJSValue jsTestObjWithScriptExecutionContextAttributeRaises(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     267void setJSTestObjWithScriptExecutionContextAttributeRaises(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     268JSC::EncodedJSValue jsTestObjWithScriptExecutionContextAndScriptStateAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     269void setJSTestObjWithScriptExecutionContextAndScriptStateAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     270JSC::EncodedJSValue jsTestObjWithScriptExecutionContextAndScriptStateAttributeRaises(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     271void setJSTestObjWithScriptExecutionContextAndScriptStateAttributeRaises(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     272JSC::EncodedJSValue jsTestObjWithScriptExecutionContextAndScriptStateWithSpacesAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     273void setJSTestObjWithScriptExecutionContextAndScriptStateWithSpacesAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     274JSC::EncodedJSValue jsTestObjWithScriptArgumentsAndCallStackAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     275void setJSTestObjWithScriptArgumentsAndCallStackAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    276276#if ENABLE(Condition1)
    277 JSC::EncodedJSValue jsTestObjConditionalAttr1(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    278 void setJSTestObjConditionalAttr1(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     277JSC::EncodedJSValue jsTestObjConditionalAttr1(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     278void setJSTestObjConditionalAttr1(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    279279#endif
    280280#if ENABLE(Condition1) && ENABLE(Condition2)
    281 JSC::EncodedJSValue jsTestObjConditionalAttr2(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    282 void setJSTestObjConditionalAttr2(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     281JSC::EncodedJSValue jsTestObjConditionalAttr2(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     282void setJSTestObjConditionalAttr2(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    283283#endif
    284284#if ENABLE(Condition1) || ENABLE(Condition2)
    285 JSC::EncodedJSValue jsTestObjConditionalAttr3(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    286 void setJSTestObjConditionalAttr3(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     285JSC::EncodedJSValue jsTestObjConditionalAttr3(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     286void setJSTestObjConditionalAttr3(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    287287#endif
    288288#if ENABLE(Condition1)
    289 JSC::EncodedJSValue jsTestObjConditionalAttr4Constructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    290 void setJSTestObjConditionalAttr4Constructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     289JSC::EncodedJSValue jsTestObjConditionalAttr4Constructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     290void setJSTestObjConditionalAttr4Constructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    291291#endif
    292292#if ENABLE(Condition1) && ENABLE(Condition2)
    293 JSC::EncodedJSValue jsTestObjConditionalAttr5Constructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    294 void setJSTestObjConditionalAttr5Constructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     293JSC::EncodedJSValue jsTestObjConditionalAttr5Constructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     294void setJSTestObjConditionalAttr5Constructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    295295#endif
    296296#if ENABLE(Condition1) || ENABLE(Condition2)
    297 JSC::EncodedJSValue jsTestObjConditionalAttr6Constructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    298 void setJSTestObjConditionalAttr6Constructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    299 #endif
    300 JSC::EncodedJSValue jsTestObjCachedAttribute1(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    301 JSC::EncodedJSValue jsTestObjCachedAttribute2(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    302 JSC::EncodedJSValue jsTestObjAnyAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    303 void setJSTestObjAnyAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    304 JSC::EncodedJSValue jsTestObjContentDocument(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    305 JSC::EncodedJSValue jsTestObjMutablePoint(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    306 void setJSTestObjMutablePoint(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    307 JSC::EncodedJSValue jsTestObjImmutablePoint(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    308 void setJSTestObjImmutablePoint(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    309 JSC::EncodedJSValue jsTestObjStrawberry(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    310 void setJSTestObjStrawberry(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    311 JSC::EncodedJSValue jsTestObjStrictFloat(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    312 void setJSTestObjStrictFloat(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    313 JSC::EncodedJSValue jsTestObjDescription(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    314 JSC::EncodedJSValue jsTestObjId(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    315 void setJSTestObjId(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    316 JSC::EncodedJSValue jsTestObjHash(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    317 JSC::EncodedJSValue jsTestObjReplaceableAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    318 void setJSTestObjReplaceableAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    319 JSC::EncodedJSValue jsTestObjNullableDoubleAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    320 JSC::EncodedJSValue jsTestObjNullableLongAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    321 JSC::EncodedJSValue jsTestObjNullableBooleanAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    322 JSC::EncodedJSValue jsTestObjNullableStringAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    323 JSC::EncodedJSValue jsTestObjNullableLongSettableAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    324 void setJSTestObjNullableLongSettableAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    325 JSC::EncodedJSValue jsTestObjNullableStringValue(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    326 void setJSTestObjNullableStringValue(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    327 JSC::EncodedJSValue jsTestObjAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    328 JSC::EncodedJSValue jsTestObjAttributeWithReservedEnumType(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    329 void setJSTestObjAttributeWithReservedEnumType(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    330 JSC::EncodedJSValue jsTestObjPutForwardsAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    331 void setJSTestObjPutForwardsAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    332 JSC::EncodedJSValue jsTestObjPutForwardsNullableAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    333 void setJSTestObjPutForwardsNullableAttribute(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    334 JSC::EncodedJSValue jsTestObjConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    335 void setJSTestObjConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     297JSC::EncodedJSValue jsTestObjConditionalAttr6Constructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     298void setJSTestObjConditionalAttr6Constructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     299#endif
     300JSC::EncodedJSValue jsTestObjCachedAttribute1(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     301JSC::EncodedJSValue jsTestObjCachedAttribute2(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     302JSC::EncodedJSValue jsTestObjAnyAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     303void setJSTestObjAnyAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     304JSC::EncodedJSValue jsTestObjContentDocument(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     305JSC::EncodedJSValue jsTestObjMutablePoint(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     306void setJSTestObjMutablePoint(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     307JSC::EncodedJSValue jsTestObjImmutablePoint(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     308void setJSTestObjImmutablePoint(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     309JSC::EncodedJSValue jsTestObjStrawberry(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     310void setJSTestObjStrawberry(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     311JSC::EncodedJSValue jsTestObjStrictFloat(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     312void setJSTestObjStrictFloat(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     313JSC::EncodedJSValue jsTestObjDescription(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     314JSC::EncodedJSValue jsTestObjId(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     315void setJSTestObjId(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     316JSC::EncodedJSValue jsTestObjHash(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     317JSC::EncodedJSValue jsTestObjReplaceableAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     318void setJSTestObjReplaceableAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     319JSC::EncodedJSValue jsTestObjNullableDoubleAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     320JSC::EncodedJSValue jsTestObjNullableLongAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     321JSC::EncodedJSValue jsTestObjNullableBooleanAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     322JSC::EncodedJSValue jsTestObjNullableStringAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     323JSC::EncodedJSValue jsTestObjNullableLongSettableAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     324void setJSTestObjNullableLongSettableAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     325JSC::EncodedJSValue jsTestObjNullableStringValue(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     326void setJSTestObjNullableStringValue(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     327JSC::EncodedJSValue jsTestObjAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     328JSC::EncodedJSValue jsTestObjAttributeWithReservedEnumType(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     329void setJSTestObjAttributeWithReservedEnumType(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     330JSC::EncodedJSValue jsTestObjPutForwardsAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     331void setJSTestObjPutForwardsAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     332JSC::EncodedJSValue jsTestObjPutForwardsNullableAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     333void setJSTestObjPutForwardsNullableAttribute(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     334JSC::EncodedJSValue jsTestObjConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     335void setJSTestObjConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    336336
    337337class JSTestObjPrototype : public JSC::JSNonFinalObject {
     
    743743}
    744744
    745 EncodedJSValue jsTestObjReadOnlyLongAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    746 {
    747     UNUSED_PARAM(state);
    748     UNUSED_PARAM(slotBase);
     745EncodedJSValue jsTestObjReadOnlyLongAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     746{
     747    UNUSED_PARAM(state);
    749748    UNUSED_PARAM(thisValue);
    750749    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    759758
    760759
    761 EncodedJSValue jsTestObjReadOnlyStringAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    762 {
    763     UNUSED_PARAM(state);
    764     UNUSED_PARAM(slotBase);
     760EncodedJSValue jsTestObjReadOnlyStringAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     761{
     762    UNUSED_PARAM(state);
    765763    UNUSED_PARAM(thisValue);
    766764    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    775773
    776774
    777 EncodedJSValue jsTestObjReadOnlyTestObjAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    778 {
    779     UNUSED_PARAM(state);
    780     UNUSED_PARAM(slotBase);
     775EncodedJSValue jsTestObjReadOnlyTestObjAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     776{
     777    UNUSED_PARAM(state);
    781778    UNUSED_PARAM(thisValue);
    782779    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    791788
    792789
    793 EncodedJSValue jsTestObjConstructorStaticReadOnlyLongAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    794 {
    795     UNUSED_PARAM(state);
    796     UNUSED_PARAM(slotBase);
     790EncodedJSValue jsTestObjConstructorStaticReadOnlyLongAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     791{
     792    UNUSED_PARAM(state);
    797793    UNUSED_PARAM(thisValue);
    798794    JSValue result = jsNumber(TestObj::staticReadOnlyLongAttr());
     
    801797
    802798
    803 EncodedJSValue jsTestObjConstructorStaticStringAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    804 {
    805     UNUSED_PARAM(state);
    806     UNUSED_PARAM(slotBase);
     799EncodedJSValue jsTestObjConstructorStaticStringAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     800{
     801    UNUSED_PARAM(state);
    807802    UNUSED_PARAM(thisValue);
    808803    JSValue result = jsStringWithCache(state, TestObj::staticStringAttr());
     
    811806
    812807
    813 EncodedJSValue jsTestObjConstructorTestSubObj(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    814 {
    815     UNUSED_PARAM(state);
    816     UNUSED_PARAM(slotBase);
     808EncodedJSValue jsTestObjConstructorTestSubObj(ExecState* state, EncodedJSValue thisValue, PropertyName)
     809{
     810    UNUSED_PARAM(state);
    817811    UNUSED_PARAM(thisValue);
    818812    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    825819
    826820
    827 EncodedJSValue jsTestObjTestSubObjEnabledBySettingConstructor(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    828 {
    829     UNUSED_PARAM(state);
    830     UNUSED_PARAM(slotBase);
     821EncodedJSValue jsTestObjTestSubObjEnabledBySettingConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     822{
     823    UNUSED_PARAM(state);
    831824    UNUSED_PARAM(thisValue);
    832825    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    844837
    845838
    846 EncodedJSValue jsTestObjEnumAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    847 {
    848     UNUSED_PARAM(state);
    849     UNUSED_PARAM(slotBase);
     839EncodedJSValue jsTestObjEnumAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     840{
     841    UNUSED_PARAM(state);
    850842    UNUSED_PARAM(thisValue);
    851843    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    860852
    861853
    862 EncodedJSValue jsTestObjByteAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    863 {
    864     UNUSED_PARAM(state);
    865     UNUSED_PARAM(slotBase);
     854EncodedJSValue jsTestObjByteAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     855{
     856    UNUSED_PARAM(state);
    866857    UNUSED_PARAM(thisValue);
    867858    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    876867
    877868
    878 EncodedJSValue jsTestObjOctetAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    879 {
    880     UNUSED_PARAM(state);
    881     UNUSED_PARAM(slotBase);
     869EncodedJSValue jsTestObjOctetAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     870{
     871    UNUSED_PARAM(state);
    882872    UNUSED_PARAM(thisValue);
    883873    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    892882
    893883
    894 EncodedJSValue jsTestObjShortAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    895 {
    896     UNUSED_PARAM(state);
    897     UNUSED_PARAM(slotBase);
     884EncodedJSValue jsTestObjShortAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     885{
     886    UNUSED_PARAM(state);
    898887    UNUSED_PARAM(thisValue);
    899888    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    908897
    909898
    910 EncodedJSValue jsTestObjUnsignedShortAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    911 {
    912     UNUSED_PARAM(state);
    913     UNUSED_PARAM(slotBase);
     899EncodedJSValue jsTestObjUnsignedShortAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     900{
     901    UNUSED_PARAM(state);
    914902    UNUSED_PARAM(thisValue);
    915903    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    924912
    925913
    926 EncodedJSValue jsTestObjLongAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    927 {
    928     UNUSED_PARAM(state);
    929     UNUSED_PARAM(slotBase);
     914EncodedJSValue jsTestObjLongAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     915{
     916    UNUSED_PARAM(state);
    930917    UNUSED_PARAM(thisValue);
    931918    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    940927
    941928
    942 EncodedJSValue jsTestObjLongLongAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    943 {
    944     UNUSED_PARAM(state);
    945     UNUSED_PARAM(slotBase);
     929EncodedJSValue jsTestObjLongLongAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     930{
     931    UNUSED_PARAM(state);
    946932    UNUSED_PARAM(thisValue);
    947933    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    956942
    957943
    958 EncodedJSValue jsTestObjUnsignedLongLongAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    959 {
    960     UNUSED_PARAM(state);
    961     UNUSED_PARAM(slotBase);
     944EncodedJSValue jsTestObjUnsignedLongLongAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     945{
     946    UNUSED_PARAM(state);
    962947    UNUSED_PARAM(thisValue);
    963948    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    972957
    973958
    974 EncodedJSValue jsTestObjStringAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    975 {
    976     UNUSED_PARAM(state);
    977     UNUSED_PARAM(slotBase);
     959EncodedJSValue jsTestObjStringAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     960{
     961    UNUSED_PARAM(state);
    978962    UNUSED_PARAM(thisValue);
    979963    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    988972
    989973
    990 EncodedJSValue jsTestObjTestObjAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    991 {
    992     UNUSED_PARAM(state);
    993     UNUSED_PARAM(slotBase);
     974EncodedJSValue jsTestObjTestObjAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     975{
     976    UNUSED_PARAM(state);
    994977    UNUSED_PARAM(thisValue);
    995978    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    1004987
    1005988
    1006 EncodedJSValue jsTestObjLenientTestObjAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1007 {
    1008     UNUSED_PARAM(state);
    1009     UNUSED_PARAM(slotBase);
     989EncodedJSValue jsTestObjLenientTestObjAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     990{
     991    UNUSED_PARAM(state);
    1010992    UNUSED_PARAM(thisValue);
    1011993    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    10201002
    10211003
    1022 EncodedJSValue jsTestObjXMLObjAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1023 {
    1024     UNUSED_PARAM(state);
    1025     UNUSED_PARAM(slotBase);
     1004EncodedJSValue jsTestObjXMLObjAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1005{
     1006    UNUSED_PARAM(state);
    10261007    UNUSED_PARAM(thisValue);
    10271008    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    10361017
    10371018
    1038 EncodedJSValue jsTestObjCreate(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1039 {
    1040     UNUSED_PARAM(state);
    1041     UNUSED_PARAM(slotBase);
     1019EncodedJSValue jsTestObjCreate(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1020{
     1021    UNUSED_PARAM(state);
    10421022    UNUSED_PARAM(thisValue);
    10431023    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    10521032
    10531033
    1054 EncodedJSValue jsTestObjReadOnlySymbolAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1055 {
    1056     UNUSED_PARAM(state);
    1057     UNUSED_PARAM(slotBase);
     1034EncodedJSValue jsTestObjReadOnlySymbolAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1035{
     1036    UNUSED_PARAM(state);
    10581037    UNUSED_PARAM(thisValue);
    10591038    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    10681047
    10691048
    1070 EncodedJSValue jsTestObjConstructorStaticReadOnlySymbolAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1071 {
    1072     UNUSED_PARAM(state);
    1073     UNUSED_PARAM(slotBase);
     1049EncodedJSValue jsTestObjConstructorStaticReadOnlySymbolAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1050{
     1051    UNUSED_PARAM(state);
    10741052    UNUSED_PARAM(thisValue);
    10751053    JSValue result = Symbol::create(state->vm(), *(TestObj::staticReadOnlySymbolAttr()).uid());
     
    10781056
    10791057
    1080 EncodedJSValue jsTestObjReflectedStringAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1081 {
    1082     UNUSED_PARAM(state);
    1083     UNUSED_PARAM(slotBase);
     1058EncodedJSValue jsTestObjReflectedStringAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1059{
     1060    UNUSED_PARAM(state);
    10841061    UNUSED_PARAM(thisValue);
    10851062    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    10941071
    10951072
    1096 EncodedJSValue jsTestObjReflectedIntegralAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1097 {
    1098     UNUSED_PARAM(state);
    1099     UNUSED_PARAM(slotBase);
     1073EncodedJSValue jsTestObjReflectedIntegralAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1074{
     1075    UNUSED_PARAM(state);
    11001076    UNUSED_PARAM(thisValue);
    11011077    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    11101086
    11111087
    1112 EncodedJSValue jsTestObjReflectedUnsignedIntegralAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1113 {
    1114     UNUSED_PARAM(state);
    1115     UNUSED_PARAM(slotBase);
     1088EncodedJSValue jsTestObjReflectedUnsignedIntegralAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1089{
     1090    UNUSED_PARAM(state);
    11161091    UNUSED_PARAM(thisValue);
    11171092    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    11261101
    11271102
    1128 EncodedJSValue jsTestObjReflectedBooleanAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1129 {
    1130     UNUSED_PARAM(state);
    1131     UNUSED_PARAM(slotBase);
     1103EncodedJSValue jsTestObjReflectedBooleanAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1104{
     1105    UNUSED_PARAM(state);
    11321106    UNUSED_PARAM(thisValue);
    11331107    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    11421116
    11431117
    1144 EncodedJSValue jsTestObjReflectedURLAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1145 {
    1146     UNUSED_PARAM(state);
    1147     UNUSED_PARAM(slotBase);
     1118EncodedJSValue jsTestObjReflectedURLAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1119{
     1120    UNUSED_PARAM(state);
    11481121    UNUSED_PARAM(thisValue);
    11491122    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    11581131
    11591132
    1160 EncodedJSValue jsTestObjReflectedStringAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1161 {
    1162     UNUSED_PARAM(state);
    1163     UNUSED_PARAM(slotBase);
     1133EncodedJSValue jsTestObjReflectedStringAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1134{
     1135    UNUSED_PARAM(state);
    11641136    UNUSED_PARAM(thisValue);
    11651137    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    11741146
    11751147
    1176 EncodedJSValue jsTestObjReflectedCustomIntegralAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1177 {
    1178     UNUSED_PARAM(state);
    1179     UNUSED_PARAM(slotBase);
     1148EncodedJSValue jsTestObjReflectedCustomIntegralAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1149{
     1150    UNUSED_PARAM(state);
    11801151    UNUSED_PARAM(thisValue);
    11811152    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    11901161
    11911162
    1192 EncodedJSValue jsTestObjReflectedCustomBooleanAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1193 {
    1194     UNUSED_PARAM(state);
    1195     UNUSED_PARAM(slotBase);
     1163EncodedJSValue jsTestObjReflectedCustomBooleanAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1164{
     1165    UNUSED_PARAM(state);
    11961166    UNUSED_PARAM(thisValue);
    11971167    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    12061176
    12071177
    1208 EncodedJSValue jsTestObjReflectedCustomURLAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1209 {
    1210     UNUSED_PARAM(state);
    1211     UNUSED_PARAM(slotBase);
     1178EncodedJSValue jsTestObjReflectedCustomURLAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1179{
     1180    UNUSED_PARAM(state);
    12121181    UNUSED_PARAM(thisValue);
    12131182    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    12221191
    12231192
    1224 EncodedJSValue jsTestObjTypedArrayAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1225 {
    1226     UNUSED_PARAM(state);
    1227     UNUSED_PARAM(slotBase);
     1193EncodedJSValue jsTestObjTypedArrayAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1194{
     1195    UNUSED_PARAM(state);
    12281196    UNUSED_PARAM(thisValue);
    12291197    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    12381206
    12391207
    1240 EncodedJSValue jsTestObjAttrWithGetterException(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1241 {
    1242     UNUSED_PARAM(state);
    1243     UNUSED_PARAM(slotBase);
     1208EncodedJSValue jsTestObjAttrWithGetterException(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1209{
     1210    UNUSED_PARAM(state);
    12441211    UNUSED_PARAM(thisValue);
    12451212    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    12561223
    12571224
    1258 EncodedJSValue jsTestObjAttrWithGetterExceptionWithMessage(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1259 {
    1260     UNUSED_PARAM(state);
    1261     UNUSED_PARAM(slotBase);
     1225EncodedJSValue jsTestObjAttrWithGetterExceptionWithMessage(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1226{
     1227    UNUSED_PARAM(state);
    12621228    UNUSED_PARAM(thisValue);
    12631229    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    12741240
    12751241
    1276 EncodedJSValue jsTestObjAttrWithSetterException(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1277 {
    1278     UNUSED_PARAM(state);
    1279     UNUSED_PARAM(slotBase);
     1242EncodedJSValue jsTestObjAttrWithSetterException(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1243{
     1244    UNUSED_PARAM(state);
    12801245    UNUSED_PARAM(thisValue);
    12811246    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    12901255
    12911256
    1292 EncodedJSValue jsTestObjAttrWithSetterExceptionWithMessage(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1293 {
    1294     UNUSED_PARAM(state);
    1295     UNUSED_PARAM(slotBase);
     1257EncodedJSValue jsTestObjAttrWithSetterExceptionWithMessage(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1258{
     1259    UNUSED_PARAM(state);
    12961260    UNUSED_PARAM(thisValue);
    12971261    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    13061270
    13071271
    1308 EncodedJSValue jsTestObjStringAttrWithGetterException(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1309 {
    1310     UNUSED_PARAM(state);
    1311     UNUSED_PARAM(slotBase);
     1272EncodedJSValue jsTestObjStringAttrWithGetterException(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1273{
     1274    UNUSED_PARAM(state);
    13121275    UNUSED_PARAM(thisValue);
    13131276    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    13241287
    13251288
    1326 EncodedJSValue jsTestObjStringAttrWithSetterException(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1327 {
    1328     UNUSED_PARAM(state);
    1329     UNUSED_PARAM(slotBase);
     1289EncodedJSValue jsTestObjStringAttrWithSetterException(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1290{
     1291    UNUSED_PARAM(state);
    13301292    UNUSED_PARAM(thisValue);
    13311293    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    13401302
    13411303
    1342 EncodedJSValue jsTestObjStrictTypeCheckingAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1343 {
    1344     UNUSED_PARAM(state);
    1345     UNUSED_PARAM(slotBase);
     1304EncodedJSValue jsTestObjStrictTypeCheckingAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1305{
     1306    UNUSED_PARAM(state);
    13461307    UNUSED_PARAM(thisValue);
    13471308    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    13561317
    13571318
    1358 EncodedJSValue jsTestObjCustomAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1359 {
    1360     UNUSED_PARAM(state);
    1361     UNUSED_PARAM(slotBase);
     1319EncodedJSValue jsTestObjCustomAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1320{
     1321    UNUSED_PARAM(state);
    13621322    UNUSED_PARAM(thisValue);
    13631323    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    13701330
    13711331
    1372 EncodedJSValue jsTestObjOnfoo(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1373 {
    1374     UNUSED_PARAM(state);
    1375     UNUSED_PARAM(slotBase);
     1332EncodedJSValue jsTestObjOnfoo(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1333{
     1334    UNUSED_PARAM(state);
    13761335    UNUSED_PARAM(thisValue);
    13771336    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    13851344
    13861345
    1387 EncodedJSValue jsTestObjWithScriptStateAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1388 {
    1389     UNUSED_PARAM(state);
    1390     UNUSED_PARAM(slotBase);
     1346EncodedJSValue jsTestObjWithScriptStateAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1347{
     1348    UNUSED_PARAM(state);
    13911349    UNUSED_PARAM(thisValue);
    13921350    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    14011359
    14021360
    1403 EncodedJSValue jsTestObjWithCallWithAndSetterCallWithAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1404 {
    1405     UNUSED_PARAM(state);
    1406     UNUSED_PARAM(slotBase);
     1361EncodedJSValue jsTestObjWithCallWithAndSetterCallWithAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1362{
     1363    UNUSED_PARAM(state);
    14071364    UNUSED_PARAM(thisValue);
    14081365    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    14171374
    14181375
    1419 EncodedJSValue jsTestObjWithScriptExecutionContextAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1420 {
    1421     UNUSED_PARAM(state);
    1422     UNUSED_PARAM(slotBase);
     1376EncodedJSValue jsTestObjWithScriptExecutionContextAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1377{
     1378    UNUSED_PARAM(state);
    14231379    UNUSED_PARAM(thisValue);
    14241380    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    14361392
    14371393
    1438 EncodedJSValue jsTestObjWithScriptStateAttributeRaises(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1439 {
    1440     UNUSED_PARAM(state);
    1441     UNUSED_PARAM(slotBase);
     1394EncodedJSValue jsTestObjWithScriptStateAttributeRaises(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1395{
     1396    UNUSED_PARAM(state);
    14421397    UNUSED_PARAM(thisValue);
    14431398    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    14541409
    14551410
    1456 EncodedJSValue jsTestObjWithScriptExecutionContextAttributeRaises(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1457 {
    1458     UNUSED_PARAM(state);
    1459     UNUSED_PARAM(slotBase);
     1411EncodedJSValue jsTestObjWithScriptExecutionContextAttributeRaises(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1412{
     1413    UNUSED_PARAM(state);
    14601414    UNUSED_PARAM(thisValue);
    14611415    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    14751429
    14761430
    1477 EncodedJSValue jsTestObjWithScriptExecutionContextAndScriptStateAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1478 {
    1479     UNUSED_PARAM(state);
    1480     UNUSED_PARAM(slotBase);
     1431EncodedJSValue jsTestObjWithScriptExecutionContextAndScriptStateAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1432{
     1433    UNUSED_PARAM(state);
    14811434    UNUSED_PARAM(thisValue);
    14821435    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    14941447
    14951448
    1496 EncodedJSValue jsTestObjWithScriptExecutionContextAndScriptStateAttributeRaises(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1497 {
    1498     UNUSED_PARAM(state);
    1499     UNUSED_PARAM(slotBase);
     1449EncodedJSValue jsTestObjWithScriptExecutionContextAndScriptStateAttributeRaises(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1450{
     1451    UNUSED_PARAM(state);
    15001452    UNUSED_PARAM(thisValue);
    15011453    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    15151467
    15161468
    1517 EncodedJSValue jsTestObjWithScriptExecutionContextAndScriptStateWithSpacesAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1518 {
    1519     UNUSED_PARAM(state);
    1520     UNUSED_PARAM(slotBase);
     1469EncodedJSValue jsTestObjWithScriptExecutionContextAndScriptStateWithSpacesAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1470{
     1471    UNUSED_PARAM(state);
    15211472    UNUSED_PARAM(thisValue);
    15221473    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    15341485
    15351486
    1536 EncodedJSValue jsTestObjWithScriptArgumentsAndCallStackAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1537 {
    1538     UNUSED_PARAM(state);
    1539     UNUSED_PARAM(slotBase);
     1487EncodedJSValue jsTestObjWithScriptArgumentsAndCallStackAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1488{
     1489    UNUSED_PARAM(state);
    15401490    UNUSED_PARAM(thisValue);
    15411491    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    15511501
    15521502#if ENABLE(Condition1)
    1553 EncodedJSValue jsTestObjConditionalAttr1(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1554 {
    1555     UNUSED_PARAM(state);
    1556     UNUSED_PARAM(slotBase);
     1503EncodedJSValue jsTestObjConditionalAttr1(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1504{
     1505    UNUSED_PARAM(state);
    15571506    UNUSED_PARAM(thisValue);
    15581507    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    15691518
    15701519#if ENABLE(Condition1) && ENABLE(Condition2)
    1571 EncodedJSValue jsTestObjConditionalAttr2(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1572 {
    1573     UNUSED_PARAM(state);
    1574     UNUSED_PARAM(slotBase);
     1520EncodedJSValue jsTestObjConditionalAttr2(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1521{
     1522    UNUSED_PARAM(state);
    15751523    UNUSED_PARAM(thisValue);
    15761524    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    15871535
    15881536#if ENABLE(Condition1) || ENABLE(Condition2)
    1589 EncodedJSValue jsTestObjConditionalAttr3(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1590 {
    1591     UNUSED_PARAM(state);
    1592     UNUSED_PARAM(slotBase);
     1537EncodedJSValue jsTestObjConditionalAttr3(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1538{
     1539    UNUSED_PARAM(state);
    15931540    UNUSED_PARAM(thisValue);
    15941541    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    16051552
    16061553#if ENABLE(Condition1)
    1607 EncodedJSValue jsTestObjConditionalAttr4Constructor(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1608 {
    1609     UNUSED_PARAM(state);
    1610     UNUSED_PARAM(slotBase);
     1554EncodedJSValue jsTestObjConditionalAttr4Constructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1555{
     1556    UNUSED_PARAM(state);
    16111557    UNUSED_PARAM(thisValue);
    16121558    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    16211567
    16221568#if ENABLE(Condition1) && ENABLE(Condition2)
    1623 EncodedJSValue jsTestObjConditionalAttr5Constructor(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1624 {
    1625     UNUSED_PARAM(state);
    1626     UNUSED_PARAM(slotBase);
     1569EncodedJSValue jsTestObjConditionalAttr5Constructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1570{
     1571    UNUSED_PARAM(state);
    16271572    UNUSED_PARAM(thisValue);
    16281573    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    16371582
    16381583#if ENABLE(Condition1) || ENABLE(Condition2)
    1639 EncodedJSValue jsTestObjConditionalAttr6Constructor(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1640 {
    1641     UNUSED_PARAM(state);
    1642     UNUSED_PARAM(slotBase);
     1584EncodedJSValue jsTestObjConditionalAttr6Constructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1585{
     1586    UNUSED_PARAM(state);
    16431587    UNUSED_PARAM(thisValue);
    16441588    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    16521596#endif
    16531597
    1654 EncodedJSValue jsTestObjCachedAttribute1(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1655 {
    1656     UNUSED_PARAM(state);
    1657     UNUSED_PARAM(slotBase);
     1598EncodedJSValue jsTestObjCachedAttribute1(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1599{
     1600    UNUSED_PARAM(state);
    16581601    UNUSED_PARAM(thisValue);
    16591602    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    16711614
    16721615
    1673 EncodedJSValue jsTestObjCachedAttribute2(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1674 {
    1675     UNUSED_PARAM(state);
    1676     UNUSED_PARAM(slotBase);
     1616EncodedJSValue jsTestObjCachedAttribute2(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1617{
     1618    UNUSED_PARAM(state);
    16771619    UNUSED_PARAM(thisValue);
    16781620    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    16901632
    16911633
    1692 EncodedJSValue jsTestObjAnyAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1693 {
    1694     UNUSED_PARAM(state);
    1695     UNUSED_PARAM(slotBase);
     1634EncodedJSValue jsTestObjAnyAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1635{
     1636    UNUSED_PARAM(state);
    16961637    UNUSED_PARAM(thisValue);
    16971638    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    17061647
    17071648
    1708 EncodedJSValue jsTestObjContentDocument(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1709 {
    1710     UNUSED_PARAM(state);
    1711     UNUSED_PARAM(slotBase);
     1649EncodedJSValue jsTestObjContentDocument(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1650{
     1651    UNUSED_PARAM(state);
    17121652    UNUSED_PARAM(thisValue);
    17131653    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    17211661
    17221662
    1723 EncodedJSValue jsTestObjMutablePoint(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1724 {
    1725     UNUSED_PARAM(state);
    1726     UNUSED_PARAM(slotBase);
     1663EncodedJSValue jsTestObjMutablePoint(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1664{
     1665    UNUSED_PARAM(state);
    17271666    UNUSED_PARAM(thisValue);
    17281667    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    17371676
    17381677
    1739 EncodedJSValue jsTestObjImmutablePoint(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1740 {
    1741     UNUSED_PARAM(state);
    1742     UNUSED_PARAM(slotBase);
     1678EncodedJSValue jsTestObjImmutablePoint(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1679{
     1680    UNUSED_PARAM(state);
    17431681    UNUSED_PARAM(thisValue);
    17441682    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    17531691
    17541692
    1755 EncodedJSValue jsTestObjStrawberry(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1756 {
    1757     UNUSED_PARAM(state);
    1758     UNUSED_PARAM(slotBase);
     1693EncodedJSValue jsTestObjStrawberry(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1694{
     1695    UNUSED_PARAM(state);
    17591696    UNUSED_PARAM(thisValue);
    17601697    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    17691706
    17701707
    1771 EncodedJSValue jsTestObjStrictFloat(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1772 {
    1773     UNUSED_PARAM(state);
    1774     UNUSED_PARAM(slotBase);
     1708EncodedJSValue jsTestObjStrictFloat(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1709{
     1710    UNUSED_PARAM(state);
    17751711    UNUSED_PARAM(thisValue);
    17761712    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    17851721
    17861722
    1787 EncodedJSValue jsTestObjDescription(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1788 {
    1789     UNUSED_PARAM(state);
    1790     UNUSED_PARAM(slotBase);
     1723EncodedJSValue jsTestObjDescription(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1724{
     1725    UNUSED_PARAM(state);
    17911726    UNUSED_PARAM(thisValue);
    17921727    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    18011736
    18021737
    1803 EncodedJSValue jsTestObjId(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1804 {
    1805     UNUSED_PARAM(state);
    1806     UNUSED_PARAM(slotBase);
     1738EncodedJSValue jsTestObjId(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1739{
     1740    UNUSED_PARAM(state);
    18071741    UNUSED_PARAM(thisValue);
    18081742    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    18171751
    18181752
    1819 EncodedJSValue jsTestObjHash(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1820 {
    1821     UNUSED_PARAM(state);
    1822     UNUSED_PARAM(slotBase);
     1753EncodedJSValue jsTestObjHash(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1754{
     1755    UNUSED_PARAM(state);
    18231756    UNUSED_PARAM(thisValue);
    18241757    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    18331766
    18341767
    1835 EncodedJSValue jsTestObjReplaceableAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1836 {
    1837     UNUSED_PARAM(state);
    1838     UNUSED_PARAM(slotBase);
     1768EncodedJSValue jsTestObjReplaceableAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1769{
     1770    UNUSED_PARAM(state);
    18391771    UNUSED_PARAM(thisValue);
    18401772    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    18491781
    18501782
    1851 EncodedJSValue jsTestObjNullableDoubleAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1852 {
    1853     UNUSED_PARAM(state);
    1854     UNUSED_PARAM(slotBase);
     1783EncodedJSValue jsTestObjNullableDoubleAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1784{
     1785    UNUSED_PARAM(state);
    18551786    UNUSED_PARAM(thisValue);
    18561787    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    18651796
    18661797
    1867 EncodedJSValue jsTestObjNullableLongAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1868 {
    1869     UNUSED_PARAM(state);
    1870     UNUSED_PARAM(slotBase);
     1798EncodedJSValue jsTestObjNullableLongAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1799{
     1800    UNUSED_PARAM(state);
    18711801    UNUSED_PARAM(thisValue);
    18721802    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    18811811
    18821812
    1883 EncodedJSValue jsTestObjNullableBooleanAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1884 {
    1885     UNUSED_PARAM(state);
    1886     UNUSED_PARAM(slotBase);
     1813EncodedJSValue jsTestObjNullableBooleanAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1814{
     1815    UNUSED_PARAM(state);
    18871816    UNUSED_PARAM(thisValue);
    18881817    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    18971826
    18981827
    1899 EncodedJSValue jsTestObjNullableStringAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1900 {
    1901     UNUSED_PARAM(state);
    1902     UNUSED_PARAM(slotBase);
     1828EncodedJSValue jsTestObjNullableStringAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1829{
     1830    UNUSED_PARAM(state);
    19031831    UNUSED_PARAM(thisValue);
    19041832    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    19131841
    19141842
    1915 EncodedJSValue jsTestObjNullableLongSettableAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1916 {
    1917     UNUSED_PARAM(state);
    1918     UNUSED_PARAM(slotBase);
     1843EncodedJSValue jsTestObjNullableLongSettableAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1844{
     1845    UNUSED_PARAM(state);
    19191846    UNUSED_PARAM(thisValue);
    19201847    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    19291856
    19301857
    1931 EncodedJSValue jsTestObjNullableStringValue(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1932 {
    1933     UNUSED_PARAM(state);
    1934     UNUSED_PARAM(slotBase);
     1858EncodedJSValue jsTestObjNullableStringValue(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1859{
     1860    UNUSED_PARAM(state);
    19351861    UNUSED_PARAM(thisValue);
    19361862    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    19471873
    19481874
    1949 EncodedJSValue jsTestObjAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1950 {
    1951     UNUSED_PARAM(state);
    1952     UNUSED_PARAM(slotBase);
     1875EncodedJSValue jsTestObjAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1876{
     1877    UNUSED_PARAM(state);
    19531878    UNUSED_PARAM(thisValue);
    19541879    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    19631888
    19641889
    1965 EncodedJSValue jsTestObjAttributeWithReservedEnumType(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1966 {
    1967     UNUSED_PARAM(state);
    1968     UNUSED_PARAM(slotBase);
     1890EncodedJSValue jsTestObjAttributeWithReservedEnumType(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1891{
     1892    UNUSED_PARAM(state);
    19691893    UNUSED_PARAM(thisValue);
    19701894    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    19791903
    19801904
    1981 EncodedJSValue jsTestObjPutForwardsAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1982 {
    1983     UNUSED_PARAM(state);
    1984     UNUSED_PARAM(slotBase);
     1905EncodedJSValue jsTestObjPutForwardsAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1906{
     1907    UNUSED_PARAM(state);
    19851908    UNUSED_PARAM(thisValue);
    19861909    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    19951918
    19961919
    1997 EncodedJSValue jsTestObjPutForwardsNullableAttribute(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    1998 {
    1999     UNUSED_PARAM(state);
    2000     UNUSED_PARAM(slotBase);
     1920EncodedJSValue jsTestObjPutForwardsNullableAttribute(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1921{
     1922    UNUSED_PARAM(state);
    20011923    UNUSED_PARAM(thisValue);
    20021924    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    20111933
    20121934
    2013 EncodedJSValue jsTestObjConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    2014 {
    2015     JSTestObjPrototype* domObject = jsDynamicCast<JSTestObjPrototype*>(baseValue);
     1935EncodedJSValue jsTestObjConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     1936{
     1937    JSTestObjPrototype* domObject = jsDynamicCast<JSTestObjPrototype*>(JSValue::decode(thisValue));
    20161938    if (!domObject)
    20171939        return throwVMTypeError(state);
     
    20191941}
    20201942
    2021 void setJSTestObjConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2022 {
    2023     JSValue value = JSValue::decode(encodedValue);
    2024     UNUSED_PARAM(thisValue);
    2025     JSTestObjPrototype* domObject = jsDynamicCast<JSTestObjPrototype*>(baseValue);
     1943void setJSTestObjConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     1944{
     1945    JSValue value = JSValue::decode(encodedValue);
     1946    JSTestObjPrototype* domObject = jsDynamicCast<JSTestObjPrototype*>(JSValue::decode(thisValue));
    20261947    if (UNLIKELY(!domObject)) {
    20271948        throwVMTypeError(state);
     
    20321953}
    20331954
    2034 void setJSTestObjConstructorStaticStringAttr(ExecState* state, JSObject* baseObject, EncodedJSValue, EncodedJSValue encodedValue)
    2035 {
    2036     JSValue value = JSValue::decode(encodedValue);
    2037     UNUSED_PARAM(baseObject);
     1955void setJSTestObjConstructorStaticStringAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     1956{
     1957    JSValue value = JSValue::decode(encodedValue);
    20381958    String nativeValue = value.toString(state)->value(state);
    20391959    if (UNLIKELY(state->hadException()))
     
    20431963
    20441964
    2045 void setJSTestObjTestSubObjEnabledBySettingConstructor(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2046 {
    2047     JSValue value = JSValue::decode(encodedValue);
    2048     UNUSED_PARAM(baseObject);
     1965void setJSTestObjTestSubObjEnabledBySettingConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     1966{
     1967    JSValue value = JSValue::decode(encodedValue);
     1968    UNUSED_PARAM(thisValue);
    20491969    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    20501970    if (UNLIKELY(!castedThis)) {
     
    20571977
    20581978
    2059 void setJSTestObjEnumAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2060 {
    2061     JSValue value = JSValue::decode(encodedValue);
    2062     UNUSED_PARAM(baseObject);
     1979void setJSTestObjEnumAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     1980{
     1981    JSValue value = JSValue::decode(encodedValue);
     1982    UNUSED_PARAM(thisValue);
    20631983    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    20641984    if (UNLIKELY(!castedThis)) {
     
    20761996
    20771997
    2078 void setJSTestObjByteAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2079 {
    2080     JSValue value = JSValue::decode(encodedValue);
    2081     UNUSED_PARAM(baseObject);
     1998void setJSTestObjByteAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     1999{
     2000    JSValue value = JSValue::decode(encodedValue);
     2001    UNUSED_PARAM(thisValue);
    20822002    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    20832003    if (UNLIKELY(!castedThis)) {
     
    20932013
    20942014
    2095 void setJSTestObjOctetAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2096 {
    2097     JSValue value = JSValue::decode(encodedValue);
    2098     UNUSED_PARAM(baseObject);
     2015void setJSTestObjOctetAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2016{
     2017    JSValue value = JSValue::decode(encodedValue);
     2018    UNUSED_PARAM(thisValue);
    20992019    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    21002020    if (UNLIKELY(!castedThis)) {
     
    21102030
    21112031
    2112 void setJSTestObjShortAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2113 {
    2114     JSValue value = JSValue::decode(encodedValue);
    2115     UNUSED_PARAM(baseObject);
     2032void setJSTestObjShortAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2033{
     2034    JSValue value = JSValue::decode(encodedValue);
     2035    UNUSED_PARAM(thisValue);
    21162036    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    21172037    if (UNLIKELY(!castedThis)) {
     
    21272047
    21282048
    2129 void setJSTestObjUnsignedShortAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2130 {
    2131     JSValue value = JSValue::decode(encodedValue);
    2132     UNUSED_PARAM(baseObject);
     2049void setJSTestObjUnsignedShortAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2050{
     2051    JSValue value = JSValue::decode(encodedValue);
     2052    UNUSED_PARAM(thisValue);
    21332053    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    21342054    if (UNLIKELY(!castedThis)) {
     
    21442064
    21452065
    2146 void setJSTestObjLongAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2147 {
    2148     JSValue value = JSValue::decode(encodedValue);
    2149     UNUSED_PARAM(baseObject);
     2066void setJSTestObjLongAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2067{
     2068    JSValue value = JSValue::decode(encodedValue);
     2069    UNUSED_PARAM(thisValue);
    21502070    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    21512071    if (UNLIKELY(!castedThis)) {
     
    21612081
    21622082
    2163 void setJSTestObjLongLongAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2164 {
    2165     JSValue value = JSValue::decode(encodedValue);
    2166     UNUSED_PARAM(baseObject);
     2083void setJSTestObjLongLongAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2084{
     2085    JSValue value = JSValue::decode(encodedValue);
     2086    UNUSED_PARAM(thisValue);
    21672087    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    21682088    if (UNLIKELY(!castedThis)) {
     
    21782098
    21792099
    2180 void setJSTestObjUnsignedLongLongAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2181 {
    2182     JSValue value = JSValue::decode(encodedValue);
    2183     UNUSED_PARAM(baseObject);
     2100void setJSTestObjUnsignedLongLongAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2101{
     2102    JSValue value = JSValue::decode(encodedValue);
     2103    UNUSED_PARAM(thisValue);
    21842104    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    21852105    if (UNLIKELY(!castedThis)) {
     
    21952115
    21962116
    2197 void setJSTestObjStringAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2198 {
    2199     JSValue value = JSValue::decode(encodedValue);
    2200     UNUSED_PARAM(baseObject);
     2117void setJSTestObjStringAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2118{
     2119    JSValue value = JSValue::decode(encodedValue);
     2120    UNUSED_PARAM(thisValue);
    22012121    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    22022122    if (UNLIKELY(!castedThis)) {
     
    22122132
    22132133
    2214 void setJSTestObjTestObjAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2215 {
    2216     JSValue value = JSValue::decode(encodedValue);
    2217     UNUSED_PARAM(baseObject);
     2134void setJSTestObjTestObjAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2135{
     2136    JSValue value = JSValue::decode(encodedValue);
     2137    UNUSED_PARAM(thisValue);
    22182138    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    22192139    if (UNLIKELY(!castedThis)) {
     
    22292149
    22302150
    2231 void setJSTestObjLenientTestObjAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2232 {
    2233     JSValue value = JSValue::decode(encodedValue);
    2234     UNUSED_PARAM(baseObject);
     2151void setJSTestObjLenientTestObjAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2152{
     2153    JSValue value = JSValue::decode(encodedValue);
     2154    UNUSED_PARAM(thisValue);
    22352155    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    22362156    if (UNLIKELY(!castedThis)) {
     
    22452165
    22462166
    2247 void setJSTestObjXMLObjAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2248 {
    2249     JSValue value = JSValue::decode(encodedValue);
    2250     UNUSED_PARAM(baseObject);
     2167void setJSTestObjXMLObjAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2168{
     2169    JSValue value = JSValue::decode(encodedValue);
     2170    UNUSED_PARAM(thisValue);
    22512171    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    22522172    if (UNLIKELY(!castedThis)) {
     
    22622182
    22632183
    2264 void setJSTestObjCreate(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2265 {
    2266     JSValue value = JSValue::decode(encodedValue);
    2267     UNUSED_PARAM(baseObject);
     2184void setJSTestObjCreate(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2185{
     2186    JSValue value = JSValue::decode(encodedValue);
     2187    UNUSED_PARAM(thisValue);
    22682188    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    22692189    if (UNLIKELY(!castedThis)) {
     
    22792199
    22802200
    2281 void setJSTestObjReflectedStringAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2282 {
    2283     JSValue value = JSValue::decode(encodedValue);
    2284     UNUSED_PARAM(baseObject);
     2201void setJSTestObjReflectedStringAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2202{
     2203    JSValue value = JSValue::decode(encodedValue);
     2204    UNUSED_PARAM(thisValue);
    22852205    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    22862206    if (UNLIKELY(!castedThis)) {
     
    22962216
    22972217
    2298 void setJSTestObjReflectedIntegralAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2299 {
    2300     JSValue value = JSValue::decode(encodedValue);
    2301     UNUSED_PARAM(baseObject);
     2218void setJSTestObjReflectedIntegralAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2219{
     2220    JSValue value = JSValue::decode(encodedValue);
     2221    UNUSED_PARAM(thisValue);
    23022222    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    23032223    if (UNLIKELY(!castedThis)) {
     
    23132233
    23142234
    2315 void setJSTestObjReflectedUnsignedIntegralAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2316 {
    2317     JSValue value = JSValue::decode(encodedValue);
    2318     UNUSED_PARAM(baseObject);
     2235void setJSTestObjReflectedUnsignedIntegralAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2236{
     2237    JSValue value = JSValue::decode(encodedValue);
     2238    UNUSED_PARAM(thisValue);
    23192239    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    23202240    if (UNLIKELY(!castedThis)) {
     
    23302250
    23312251
    2332 void setJSTestObjReflectedBooleanAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2333 {
    2334     JSValue value = JSValue::decode(encodedValue);
    2335     UNUSED_PARAM(baseObject);
     2252void setJSTestObjReflectedBooleanAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2253{
     2254    JSValue value = JSValue::decode(encodedValue);
     2255    UNUSED_PARAM(thisValue);
    23362256    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    23372257    if (UNLIKELY(!castedThis)) {
     
    23472267
    23482268
    2349 void setJSTestObjReflectedURLAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2350 {
    2351     JSValue value = JSValue::decode(encodedValue);
    2352     UNUSED_PARAM(baseObject);
     2269void setJSTestObjReflectedURLAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2270{
     2271    JSValue value = JSValue::decode(encodedValue);
     2272    UNUSED_PARAM(thisValue);
    23532273    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    23542274    if (UNLIKELY(!castedThis)) {
     
    23642284
    23652285
    2366 void setJSTestObjReflectedStringAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2367 {
    2368     JSValue value = JSValue::decode(encodedValue);
    2369     UNUSED_PARAM(baseObject);
     2286void setJSTestObjReflectedStringAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2287{
     2288    JSValue value = JSValue::decode(encodedValue);
     2289    UNUSED_PARAM(thisValue);
    23702290    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    23712291    if (UNLIKELY(!castedThis)) {
     
    23812301
    23822302
    2383 void setJSTestObjReflectedCustomIntegralAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2384 {
    2385     JSValue value = JSValue::decode(encodedValue);
    2386     UNUSED_PARAM(baseObject);
     2303void setJSTestObjReflectedCustomIntegralAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2304{
     2305    JSValue value = JSValue::decode(encodedValue);
     2306    UNUSED_PARAM(thisValue);
    23872307    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    23882308    if (UNLIKELY(!castedThis)) {
     
    23982318
    23992319
    2400 void setJSTestObjReflectedCustomBooleanAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2401 {
    2402     JSValue value = JSValue::decode(encodedValue);
    2403     UNUSED_PARAM(baseObject);
     2320void setJSTestObjReflectedCustomBooleanAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2321{
     2322    JSValue value = JSValue::decode(encodedValue);
     2323    UNUSED_PARAM(thisValue);
    24042324    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    24052325    if (UNLIKELY(!castedThis)) {
     
    24152335
    24162336
    2417 void setJSTestObjReflectedCustomURLAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2418 {
    2419     JSValue value = JSValue::decode(encodedValue);
    2420     UNUSED_PARAM(baseObject);
     2337void setJSTestObjReflectedCustomURLAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2338{
     2339    JSValue value = JSValue::decode(encodedValue);
     2340    UNUSED_PARAM(thisValue);
    24212341    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    24222342    if (UNLIKELY(!castedThis)) {
     
    24322352
    24332353
    2434 void setJSTestObjTypedArrayAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2435 {
    2436     JSValue value = JSValue::decode(encodedValue);
    2437     UNUSED_PARAM(baseObject);
     2354void setJSTestObjTypedArrayAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2355{
     2356    JSValue value = JSValue::decode(encodedValue);
     2357    UNUSED_PARAM(thisValue);
    24382358    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    24392359    if (UNLIKELY(!castedThis)) {
     
    24492369
    24502370
    2451 void setJSTestObjAttrWithGetterException(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2452 {
    2453     JSValue value = JSValue::decode(encodedValue);
    2454     UNUSED_PARAM(baseObject);
     2371void setJSTestObjAttrWithGetterException(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2372{
     2373    JSValue value = JSValue::decode(encodedValue);
     2374    UNUSED_PARAM(thisValue);
    24552375    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    24562376    if (UNLIKELY(!castedThis)) {
     
    24662386
    24672387
    2468 void setJSTestObjAttrWithGetterExceptionWithMessage(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2469 {
    2470     JSValue value = JSValue::decode(encodedValue);
    2471     UNUSED_PARAM(baseObject);
     2388void setJSTestObjAttrWithGetterExceptionWithMessage(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2389{
     2390    JSValue value = JSValue::decode(encodedValue);
     2391    UNUSED_PARAM(thisValue);
    24722392    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    24732393    if (UNLIKELY(!castedThis)) {
     
    24832403
    24842404
    2485 void setJSTestObjAttrWithSetterException(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2486 {
    2487     JSValue value = JSValue::decode(encodedValue);
    2488     UNUSED_PARAM(baseObject);
     2405void setJSTestObjAttrWithSetterException(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2406{
     2407    JSValue value = JSValue::decode(encodedValue);
     2408    UNUSED_PARAM(thisValue);
    24892409    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    24902410    if (UNLIKELY(!castedThis)) {
     
    25022422
    25032423
    2504 void setJSTestObjAttrWithSetterExceptionWithMessage(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2505 {
    2506     JSValue value = JSValue::decode(encodedValue);
    2507     UNUSED_PARAM(baseObject);
     2424void setJSTestObjAttrWithSetterExceptionWithMessage(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2425{
     2426    JSValue value = JSValue::decode(encodedValue);
     2427    UNUSED_PARAM(thisValue);
    25082428    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    25092429    if (UNLIKELY(!castedThis)) {
     
    25212441
    25222442
    2523 void setJSTestObjStringAttrWithGetterException(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2524 {
    2525     JSValue value = JSValue::decode(encodedValue);
    2526     UNUSED_PARAM(baseObject);
     2443void setJSTestObjStringAttrWithGetterException(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2444{
     2445    JSValue value = JSValue::decode(encodedValue);
     2446    UNUSED_PARAM(thisValue);
    25272447    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    25282448    if (UNLIKELY(!castedThis)) {
     
    25382458
    25392459
    2540 void setJSTestObjStringAttrWithSetterException(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2541 {
    2542     JSValue value = JSValue::decode(encodedValue);
    2543     UNUSED_PARAM(baseObject);
     2460void setJSTestObjStringAttrWithSetterException(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2461{
     2462    JSValue value = JSValue::decode(encodedValue);
     2463    UNUSED_PARAM(thisValue);
    25442464    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    25452465    if (UNLIKELY(!castedThis)) {
     
    25572477
    25582478
    2559 void setJSTestObjStrictTypeCheckingAttribute(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2560 {
    2561     JSValue value = JSValue::decode(encodedValue);
    2562     UNUSED_PARAM(baseObject);
     2479void setJSTestObjStrictTypeCheckingAttribute(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2480{
     2481    JSValue value = JSValue::decode(encodedValue);
     2482    UNUSED_PARAM(thisValue);
    25632483    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    25642484    if (UNLIKELY(!castedThis)) {
     
    25782498
    25792499
    2580 void setJSTestObjCustomAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2581 {
    2582     JSValue value = JSValue::decode(encodedValue);
    2583     UNUSED_PARAM(baseObject);
     2500void setJSTestObjCustomAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2501{
     2502    JSValue value = JSValue::decode(encodedValue);
     2503    UNUSED_PARAM(thisValue);
    25842504    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    25852505    if (UNLIKELY(!castedThis)) {
     
    25912511
    25922512
    2593 void setJSTestObjOnfoo(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2594 {
    2595     JSValue value = JSValue::decode(encodedValue);
    2596     UNUSED_PARAM(baseObject);
     2513void setJSTestObjOnfoo(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2514{
     2515    JSValue value = JSValue::decode(encodedValue);
     2516    UNUSED_PARAM(thisValue);
    25972517    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    25982518    if (UNLIKELY(!castedThis)) {
     
    26042524
    26052525
    2606 void setJSTestObjWithScriptStateAttribute(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2607 {
    2608     JSValue value = JSValue::decode(encodedValue);
    2609     UNUSED_PARAM(baseObject);
     2526void setJSTestObjWithScriptStateAttribute(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2527{
     2528    JSValue value = JSValue::decode(encodedValue);
     2529    UNUSED_PARAM(thisValue);
    26102530    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    26112531    if (UNLIKELY(!castedThis)) {
     
    26212541
    26222542
    2623 void setJSTestObjWithCallWithAndSetterCallWithAttribute(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2624 {
    2625     JSValue value = JSValue::decode(encodedValue);
    2626     UNUSED_PARAM(baseObject);
     2543void setJSTestObjWithCallWithAndSetterCallWithAttribute(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2544{
     2545    JSValue value = JSValue::decode(encodedValue);
     2546    UNUSED_PARAM(thisValue);
    26272547    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    26282548    if (UNLIKELY(!castedThis)) {
     
    26382558
    26392559
    2640 void setJSTestObjWithScriptExecutionContextAttribute(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2641 {
    2642     JSValue value = JSValue::decode(encodedValue);
    2643     UNUSED_PARAM(baseObject);
     2560void setJSTestObjWithScriptExecutionContextAttribute(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2561{
     2562    JSValue value = JSValue::decode(encodedValue);
     2563    UNUSED_PARAM(thisValue);
    26442564    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    26452565    if (UNLIKELY(!castedThis)) {
     
    26582578
    26592579
    2660 void setJSTestObjWithScriptStateAttributeRaises(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2661 {
    2662     JSValue value = JSValue::decode(encodedValue);
    2663     UNUSED_PARAM(baseObject);
     2580void setJSTestObjWithScriptStateAttributeRaises(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2581{
     2582    JSValue value = JSValue::decode(encodedValue);
     2583    UNUSED_PARAM(thisValue);
    26642584    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    26652585    if (UNLIKELY(!castedThis)) {
     
    26752595
    26762596
    2677 void setJSTestObjWithScriptExecutionContextAttributeRaises(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2678 {
    2679     JSValue value = JSValue::decode(encodedValue);
    2680     UNUSED_PARAM(baseObject);
     2597void setJSTestObjWithScriptExecutionContextAttributeRaises(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2598{
     2599    JSValue value = JSValue::decode(encodedValue);
     2600    UNUSED_PARAM(thisValue);
    26812601    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    26822602    if (UNLIKELY(!castedThis)) {
     
    26952615
    26962616
    2697 void setJSTestObjWithScriptExecutionContextAndScriptStateAttribute(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2698 {
    2699     JSValue value = JSValue::decode(encodedValue);
    2700     UNUSED_PARAM(baseObject);
     2617void setJSTestObjWithScriptExecutionContextAndScriptStateAttribute(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2618{
     2619    JSValue value = JSValue::decode(encodedValue);
     2620    UNUSED_PARAM(thisValue);
    27012621    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    27022622    if (UNLIKELY(!castedThis)) {
     
    27152635
    27162636
    2717 void setJSTestObjWithScriptExecutionContextAndScriptStateAttributeRaises(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2718 {
    2719     JSValue value = JSValue::decode(encodedValue);
    2720     UNUSED_PARAM(baseObject);
     2637void setJSTestObjWithScriptExecutionContextAndScriptStateAttributeRaises(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2638{
     2639    JSValue value = JSValue::decode(encodedValue);
     2640    UNUSED_PARAM(thisValue);
    27212641    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    27222642    if (UNLIKELY(!castedThis)) {
     
    27352655
    27362656
    2737 void setJSTestObjWithScriptExecutionContextAndScriptStateWithSpacesAttribute(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2738 {
    2739     JSValue value = JSValue::decode(encodedValue);
    2740     UNUSED_PARAM(baseObject);
     2657void setJSTestObjWithScriptExecutionContextAndScriptStateWithSpacesAttribute(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2658{
     2659    JSValue value = JSValue::decode(encodedValue);
     2660    UNUSED_PARAM(thisValue);
    27412661    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    27422662    if (UNLIKELY(!castedThis)) {
     
    27552675
    27562676
    2757 void setJSTestObjWithScriptArgumentsAndCallStackAttribute(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2758 {
    2759     JSValue value = JSValue::decode(encodedValue);
    2760     UNUSED_PARAM(baseObject);
     2677void setJSTestObjWithScriptArgumentsAndCallStackAttribute(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2678{
     2679    JSValue value = JSValue::decode(encodedValue);
     2680    UNUSED_PARAM(thisValue);
    27612681    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    27622682    if (UNLIKELY(!castedThis)) {
     
    27732693
    27742694#if ENABLE(Condition1)
    2775 void setJSTestObjConditionalAttr1(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2776 {
    2777     JSValue value = JSValue::decode(encodedValue);
    2778     UNUSED_PARAM(baseObject);
     2695void setJSTestObjConditionalAttr1(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2696{
     2697    JSValue value = JSValue::decode(encodedValue);
     2698    UNUSED_PARAM(thisValue);
    27792699    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    27802700    if (UNLIKELY(!castedThis)) {
     
    27922712
    27932713#if ENABLE(Condition1) && ENABLE(Condition2)
    2794 void setJSTestObjConditionalAttr2(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2795 {
    2796     JSValue value = JSValue::decode(encodedValue);
    2797     UNUSED_PARAM(baseObject);
     2714void setJSTestObjConditionalAttr2(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2715{
     2716    JSValue value = JSValue::decode(encodedValue);
     2717    UNUSED_PARAM(thisValue);
    27982718    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    27992719    if (UNLIKELY(!castedThis)) {
     
    28112731
    28122732#if ENABLE(Condition1) || ENABLE(Condition2)
    2813 void setJSTestObjConditionalAttr3(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2814 {
    2815     JSValue value = JSValue::decode(encodedValue);
    2816     UNUSED_PARAM(baseObject);
     2733void setJSTestObjConditionalAttr3(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2734{
     2735    JSValue value = JSValue::decode(encodedValue);
     2736    UNUSED_PARAM(thisValue);
    28172737    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    28182738    if (UNLIKELY(!castedThis)) {
     
    28302750
    28312751#if ENABLE(Condition1)
    2832 void setJSTestObjConditionalAttr4Constructor(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2833 {
    2834     JSValue value = JSValue::decode(encodedValue);
    2835     UNUSED_PARAM(baseObject);
     2752void setJSTestObjConditionalAttr4Constructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2753{
     2754    JSValue value = JSValue::decode(encodedValue);
     2755    UNUSED_PARAM(thisValue);
    28362756    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    28372757    if (UNLIKELY(!castedThis)) {
     
    28462766
    28472767#if ENABLE(Condition1) && ENABLE(Condition2)
    2848 void setJSTestObjConditionalAttr5Constructor(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2849 {
    2850     JSValue value = JSValue::decode(encodedValue);
    2851     UNUSED_PARAM(baseObject);
     2768void setJSTestObjConditionalAttr5Constructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2769{
     2770    JSValue value = JSValue::decode(encodedValue);
     2771    UNUSED_PARAM(thisValue);
    28522772    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    28532773    if (UNLIKELY(!castedThis)) {
     
    28622782
    28632783#if ENABLE(Condition1) || ENABLE(Condition2)
    2864 void setJSTestObjConditionalAttr6Constructor(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2865 {
    2866     JSValue value = JSValue::decode(encodedValue);
    2867     UNUSED_PARAM(baseObject);
     2784void setJSTestObjConditionalAttr6Constructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2785{
     2786    JSValue value = JSValue::decode(encodedValue);
     2787    UNUSED_PARAM(thisValue);
    28682788    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    28692789    if (UNLIKELY(!castedThis)) {
     
    28772797#endif
    28782798
    2879 void setJSTestObjAnyAttribute(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2880 {
    2881     JSValue value = JSValue::decode(encodedValue);
    2882     UNUSED_PARAM(baseObject);
     2799void setJSTestObjAnyAttribute(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2800{
     2801    JSValue value = JSValue::decode(encodedValue);
     2802    UNUSED_PARAM(thisValue);
    28832803    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    28842804    if (UNLIKELY(!castedThis)) {
     
    28942814
    28952815
    2896 void setJSTestObjMutablePoint(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2897 {
    2898     JSValue value = JSValue::decode(encodedValue);
    2899     UNUSED_PARAM(baseObject);
     2816void setJSTestObjMutablePoint(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2817{
     2818    JSValue value = JSValue::decode(encodedValue);
     2819    UNUSED_PARAM(thisValue);
    29002820    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    29012821    if (UNLIKELY(!castedThis)) {
     
    29112831
    29122832
    2913 void setJSTestObjImmutablePoint(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2914 {
    2915     JSValue value = JSValue::decode(encodedValue);
    2916     UNUSED_PARAM(baseObject);
     2833void setJSTestObjImmutablePoint(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2834{
     2835    JSValue value = JSValue::decode(encodedValue);
     2836    UNUSED_PARAM(thisValue);
    29172837    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    29182838    if (UNLIKELY(!castedThis)) {
     
    29282848
    29292849
    2930 void setJSTestObjStrawberry(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2931 {
    2932     JSValue value = JSValue::decode(encodedValue);
    2933     UNUSED_PARAM(baseObject);
     2850void setJSTestObjStrawberry(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2851{
     2852    JSValue value = JSValue::decode(encodedValue);
     2853    UNUSED_PARAM(thisValue);
    29342854    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    29352855    if (UNLIKELY(!castedThis)) {
     
    29452865
    29462866
    2947 void setJSTestObjStrictFloat(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2948 {
    2949     JSValue value = JSValue::decode(encodedValue);
    2950     UNUSED_PARAM(baseObject);
     2867void setJSTestObjStrictFloat(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2868{
     2869    JSValue value = JSValue::decode(encodedValue);
     2870    UNUSED_PARAM(thisValue);
    29512871    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    29522872    if (UNLIKELY(!castedThis)) {
     
    29622882
    29632883
    2964 void setJSTestObjId(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2965 {
    2966     JSValue value = JSValue::decode(encodedValue);
    2967     UNUSED_PARAM(baseObject);
     2884void setJSTestObjId(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2885{
     2886    JSValue value = JSValue::decode(encodedValue);
     2887    UNUSED_PARAM(thisValue);
    29682888    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    29692889    if (UNLIKELY(!castedThis)) {
     
    29792899
    29802900
    2981 void setJSTestObjReplaceableAttribute(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2982 {
    2983     JSValue value = JSValue::decode(encodedValue);
    2984     UNUSED_PARAM(baseObject);
     2901void setJSTestObjReplaceableAttribute(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2902{
     2903    JSValue value = JSValue::decode(encodedValue);
     2904    UNUSED_PARAM(thisValue);
    29852905    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    29862906    if (UNLIKELY(!castedThis)) {
     
    29932913
    29942914
    2995 void setJSTestObjNullableLongSettableAttribute(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    2996 {
    2997     JSValue value = JSValue::decode(encodedValue);
    2998     UNUSED_PARAM(baseObject);
     2915void setJSTestObjNullableLongSettableAttribute(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2916{
     2917    JSValue value = JSValue::decode(encodedValue);
     2918    UNUSED_PARAM(thisValue);
    29992919    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    30002920    if (UNLIKELY(!castedThis)) {
     
    30102930
    30112931
    3012 void setJSTestObjNullableStringValue(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    3013 {
    3014     JSValue value = JSValue::decode(encodedValue);
    3015     UNUSED_PARAM(baseObject);
     2932void setJSTestObjNullableStringValue(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2933{
     2934    JSValue value = JSValue::decode(encodedValue);
     2935    UNUSED_PARAM(thisValue);
    30162936    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    30172937    if (UNLIKELY(!castedThis)) {
     
    30272947
    30282948
    3029 void setJSTestObjAttributeWithReservedEnumType(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    3030 {
    3031     JSValue value = JSValue::decode(encodedValue);
    3032     UNUSED_PARAM(baseObject);
     2949void setJSTestObjAttributeWithReservedEnumType(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2950{
     2951    JSValue value = JSValue::decode(encodedValue);
     2952    UNUSED_PARAM(thisValue);
    30332953    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    30342954    if (UNLIKELY(!castedThis)) {
     
    30462966
    30472967
    3048 void setJSTestObjPutForwardsAttribute(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    3049 {
    3050     JSValue value = JSValue::decode(encodedValue);
    3051     UNUSED_PARAM(baseObject);
     2968void setJSTestObjPutForwardsAttribute(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2969{
     2970    JSValue value = JSValue::decode(encodedValue);
     2971    UNUSED_PARAM(thisValue);
    30522972    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    30532973    if (UNLIKELY(!castedThis)) {
     
    30642984
    30652985
    3066 void setJSTestObjPutForwardsNullableAttribute(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    3067 {
    3068     JSValue value = JSValue::decode(encodedValue);
    3069     UNUSED_PARAM(baseObject);
     2986void setJSTestObjPutForwardsNullableAttribute(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     2987{
     2988    JSValue value = JSValue::decode(encodedValue);
     2989    UNUSED_PARAM(thisValue);
    30702990    JSTestObj* castedThis = jsDynamicCast<JSTestObj*>(JSValue::decode(thisValue));
    30712991    if (UNLIKELY(!castedThis)) {
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp

    r195907 r196331  
    3535// Attributes
    3636
    37 JSC::EncodedJSValue jsTestOverloadedConstructorsConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    38 void setJSTestOverloadedConstructorsConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     37JSC::EncodedJSValue jsTestOverloadedConstructorsConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     38void setJSTestOverloadedConstructorsConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    3939
    4040class JSTestOverloadedConstructorsPrototype : public JSC::JSNonFinalObject {
     
    189189}
    190190
    191 EncodedJSValue jsTestOverloadedConstructorsConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    192 {
    193     JSTestOverloadedConstructorsPrototype* domObject = jsDynamicCast<JSTestOverloadedConstructorsPrototype*>(baseValue);
     191EncodedJSValue jsTestOverloadedConstructorsConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     192{
     193    JSTestOverloadedConstructorsPrototype* domObject = jsDynamicCast<JSTestOverloadedConstructorsPrototype*>(JSValue::decode(thisValue));
    194194    if (!domObject)
    195195        return throwVMTypeError(state);
     
    197197}
    198198
    199 void setJSTestOverloadedConstructorsConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     199void setJSTestOverloadedConstructorsConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    200200{
    201201    JSValue value = JSValue::decode(encodedValue);
    202     UNUSED_PARAM(thisValue);
    203     JSTestOverloadedConstructorsPrototype* domObject = jsDynamicCast<JSTestOverloadedConstructorsPrototype*>(baseValue);
     202    JSTestOverloadedConstructorsPrototype* domObject = jsDynamicCast<JSTestOverloadedConstructorsPrototype*>(JSValue::decode(thisValue));
    204203    if (UNLIKELY(!domObject)) {
    205204        throwVMTypeError(state);
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp

    r195908 r196331  
    4141// Attributes
    4242
    43 JSC::EncodedJSValue jsTestOverrideBuiltinsConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    44 void setJSTestOverrideBuiltinsConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     43JSC::EncodedJSValue jsTestOverrideBuiltinsConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     44void setJSTestOverrideBuiltinsConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    4545
    4646class JSTestOverrideBuiltinsPrototype : public JSC::JSNonFinalObject {
     
    150150}
    151151
    152 EncodedJSValue jsTestOverrideBuiltinsConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    153 {
    154     JSTestOverrideBuiltinsPrototype* domObject = jsDynamicCast<JSTestOverrideBuiltinsPrototype*>(baseValue);
     152EncodedJSValue jsTestOverrideBuiltinsConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     153{
     154    JSTestOverrideBuiltinsPrototype* domObject = jsDynamicCast<JSTestOverrideBuiltinsPrototype*>(JSValue::decode(thisValue));
    155155    if (!domObject)
    156156        return throwVMTypeError(state);
     
    158158}
    159159
    160 void setJSTestOverrideBuiltinsConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     160void setJSTestOverrideBuiltinsConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    161161{
    162162    JSValue value = JSValue::decode(encodedValue);
    163     UNUSED_PARAM(thisValue);
    164     JSTestOverrideBuiltinsPrototype* domObject = jsDynamicCast<JSTestOverrideBuiltinsPrototype*>(baseValue);
     163    JSTestOverrideBuiltinsPrototype* domObject = jsDynamicCast<JSTestOverrideBuiltinsPrototype*>(JSValue::decode(thisValue));
    165164    if (UNLIKELY(!domObject)) {
    166165        throwVMTypeError(state);
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp

    r196303 r196331  
    3939// Attributes
    4040
    41 JSC::EncodedJSValue jsTestSerializedScriptValueInterfaceValue(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    42 void setJSTestSerializedScriptValueInterfaceValue(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    43 JSC::EncodedJSValue jsTestSerializedScriptValueInterfaceReadonlyValue(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    44 JSC::EncodedJSValue jsTestSerializedScriptValueInterfaceCachedValue(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    45 void setJSTestSerializedScriptValueInterfaceCachedValue(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    46 JSC::EncodedJSValue jsTestSerializedScriptValueInterfacePorts(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    47 JSC::EncodedJSValue jsTestSerializedScriptValueInterfaceCachedReadonlyValue(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    48 JSC::EncodedJSValue jsTestSerializedScriptValueInterfaceConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    49 void setJSTestSerializedScriptValueInterfaceConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     41JSC::EncodedJSValue jsTestSerializedScriptValueInterfaceValue(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     42void setJSTestSerializedScriptValueInterfaceValue(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     43JSC::EncodedJSValue jsTestSerializedScriptValueInterfaceReadonlyValue(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     44JSC::EncodedJSValue jsTestSerializedScriptValueInterfaceCachedValue(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     45void setJSTestSerializedScriptValueInterfaceCachedValue(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     46JSC::EncodedJSValue jsTestSerializedScriptValueInterfacePorts(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     47JSC::EncodedJSValue jsTestSerializedScriptValueInterfaceCachedReadonlyValue(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     48JSC::EncodedJSValue jsTestSerializedScriptValueInterfaceConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     49void setJSTestSerializedScriptValueInterfaceConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    5050
    5151class JSTestSerializedScriptValueInterfacePrototype : public JSC::JSNonFinalObject {
     
    128128}
    129129
    130 EncodedJSValue jsTestSerializedScriptValueInterfaceValue(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    131 {
    132     UNUSED_PARAM(state);
    133     UNUSED_PARAM(slotBase);
     130EncodedJSValue jsTestSerializedScriptValueInterfaceValue(ExecState* state, EncodedJSValue thisValue, PropertyName)
     131{
     132    UNUSED_PARAM(state);
    134133    UNUSED_PARAM(thisValue);
    135134    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    144143
    145144
    146 EncodedJSValue jsTestSerializedScriptValueInterfaceReadonlyValue(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    147 {
    148     UNUSED_PARAM(state);
    149     UNUSED_PARAM(slotBase);
     145EncodedJSValue jsTestSerializedScriptValueInterfaceReadonlyValue(ExecState* state, EncodedJSValue thisValue, PropertyName)
     146{
     147    UNUSED_PARAM(state);
    150148    UNUSED_PARAM(thisValue);
    151149    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    160158
    161159
    162 EncodedJSValue jsTestSerializedScriptValueInterfaceCachedValue(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    163 {
    164     UNUSED_PARAM(state);
    165     UNUSED_PARAM(slotBase);
     160EncodedJSValue jsTestSerializedScriptValueInterfaceCachedValue(ExecState* state, EncodedJSValue thisValue, PropertyName)
     161{
     162    UNUSED_PARAM(state);
    166163    UNUSED_PARAM(thisValue);
    167164    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    179176
    180177
    181 EncodedJSValue jsTestSerializedScriptValueInterfacePorts(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    182 {
    183     UNUSED_PARAM(state);
    184     UNUSED_PARAM(slotBase);
     178EncodedJSValue jsTestSerializedScriptValueInterfacePorts(ExecState* state, EncodedJSValue thisValue, PropertyName)
     179{
     180    UNUSED_PARAM(state);
    185181    UNUSED_PARAM(thisValue);
    186182    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    195191
    196192
    197 EncodedJSValue jsTestSerializedScriptValueInterfaceCachedReadonlyValue(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
    198 {
    199     UNUSED_PARAM(state);
    200     UNUSED_PARAM(slotBase);
     193EncodedJSValue jsTestSerializedScriptValueInterfaceCachedReadonlyValue(ExecState* state, EncodedJSValue thisValue, PropertyName)
     194{
     195    UNUSED_PARAM(state);
    201196    UNUSED_PARAM(thisValue);
    202197    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    214209
    215210
    216 EncodedJSValue jsTestSerializedScriptValueInterfaceConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    217 {
    218     JSTestSerializedScriptValueInterfacePrototype* domObject = jsDynamicCast<JSTestSerializedScriptValueInterfacePrototype*>(baseValue);
     211EncodedJSValue jsTestSerializedScriptValueInterfaceConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     212{
     213    JSTestSerializedScriptValueInterfacePrototype* domObject = jsDynamicCast<JSTestSerializedScriptValueInterfacePrototype*>(JSValue::decode(thisValue));
    219214    if (!domObject)
    220215        return throwVMTypeError(state);
     
    222217}
    223218
    224 void setJSTestSerializedScriptValueInterfaceConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     219void setJSTestSerializedScriptValueInterfaceConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    225220{
    226221    JSValue value = JSValue::decode(encodedValue);
    227     UNUSED_PARAM(thisValue);
    228     JSTestSerializedScriptValueInterfacePrototype* domObject = jsDynamicCast<JSTestSerializedScriptValueInterfacePrototype*>(baseValue);
     222    JSTestSerializedScriptValueInterfacePrototype* domObject = jsDynamicCast<JSTestSerializedScriptValueInterfacePrototype*>(JSValue::decode(thisValue));
    229223    if (UNLIKELY(!domObject)) {
    230224        throwVMTypeError(state);
     
    235229}
    236230
    237 void setJSTestSerializedScriptValueInterfaceValue(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     231void setJSTestSerializedScriptValueInterfaceValue(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    238232{
    239233    JSValue value = JSValue::decode(encodedValue);
    240     UNUSED_PARAM(baseObject);
     234    UNUSED_PARAM(thisValue);
    241235    JSTestSerializedScriptValueInterface* castedThis = jsDynamicCast<JSTestSerializedScriptValueInterface*>(JSValue::decode(thisValue));
    242236    if (UNLIKELY(!castedThis)) {
     
    252246
    253247
    254 void setJSTestSerializedScriptValueInterfaceCachedValue(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     248void setJSTestSerializedScriptValueInterfaceCachedValue(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    255249{
    256250    JSValue value = JSValue::decode(encodedValue);
    257     UNUSED_PARAM(baseObject);
     251    UNUSED_PARAM(thisValue);
    258252    JSTestSerializedScriptValueInterface* castedThis = jsDynamicCast<JSTestSerializedScriptValueInterface*>(JSValue::decode(thisValue));
    259253    if (UNLIKELY(!castedThis)) {
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestTypedefs.cpp

    r196303 r196331  
    5959// Attributes
    6060
    61 JSC::EncodedJSValue jsTestTypedefsUnsignedLongLongAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    62 void setJSTestTypedefsUnsignedLongLongAttr(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    63 JSC::EncodedJSValue jsTestTypedefsImmutableSerializedScriptValue(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    64 void setJSTestTypedefsImmutableSerializedScriptValue(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    65 JSC::EncodedJSValue jsTestTypedefsConstructorTestSubObj(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    66 JSC::EncodedJSValue jsTestTypedefsAttrWithGetterException(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    67 void setJSTestTypedefsAttrWithGetterException(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    68 JSC::EncodedJSValue jsTestTypedefsAttrWithSetterException(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    69 void setJSTestTypedefsAttrWithSetterException(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    70 JSC::EncodedJSValue jsTestTypedefsStringAttrWithGetterException(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    71 void setJSTestTypedefsStringAttrWithGetterException(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    72 JSC::EncodedJSValue jsTestTypedefsStringAttrWithSetterException(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    73 void setJSTestTypedefsStringAttrWithSetterException(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    74 JSC::EncodedJSValue jsTestTypedefsConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    75 void setJSTestTypedefsConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     61JSC::EncodedJSValue jsTestTypedefsUnsignedLongLongAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     62void setJSTestTypedefsUnsignedLongLongAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     63JSC::EncodedJSValue jsTestTypedefsImmutableSerializedScriptValue(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     64void setJSTestTypedefsImmutableSerializedScriptValue(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     65JSC::EncodedJSValue jsTestTypedefsConstructorTestSubObj(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     66JSC::EncodedJSValue jsTestTypedefsAttrWithGetterException(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     67void setJSTestTypedefsAttrWithGetterException(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     68JSC::EncodedJSValue jsTestTypedefsAttrWithSetterException(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     69void setJSTestTypedefsAttrWithSetterException(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     70JSC::EncodedJSValue jsTestTypedefsStringAttrWithGetterException(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     71void setJSTestTypedefsStringAttrWithGetterException(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     72JSC::EncodedJSValue jsTestTypedefsStringAttrWithSetterException(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     73void setJSTestTypedefsStringAttrWithSetterException(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     74JSC::EncodedJSValue jsTestTypedefsConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     75void setJSTestTypedefsConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    7676
    7777class JSTestTypedefsPrototype : public JSC::JSNonFinalObject {
     
    211211}
    212212
    213 EncodedJSValue jsTestTypedefsUnsignedLongLongAttr(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     213EncodedJSValue jsTestTypedefsUnsignedLongLongAttr(ExecState* state, EncodedJSValue thisValue, PropertyName)
    214214{
    215215    UNUSED_PARAM(state);
    216     UNUSED_PARAM(slotBase);
    217216    UNUSED_PARAM(thisValue);
    218217    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    227226
    228227
    229 EncodedJSValue jsTestTypedefsImmutableSerializedScriptValue(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     228EncodedJSValue jsTestTypedefsImmutableSerializedScriptValue(ExecState* state, EncodedJSValue thisValue, PropertyName)
    230229{
    231230    UNUSED_PARAM(state);
    232     UNUSED_PARAM(slotBase);
    233231    UNUSED_PARAM(thisValue);
    234232    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    243241
    244242
    245 EncodedJSValue jsTestTypedefsConstructorTestSubObj(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     243EncodedJSValue jsTestTypedefsConstructorTestSubObj(ExecState* state, EncodedJSValue thisValue, PropertyName)
    246244{
    247245    UNUSED_PARAM(state);
    248     UNUSED_PARAM(slotBase);
    249246    UNUSED_PARAM(thisValue);
    250247    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    257254
    258255
    259 EncodedJSValue jsTestTypedefsAttrWithGetterException(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     256EncodedJSValue jsTestTypedefsAttrWithGetterException(ExecState* state, EncodedJSValue thisValue, PropertyName)
    260257{
    261258    UNUSED_PARAM(state);
    262     UNUSED_PARAM(slotBase);
    263259    UNUSED_PARAM(thisValue);
    264260    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    275271
    276272
    277 EncodedJSValue jsTestTypedefsAttrWithSetterException(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     273EncodedJSValue jsTestTypedefsAttrWithSetterException(ExecState* state, EncodedJSValue thisValue, PropertyName)
    278274{
    279275    UNUSED_PARAM(state);
    280     UNUSED_PARAM(slotBase);
    281276    UNUSED_PARAM(thisValue);
    282277    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    291286
    292287
    293 EncodedJSValue jsTestTypedefsStringAttrWithGetterException(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     288EncodedJSValue jsTestTypedefsStringAttrWithGetterException(ExecState* state, EncodedJSValue thisValue, PropertyName)
    294289{
    295290    UNUSED_PARAM(state);
    296     UNUSED_PARAM(slotBase);
    297291    UNUSED_PARAM(thisValue);
    298292    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    309303
    310304
    311 EncodedJSValue jsTestTypedefsStringAttrWithSetterException(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     305EncodedJSValue jsTestTypedefsStringAttrWithSetterException(ExecState* state, EncodedJSValue thisValue, PropertyName)
    312306{
    313307    UNUSED_PARAM(state);
    314     UNUSED_PARAM(slotBase);
    315308    UNUSED_PARAM(thisValue);
    316309    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    325318
    326319
    327 EncodedJSValue jsTestTypedefsConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    328 {
    329     JSTestTypedefsPrototype* domObject = jsDynamicCast<JSTestTypedefsPrototype*>(baseValue);
     320EncodedJSValue jsTestTypedefsConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     321{
     322    JSTestTypedefsPrototype* domObject = jsDynamicCast<JSTestTypedefsPrototype*>(JSValue::decode(thisValue));
    330323    if (!domObject)
    331324        return throwVMTypeError(state);
     
    333326}
    334327
    335 void setJSTestTypedefsConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     328void setJSTestTypedefsConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    336329{
    337330    JSValue value = JSValue::decode(encodedValue);
    338     UNUSED_PARAM(thisValue);
    339     JSTestTypedefsPrototype* domObject = jsDynamicCast<JSTestTypedefsPrototype*>(baseValue);
     331    JSTestTypedefsPrototype* domObject = jsDynamicCast<JSTestTypedefsPrototype*>(JSValue::decode(thisValue));
    340332    if (UNLIKELY(!domObject)) {
    341333        throwVMTypeError(state);
     
    346338}
    347339
    348 void setJSTestTypedefsUnsignedLongLongAttr(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     340void setJSTestTypedefsUnsignedLongLongAttr(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    349341{
    350342    JSValue value = JSValue::decode(encodedValue);
    351     UNUSED_PARAM(baseObject);
     343    UNUSED_PARAM(thisValue);
    352344    JSTestTypedefs* castedThis = jsDynamicCast<JSTestTypedefs*>(JSValue::decode(thisValue));
    353345    if (UNLIKELY(!castedThis)) {
     
    363355
    364356
    365 void setJSTestTypedefsImmutableSerializedScriptValue(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     357void setJSTestTypedefsImmutableSerializedScriptValue(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    366358{
    367359    JSValue value = JSValue::decode(encodedValue);
    368     UNUSED_PARAM(baseObject);
     360    UNUSED_PARAM(thisValue);
    369361    JSTestTypedefs* castedThis = jsDynamicCast<JSTestTypedefs*>(JSValue::decode(thisValue));
    370362    if (UNLIKELY(!castedThis)) {
     
    380372
    381373
    382 void setJSTestTypedefsAttrWithGetterException(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     374void setJSTestTypedefsAttrWithGetterException(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    383375{
    384376    JSValue value = JSValue::decode(encodedValue);
    385     UNUSED_PARAM(baseObject);
     377    UNUSED_PARAM(thisValue);
    386378    JSTestTypedefs* castedThis = jsDynamicCast<JSTestTypedefs*>(JSValue::decode(thisValue));
    387379    if (UNLIKELY(!castedThis)) {
     
    397389
    398390
    399 void setJSTestTypedefsAttrWithSetterException(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     391void setJSTestTypedefsAttrWithSetterException(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    400392{
    401393    JSValue value = JSValue::decode(encodedValue);
    402     UNUSED_PARAM(baseObject);
     394    UNUSED_PARAM(thisValue);
    403395    JSTestTypedefs* castedThis = jsDynamicCast<JSTestTypedefs*>(JSValue::decode(thisValue));
    404396    if (UNLIKELY(!castedThis)) {
     
    416408
    417409
    418 void setJSTestTypedefsStringAttrWithGetterException(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     410void setJSTestTypedefsStringAttrWithGetterException(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    419411{
    420412    JSValue value = JSValue::decode(encodedValue);
    421     UNUSED_PARAM(baseObject);
     413    UNUSED_PARAM(thisValue);
    422414    JSTestTypedefs* castedThis = jsDynamicCast<JSTestTypedefs*>(JSValue::decode(thisValue));
    423415    if (UNLIKELY(!castedThis)) {
     
    433425
    434426
    435 void setJSTestTypedefsStringAttrWithSetterException(ExecState* state, JSObject* baseObject, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     427void setJSTestTypedefsStringAttrWithSetterException(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    436428{
    437429    JSValue value = JSValue::decode(encodedValue);
    438     UNUSED_PARAM(baseObject);
     430    UNUSED_PARAM(thisValue);
    439431    JSTestTypedefs* castedThis = jsDynamicCast<JSTestTypedefs*>(JSValue::decode(thisValue));
    440432    if (UNLIKELY(!castedThis)) {
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSattribute.cpp

    r196303 r196331  
    3434// Attributes
    3535
    36 JSC::EncodedJSValue jsattributeReadonly(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    37 JSC::EncodedJSValue jsattributeConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    38 void setJSattributeConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     36JSC::EncodedJSValue jsattributeReadonly(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     37JSC::EncodedJSValue jsattributeConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     38void setJSattributeConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    3939
    4040class JSattributePrototype : public JSC::JSNonFinalObject {
     
    113113}
    114114
    115 EncodedJSValue jsattributeReadonly(ExecState* state, JSObject* slotBase, EncodedJSValue thisValue, PropertyName)
     115EncodedJSValue jsattributeReadonly(ExecState* state, EncodedJSValue thisValue, PropertyName)
    116116{
    117117    UNUSED_PARAM(state);
    118     UNUSED_PARAM(slotBase);
    119118    UNUSED_PARAM(thisValue);
    120119    JSValue decodedThisValue = JSValue::decode(thisValue);
     
    129128
    130129
    131 EncodedJSValue jsattributeConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
    132 {
    133     JSattributePrototype* domObject = jsDynamicCast<JSattributePrototype*>(baseValue);
     130EncodedJSValue jsattributeConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
     131{
     132    JSattributePrototype* domObject = jsDynamicCast<JSattributePrototype*>(JSValue::decode(thisValue));
    134133    if (!domObject)
    135134        return throwVMTypeError(state);
     
    137136}
    138137
    139 void setJSattributeConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     138void setJSattributeConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    140139{
    141140    JSValue value = JSValue::decode(encodedValue);
    142     UNUSED_PARAM(thisValue);
    143     JSattributePrototype* domObject = jsDynamicCast<JSattributePrototype*>(baseValue);
     141    JSattributePrototype* domObject = jsDynamicCast<JSattributePrototype*>(JSValue::decode(thisValue));
    144142    if (UNLIKELY(!domObject)) {
    145143        throwVMTypeError(state);
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSreadonly.cpp

    r195907 r196331  
    3232// Attributes
    3333
    34 JSC::EncodedJSValue jsreadonlyConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    35 void setJSreadonlyConstructor(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::EncodedJSValue);
     34JSC::EncodedJSValue jsreadonlyConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     35void setJSreadonlyConstructor(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue);
    3636
    3737class JSreadonlyPrototype : public JSC::JSNonFinalObject {
     
    109109}
    110110
    111 EncodedJSValue jsreadonlyConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue, PropertyName)
     111EncodedJSValue jsreadonlyConstructor(ExecState* state, EncodedJSValue thisValue, PropertyName)
    112112{
    113     JSreadonlyPrototype* domObject = jsDynamicCast<JSreadonlyPrototype*>(baseValue);
     113    JSreadonlyPrototype* domObject = jsDynamicCast<JSreadonlyPrototype*>(JSValue::decode(thisValue));
    114114    if (!domObject)
    115115        return throwVMTypeError(state);
     
    117117}
    118118
    119 void setJSreadonlyConstructor(ExecState* state, JSObject* baseValue, EncodedJSValue thisValue, EncodedJSValue encodedValue)
     119void setJSreadonlyConstructor(ExecState* state, EncodedJSValue thisValue, EncodedJSValue encodedValue)
    120120{
    121121    JSValue value = JSValue::decode(encodedValue);
    122     UNUSED_PARAM(thisValue);
    123     JSreadonlyPrototype* domObject = jsDynamicCast<JSreadonlyPrototype*>(baseValue);
     122    JSreadonlyPrototype* domObject = jsDynamicCast<JSreadonlyPrototype*>(JSValue::decode(thisValue));
    124123    if (UNLIKELY(!domObject)) {
    125124        throwVMTypeError(state);
  • trunk/Source/WebCore/bridge/runtime_array.cpp

    r182406 r196331  
    6161}
    6262
    63 EncodedJSValue RuntimeArray::lengthGetter(ExecState* exec, JSObject*, EncodedJSValue thisValue, PropertyName)
     63EncodedJSValue RuntimeArray::lengthGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName)
    6464{
    6565    RuntimeArray* thisObject = jsDynamicCast<RuntimeArray*>(JSValue::decode(thisValue));
  • trunk/Source/WebCore/bridge/runtime_array.h

    r182747 r196331  
    8484private:
    8585    RuntimeArray(ExecState*, Structure*);
    86     static EncodedJSValue lengthGetter(ExecState*, JSObject*, EncodedJSValue, PropertyName);
     86    static EncodedJSValue lengthGetter(ExecState*, EncodedJSValue, PropertyName);
    8787
    8888    BindingsArray* m_array;
  • trunk/Source/WebCore/bridge/runtime_method.cpp

    r191887 r196331  
    5555}
    5656
    57 EncodedJSValue RuntimeMethod::lengthGetter(ExecState* exec, JSObject*, EncodedJSValue thisValue, PropertyName)
     57EncodedJSValue RuntimeMethod::lengthGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName)
    5858{
    5959    RuntimeMethod* thisObject = jsDynamicCast<RuntimeMethod*>(JSValue::decode(thisValue));
  • trunk/Source/WebCore/bridge/runtime_method.h

    r183575 r196331  
    6767
    6868private:
    69     static EncodedJSValue lengthGetter(ExecState*, JSObject*, EncodedJSValue, PropertyName);
     69    static EncodedJSValue lengthGetter(ExecState*, EncodedJSValue, PropertyName);
    7070
    7171    Bindings::Method* m_method;
  • trunk/Source/WebCore/bridge/runtime_object.cpp

    r194496 r196331  
    6363}
    6464
    65 EncodedJSValue RuntimeObject::fallbackObjectGetter(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName propertyName)
    66 {
    67     RuntimeObject* thisObj = jsCast<RuntimeObject*>(slotBase);
     65EncodedJSValue RuntimeObject::fallbackObjectGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName propertyName)
     66{
     67    RuntimeObject* thisObj = jsCast<RuntimeObject*>(JSValue::decode(thisValue));
    6868    RefPtr<Instance> instance = thisObj->m_instance;
    6969
     
    8181}
    8282
    83 EncodedJSValue RuntimeObject::fieldGetter(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName propertyName)
     83EncodedJSValue RuntimeObject::fieldGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName propertyName)
    8484{   
    85     RuntimeObject* thisObj = jsCast<RuntimeObject*>(slotBase);
     85    RuntimeObject* thisObj = jsCast<RuntimeObject*>(JSValue::decode(thisValue));
    8686    RefPtr<Instance> instance = thisObj->m_instance;
    8787
     
    100100}
    101101
    102 EncodedJSValue RuntimeObject::methodGetter(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName propertyName)
    103 {
    104     RuntimeObject* thisObj = jsCast<RuntimeObject*>(slotBase);
     102EncodedJSValue RuntimeObject::methodGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName propertyName)
     103{
     104    RuntimeObject* thisObj = jsCast<RuntimeObject*>(JSValue::decode(thisValue));
    105105    RefPtr<Instance> instance = thisObj->m_instance;
    106106
  • trunk/Source/WebCore/bridge/runtime_object.h

    r194496 r196331  
    7979
    8080private:
    81     static EncodedJSValue fallbackObjectGetter(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    82     static EncodedJSValue fieldGetter(ExecState*, JSObject*, EncodedJSValue, PropertyName);
    83     static EncodedJSValue methodGetter(ExecState*, JSObject*, EncodedJSValue, PropertyName);
     81    static EncodedJSValue fallbackObjectGetter(ExecState*, EncodedJSValue, PropertyName);
     82    static EncodedJSValue fieldGetter(ExecState*, EncodedJSValue, PropertyName);
     83    static EncodedJSValue methodGetter(ExecState*, EncodedJSValue, PropertyName);
    8484
    8585    RefPtr<Instance> m_instance;
  • trunk/Source/WebKit2/ChangeLog

    r196329 r196331  
     12016-02-07  Gavin Barraclough  <barraclough@apple.com>
     2
     3        GetValueFunc/PutValueFunc should not take both slotBase and thisValue
     4        https://bugs.webkit.org/show_bug.cgi?id=154009
     5
     6        Reviewed by Geoff Garen.
     7
     8        In JavaScript there are two types of properties - regular value properties, and accessor properties.
     9        One difference between these is how they are reflected by getOwnPropertyDescriptor, and another is
     10        what object they operate on in the case of a prototype access. If you access a value property of a
     11        prototype object it return a value pertinent to the prototype, but in the case of a prototype object
     12        returning an accessor, then the accessor function is applied to the base object of the access.
     13
     14        JSC supports special 'custom' properties implemented as a c++ callback, and these custom properties
     15        can be used to implement either value- or accessor-like behavior. getOwnPropertyDescriptor behavior
     16        is selected via the CustomAccessor attribute. Value- or accessor-like object selection is current
     17        supported by passing both the slotBase and the thisValue to the callback,and hoping it uses the
     18        right one. This is probably inefficient, bug-prone, and leads to crazy like JSBoundSlotBaseFunction.
     19
     20        Instead, just pass one thisValue to the callback functions, consistent with CustomAccessor.
     21
     22        * WebProcess/Plugins/Netscape/JSNPObject.cpp:
     23        (WebKit::JSNPObject::getOwnPropertyNames):
     24        (WebKit::JSNPObject::propertyGetter):
     25        (WebKit::JSNPObject::methodGetter):
     26        * WebProcess/Plugins/Netscape/JSNPObject.h:
     27            - Merged slotBase & thisValue to custom property callbacks.
     28
    1292016-02-09  Jer Noble  <jer.noble@apple.com>
    230
  • trunk/Source/WebKit2/WebProcess/Plugins/Netscape/JSNPObject.cpp

    r194303 r196331  
    434434}
    435435
    436 EncodedJSValue JSNPObject::propertyGetter(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName propertyName)
    437 {
    438     JSNPObject* thisObj = jsCast<JSNPObject*>(slotBase);
     436EncodedJSValue JSNPObject::propertyGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName propertyName)
     437{
     438    JSNPObject* thisObj = jsCast<JSNPObject*>(JSValue::decode(thisValue));
    439439    ASSERT_GC_OBJECT_INHERITS(thisObj, info());
    440440   
     
    474474}
    475475
    476 EncodedJSValue JSNPObject::methodGetter(ExecState* exec, JSObject* slotBase, EncodedJSValue, PropertyName propertyName)
    477 {
    478     JSNPObject* thisObj = jsCast<JSNPObject*>(slotBase);
     476EncodedJSValue JSNPObject::methodGetter(ExecState* exec, EncodedJSValue thisValue, PropertyName propertyName)
     477{
     478    JSNPObject* thisObj = jsCast<JSNPObject*>(JSValue::decode(thisValue));
    479479    ASSERT_GC_OBJECT_INHERITS(thisObj, info());
    480480   
  • trunk/Source/WebKit2/WebProcess/Plugins/Netscape/JSNPObject.h

    r183575 r196331  
    9595    static void getOwnPropertyNames(JSC::JSObject*, JSC::ExecState*, JSC::PropertyNameArray&, JSC::EnumerationMode);
    9696
    97     static JSC::EncodedJSValue propertyGetter(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
    98     static JSC::EncodedJSValue methodGetter(JSC::ExecState*, JSC::JSObject*, JSC::EncodedJSValue, JSC::PropertyName);
     97    static JSC::EncodedJSValue propertyGetter(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
     98    static JSC::EncodedJSValue methodGetter(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName);
    9999    static JSC::JSObject* throwInvalidAccessError(JSC::ExecState*);
    100100
Note: See TracChangeset for help on using the changeset viewer.