Changeset 248105 in webkit
- Timestamp:
- Aug 1, 2019, 10:13:51 AM (6 years ago)
- Location:
- trunk/Source
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/ChangeLog
r248098 r248105 1 2019-07-31 Mark Lam <mark.lam@apple.com> 2 3 Rename DOMJIT safe/unsafeFunction to functionWithTypeChecks and functionWithoutTypeChecks. 4 https://bugs.webkit.org/show_bug.cgi?id=200323 5 6 Reviewed by Yusuke Suzuki. 7 8 The DOMJIT has a notion of a safeFunction and an unsafeFunction. The safeFunction 9 is effectively the same as the unsafeFunction with added type check. The DFG/FTL 10 will emit code to call the unsafeFunction if it has already emitted the needed 11 type check or proven that it isn't needed. Otherwise, the DFG/FTL will emit 12 code to call the safeFunction (which does its own type check) instead. 13 14 This patch renames these functions to better describe their difference. 15 16 * dfg/DFGSpeculativeJIT.cpp: 17 (JSC::DFG::SpeculativeJIT::compileCallDOM): 18 * domjit/DOMJITSignature.h: 19 (JSC::DOMJIT::Signature::Signature): 20 * ftl/FTLLowerDFGToB3.cpp: 21 (JSC::FTL::DFG::LowerDFGToB3::compileCallDOM): 22 * tools/JSDollarVM.cpp: 23 (JSC::DOMJITFunctionObject::functionWithTypeCheck): 24 (JSC::DOMJITFunctionObject::functionWithoutTypeCheck): 25 (JSC::DOMJITFunctionObject::finishCreation): 26 (JSC::DOMJITCheckSubClassObject::functionWithTypeCheck): 27 (JSC::DOMJITCheckSubClassObject::functionWithoutTypeCheck): 28 (JSC::DOMJITCheckSubClassObject::finishCreation): 29 (JSC::DOMJITFunctionObject::safeFunction): Deleted. 30 (JSC::DOMJITFunctionObject::unsafeFunction): Deleted. 31 (JSC::DOMJITCheckSubClassObject::safeFunction): Deleted. 32 (JSC::DOMJITCheckSubClassObject::unsafeFunction): Deleted. 33 1 34 2019-07-31 Alex Christensen <achristensen@webkit.org> 2 35 -
trunk/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp
r247387 r248105 9415 9415 9416 9416 flushRegisters(); 9417 assertIsTaggedWith(reinterpret_cast<void*>(signature->unsafeFunction), CFunctionPtrTag); 9417 DOMJIT::FunctionWithoutTypeCheck function = signature->functionWithoutTypeCheck; 9418 assertIsTaggedWith(function, CFunctionPtrTag); 9418 9419 unsigned argumentCountIncludingThis = signature->argumentCount + 1; 9419 9420 switch (argumentCountIncludingThis) { 9420 9421 case 1: 9421 callOperation(reinterpret_cast<J_JITOperation_EP>( signature->unsafeFunction), extractResult(resultRegs), regs[0]);9422 callOperation(reinterpret_cast<J_JITOperation_EP>(function), extractResult(resultRegs), regs[0]); 9422 9423 break; 9423 9424 case 2: 9424 callOperation(reinterpret_cast<J_JITOperation_EPP>( signature->unsafeFunction), extractResult(resultRegs), regs[0], regs[1]);9425 callOperation(reinterpret_cast<J_JITOperation_EPP>(function), extractResult(resultRegs), regs[0], regs[1]); 9425 9426 break; 9426 9427 case 3: 9427 callOperation(reinterpret_cast<J_JITOperation_EPPP>( signature->unsafeFunction), extractResult(resultRegs), regs[0], regs[1], regs[2]);9428 callOperation(reinterpret_cast<J_JITOperation_EPPP>(function), extractResult(resultRegs), regs[0], regs[1], regs[2]); 9428 9429 break; 9429 9430 default: -
trunk/Source/JavaScriptCore/domjit/DOMJITSignature.h
r242812 r248105 1 1 /* 2 * Copyright (C) 2016 Apple Inc. All rights reserved.2 * Copyright (C) 2016-2019 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 38 38 #define JSC_DOMJIT_SIGNATURE_MAX_ARGUMENTS_INCLUDING_THIS (1 + JSC_DOMJIT_SIGNATURE_MAX_ARGUMENTS) 39 39 40 using FunctionWithoutTypeCheck = void (*)(); 41 40 42 class Signature { 41 43 public: 42 44 template<typename... Arguments> 43 constexpr Signature( uintptr_t unsafeFunction, const ClassInfo* classInfo, Effect effect, SpeculatedType result, Arguments... arguments)44 : unsafeFunction(unsafeFunction)45 constexpr Signature(FunctionWithoutTypeCheck functionWithoutTypeCheck, const ClassInfo* classInfo, Effect effect, SpeculatedType result, Arguments... arguments) 46 : functionWithoutTypeCheck(functionWithoutTypeCheck) 45 47 , classInfo(classInfo) 46 48 , result(result) … … 51 53 } 52 54 53 uintptr_t unsafeFunction;55 FunctionWithoutTypeCheck functionWithoutTypeCheck; 54 56 const ClassInfo* const classInfo; 55 57 const SpeculatedType result; -
trunk/Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp
r247387 r248105 12582 12582 unsigned argumentCountIncludingThis = signature->argumentCount + 1; 12583 12583 LValue result; 12584 assertIsTaggedWith(reinterpret_cast<void*>(signature->unsafeFunction), CFunctionPtrTag); 12584 DOMJIT::FunctionWithoutTypeCheck function = signature->functionWithoutTypeCheck; 12585 assertIsTaggedWith(function, CFunctionPtrTag); 12585 12586 switch (argumentCountIncludingThis) { 12586 12587 case 1: 12587 result = vmCall(Int64, m_out.operation(reinterpret_cast<J_JITOperation_EP>( signature->unsafeFunction)), m_callFrame, operands[0]);12588 result = vmCall(Int64, m_out.operation(reinterpret_cast<J_JITOperation_EP>(function)), m_callFrame, operands[0]); 12588 12589 break; 12589 12590 case 2: 12590 result = vmCall(Int64, m_out.operation(reinterpret_cast<J_JITOperation_EPP>( signature->unsafeFunction)), m_callFrame, operands[0], operands[1]);12591 result = vmCall(Int64, m_out.operation(reinterpret_cast<J_JITOperation_EPP>(function)), m_callFrame, operands[0], operands[1]); 12591 12592 break; 12592 12593 case 3: 12593 result = vmCall(Int64, m_out.operation(reinterpret_cast<J_JITOperation_EPPP>( signature->unsafeFunction)), m_callFrame, operands[0], operands[1], operands[2]);12594 result = vmCall(Int64, m_out.operation(reinterpret_cast<J_JITOperation_EPPP>(function)), m_callFrame, operands[0], operands[1], operands[2]); 12594 12595 break; 12595 12596 default: -
trunk/Source/JavaScriptCore/tools/JSDollarVM.cpp
r247925 r248105 1 1 /* 2 * Copyright (C) 2015-201 8Apple Inc. All rights reserved.2 * Copyright (C) 2015-2019 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 788 788 } 789 789 790 static EncodedJSValue JSC_HOST_CALL safeFunction(ExecState* exec)790 static EncodedJSValue JSC_HOST_CALL functionWithTypeCheck(ExecState* exec) 791 791 { 792 792 VM& vm = exec->vm(); … … 799 799 } 800 800 801 static EncodedJSValue JIT_OPERATION unsafeFunction(ExecState* exec, DOMJITNode* node)801 static EncodedJSValue JIT_OPERATION functionWithoutTypeCheck(ExecState* exec, DOMJITNode* node) 802 802 { 803 803 VM& vm = exec->vm(); … … 827 827 }; 828 828 829 static const DOMJIT::Signature DOMJITFunctionObjectSignature(( uintptr_t)DOMJITFunctionObject::unsafeFunction, DOMJITFunctionObject::info(), DOMJIT::Effect::forRead(DOMJIT::HeapRange::top()), SpecInt32Only);829 static const DOMJIT::Signature DOMJITFunctionObjectSignature((DOMJIT::FunctionWithoutTypeCheck)DOMJITFunctionObject::functionWithoutTypeCheck, DOMJITFunctionObject::info(), DOMJIT::Effect::forRead(DOMJIT::HeapRange::top()), SpecInt32Only); 830 830 831 831 void DOMJITFunctionObject::finishCreation(VM& vm, JSGlobalObject* globalObject) 832 832 { 833 833 Base::finishCreation(vm); 834 putDirectNativeFunction(vm, globalObject, Identifier::fromString(&vm, "func"), 0, safeFunction, NoIntrinsic, &DOMJITFunctionObjectSignature, static_cast<unsigned>(PropertyAttribute::ReadOnly));834 putDirectNativeFunction(vm, globalObject, Identifier::fromString(&vm, "func"), 0, functionWithTypeCheck, NoIntrinsic, &DOMJITFunctionObjectSignature, static_cast<unsigned>(PropertyAttribute::ReadOnly)); 835 835 } 836 836 … … 859 859 } 860 860 861 static EncodedJSValue JSC_HOST_CALL safeFunction(ExecState* exec)861 static EncodedJSValue JSC_HOST_CALL functionWithTypeCheck(ExecState* exec) 862 862 { 863 863 VM& vm = exec->vm(); … … 870 870 } 871 871 872 static EncodedJSValue JIT_OPERATION unsafeFunction(ExecState* exec, DOMJITNode* node)872 static EncodedJSValue JIT_OPERATION functionWithoutTypeCheck(ExecState* exec, DOMJITNode* node) 873 873 { 874 874 VM& vm = exec->vm(); … … 881 881 }; 882 882 883 static const DOMJIT::Signature DOMJITCheckSubClassObjectSignature(( uintptr_t)DOMJITCheckSubClassObject::unsafeFunction, DOMJITCheckSubClassObject::info(), DOMJIT::Effect::forRead(DOMJIT::HeapRange::top()), SpecInt32Only);883 static const DOMJIT::Signature DOMJITCheckSubClassObjectSignature((DOMJIT::FunctionWithoutTypeCheck)DOMJITCheckSubClassObject::functionWithoutTypeCheck, DOMJITCheckSubClassObject::info(), DOMJIT::Effect::forRead(DOMJIT::HeapRange::top()), SpecInt32Only); 884 884 885 885 void DOMJITCheckSubClassObject::finishCreation(VM& vm, JSGlobalObject* globalObject) 886 886 { 887 887 Base::finishCreation(vm); 888 putDirectNativeFunction(vm, globalObject, Identifier::fromString(&vm, "func"), 0, safeFunction, NoIntrinsic, &DOMJITCheckSubClassObjectSignature, static_cast<unsigned>(PropertyAttribute::ReadOnly));888 putDirectNativeFunction(vm, globalObject, Identifier::fromString(&vm, "func"), 0, functionWithTypeCheck, NoIntrinsic, &DOMJITCheckSubClassObjectSignature, static_cast<unsigned>(PropertyAttribute::ReadOnly)); 889 889 } 890 890 -
trunk/Source/WebCore/ChangeLog
r248102 r248105 1 2019-07-31 Mark Lam <mark.lam@apple.com> 2 3 Rename DOMJIT safe/unsafeFunction to functionWithTypeChecks and functionWithoutTypeChecks. 4 https://bugs.webkit.org/show_bug.cgi?id=200323 5 6 Reviewed by Yusuke Suzuki. 7 8 No new tests. This is just a refactoring exercise. 9 10 * bindings/scripts/CodeGeneratorJS.pm: 11 (GetArgumentTypeForFunctionWithoutTypeCheck): 12 (GenerateImplementation): 13 (GenerateOperationDefinition): 14 (ToNativeForFunctionWithoutTypeCheck): 15 (GetUnsafeArgumentType): Deleted. 16 (UnsafeToNative): Deleted. 17 * bindings/scripts/test/JS/JSTestDOMJIT.cpp: 18 (WebCore::jsTestDOMJITPrototypeFunctionGetAttributeWithoutTypeCheck): 19 (WebCore::jsTestDOMJITPrototypeFunctionItemWithoutTypeCheck): 20 (WebCore::jsTestDOMJITPrototypeFunctionHasAttributeWithoutTypeCheck): 21 (WebCore::jsTestDOMJITPrototypeFunctionGetElementByIdWithoutTypeCheck): 22 (WebCore::jsTestDOMJITPrototypeFunctionGetElementsByNameWithoutTypeCheck): 23 (WebCore::unsafeJsTestDOMJITPrototypeFunctionGetAttribute): Deleted. 24 (WebCore::unsafeJsTestDOMJITPrototypeFunctionItem): Deleted. 25 (WebCore::unsafeJsTestDOMJITPrototypeFunctionHasAttribute): Deleted. 26 (WebCore::unsafeJsTestDOMJITPrototypeFunctionGetElementById): Deleted. 27 (WebCore::unsafeJsTestDOMJITPrototypeFunctionGetElementsByName): Deleted. 28 1 29 2019-08-01 Carlos Garcia Campos <cgarcia@igalia.com> 2 30 -
trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
r247278 r248105 3819 3819 } 3820 3820 3821 sub Get UnsafeArgumentType3821 sub GetArgumentTypeForFunctionWithoutTypeCheck 3822 3822 { 3823 3823 my ($interface, $type) = @_; … … 3943 3943 if ($operation->extendedAttributes->{DOMJIT}) { 3944 3944 $implIncludes{"DOMJITIDLType.h"} = 1; 3945 my $ unsafeFunctionName = "unsafe" . $codeGenerator->WK_ucfirst($functionName);3946 my $functionSignature = "JSC::EncodedJSValue JIT_OPERATION ${ unsafeFunctionName}(JSC::ExecState*, $className*";3945 my $nameOfFunctionWithoutTypeCheck = $codeGenerator->WK_lcfirst($functionName) . "WithoutTypeCheck"; 3946 my $functionSignature = "JSC::EncodedJSValue JIT_OPERATION ${nameOfFunctionWithoutTypeCheck}(JSC::ExecState*, $className*"; 3947 3947 foreach my $argument (@{$operation->arguments}) { 3948 3948 my $type = $argument->type; 3949 my $argumentType = Get UnsafeArgumentType($interface, $type);3949 my $argumentType = GetArgumentTypeForFunctionWithoutTypeCheck($interface, $type); 3950 3950 $functionSignature .= ", ${argumentType}"; 3951 3951 } … … 4006 4006 my $interfaceName = $interface->type->name; 4007 4007 my $functionName = GetFunctionName($interface, $className, $operation); 4008 my $ unsafeFunctionName = "unsafe" . $codeGenerator->WK_ucfirst($functionName);4008 my $nameOfFunctionWithoutTypeCheck = $codeGenerator->WK_lcfirst($functionName) . "WithoutTypeCheck"; 4009 4009 my $domJITSignatureName = "DOMJITSignatureFor" . $interface->type->name . $codeGenerator->WK_ucfirst($operation->name); 4010 4010 my $classInfo = "JS" . $interface->type->name . "::info()"; 4011 4011 my $resultType = GetResultTypeFilter($interface, $operation->type); 4012 my $domJITSignatureHeader = "static const JSC::DOMJIT::Signature ${domJITSignatureName}(( uintptr_t)${unsafeFunctionName},";4012 my $domJITSignatureHeader = "static const JSC::DOMJIT::Signature ${domJITSignatureName}((JSC::DOMJIT::FunctionWithoutTypeCheck)${nameOfFunctionWithoutTypeCheck},"; 4013 4013 my $domJITSignatureFooter = "$classInfo, JSC::DOMJIT::Effect::forRead(DOMJIT::AbstractHeapRepository::DOM), ${resultType}"; 4014 4014 foreach my $argument (@{$operation->arguments}) { … … 5291 5291 5292 5292 AddToImplIncludes("<JavaScriptCore/FrameTracers.h>", $conditional); 5293 my $ unsafeFunctionName = "unsafe" . $codeGenerator->WK_ucfirst($functionName);5294 push(@$outputArray, "JSC::EncodedJSValue JIT_OPERATION ${ unsafeFunctionName}(JSC::ExecState* state, $className* castedThis");5293 my $nameOfFunctionWithoutTypeCheck = $codeGenerator->WK_lcfirst($functionName) . "WithoutTypeCheck"; 5294 push(@$outputArray, "JSC::EncodedJSValue JIT_OPERATION ${nameOfFunctionWithoutTypeCheck}(JSC::ExecState* state, $className* castedThis"); 5295 5295 foreach my $argument (@{$operation->arguments}) { 5296 5296 my $type = $argument->type; 5297 my $argumentType = Get UnsafeArgumentType($interface, $type);5297 my $argumentType = GetArgumentTypeForFunctionWithoutTypeCheck($interface, $type); 5298 5298 my $name = $argument->name; 5299 5299 my $encodedName = "encoded" . $codeGenerator->WK_ucfirst($name); … … 5321 5321 my $shouldPassByReference = ShouldPassArgumentByReference($argument); 5322 5322 5323 my ($nativeValue, $mayThrowException) = UnsafeToNative($interface, $argument, $encodedName, $operation->extendedAttributes->{Conditional});5323 my ($nativeValue, $mayThrowException) = ToNativeForFunctionWithoutTypeCheck($interface, $argument, $encodedName, $operation->extendedAttributes->{Conditional}); 5324 5324 push(@$outputArray, " auto $name = ${nativeValue};\n"); 5325 5325 push(@$outputArray, " RETURN_IF_EXCEPTION(throwScope, encodedJSValue());\n") if $mayThrowException; … … 6610 6610 } 6611 6611 6612 sub UnsafeToNative6612 sub ToNativeForFunctionWithoutTypeCheck 6613 6613 { 6614 6614 my ($interface, $context, $value, $conditional, $statePointer, $stateReference, $thisObjectReference) = @_; -
trunk/Source/WebCore/bindings/scripts/test/JS/JSTestDOMJIT.cpp
r246780 r248105 56 56 57 57 JSC::EncodedJSValue JSC_HOST_CALL jsTestDOMJITPrototypeFunctionGetAttribute(JSC::ExecState*); 58 JSC::EncodedJSValue JIT_OPERATION unsafeJsTestDOMJITPrototypeFunctionGetAttribute(JSC::ExecState*, JSTestDOMJIT*, DOMJIT::IDLJSArgumentType<IDLDOMString>);58 JSC::EncodedJSValue JIT_OPERATION jsTestDOMJITPrototypeFunctionGetAttributeWithoutTypeCheck(JSC::ExecState*, JSTestDOMJIT*, DOMJIT::IDLJSArgumentType<IDLDOMString>); 59 59 JSC::EncodedJSValue JSC_HOST_CALL jsTestDOMJITPrototypeFunctionItem(JSC::ExecState*); 60 JSC::EncodedJSValue JIT_OPERATION unsafeJsTestDOMJITPrototypeFunctionItem(JSC::ExecState*, JSTestDOMJIT*, DOMJIT::IDLJSArgumentType<IDLUnsignedShort>, DOMJIT::IDLJSArgumentType<IDLUnsignedShort>);60 JSC::EncodedJSValue JIT_OPERATION jsTestDOMJITPrototypeFunctionItemWithoutTypeCheck(JSC::ExecState*, JSTestDOMJIT*, DOMJIT::IDLJSArgumentType<IDLUnsignedShort>, DOMJIT::IDLJSArgumentType<IDLUnsignedShort>); 61 61 JSC::EncodedJSValue JSC_HOST_CALL jsTestDOMJITPrototypeFunctionHasAttribute(JSC::ExecState*); 62 JSC::EncodedJSValue JIT_OPERATION unsafeJsTestDOMJITPrototypeFunctionHasAttribute(JSC::ExecState*, JSTestDOMJIT*);62 JSC::EncodedJSValue JIT_OPERATION jsTestDOMJITPrototypeFunctionHasAttributeWithoutTypeCheck(JSC::ExecState*, JSTestDOMJIT*); 63 63 JSC::EncodedJSValue JSC_HOST_CALL jsTestDOMJITPrototypeFunctionGetElementById(JSC::ExecState*); 64 JSC::EncodedJSValue JIT_OPERATION unsafeJsTestDOMJITPrototypeFunctionGetElementById(JSC::ExecState*, JSTestDOMJIT*, DOMJIT::IDLJSArgumentType<IDLRequiresExistingAtomStringAdaptor<IDLDOMString>>);64 JSC::EncodedJSValue JIT_OPERATION jsTestDOMJITPrototypeFunctionGetElementByIdWithoutTypeCheck(JSC::ExecState*, JSTestDOMJIT*, DOMJIT::IDLJSArgumentType<IDLRequiresExistingAtomStringAdaptor<IDLDOMString>>); 65 65 JSC::EncodedJSValue JSC_HOST_CALL jsTestDOMJITPrototypeFunctionGetElementsByName(JSC::ExecState*); 66 JSC::EncodedJSValue JIT_OPERATION unsafeJsTestDOMJITPrototypeFunctionGetElementsByName(JSC::ExecState*, JSTestDOMJIT*, DOMJIT::IDLJSArgumentType<IDLAtomStringAdaptor<IDLDOMString>>);66 JSC::EncodedJSValue JIT_OPERATION jsTestDOMJITPrototypeFunctionGetElementsByNameWithoutTypeCheck(JSC::ExecState*, JSTestDOMJIT*, DOMJIT::IDLJSArgumentType<IDLAtomStringAdaptor<IDLDOMString>>); 67 67 68 68 // Attributes … … 106 106 JSC::EncodedJSValue jsTestDOMJITNodeNullableAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName); 107 107 108 static const JSC::DOMJIT::Signature DOMJITSignatureForTestDOMJITGetAttribute(( uintptr_t)unsafeJsTestDOMJITPrototypeFunctionGetAttribute, JSTestDOMJIT::info(), JSC::DOMJIT::Effect::forRead(DOMJIT::AbstractHeapRepository::DOM), DOMJIT::IDLResultTypeFilter<IDLNullable<IDLDOMString>>::value, DOMJIT::IDLArgumentTypeFilter<IDLDOMString>::value);109 110 static const JSC::DOMJIT::Signature DOMJITSignatureForTestDOMJITItem(( uintptr_t)unsafeJsTestDOMJITPrototypeFunctionItem, JSTestDOMJIT::info(), JSC::DOMJIT::Effect::forRead(DOMJIT::AbstractHeapRepository::DOM), DOMJIT::IDLResultTypeFilter<IDLDOMString>::value, DOMJIT::IDLArgumentTypeFilter<IDLUnsignedShort>::value, DOMJIT::IDLArgumentTypeFilter<IDLUnsignedShort>::value);111 112 static const JSC::DOMJIT::Signature DOMJITSignatureForTestDOMJITHasAttribute(( uintptr_t)unsafeJsTestDOMJITPrototypeFunctionHasAttribute, JSTestDOMJIT::info(), JSC::DOMJIT::Effect::forRead(DOMJIT::AbstractHeapRepository::DOM), DOMJIT::IDLResultTypeFilter<IDLBoolean>::value);113 114 static const JSC::DOMJIT::Signature DOMJITSignatureForTestDOMJITGetElementById(( uintptr_t)unsafeJsTestDOMJITPrototypeFunctionGetElementById, JSTestDOMJIT::info(), JSC::DOMJIT::Effect::forRead(DOMJIT::AbstractHeapRepository::DOM), DOMJIT::IDLResultTypeFilter<IDLInterface<Element>>::value, DOMJIT::IDLArgumentTypeFilter<IDLRequiresExistingAtomStringAdaptor<IDLDOMString>>::value);115 116 static const JSC::DOMJIT::Signature DOMJITSignatureForTestDOMJITGetElementsByName(( uintptr_t)unsafeJsTestDOMJITPrototypeFunctionGetElementsByName, JSTestDOMJIT::info(), JSC::DOMJIT::Effect::forRead(DOMJIT::AbstractHeapRepository::DOM), DOMJIT::IDLResultTypeFilter<IDLInterface<NodeList>>::value, DOMJIT::IDLArgumentTypeFilter<IDLAtomStringAdaptor<IDLDOMString>>::value);108 static const JSC::DOMJIT::Signature DOMJITSignatureForTestDOMJITGetAttribute((JSC::DOMJIT::FunctionWithoutTypeCheck)jsTestDOMJITPrototypeFunctionGetAttributeWithoutTypeCheck, JSTestDOMJIT::info(), JSC::DOMJIT::Effect::forRead(DOMJIT::AbstractHeapRepository::DOM), DOMJIT::IDLResultTypeFilter<IDLNullable<IDLDOMString>>::value, DOMJIT::IDLArgumentTypeFilter<IDLDOMString>::value); 109 110 static const JSC::DOMJIT::Signature DOMJITSignatureForTestDOMJITItem((JSC::DOMJIT::FunctionWithoutTypeCheck)jsTestDOMJITPrototypeFunctionItemWithoutTypeCheck, JSTestDOMJIT::info(), JSC::DOMJIT::Effect::forRead(DOMJIT::AbstractHeapRepository::DOM), DOMJIT::IDLResultTypeFilter<IDLDOMString>::value, DOMJIT::IDLArgumentTypeFilter<IDLUnsignedShort>::value, DOMJIT::IDLArgumentTypeFilter<IDLUnsignedShort>::value); 111 112 static const JSC::DOMJIT::Signature DOMJITSignatureForTestDOMJITHasAttribute((JSC::DOMJIT::FunctionWithoutTypeCheck)jsTestDOMJITPrototypeFunctionHasAttributeWithoutTypeCheck, JSTestDOMJIT::info(), JSC::DOMJIT::Effect::forRead(DOMJIT::AbstractHeapRepository::DOM), DOMJIT::IDLResultTypeFilter<IDLBoolean>::value); 113 114 static const JSC::DOMJIT::Signature DOMJITSignatureForTestDOMJITGetElementById((JSC::DOMJIT::FunctionWithoutTypeCheck)jsTestDOMJITPrototypeFunctionGetElementByIdWithoutTypeCheck, JSTestDOMJIT::info(), JSC::DOMJIT::Effect::forRead(DOMJIT::AbstractHeapRepository::DOM), DOMJIT::IDLResultTypeFilter<IDLInterface<Element>>::value, DOMJIT::IDLArgumentTypeFilter<IDLRequiresExistingAtomStringAdaptor<IDLDOMString>>::value); 115 116 static const JSC::DOMJIT::Signature DOMJITSignatureForTestDOMJITGetElementsByName((JSC::DOMJIT::FunctionWithoutTypeCheck)jsTestDOMJITPrototypeFunctionGetElementsByNameWithoutTypeCheck, JSTestDOMJIT::info(), JSC::DOMJIT::Effect::forRead(DOMJIT::AbstractHeapRepository::DOM), DOMJIT::IDLResultTypeFilter<IDLInterface<NodeList>>::value, DOMJIT::IDLArgumentTypeFilter<IDLAtomStringAdaptor<IDLDOMString>>::value); 117 117 118 118 static const JSC::DOMJIT::GetterSetter DOMJITAttributeForTestDOMJITAnyAttr { … … 1131 1131 } 1132 1132 1133 JSC::EncodedJSValue JIT_OPERATION unsafeJsTestDOMJITPrototypeFunctionGetAttribute(JSC::ExecState* state, JSTestDOMJIT* castedThis, DOMJIT::IDLJSArgumentType<IDLDOMString> encodedName)1133 JSC::EncodedJSValue JIT_OPERATION jsTestDOMJITPrototypeFunctionGetAttributeWithoutTypeCheck(JSC::ExecState* state, JSTestDOMJIT* castedThis, DOMJIT::IDLJSArgumentType<IDLDOMString> encodedName) 1134 1134 { 1135 1135 UNUSED_PARAM(state); … … 1163 1163 } 1164 1164 1165 JSC::EncodedJSValue JIT_OPERATION unsafeJsTestDOMJITPrototypeFunctionItem(JSC::ExecState* state, JSTestDOMJIT* castedThis, DOMJIT::IDLJSArgumentType<IDLUnsignedShort> encodedX, DOMJIT::IDLJSArgumentType<IDLUnsignedShort> encodedY)1165 JSC::EncodedJSValue JIT_OPERATION jsTestDOMJITPrototypeFunctionItemWithoutTypeCheck(JSC::ExecState* state, JSTestDOMJIT* castedThis, DOMJIT::IDLJSArgumentType<IDLUnsignedShort> encodedX, DOMJIT::IDLJSArgumentType<IDLUnsignedShort> encodedY) 1166 1166 { 1167 1167 UNUSED_PARAM(state); … … 1191 1191 } 1192 1192 1193 JSC::EncodedJSValue JIT_OPERATION unsafeJsTestDOMJITPrototypeFunctionHasAttribute(JSC::ExecState* state, JSTestDOMJIT* castedThis)1193 JSC::EncodedJSValue JIT_OPERATION jsTestDOMJITPrototypeFunctionHasAttributeWithoutTypeCheck(JSC::ExecState* state, JSTestDOMJIT* castedThis) 1194 1194 { 1195 1195 UNUSED_PARAM(state); … … 1219 1219 } 1220 1220 1221 JSC::EncodedJSValue JIT_OPERATION unsafeJsTestDOMJITPrototypeFunctionGetElementById(JSC::ExecState* state, JSTestDOMJIT* castedThis, DOMJIT::IDLJSArgumentType<IDLRequiresExistingAtomStringAdaptor<IDLDOMString>> encodedElementId)1221 JSC::EncodedJSValue JIT_OPERATION jsTestDOMJITPrototypeFunctionGetElementByIdWithoutTypeCheck(JSC::ExecState* state, JSTestDOMJIT* castedThis, DOMJIT::IDLJSArgumentType<IDLRequiresExistingAtomStringAdaptor<IDLDOMString>> encodedElementId) 1222 1222 { 1223 1223 UNUSED_PARAM(state); … … 1249 1249 } 1250 1250 1251 JSC::EncodedJSValue JIT_OPERATION unsafeJsTestDOMJITPrototypeFunctionGetElementsByName(JSC::ExecState* state, JSTestDOMJIT* castedThis, DOMJIT::IDLJSArgumentType<IDLAtomStringAdaptor<IDLDOMString>> encodedElementName)1251 JSC::EncodedJSValue JIT_OPERATION jsTestDOMJITPrototypeFunctionGetElementsByNameWithoutTypeCheck(JSC::ExecState* state, JSTestDOMJIT* castedThis, DOMJIT::IDLJSArgumentType<IDLAtomStringAdaptor<IDLDOMString>> encodedElementName) 1252 1252 { 1253 1253 UNUSED_PARAM(state);
Note:
See TracChangeset
for help on using the changeset viewer.