<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[206338] trunk/Source/WebCore</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/206338">206338</a></dd>
<dt>Author</dt> <dd>utatane.tea@gmail.com</dd>
<dt>Date</dt> <dd>2016-09-23 16:57:26 -0700 (Fri, 23 Sep 2016)</dd>
</dl>

<h3>Log Message</h3>
<pre>[Binding] Use unchekcedArgument if argumentCount is already checked
https://bugs.webkit.org/show_bug.cgi?id=162502

Reviewed by Geoffrey Garen.

It is not necessary to use `exec-&gt;argument(n)` after checking the argument exists.
This patch changes `argument(n)` to `uncheckedArgument(n)` if we already proved that
the argument exists. This change drops branches generated by `exec-&gt;argument(n)`.
And it is good for small DOM operations in which DOM binding code occupies large
part of entire processing. This patch and another small patch[1] offer roughly 5%
improvement in Dromaeo dom-attr's getAttribute and setAttribute tests.

[1]: https://bugs.webkit.org/show_bug.cgi?id=162503

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateParametersCheck): GenerateParameterCheck requires GenerateArgumentsCountCheck.
As a result, existence of mandatory arguments are already checked. We can use `uncheckedArgument(n)`
for mandatory arguments.
* bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
(WebCore::jsTestActiveDOMObjectPrototypeFunctionExcitingFunction):
(WebCore::jsTestActiveDOMObjectPrototypeFunctionPostMessage):
* bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
(WebCore::jsTestCustomNamedGetterPrototypeFunctionAnotherFunction):
* bindings/scripts/test/JS/JSTestEventTarget.cpp:
(WebCore::jsTestEventTargetPrototypeFunctionItem):
* bindings/scripts/test/JS/JSTestGlobalObject.cpp:
(WebCore::jsTestGlobalObjectInstanceFunctionRegularOperation):
(WebCore::jsTestGlobalObjectInstanceFunctionEnabledAtRuntimeOperation1):
(WebCore::jsTestGlobalObjectInstanceFunctionEnabledAtRuntimeOperation2):
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterfaceConstructor::construct):
(WebCore::jsTestInterfacePrototypeFunctionImplementsMethod2):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod2):
* bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
(WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
* bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
(WebCore::JSTestNamedConstructorNamedConstructor::construct):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::JSTestObjConstructor::construct):
(WebCore::jsTestObjPrototypeFunctionEnabledAtRuntimeOperation1):
(WebCore::jsTestObjPrototypeFunctionEnabledAtRuntimeOperation2):
(WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionByteMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionOctetMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionLongMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionMethodWithArgTreatingNullAsEmptyString):
(WebCore::jsTestObjPrototypeFunctionMethodWithXPathNSResolverParameter):
(WebCore::jsTestObjPrototypeFunctionNullableStringSpecialMethod):
(WebCore::jsTestObjPrototypeFunctionMethodWithEnumArg):
(WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
(WebCore::jsTestObjPrototypeFunctionMethodWithUSVStringArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNullableUSVStringArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithUSVStringArgTreatingNullAsEmptyString):
(WebCore::jsTestObjPrototypeFunctionSerializedValue):
(WebCore::jsTestObjPrototypeFunctionOptionsObject):
(WebCore::jsTestObjPrototypeFunctionPrivateMethod):
(WebCore::jsTestObjPrototypeFunctionPublicAndPrivateMethod):
(WebCore::jsTestObjPrototypeFunctionAddEventListener):
(WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackFunctionArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackFunctionArg):
(WebCore::jsTestObjConstructorFunctionStaticMethodWithCallbackArg):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod5):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod6):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod7):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod8):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod9):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod10):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod11):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithOptionalParameter1):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithOptionalParameter2):
(WebCore::jsTestObjConstructorFunctionOverloadedMethod11):
(WebCore::jsTestObjConstructorFunctionOverloadedMethod12):
(WebCore::jsTestObjPrototypeFunctionClassMethodWithClamp):
(WebCore::jsTestObjPrototypeFunctionClassMethodWithEnforceRange):
(WebCore::jsTestObjPrototypeFunctionMethodWithUnsignedLongSequence):
(WebCore::jsTestObjPrototypeFunctionStringArrayFunction):
(WebCore::jsTestObjPrototypeFunctionDomStringListFunction):
(WebCore::jsTestObjPrototypeFunctionMethodWithAndWithoutNullableSequence):
(WebCore::jsTestObjPrototypeFunctionGetElementById):
(WebCore::jsTestObjPrototypeFunctionConvert1):
(WebCore::jsTestObjPrototypeFunctionConvert2):
(WebCore::jsTestObjPrototypeFunctionConvert3):
(WebCore::jsTestObjPrototypeFunctionConvert4):
(WebCore::jsTestObjPrototypeFunctionVariadicStringMethod):
(WebCore::jsTestObjPrototypeFunctionVariadicDoubleMethod):
(WebCore::jsTestObjPrototypeFunctionVariadicNodeMethod):
(WebCore::jsTestObjPrototypeFunctionAny):
(WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithFloatArgumentPromise):
(WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction1Promise):
(WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction2Promise):
(WebCore::jsTestObjPrototypeFunctionConditionalOverload1):
(WebCore::jsTestObjPrototypeFunctionConditionalOverload2):
(WebCore::jsTestObjPrototypeFunctionSingleConditionalOverload1):
(WebCore::jsTestObjPrototypeFunctionSingleConditionalOverload2):
(WebCore::jsTestObjPrototypeFunctionAttachShadowRoot):
* bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
(WebCore::constructJSTestOverloadedConstructors1):
(WebCore::constructJSTestOverloadedConstructors2):
(WebCore::constructJSTestOverloadedConstructors3):
(WebCore::constructJSTestOverloadedConstructors4):
* bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp:
(WebCore::constructJSTestOverloadedConstructorsWithSequence2):
* bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp:
(WebCore::jsTestOverrideBuiltinsPrototypeFunctionNamedItem):
* bindings/scripts/test/JS/JSTestTypedefs.cpp:
(WebCore::JSTestTypedefsConstructor::construct):
(WebCore::jsTestTypedefsPrototypeFunctionSetShadow):
(WebCore::jsTestTypedefsPrototypeFunctionMethodWithSequenceArg):
(WebCore::jsTestTypedefsPrototypeFunctionNullableSequenceArg):
(WebCore::jsTestTypedefsPrototypeFunctionFuncWithClamp):
(WebCore::jsTestTypedefsPrototypeFunctionStringSequenceFunction):
(WebCore::jsTestTypedefsPrototypeFunctionStringSequenceFunction2):
(WebCore::jsTestTypedefsPrototypeFunctionCallWithSequenceThatRequiresInclude):</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptsCodeGeneratorJSpm">trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestActiveDOMObjectcpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestActiveDOMObject.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestCustomNamedGettercpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestEventTargetcpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventTarget.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestGlobalObjectcpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestGlobalObject.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestInterfacecpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestInterface.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestMediaQueryListListenercpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestNamedConstructorcpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNamedConstructor.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestObjcpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestOverloadedConstructorscpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestOverloadedConstructorsWithSequencecpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestOverrideBuiltinscpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestTypedefscpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestTypedefs.cpp</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (206337 => 206338)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2016-09-23 23:40:46 UTC (rev 206337)
+++ trunk/Source/WebCore/ChangeLog        2016-09-23 23:57:26 UTC (rev 206338)
</span><span class="lines">@@ -1,3 +1,129 @@
</span><ins>+2016-09-23  Yusuke Suzuki  &lt;utatane.tea@gmail.com&gt;
+
+        [Binding] Use unchekcedArgument if argumentCount is already checked
+        https://bugs.webkit.org/show_bug.cgi?id=162502
+
+        Reviewed by Geoffrey Garen.
+
+        It is not necessary to use `exec-&gt;argument(n)` after checking the argument exists.
+        This patch changes `argument(n)` to `uncheckedArgument(n)` if we already proved that
+        the argument exists. This change drops branches generated by `exec-&gt;argument(n)`.
+        And it is good for small DOM operations in which DOM binding code occupies large
+        part of entire processing. This patch and another small patch[1] offer roughly 5%
+        improvement in Dromaeo dom-attr's getAttribute and setAttribute tests.
+
+        [1]: https://bugs.webkit.org/show_bug.cgi?id=162503
+
+        * bindings/scripts/CodeGeneratorJS.pm:
+        (GenerateParametersCheck): GenerateParameterCheck requires GenerateArgumentsCountCheck.
+        As a result, existence of mandatory arguments are already checked. We can use `uncheckedArgument(n)`
+        for mandatory arguments.
+        * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
+        (WebCore::jsTestActiveDOMObjectPrototypeFunctionExcitingFunction):
+        (WebCore::jsTestActiveDOMObjectPrototypeFunctionPostMessage):
+        * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
+        (WebCore::jsTestCustomNamedGetterPrototypeFunctionAnotherFunction):
+        * bindings/scripts/test/JS/JSTestEventTarget.cpp:
+        (WebCore::jsTestEventTargetPrototypeFunctionItem):
+        * bindings/scripts/test/JS/JSTestGlobalObject.cpp:
+        (WebCore::jsTestGlobalObjectInstanceFunctionRegularOperation):
+        (WebCore::jsTestGlobalObjectInstanceFunctionEnabledAtRuntimeOperation1):
+        (WebCore::jsTestGlobalObjectInstanceFunctionEnabledAtRuntimeOperation2):
+        * bindings/scripts/test/JS/JSTestInterface.cpp:
+        (WebCore::JSTestInterfaceConstructor::construct):
+        (WebCore::jsTestInterfacePrototypeFunctionImplementsMethod2):
+        (WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod2):
+        * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
+        (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
+        * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
+        (WebCore::JSTestNamedConstructorNamedConstructor::construct):
+        * bindings/scripts/test/JS/JSTestObj.cpp:
+        (WebCore::JSTestObjConstructor::construct):
+        (WebCore::jsTestObjPrototypeFunctionEnabledAtRuntimeOperation1):
+        (WebCore::jsTestObjPrototypeFunctionEnabledAtRuntimeOperation2):
+        (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
+        (WebCore::jsTestObjPrototypeFunctionByteMethodWithArgs):
+        (WebCore::jsTestObjPrototypeFunctionOctetMethodWithArgs):
+        (WebCore::jsTestObjPrototypeFunctionLongMethodWithArgs):
+        (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
+        (WebCore::jsTestObjPrototypeFunctionMethodWithArgTreatingNullAsEmptyString):
+        (WebCore::jsTestObjPrototypeFunctionMethodWithXPathNSResolverParameter):
+        (WebCore::jsTestObjPrototypeFunctionNullableStringSpecialMethod):
+        (WebCore::jsTestObjPrototypeFunctionMethodWithEnumArg):
+        (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
+        (WebCore::jsTestObjPrototypeFunctionMethodWithUSVStringArg):
+        (WebCore::jsTestObjPrototypeFunctionMethodWithNullableUSVStringArg):
+        (WebCore::jsTestObjPrototypeFunctionMethodWithUSVStringArgTreatingNullAsEmptyString):
+        (WebCore::jsTestObjPrototypeFunctionSerializedValue):
+        (WebCore::jsTestObjPrototypeFunctionOptionsObject):
+        (WebCore::jsTestObjPrototypeFunctionPrivateMethod):
+        (WebCore::jsTestObjPrototypeFunctionPublicAndPrivateMethod):
+        (WebCore::jsTestObjPrototypeFunctionAddEventListener):
+        (WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
+        (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
+        (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
+        (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg):
+        (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
+        (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackFunctionArg):
+        (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackFunctionArg):
+        (WebCore::jsTestObjConstructorFunctionStaticMethodWithCallbackArg):
+        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
+        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
+        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
+        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
+        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod5):
+        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod6):
+        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod7):
+        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod8):
+        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod9):
+        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod10):
+        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod11):
+        (WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithOptionalParameter1):
+        (WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithOptionalParameter2):
+        (WebCore::jsTestObjConstructorFunctionOverloadedMethod11):
+        (WebCore::jsTestObjConstructorFunctionOverloadedMethod12):
+        (WebCore::jsTestObjPrototypeFunctionClassMethodWithClamp):
+        (WebCore::jsTestObjPrototypeFunctionClassMethodWithEnforceRange):
+        (WebCore::jsTestObjPrototypeFunctionMethodWithUnsignedLongSequence):
+        (WebCore::jsTestObjPrototypeFunctionStringArrayFunction):
+        (WebCore::jsTestObjPrototypeFunctionDomStringListFunction):
+        (WebCore::jsTestObjPrototypeFunctionMethodWithAndWithoutNullableSequence):
+        (WebCore::jsTestObjPrototypeFunctionGetElementById):
+        (WebCore::jsTestObjPrototypeFunctionConvert1):
+        (WebCore::jsTestObjPrototypeFunctionConvert2):
+        (WebCore::jsTestObjPrototypeFunctionConvert3):
+        (WebCore::jsTestObjPrototypeFunctionConvert4):
+        (WebCore::jsTestObjPrototypeFunctionVariadicStringMethod):
+        (WebCore::jsTestObjPrototypeFunctionVariadicDoubleMethod):
+        (WebCore::jsTestObjPrototypeFunctionVariadicNodeMethod):
+        (WebCore::jsTestObjPrototypeFunctionAny):
+        (WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithFloatArgumentPromise):
+        (WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction1Promise):
+        (WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction2Promise):
+        (WebCore::jsTestObjPrototypeFunctionConditionalOverload1):
+        (WebCore::jsTestObjPrototypeFunctionConditionalOverload2):
+        (WebCore::jsTestObjPrototypeFunctionSingleConditionalOverload1):
+        (WebCore::jsTestObjPrototypeFunctionSingleConditionalOverload2):
+        (WebCore::jsTestObjPrototypeFunctionAttachShadowRoot):
+        * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
+        (WebCore::constructJSTestOverloadedConstructors1):
+        (WebCore::constructJSTestOverloadedConstructors2):
+        (WebCore::constructJSTestOverloadedConstructors3):
+        (WebCore::constructJSTestOverloadedConstructors4):
+        * bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp:
+        (WebCore::constructJSTestOverloadedConstructorsWithSequence2):
+        * bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp:
+        (WebCore::jsTestOverrideBuiltinsPrototypeFunctionNamedItem):
+        * bindings/scripts/test/JS/JSTestTypedefs.cpp:
+        (WebCore::JSTestTypedefsConstructor::construct):
+        (WebCore::jsTestTypedefsPrototypeFunctionSetShadow):
+        (WebCore::jsTestTypedefsPrototypeFunctionMethodWithSequenceArg):
+        (WebCore::jsTestTypedefsPrototypeFunctionNullableSequenceArg):
+        (WebCore::jsTestTypedefsPrototypeFunctionFuncWithClamp):
+        (WebCore::jsTestTypedefsPrototypeFunctionStringSequenceFunction):
+        (WebCore::jsTestTypedefsPrototypeFunctionStringSequenceFunction2):
+        (WebCore::jsTestTypedefsPrototypeFunctionCallWithSequenceThatRequiresInclude):
+
</ins><span class="cx"> 2016-09-23  Alex Christensen  &lt;achristensen@webkit.org&gt;
</span><span class="cx"> 
</span><span class="cx">         Refactor URLParser
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptsCodeGeneratorJSpm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm (206337 => 206338)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm        2016-09-23 23:40:46 UTC (rev 206337)
+++ trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm        2016-09-23 23:57:26 UTC (rev 206338)
</span><span class="lines">@@ -3987,10 +3987,11 @@
</span><span class="cx">                 }
</span><span class="cx">                 push(@$outputArray, &quot;    }\n&quot;);
</span><span class="cx">             } else {
</span><ins>+                die &quot;CallbackInterface does not support Variadic parameter&quot; if $parameter-&gt;isVariadic;
</ins><span class="cx">                 if ($codeGenerator-&gt;IsFunctionOnlyCallbackInterface($type)) {
</span><del>-                    push(@$outputArray, &quot;    if (UNLIKELY(!state-&gt;argument($argumentIndex).isFunction()))\n&quot;);
</del><ins>+                    push(@$outputArray, &quot;    if (UNLIKELY(!state-&gt;uncheckedArgument($argumentIndex).isFunction()))\n&quot;);
</ins><span class="cx">                 } else {
</span><del>-                    push(@$outputArray, &quot;    if (UNLIKELY(!state-&gt;argument($argumentIndex).isObject()))\n&quot;);
</del><ins>+                    push(@$outputArray, &quot;    if (UNLIKELY(!state-&gt;uncheckedArgument($argumentIndex).isObject()))\n&quot;);
</ins><span class="cx">                 }
</span><span class="cx">                 push(@$outputArray, &quot;        return throwArgumentMustBeFunctionError(*state, throwScope, $argumentIndex, \&quot;$name\&quot;, \&quot;$visibleInterfaceName\&quot;, $quotedFunctionName);\n&quot;);
</span><span class="cx">                 if ($function-&gt;isStatic) {
</span><span class="lines">@@ -4026,6 +4027,9 @@
</span><span class="cx">             my $defineOptionalValue = &quot;auto optionalValue&quot;;
</span><span class="cx">             my $indent = &quot;&quot;;
</span><span class="cx"> 
</span><ins>+            die &quot;Variadic parameter is already handled here&quot; if $parameter-&gt;isVariadic;
+            my $argumentLookupMethod = $parameter-&gt;isOptional ? &quot;argument&quot; : &quot;uncheckedArgument&quot;;
+
</ins><span class="cx">             if ($parameter-&gt;isOptional &amp;&amp; !defined($parameter-&gt;default)) {
</span><span class="cx">                 $nativeType = &quot;Optional&lt;$className&gt;&quot;;
</span><span class="cx">                 $optionalValue = $name;
</span><span class="lines">@@ -4032,7 +4036,7 @@
</span><span class="cx">                 $defineOptionalValue = $name;
</span><span class="cx">             }
</span><span class="cx"> 
</span><del>-            push(@$outputArray, &quot;    auto ${name}Value = state-&gt;argument($argumentIndex);\n&quot;);
</del><ins>+            push(@$outputArray, &quot;    auto ${name}Value = state-&gt;$argumentLookupMethod($argumentIndex);\n&quot;);
</ins><span class="cx">             push(@$outputArray, &quot;    $nativeType $name;\n&quot;);
</span><span class="cx"> 
</span><span class="cx">             if ($parameter-&gt;isOptional) {
</span><span class="lines">@@ -4061,9 +4065,12 @@
</span><span class="cx">             my $isTearOff = $codeGenerator-&gt;IsSVGTypeNeedingTearOff($type) &amp;&amp; $interfaceName !~ /List$/;
</span><span class="cx">             my $shouldPassByReference = $isTearOff || ShouldPassWrapperByReference($parameter, $interface);
</span><span class="cx"> 
</span><ins>+            die &quot;Variadic parameter is already handled here&quot; if $parameter-&gt;isVariadic;
+            my $argumentLookupMethod = $parameter-&gt;isOptional ? &quot;argument&quot; : &quot;uncheckedArgument&quot;;
+
</ins><span class="cx">             if (!$shouldPassByReference &amp;&amp; $codeGenerator-&gt;IsWrapperType($type)) {
</span><span class="cx">                 $implIncludes{&quot;&lt;runtime/Error.h&gt;&quot;} = 1;
</span><del>-                my $checkedArgument = &quot;state-&gt;argument($argumentIndex)&quot;;
</del><ins>+                my $checkedArgument = &quot;state-&gt;$argumentLookupMethod($argumentIndex)&quot;;
</ins><span class="cx">                 my $uncheckedArgument = &quot;state-&gt;uncheckedArgument($argumentIndex)&quot;;
</span><span class="cx">                 my ($nativeValue, $mayThrowException) = JSValueToNative($interface, $parameter, $uncheckedArgument, $function-&gt;signature-&gt;extendedAttributes-&gt;{&quot;Conditional&quot;});
</span><span class="cx">                 push(@$outputArray, &quot;    $nativeType $name = nullptr;\n&quot;);
</span><span class="lines">@@ -4098,15 +4105,15 @@
</span><span class="cx">                         $defaultValue = &quot;JSValue::JSUndefined&quot; if $defaultValue eq &quot;undefined&quot;;
</span><span class="cx">                     }
</span><span class="cx"> 
</span><del>-                    $outer = &quot;state-&gt;argument($argumentIndex).isUndefined() ? $defaultValue : &quot;;
</del><ins>+                    $outer = &quot;state-&gt;$argumentLookupMethod($argumentIndex).isUndefined() ? $defaultValue : &quot;;
</ins><span class="cx">                     $inner = &quot;state-&gt;uncheckedArgument($argumentIndex)&quot;;
</span><span class="cx">                 } elsif ($parameter-&gt;isOptional &amp;&amp; !defined($parameter-&gt;default)) {
</span><span class="cx">                     # Use WTF::Optional&lt;&gt;() for optional parameters that are missing or undefined and that do not have a default value in the IDL.
</span><del>-                    $outer = &quot;state-&gt;argument($argumentIndex).isUndefined() ? Optional&lt;$nativeType&gt;() : &quot;;
</del><ins>+                    $outer = &quot;state-&gt;$argumentLookupMethod($argumentIndex).isUndefined() ? Optional&lt;$nativeType&gt;() : &quot;;
</ins><span class="cx">                     $inner = &quot;state-&gt;uncheckedArgument($argumentIndex)&quot;;
</span><span class="cx">                 } else {
</span><span class="cx">                     $outer = &quot;&quot;;
</span><del>-                    $inner = &quot;state-&gt;argument($argumentIndex)&quot;;
</del><ins>+                    $inner = &quot;state-&gt;$argumentLookupMethod($argumentIndex)&quot;;
</ins><span class="cx">                 }
</span><span class="cx"> 
</span><span class="cx">                 my ($nativeValue, $mayThrowException) = JSValueToNative($interface, $parameter, $inner, $function-&gt;signature-&gt;extendedAttributes-&gt;{&quot;Conditional&quot;});
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestActiveDOMObjectcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestActiveDOMObject.cpp (206337 => 206338)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestActiveDOMObject.cpp        2016-09-23 23:40:46 UTC (rev 206337)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestActiveDOMObject.cpp        2016-09-23 23:57:26 UTC (rev 206338)
</span><span class="lines">@@ -203,7 +203,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto nextChild = JSNode::toWrapped(state-&gt;argument(0));
</del><ins>+    auto nextChild = JSNode::toWrapped(state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(!nextChild))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 0, &quot;nextChild&quot;, &quot;TestActiveDOMObject&quot;, &quot;excitingFunction&quot;, &quot;Node&quot;);
</span><span class="cx">     impl.excitingFunction(*nextChild);
</span><span class="lines">@@ -223,7 +223,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto message = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto message = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.postMessage(WTFMove(message));
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestCustomNamedGettercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp (206337 => 206338)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp        2016-09-23 23:40:46 UTC (rev 206337)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp        2016-09-23 23:57:26 UTC (rev 206338)
</span><span class="lines">@@ -200,7 +200,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto str = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto str = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.anotherFunction(WTFMove(str));
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestEventTargetcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventTarget.cpp (206337 => 206338)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventTarget.cpp        2016-09-23 23:40:46 UTC (rev 206337)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventTarget.cpp        2016-09-23 23:57:26 UTC (rev 206338)
</span><span class="lines">@@ -213,7 +213,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto index = convert&lt;uint32_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto index = convert&lt;uint32_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     JSValue result = toJS(state, castedThis-&gt;globalObject(), impl.item(WTFMove(index)));
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestGlobalObjectcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestGlobalObject.cpp (206337 => 206338)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestGlobalObject.cpp        2016-09-23 23:40:46 UTC (rev 206337)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestGlobalObject.cpp        2016-09-23 23:57:26 UTC (rev 206338)
</span><span class="lines">@@ -375,7 +375,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto testParam = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto testParam = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.regularOperation(WTFMove(testParam));
</span><span class="lines">@@ -396,7 +396,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto testParam = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto testParam = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.enabledAtRuntimeOperation(WTFMove(testParam));
</span><span class="lines">@@ -419,7 +419,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto testParam = convert&lt;int32_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto testParam = convert&lt;int32_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.enabledAtRuntimeOperation(WTFMove(testParam));
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestInterfacecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestInterface.cpp (206337 => 206338)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestInterface.cpp        2016-09-23 23:40:46 UTC (rev 206337)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestInterface.cpp        2016-09-23 23:57:26 UTC (rev 206338)
</span><span class="lines">@@ -230,7 +230,7 @@
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><span class="cx">     ExceptionCode ec = 0;
</span><del>-    auto str1 = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto str1 = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     auto str2 = state-&gt;argument(1).isUndefined() ? ASCIILiteral(&quot;defaultString&quot;) : state-&gt;uncheckedArgument(1).toWTFString(state);
</span><span class="lines">@@ -859,10 +859,10 @@
</span><span class="cx">     auto* context = jsCast&lt;JSDOMGlobalObject*&gt;(state-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</span><span class="cx">     if (!context)
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto strArg = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto strArg = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto objArg = JSTestObj::toWrapped(state-&gt;argument(1));
</del><ins>+    auto objArg = JSTestObj::toWrapped(state-&gt;uncheckedArgument(1));
</ins><span class="cx">     if (UNLIKELY(!objArg))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 1, &quot;objArg&quot;, &quot;TestInterface&quot;, &quot;implementsMethod2&quot;, &quot;TestObj&quot;);
</span><span class="cx">     JSValue result = toJS(state, castedThis-&gt;globalObject(), impl.implementsMethod2(*context, WTFMove(strArg), *objArg, ec));
</span><span class="lines">@@ -937,10 +937,10 @@
</span><span class="cx">     auto* context = jsCast&lt;JSDOMGlobalObject*&gt;(state-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</span><span class="cx">     if (!context)
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto strArg = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto strArg = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto objArg = JSTestObj::toWrapped(state-&gt;argument(1));
</del><ins>+    auto objArg = JSTestObj::toWrapped(state-&gt;uncheckedArgument(1));
</ins><span class="cx">     if (UNLIKELY(!objArg))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 1, &quot;objArg&quot;, &quot;TestInterface&quot;, &quot;supplementalMethod2&quot;, &quot;TestObj&quot;);
</span><span class="cx">     JSValue result = toJS(state, castedThis-&gt;globalObject(), WebCore::TestSupplemental::supplementalMethod2(impl, *context, WTFMove(strArg), *objArg, ec));
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestMediaQueryListListenercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp (206337 => 206338)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp        2016-09-23 23:40:46 UTC (rev 206337)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp        2016-09-23 23:57:26 UTC (rev 206338)
</span><span class="lines">@@ -165,7 +165,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    if (UNLIKELY(!state-&gt;argument(0).isFunction()))
</del><ins>+    if (UNLIKELY(!state-&gt;uncheckedArgument(0).isFunction()))
</ins><span class="cx">         return throwArgumentMustBeFunctionError(*state, throwScope, 0, &quot;listener&quot;, &quot;TestMediaQueryListListener&quot;, &quot;method&quot;);
</span><span class="cx">     auto listener = JSMediaQueryListListener::create(asObject(state-&gt;uncheckedArgument(0)), castedThis-&gt;globalObject());
</span><span class="cx">     impl.method(WTFMove(listener));
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestNamedConstructorcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNamedConstructor.cpp (206337 => 206338)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNamedConstructor.cpp        2016-09-23 23:40:46 UTC (rev 206337)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNamedConstructor.cpp        2016-09-23 23:57:26 UTC (rev 206338)
</span><span class="lines">@@ -90,7 +90,7 @@
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><span class="cx">     ExceptionCode ec = 0;
</span><del>-    auto str1 = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto str1 = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     auto str2 = state-&gt;argument(1).isUndefined() ? ASCIILiteral(&quot;defaultString&quot;) : state-&gt;uncheckedArgument(1).toWTFString(state);
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestObjcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp (206337 => 206338)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp        2016-09-23 23:40:46 UTC (rev 206337)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp        2016-09-23 23:57:26 UTC (rev 206338)
</span><span class="lines">@@ -1137,10 +1137,10 @@
</span><span class="cx">     ASSERT(castedThis);
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    if (UNLIKELY(!state-&gt;argument(0).isObject()))
</del><ins>+    if (UNLIKELY(!state-&gt;uncheckedArgument(0).isObject()))
</ins><span class="cx">         return throwArgumentMustBeFunctionError(*state, throwScope, 0, &quot;testCallback&quot;, &quot;TestObject&quot;, nullptr);
</span><span class="cx">     auto testCallback = JSTestCallback::create(asObject(state-&gt;uncheckedArgument(0)), castedThis-&gt;globalObject());
</span><del>-    if (UNLIKELY(!state-&gt;argument(1).isFunction()))
</del><ins>+    if (UNLIKELY(!state-&gt;uncheckedArgument(1).isFunction()))
</ins><span class="cx">         return throwArgumentMustBeFunctionError(*state, throwScope, 1, &quot;testCallbackFunction&quot;, &quot;TestObject&quot;, nullptr);
</span><span class="cx">     auto testCallbackFunction = JSTestCallbackFunction::create(asObject(state-&gt;uncheckedArgument(1)), castedThis-&gt;globalObject());
</span><span class="cx">     ScriptExecutionContext* context = castedThis-&gt;scriptExecutionContext();
</span><span class="lines">@@ -4621,7 +4621,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto testParam = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto testParam = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.enabledAtRuntimeOperation(WTFMove(testParam));
</span><span class="lines">@@ -4644,7 +4644,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto testParam = convert&lt;int32_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto testParam = convert&lt;int32_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.enabledAtRuntimeOperation(WTFMove(testParam));
</span><span class="lines">@@ -4702,13 +4702,13 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 3))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto longArg = convert&lt;int32_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto longArg = convert&lt;int32_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto strArg = state-&gt;argument(1).toWTFString(state);
</del><ins>+    auto strArg = state-&gt;uncheckedArgument(1).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto objArg = JSTestObj::toWrapped(state-&gt;argument(2));
</del><ins>+    auto objArg = JSTestObj::toWrapped(state-&gt;uncheckedArgument(2));
</ins><span class="cx">     if (UNLIKELY(!objArg))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 2, &quot;objArg&quot;, &quot;TestObject&quot;, &quot;voidMethodWithArgs&quot;, &quot;TestObj&quot;);
</span><span class="cx">     impl.voidMethodWithArgs(WTFMove(longArg), WTFMove(strArg), *objArg);
</span><span class="lines">@@ -4743,13 +4743,13 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 3))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto byteArg = convert&lt;int8_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto byteArg = convert&lt;int8_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto strArg = state-&gt;argument(1).toWTFString(state);
</del><ins>+    auto strArg = state-&gt;uncheckedArgument(1).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto objArg = JSTestObj::toWrapped(state-&gt;argument(2));
</del><ins>+    auto objArg = JSTestObj::toWrapped(state-&gt;uncheckedArgument(2));
</ins><span class="cx">     if (UNLIKELY(!objArg))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 2, &quot;objArg&quot;, &quot;TestObject&quot;, &quot;byteMethodWithArgs&quot;, &quot;TestObj&quot;);
</span><span class="cx">     JSValue result = jsNumber(impl.byteMethodWithArgs(WTFMove(byteArg), WTFMove(strArg), *objArg));
</span><span class="lines">@@ -4784,13 +4784,13 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 3))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto octetArg = convert&lt;uint8_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto octetArg = convert&lt;uint8_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto strArg = state-&gt;argument(1).toWTFString(state);
</del><ins>+    auto strArg = state-&gt;uncheckedArgument(1).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto objArg = JSTestObj::toWrapped(state-&gt;argument(2));
</del><ins>+    auto objArg = JSTestObj::toWrapped(state-&gt;uncheckedArgument(2));
</ins><span class="cx">     if (UNLIKELY(!objArg))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 2, &quot;objArg&quot;, &quot;TestObject&quot;, &quot;octetMethodWithArgs&quot;, &quot;TestObj&quot;);
</span><span class="cx">     JSValue result = jsNumber(impl.octetMethodWithArgs(WTFMove(octetArg), WTFMove(strArg), *objArg));
</span><span class="lines">@@ -4825,13 +4825,13 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 3))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto longArg = convert&lt;int32_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto longArg = convert&lt;int32_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto strArg = state-&gt;argument(1).toWTFString(state);
</del><ins>+    auto strArg = state-&gt;uncheckedArgument(1).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto objArg = JSTestObj::toWrapped(state-&gt;argument(2));
</del><ins>+    auto objArg = JSTestObj::toWrapped(state-&gt;uncheckedArgument(2));
</ins><span class="cx">     if (UNLIKELY(!objArg))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 2, &quot;objArg&quot;, &quot;TestObject&quot;, &quot;longMethodWithArgs&quot;, &quot;TestObj&quot;);
</span><span class="cx">     JSValue result = jsNumber(impl.longMethodWithArgs(WTFMove(longArg), WTFMove(strArg), *objArg));
</span><span class="lines">@@ -4866,13 +4866,13 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 3))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto longArg = convert&lt;int32_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto longArg = convert&lt;int32_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto strArg = state-&gt;argument(1).toWTFString(state);
</del><ins>+    auto strArg = state-&gt;uncheckedArgument(1).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto objArg = JSTestObj::toWrapped(state-&gt;argument(2));
</del><ins>+    auto objArg = JSTestObj::toWrapped(state-&gt;uncheckedArgument(2));
</ins><span class="cx">     if (UNLIKELY(!objArg))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 2, &quot;objArg&quot;, &quot;TestObject&quot;, &quot;objMethodWithArgs&quot;, &quot;TestObj&quot;);
</span><span class="cx">     JSValue result = toJS(state, castedThis-&gt;globalObject(), impl.objMethodWithArgs(WTFMove(longArg), WTFMove(strArg), *objArg));
</span><span class="lines">@@ -4907,7 +4907,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto arg = valueToStringTreatingNullAsEmptyString(state, state-&gt;argument(0));
</del><ins>+    auto arg = valueToStringTreatingNullAsEmptyString(state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.methodWithArgTreatingNullAsEmptyString(WTFMove(arg));
</span><span class="lines">@@ -4927,7 +4927,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto resolver = JSXPathNSResolver::toWrapped(*state, state-&gt;argument(0));
</del><ins>+    auto resolver = JSXPathNSResolver::toWrapped(*state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     if (UNLIKELY(!resolver))
</span><span class="lines">@@ -4973,7 +4973,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto index = convert&lt;uint32_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto index = convert&lt;uint32_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     JSValue result = jsStringOrNull(state, impl.nullableStringSpecialMethod(WTFMove(index)));
</span><span class="lines">@@ -4993,7 +4993,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto enumArgValue = state-&gt;argument(0);
</del><ins>+    auto enumArgValue = state-&gt;uncheckedArgument(0);
</ins><span class="cx">     TestObj::EnumType enumArg;
</span><span class="cx">     auto optionalValue = parse&lt;TestObj::EnumType&gt;(*state, enumArgValue);
</span><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="lines">@@ -5070,10 +5070,10 @@
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><span class="cx">     ExceptionCode ec = 0;
</span><del>-    auto strArg = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto strArg = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto objArg = JSTestObj::toWrapped(state-&gt;argument(1));
</del><ins>+    auto objArg = JSTestObj::toWrapped(state-&gt;uncheckedArgument(1));
</ins><span class="cx">     if (UNLIKELY(!objArg))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 1, &quot;objArg&quot;, &quot;TestObject&quot;, &quot;methodThatRequiresAllArgsAndThrows&quot;, &quot;TestObj&quot;);
</span><span class="cx">     JSValue result = toJS(state, castedThis-&gt;globalObject(), impl.methodThatRequiresAllArgsAndThrows(WTFMove(strArg), *objArg, ec));
</span><span class="lines">@@ -5095,7 +5095,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto str = valueToUSVString(state, state-&gt;argument(0));
</del><ins>+    auto str = valueToUSVString(state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.methodWithUSVStringArg(WTFMove(str));
</span><span class="lines">@@ -5115,7 +5115,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto str = valueToUSVStringWithUndefinedOrNullCheck(state, state-&gt;argument(0));
</del><ins>+    auto str = valueToUSVStringWithUndefinedOrNullCheck(state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.methodWithNullableUSVStringArg(WTFMove(str));
</span><span class="lines">@@ -5135,7 +5135,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto str = valueToUSVStringTreatingNullAsEmptyString(state, state-&gt;argument(0));
</del><ins>+    auto str = valueToUSVStringTreatingNullAsEmptyString(state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.methodWithUSVStringArgTreatingNullAsEmptyString(WTFMove(str));
</span><span class="lines">@@ -5155,7 +5155,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto serializedArg = SerializedScriptValue::create(state, state-&gt;argument(0), 0, 0);
</del><ins>+    auto serializedArg = SerializedScriptValue::create(state, state-&gt;uncheckedArgument(0), 0, 0);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.serializedValue(WTFMove(serializedArg));
</span><span class="lines">@@ -5175,7 +5175,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto oo = Dictionary(state, state-&gt;argument(0));
</del><ins>+    auto oo = Dictionary(state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     auto ooo = Dictionary(state, state-&gt;argument(1));
</span><span class="cx">     impl.optionsObject(WTFMove(oo), WTFMove(ooo));
</span><span class="cx">     return JSValue::encode(jsUndefined());
</span><span class="lines">@@ -5254,7 +5254,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto argument = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto argument = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     JSValue result = jsStringWithCache(state, impl.privateMethod(WTFMove(argument)));
</span><span class="lines">@@ -5274,7 +5274,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto argument = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto argument = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     JSValue result = jsStringWithCache(state, impl.publicAndPrivateMethod(WTFMove(argument)));
</span><span class="lines">@@ -5294,10 +5294,10 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto type = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto type = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto listener = JSEventListener::create(state-&gt;argument(1), *castedThis, false, currentWorld(state));
</del><ins>+    auto listener = JSEventListener::create(state-&gt;uncheckedArgument(1), *castedThis, false, currentWorld(state));
</ins><span class="cx">     if (UNLIKELY(!listener))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 1, &quot;listener&quot;, &quot;TestObject&quot;, &quot;addEventListener&quot;, &quot;EventListener&quot;);
</span><span class="cx">     auto useCapture = state-&gt;argument(2).toBoolean(state);
</span><span class="lines">@@ -5320,10 +5320,10 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto type = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto type = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto listener = JSEventListener::create(state-&gt;argument(1), *castedThis, false, currentWorld(state));
</del><ins>+    auto listener = JSEventListener::create(state-&gt;uncheckedArgument(1), *castedThis, false, currentWorld(state));
</ins><span class="cx">     if (UNLIKELY(!listener))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 1, &quot;listener&quot;, &quot;TestObject&quot;, &quot;removeEventListener&quot;, &quot;EventListener&quot;);
</span><span class="cx">     auto useCapture = state-&gt;argument(2).toBoolean(state);
</span><span class="lines">@@ -5599,7 +5599,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto nonOpt = convert&lt;int32_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto nonOpt = convert&lt;int32_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     auto opt = state-&gt;argument(1).isUndefined() ? Optional&lt;int32_t&gt;() : convert&lt;int32_t&gt;(*state, state-&gt;uncheckedArgument(1), NormalConversion);
</span><span class="lines">@@ -5622,7 +5622,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto nonOpt = convert&lt;int32_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto nonOpt = convert&lt;int32_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     auto opt1 = state-&gt;argument(1).isUndefined() ? Optional&lt;int32_t&gt;() : convert&lt;int32_t&gt;(*state, state-&gt;uncheckedArgument(1), NormalConversion);
</span><span class="lines">@@ -6107,7 +6107,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    if (UNLIKELY(!state-&gt;argument(0).isObject()))
</del><ins>+    if (UNLIKELY(!state-&gt;uncheckedArgument(0).isObject()))
</ins><span class="cx">         return throwArgumentMustBeFunctionError(*state, throwScope, 0, &quot;callback&quot;, &quot;TestObject&quot;, &quot;methodWithCallbackArg&quot;);
</span><span class="cx">     auto callback = JSTestCallback::create(asObject(state-&gt;uncheckedArgument(0)), castedThis-&gt;globalObject());
</span><span class="cx">     impl.methodWithCallbackArg(WTFMove(callback));
</span><span class="lines">@@ -6127,10 +6127,10 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto nonCallback = convert&lt;int32_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto nonCallback = convert&lt;int32_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    if (UNLIKELY(!state-&gt;argument(1).isObject()))
</del><ins>+    if (UNLIKELY(!state-&gt;uncheckedArgument(1).isObject()))
</ins><span class="cx">         return throwArgumentMustBeFunctionError(*state, throwScope, 1, &quot;callback&quot;, &quot;TestObject&quot;, &quot;methodWithNonCallbackArgAndCallbackArg&quot;);
</span><span class="cx">     auto callback = JSTestCallback::create(asObject(state-&gt;uncheckedArgument(1)), castedThis-&gt;globalObject());
</span><span class="cx">     impl.methodWithNonCallbackArgAndCallbackArg(WTFMove(nonCallback), WTFMove(callback));
</span><span class="lines">@@ -6171,7 +6171,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    if (UNLIKELY(!state-&gt;argument(0).isFunction()))
</del><ins>+    if (UNLIKELY(!state-&gt;uncheckedArgument(0).isFunction()))
</ins><span class="cx">         return throwArgumentMustBeFunctionError(*state, throwScope, 0, &quot;callback&quot;, &quot;TestObject&quot;, &quot;methodWithCallbackFunctionArg&quot;);
</span><span class="cx">     auto callback = JSTestCallbackFunction::create(asObject(state-&gt;uncheckedArgument(0)), castedThis-&gt;globalObject());
</span><span class="cx">     impl.methodWithCallbackFunctionArg(WTFMove(callback));
</span><span class="lines">@@ -6191,10 +6191,10 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto nonCallback = convert&lt;int32_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto nonCallback = convert&lt;int32_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    if (UNLIKELY(!state-&gt;argument(1).isFunction()))
</del><ins>+    if (UNLIKELY(!state-&gt;uncheckedArgument(1).isFunction()))
</ins><span class="cx">         return throwArgumentMustBeFunctionError(*state, throwScope, 1, &quot;callback&quot;, &quot;TestObject&quot;, &quot;methodWithNonCallbackArgAndCallbackFunctionArg&quot;);
</span><span class="cx">     auto callback = JSTestCallbackFunction::create(asObject(state-&gt;uncheckedArgument(1)), castedThis-&gt;globalObject());
</span><span class="cx">     impl.methodWithNonCallbackArgAndCallbackFunctionArg(WTFMove(nonCallback), WTFMove(callback));
</span><span class="lines">@@ -6244,7 +6244,7 @@
</span><span class="cx">     UNUSED_PARAM(throwScope);
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    if (UNLIKELY(!state-&gt;argument(0).isObject()))
</del><ins>+    if (UNLIKELY(!state-&gt;uncheckedArgument(0).isObject()))
</ins><span class="cx">         return throwArgumentMustBeFunctionError(*state, throwScope, 0, &quot;callback&quot;, &quot;TestObject&quot;, &quot;staticMethodWithCallbackArg&quot;);
</span><span class="cx">     auto callback = createFunctionOnlyCallback&lt;JSTestCallback&gt;(state, jsCast&lt;JSDOMGlobalObject*&gt;(state-&gt;lexicalGlobalObject()), state-&gt;uncheckedArgument(0));
</span><span class="cx">     TestObj::staticMethodWithCallbackArg(WTFMove(callback));
</span><span class="lines">@@ -6319,12 +6319,12 @@
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><span class="cx">     TestObj* objArg = nullptr;
</span><del>-    if (!state-&gt;argument(0).isUndefinedOrNull()) {
</del><ins>+    if (!state-&gt;uncheckedArgument(0).isUndefinedOrNull()) {
</ins><span class="cx">         objArg = JSTestObj::toWrapped(state-&gt;uncheckedArgument(0));
</span><span class="cx">         if (UNLIKELY(!objArg))
</span><span class="cx">             return throwArgumentTypeError(*state, throwScope, 0, &quot;objArg&quot;, &quot;TestObject&quot;, &quot;overloadedMethod&quot;, &quot;TestObj&quot;);
</span><span class="cx">     }
</span><del>-    auto strArg = state-&gt;argument(1).toWTFString(state);
</del><ins>+    auto strArg = state-&gt;uncheckedArgument(1).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.overloadedMethod(WTFMove(objArg), WTFMove(strArg));
</span><span class="lines">@@ -6345,7 +6345,7 @@
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><span class="cx">     TestObj* objArg = nullptr;
</span><del>-    if (!state-&gt;argument(0).isUndefinedOrNull()) {
</del><ins>+    if (!state-&gt;uncheckedArgument(0).isUndefinedOrNull()) {
</ins><span class="cx">         objArg = JSTestObj::toWrapped(state-&gt;uncheckedArgument(0));
</span><span class="cx">         if (UNLIKELY(!objArg))
</span><span class="cx">             return throwArgumentTypeError(*state, throwScope, 0, &quot;objArg&quot;, &quot;TestObject&quot;, &quot;overloadedMethod&quot;, &quot;TestObj&quot;);
</span><span class="lines">@@ -6370,7 +6370,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto strArg = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto strArg = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.overloadedMethod(WTFMove(strArg));
</span><span class="lines">@@ -6390,7 +6390,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto longArg = convert&lt;int32_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto longArg = convert&lt;int32_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.overloadedMethod(WTFMove(longArg));
</span><span class="lines">@@ -6410,7 +6410,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    if (UNLIKELY(!state-&gt;argument(0).isObject()))
</del><ins>+    if (UNLIKELY(!state-&gt;uncheckedArgument(0).isObject()))
</ins><span class="cx">         return throwArgumentMustBeFunctionError(*state, throwScope, 0, &quot;callback&quot;, &quot;TestObject&quot;, &quot;overloadedMethod&quot;);
</span><span class="cx">     auto callback = JSTestCallback::create(asObject(state-&gt;uncheckedArgument(0)), castedThis-&gt;globalObject());
</span><span class="cx">     impl.overloadedMethod(WTFMove(callback));
</span><span class="lines">@@ -6431,7 +6431,7 @@
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><span class="cx">     DOMStringList* listArg = nullptr;
</span><del>-    if (!state-&gt;argument(0).isUndefinedOrNull()) {
</del><ins>+    if (!state-&gt;uncheckedArgument(0).isUndefinedOrNull()) {
</ins><span class="cx">         listArg = JSDOMStringList::toWrapped(state-&gt;uncheckedArgument(0));
</span><span class="cx">         if (UNLIKELY(!listArg))
</span><span class="cx">             return throwArgumentTypeError(*state, throwScope, 0, &quot;listArg&quot;, &quot;TestObject&quot;, &quot;overloadedMethod&quot;, &quot;DOMStringList&quot;);
</span><span class="lines">@@ -6453,7 +6453,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto arrayArg = toNativeArray&lt;String&gt;(*state, state-&gt;argument(0));
</del><ins>+    auto arrayArg = toNativeArray&lt;String&gt;(*state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.overloadedMethod(WTFMove(arrayArg));
</span><span class="lines">@@ -6473,7 +6473,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto objArg = JSTestObj::toWrapped(state-&gt;argument(0));
</del><ins>+    auto objArg = JSTestObj::toWrapped(state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(!objArg))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 0, &quot;objArg&quot;, &quot;TestObject&quot;, &quot;overloadedMethod&quot;, &quot;TestObj&quot;);
</span><span class="cx">     impl.overloadedMethod(*objArg);
</span><span class="lines">@@ -6493,7 +6493,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto arrayArg = toNativeArray&lt;String&gt;(*state, state-&gt;argument(0));
</del><ins>+    auto arrayArg = toNativeArray&lt;String&gt;(*state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.overloadedMethod(WTFMove(arrayArg));
</span><span class="lines">@@ -6513,7 +6513,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto arrayArg = toNativeArray&lt;uint32_t&gt;(*state, state-&gt;argument(0));
</del><ins>+    auto arrayArg = toNativeArray&lt;uint32_t&gt;(*state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.overloadedMethod(WTFMove(arrayArg));
</span><span class="lines">@@ -6533,7 +6533,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto strArg = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto strArg = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.overloadedMethod(WTFMove(strArg));
</span><span class="lines">@@ -6615,7 +6615,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto strArg = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto strArg = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     TestObj* objArg = nullptr;
</span><span class="lines">@@ -6642,7 +6642,7 @@
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><span class="cx">     TestObj* objArg = nullptr;
</span><del>-    if (!state-&gt;argument(0).isUndefinedOrNull()) {
</del><ins>+    if (!state-&gt;uncheckedArgument(0).isUndefinedOrNull()) {
</ins><span class="cx">         objArg = JSTestObj::toWrapped(state-&gt;uncheckedArgument(0));
</span><span class="cx">         if (UNLIKELY(!objArg))
</span><span class="cx">             return throwArgumentTypeError(*state, throwScope, 0, &quot;objArg&quot;, &quot;TestObject&quot;, &quot;overloadedMethodWithOptionalParameter&quot;, &quot;TestObj&quot;);
</span><span class="lines">@@ -6718,7 +6718,7 @@
</span><span class="cx">     UNUSED_PARAM(throwScope);
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto arg = convert&lt;int32_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto arg = convert&lt;int32_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     TestObj::overloadedMethod1(WTFMove(arg));
</span><span class="lines">@@ -6735,7 +6735,7 @@
</span><span class="cx">     UNUSED_PARAM(throwScope);
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto type = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto type = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     TestObj::overloadedMethod1(WTFMove(type));
</span><span class="lines">@@ -6778,10 +6778,10 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto objArgsShort = convert&lt;uint16_t&gt;(*state, state-&gt;argument(0), Clamp);
</del><ins>+    auto objArgsShort = convert&lt;uint16_t&gt;(*state, state-&gt;uncheckedArgument(0), Clamp);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto objArgsLong = convert&lt;uint32_t&gt;(*state, state-&gt;argument(1), Clamp);
</del><ins>+    auto objArgsLong = convert&lt;uint32_t&gt;(*state, state-&gt;uncheckedArgument(1), Clamp);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.classMethodWithClamp(WTFMove(objArgsShort), WTFMove(objArgsLong));
</span><span class="lines">@@ -6801,10 +6801,10 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto objArgsShort = convert&lt;uint16_t&gt;(*state, state-&gt;argument(0), EnforceRange);
</del><ins>+    auto objArgsShort = convert&lt;uint16_t&gt;(*state, state-&gt;uncheckedArgument(0), EnforceRange);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto objArgsLong = convert&lt;uint32_t&gt;(*state, state-&gt;argument(1), EnforceRange);
</del><ins>+    auto objArgsLong = convert&lt;uint32_t&gt;(*state, state-&gt;uncheckedArgument(1), EnforceRange);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.classMethodWithEnforceRange(WTFMove(objArgsShort), WTFMove(objArgsLong));
</span><span class="lines">@@ -6824,7 +6824,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto unsignedLongSequence = toNativeArray&lt;uint32_t&gt;(*state, state-&gt;argument(0));
</del><ins>+    auto unsignedLongSequence = toNativeArray&lt;uint32_t&gt;(*state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.methodWithUnsignedLongSequence(WTFMove(unsignedLongSequence));
</span><span class="lines">@@ -6845,7 +6845,7 @@
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><span class="cx">     ExceptionCode ec = 0;
</span><del>-    auto values = toNativeArray&lt;String&gt;(*state, state-&gt;argument(0));
</del><ins>+    auto values = toNativeArray&lt;String&gt;(*state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     JSValue result = jsArray(state, castedThis-&gt;globalObject(), impl.stringArrayFunction(WTFMove(values), ec));
</span><span class="lines">@@ -6868,7 +6868,7 @@
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><span class="cx">     ExceptionCode ec = 0;
</span><del>-    auto values = JSDOMStringList::toWrapped(state-&gt;argument(0));
</del><ins>+    auto values = JSDOMStringList::toWrapped(state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(!values))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 0, &quot;values&quot;, &quot;TestObject&quot;, &quot;domStringListFunction&quot;, &quot;DOMStringList&quot;);
</span><span class="cx">     JSValue result = toJS(state, castedThis-&gt;globalObject(), impl.domStringListFunction(*values, ec));
</span><span class="lines">@@ -6890,10 +6890,10 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto arrayArg = toNativeArray&lt;uint32_t&gt;(*state, state-&gt;argument(0));
</del><ins>+    auto arrayArg = toNativeArray&lt;uint32_t&gt;(*state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto nullableArrayArg = toNativeArray&lt;uint32_t&gt;(*state, state-&gt;argument(1));
</del><ins>+    auto nullableArrayArg = toNativeArray&lt;uint32_t&gt;(*state, state-&gt;uncheckedArgument(1));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.methodWithAndWithoutNullableSequence(WTFMove(arrayArg), WTFMove(nullableArrayArg));
</span><span class="lines">@@ -6913,7 +6913,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto elementId = AtomicString(state-&gt;argument(0).toString(state)-&gt;toExistingAtomicString(state));
</del><ins>+    auto elementId = AtomicString(state-&gt;uncheckedArgument(0).toString(state)-&gt;toExistingAtomicString(state));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     JSValue result = toJS(state, castedThis-&gt;globalObject(), impl.getElementById(WTFMove(elementId)));
</span><span class="lines">@@ -6953,7 +6953,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto value = JSTestNode::toWrapped(state-&gt;argument(0));
</del><ins>+    auto value = JSTestNode::toWrapped(state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(!value))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 0, &quot;value&quot;, &quot;TestObject&quot;, &quot;convert1&quot;, &quot;TestNode&quot;);
</span><span class="cx">     impl.convert1(*value);
</span><span class="lines">@@ -6974,7 +6974,7 @@
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><span class="cx">     TestNode* value = nullptr;
</span><del>-    if (!state-&gt;argument(0).isUndefinedOrNull()) {
</del><ins>+    if (!state-&gt;uncheckedArgument(0).isUndefinedOrNull()) {
</ins><span class="cx">         value = JSTestNode::toWrapped(state-&gt;uncheckedArgument(0));
</span><span class="cx">         if (UNLIKELY(!value))
</span><span class="cx">             return throwArgumentTypeError(*state, throwScope, 0, &quot;value&quot;, &quot;TestObject&quot;, &quot;convert2&quot;, &quot;TestNode&quot;);
</span><span class="lines">@@ -6996,7 +6996,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto value = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto value = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.convert3(WTFMove(value));
</span><span class="lines">@@ -7016,7 +7016,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto value = valueToStringWithUndefinedOrNullCheck(state, state-&gt;argument(0));
</del><ins>+    auto value = valueToStringWithUndefinedOrNullCheck(state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.convert4(WTFMove(value));
</span><span class="lines">@@ -7081,7 +7081,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto head = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto head = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     auto tail = toArguments&lt;VariadicHelper&lt;JSC::JSValue, String&gt;&gt;(*state, 1);
</span><span class="lines">@@ -7104,7 +7104,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto head = convert&lt;double&gt;(*state, state-&gt;argument(0), ShouldAllowNonFinite::Yes);
</del><ins>+    auto head = convert&lt;double&gt;(*state, state-&gt;uncheckedArgument(0), ShouldAllowNonFinite::Yes);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     auto tail = toArguments&lt;VariadicHelper&lt;JSC::JSValue, double&gt;&gt;(*state, 1);
</span><span class="lines">@@ -7127,7 +7127,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto head = JSNode::toWrapped(state-&gt;argument(0));
</del><ins>+    auto head = JSNode::toWrapped(state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(!head))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 0, &quot;head&quot;, &quot;TestObject&quot;, &quot;variadicNodeMethod&quot;, &quot;Node&quot;);
</span><span class="cx">     auto tail = toArguments&lt;VariadicHelper&lt;JSNode, Node&gt;&gt;(*state, 1);
</span><span class="lines">@@ -7150,10 +7150,10 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto a = convert&lt;float&gt;(*state, state-&gt;argument(0), ShouldAllowNonFinite::Yes);
</del><ins>+    auto a = convert&lt;float&gt;(*state, state-&gt;uncheckedArgument(0), ShouldAllowNonFinite::Yes);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto b = convert&lt;int32_t&gt;(*state, state-&gt;argument(1), NormalConversion);
</del><ins>+    auto b = convert&lt;int32_t&gt;(*state, state-&gt;uncheckedArgument(1), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.any(WTFMove(a), WTFMove(b));
</span><span class="lines">@@ -7204,7 +7204,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto a = convert&lt;float&gt;(*state, state-&gt;argument(0), ShouldAllowNonFinite::No);
</del><ins>+    auto a = convert&lt;float&gt;(*state, state-&gt;uncheckedArgument(0), ShouldAllowNonFinite::No);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.testPromiseFunctionWithFloatArgument(WTFMove(a), WTFMove(promise));
</span><span class="lines">@@ -7283,7 +7283,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto a = convert&lt;float&gt;(*state, state-&gt;argument(0), ShouldAllowNonFinite::No);
</del><ins>+    auto a = convert&lt;float&gt;(*state, state-&gt;uncheckedArgument(0), ShouldAllowNonFinite::No);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.testPromiseOverloadedFunction(WTFMove(a), WTFMove(promise));
</span><span class="lines">@@ -7311,7 +7311,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto request = JSFetchRequest::toWrapped(state-&gt;argument(0));
</del><ins>+    auto request = JSFetchRequest::toWrapped(state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(!request))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 0, &quot;request&quot;, &quot;TestObject&quot;, &quot;testPromiseOverloadedFunction&quot;, &quot;FetchRequest&quot;);
</span><span class="cx">     impl.testPromiseOverloadedFunction(*request, WTFMove(promise));
</span><span class="lines">@@ -7416,7 +7416,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto str = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto str = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.conditionalOverload(WTFMove(str));
</span><span class="lines">@@ -7439,7 +7439,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto a = convert&lt;int32_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto a = convert&lt;int32_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.conditionalOverload(WTFMove(a));
</span><span class="lines">@@ -7482,7 +7482,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto str = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto str = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.singleConditionalOverload(WTFMove(str));
</span><span class="lines">@@ -7503,7 +7503,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto a = convert&lt;int32_t&gt;(*state, state-&gt;argument(0), NormalConversion);
</del><ins>+    auto a = convert&lt;int32_t&gt;(*state, state-&gt;uncheckedArgument(0), NormalConversion);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.singleConditionalOverload(WTFMove(a));
</span><span class="lines">@@ -7542,7 +7542,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto init = convertDictionary&lt;TestObj::Dictionary&gt;(*state, state-&gt;argument(0));
</del><ins>+    auto init = convertDictionary&lt;TestObj::Dictionary&gt;(*state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.attachShadowRoot(init.value());
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestOverloadedConstructorscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp (206337 => 206338)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp        2016-09-23 23:40:46 UTC (rev 206337)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp        2016-09-23 23:57:26 UTC (rev 206338)
</span><span class="lines">@@ -74,7 +74,7 @@
</span><span class="cx">     ASSERT(castedThis);
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto arrayBuffer = toArrayBuffer(state-&gt;argument(0));
</del><ins>+    auto arrayBuffer = toArrayBuffer(state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     if (UNLIKELY(!arrayBuffer))
</span><span class="lines">@@ -92,7 +92,7 @@
</span><span class="cx">     ASSERT(castedThis);
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto arrayBufferView = toArrayBufferView(state-&gt;argument(0));
</del><ins>+    auto arrayBufferView = toArrayBufferView(state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     if (UNLIKELY(!arrayBufferView))
</span><span class="lines">@@ -110,7 +110,7 @@
</span><span class="cx">     ASSERT(castedThis);
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto blob = JSBlob::toWrapped(state-&gt;argument(0));
</del><ins>+    auto blob = JSBlob::toWrapped(state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(!blob))
</span><span class="cx">         return throwArgumentTypeError(*state, throwScope, 0, &quot;blob&quot;, &quot;TestOverloadedConstructors&quot;, nullptr, &quot;Blob&quot;);
</span><span class="cx">     auto object = TestOverloadedConstructors::create(*blob);
</span><span class="lines">@@ -126,7 +126,7 @@
</span><span class="cx">     ASSERT(castedThis);
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto string = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto string = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     auto object = TestOverloadedConstructors::create(WTFMove(string));
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestOverloadedConstructorsWithSequencecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp (206337 => 206338)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp        2016-09-23 23:40:46 UTC (rev 206337)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp        2016-09-23 23:57:26 UTC (rev 206338)
</span><span class="lines">@@ -87,7 +87,7 @@
</span><span class="cx">     ASSERT(castedThis);
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto string = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto string = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     auto object = TestOverloadedConstructorsWithSequence::create(WTFMove(string));
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestOverrideBuiltinscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp (206337 => 206338)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp        2016-09-23 23:40:46 UTC (rev 206337)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp        2016-09-23 23:57:26 UTC (rev 206338)
</span><span class="lines">@@ -209,7 +209,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto name = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto name = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     JSValue result = toJS(state, castedThis-&gt;globalObject(), impl.namedItem(WTFMove(name)));
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestTypedefscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestTypedefs.cpp (206337 => 206338)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestTypedefs.cpp        2016-09-23 23:40:46 UTC (rev 206337)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestTypedefs.cpp        2016-09-23 23:57:26 UTC (rev 206338)
</span><span class="lines">@@ -131,10 +131,10 @@
</span><span class="cx">     ASSERT(castedThis);
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto hello = state-&gt;argument(0).toWTFString(state);
</del><ins>+    auto hello = state-&gt;uncheckedArgument(0).toWTFString(state);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    if (UNLIKELY(!state-&gt;argument(1).isObject()))
</del><ins>+    if (UNLIKELY(!state-&gt;uncheckedArgument(1).isObject()))
</ins><span class="cx">         return throwArgumentMustBeFunctionError(*state, throwScope, 1, &quot;testCallback&quot;, &quot;TestTypedefs&quot;, nullptr);
</span><span class="cx">     auto testCallback = JSTestCallback::create(asObject(state-&gt;uncheckedArgument(1)), castedThis-&gt;globalObject());
</span><span class="cx">     auto object = TestTypedefs::create(WTFMove(hello), *testCallback);
</span><span class="lines">@@ -516,13 +516,13 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 3))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto width = convert&lt;float&gt;(*state, state-&gt;argument(0), ShouldAllowNonFinite::Yes);
</del><ins>+    auto width = convert&lt;float&gt;(*state, state-&gt;uncheckedArgument(0), ShouldAllowNonFinite::Yes);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto height = convert&lt;float&gt;(*state, state-&gt;argument(1), ShouldAllowNonFinite::Yes);
</del><ins>+    auto height = convert&lt;float&gt;(*state, state-&gt;uncheckedArgument(1), ShouldAllowNonFinite::Yes);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    auto blur = convert&lt;float&gt;(*state, state-&gt;argument(2), ShouldAllowNonFinite::Yes);
</del><ins>+    auto blur = convert&lt;float&gt;(*state, state-&gt;uncheckedArgument(2), ShouldAllowNonFinite::Yes);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     auto color = state-&gt;argument(3).isUndefined() ? String() : state-&gt;uncheckedArgument(3).toWTFString(state);
</span><span class="lines">@@ -548,7 +548,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto sequenceArg = toRefPtrNativeArray&lt;SerializedScriptValue, JSSerializedScriptValue&gt;(*state, state-&gt;argument(0));
</del><ins>+    auto sequenceArg = toRefPtrNativeArray&lt;SerializedScriptValue, JSSerializedScriptValue&gt;(*state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     JSValue result = jsNumber(impl.methodWithSequenceArg(WTFMove(sequenceArg)));
</span><span class="lines">@@ -568,7 +568,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto sequenceArg = toNativeArray&lt;String&gt;(*state, state-&gt;argument(0));
</del><ins>+    auto sequenceArg = toNativeArray&lt;String&gt;(*state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.nullableSequenceArg(WTFMove(sequenceArg));
</span><span class="lines">@@ -588,7 +588,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto arg1 = convert&lt;uint64_t&gt;(*state, state-&gt;argument(0), Clamp);
</del><ins>+    auto arg1 = convert&lt;uint64_t&gt;(*state, state-&gt;uncheckedArgument(0), Clamp);
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     auto arg2 = state-&gt;argument(1).isUndefined() ? Optional&lt;uint64_t&gt;() : convert&lt;uint64_t&gt;(*state, state-&gt;uncheckedArgument(1), Clamp);
</span><span class="lines">@@ -627,7 +627,7 @@
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><span class="cx">     ExceptionCode ec = 0;
</span><del>-    auto values = toNativeArray&lt;String&gt;(*state, state-&gt;argument(0));
</del><ins>+    auto values = toNativeArray&lt;String&gt;(*state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     JSValue result = jsArray(state, castedThis-&gt;globalObject(), impl.stringSequenceFunction(WTFMove(values), ec));
</span><span class="lines">@@ -650,7 +650,7 @@
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><span class="cx">     ExceptionCode ec = 0;
</span><del>-    auto values = toNativeArray&lt;String&gt;(*state, state-&gt;argument(0));
</del><ins>+    auto values = toNativeArray&lt;String&gt;(*state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     JSValue result = jsArray(state, castedThis-&gt;globalObject(), impl.stringSequenceFunction2(WTFMove(values), ec));
</span><span class="lines">@@ -672,7 +672,7 @@
</span><span class="cx">     auto&amp; impl = castedThis-&gt;wrapped();
</span><span class="cx">     if (UNLIKELY(state-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(state, throwScope, createNotEnoughArgumentsError(state));
</span><del>-    auto sequenceArg = toRefPtrNativeArray&lt;TestEventTarget, JSTestEventTarget&gt;(*state, state-&gt;argument(0));
</del><ins>+    auto sequenceArg = toRefPtrNativeArray&lt;TestEventTarget, JSTestEventTarget&gt;(*state, state-&gt;uncheckedArgument(0));
</ins><span class="cx">     if (UNLIKELY(throwScope.exception()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     JSValue result = jsBoolean(impl.callWithSequenceThatRequiresInclude(WTFMove(sequenceArg)));
</span></span></pre>
</div>
</div>

</body>
</html>