<!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>[209433] trunk/Source</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/209433">209433</a></dd>
<dt>Author</dt> <dd>sbarati@apple.com</dd>
<dt>Date</dt> <dd>2016-12-06 16:27:58 -0800 (Tue, 06 Dec 2016)</dd>
</dl>

<h3>Log Message</h3>
<pre>Remove old Wasm object model
https://bugs.webkit.org/show_bug.cgi?id=165481

Reviewed by Keith Miller and Mark Lam.

Source/JavaScriptCore:

It's confusing to see code that consults both the old
Wasm object model alongside the new one. The old object
model is not a thing, and it's not being used. Let's
remove it now to prevent further confusion.

* CMakeLists.txt:
* JavaScriptCore.xcodeproj/project.pbxproj:
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::finalizeLLIntInlineCaches):
(JSC::CodeBlock::replacement):
(JSC::CodeBlock::computeCapabilityLevel):
(JSC::CodeBlock::updateAllPredictions):
* bytecode/CodeBlock.h:
* bytecode/WebAssemblyCodeBlock.cpp: Removed.
* bytecode/WebAssemblyCodeBlock.h: Removed.
* dfg/DFGCapabilities.cpp:
(JSC::DFG::isSupportedForInlining):
* interpreter/Interpreter.cpp:
(JSC::GetStackTraceFunctor::operator()):
(JSC::UnwindFunctor::operator()):
(JSC::isWebAssemblyExecutable): Deleted.
* jit/JITOperations.cpp:
* jit/Repatch.cpp:
(JSC::linkPolymorphicCall):
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::setUpCall):
* runtime/ExecutableBase.cpp:
(JSC::ExecutableBase::clearCode):
* runtime/ExecutableBase.h:
(JSC::ExecutableBase::isWebAssemblyExecutable): Deleted.
* runtime/JSFunction.cpp:
* runtime/JSFunction.h:
* runtime/JSFunctionInlines.h:
(JSC::JSFunction::isBuiltinFunction):
* runtime/VM.cpp:
(JSC::VM::VM):
* runtime/VM.h:
* runtime/WebAssemblyExecutable.cpp: Removed.
* runtime/WebAssemblyExecutable.h: Removed.

Source/WebCore:

* testing/Internals.cpp:
(WebCore::Internals::parserMetaData):</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceJavaScriptCoreCMakeListstxt">trunk/Source/JavaScriptCore/CMakeLists.txt</a></li>
<li><a href="#trunkSourceJavaScriptCoreChangeLog">trunk/Source/JavaScriptCore/ChangeLog</a></li>
<li><a href="#trunkSourceJavaScriptCoreJavaScriptCorexcodeprojprojectpbxproj">trunk/Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj</a></li>
<li><a href="#trunkSourceJavaScriptCorebytecodeCodeBlockcpp">trunk/Source/JavaScriptCore/bytecode/CodeBlock.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCorebytecodeCodeBlockh">trunk/Source/JavaScriptCore/bytecode/CodeBlock.h</a></li>
<li><a href="#trunkSourceJavaScriptCoredfgDFGCapabilitiescpp">trunk/Source/JavaScriptCore/dfg/DFGCapabilities.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCoreinterpreterInterpretercpp">trunk/Source/JavaScriptCore/interpreter/Interpreter.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCorejitJITOperationscpp">trunk/Source/JavaScriptCore/jit/JITOperations.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCorejitRepatchcpp">trunk/Source/JavaScriptCore/jit/Repatch.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCorellintLLIntSlowPathscpp">trunk/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCoreruntimeExecutableBasecpp">trunk/Source/JavaScriptCore/runtime/ExecutableBase.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCoreruntimeExecutableBaseh">trunk/Source/JavaScriptCore/runtime/ExecutableBase.h</a></li>
<li><a href="#trunkSourceJavaScriptCoreruntimeJSFunctioncpp">trunk/Source/JavaScriptCore/runtime/JSFunction.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCoreruntimeJSFunctionh">trunk/Source/JavaScriptCore/runtime/JSFunction.h</a></li>
<li><a href="#trunkSourceJavaScriptCoreruntimeJSFunctionInlinesh">trunk/Source/JavaScriptCore/runtime/JSFunctionInlines.h</a></li>
<li><a href="#trunkSourceJavaScriptCoreruntimeVMcpp">trunk/Source/JavaScriptCore/runtime/VM.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCoreruntimeVMh">trunk/Source/JavaScriptCore/runtime/VM.h</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoretestingInternalscpp">trunk/Source/WebCore/testing/Internals.cpp</a></li>
</ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkSourceJavaScriptCorebytecodeWebAssemblyCodeBlockcpp">trunk/Source/JavaScriptCore/bytecode/WebAssemblyCodeBlock.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCorebytecodeWebAssemblyCodeBlockh">trunk/Source/JavaScriptCore/bytecode/WebAssemblyCodeBlock.h</a></li>
<li><a href="#trunkSourceJavaScriptCoreruntimeWebAssemblyExecutablecpp">trunk/Source/JavaScriptCore/runtime/WebAssemblyExecutable.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCoreruntimeWebAssemblyExecutableh">trunk/Source/JavaScriptCore/runtime/WebAssemblyExecutable.h</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceJavaScriptCoreCMakeListstxt"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/CMakeLists.txt (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/CMakeLists.txt        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/CMakeLists.txt        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -254,7 +254,6 @@
</span><span class="cx">     bytecode/VariableWriteFireDetail.cpp
</span><span class="cx">     bytecode/VirtualRegister.cpp
</span><span class="cx">     bytecode/Watchpoint.cpp
</span><del>-    bytecode/WebAssemblyCodeBlock.cpp
</del><span class="cx"> 
</span><span class="cx">     bytecompiler/BytecodeGenerator.cpp
</span><span class="cx">     bytecompiler/NodesCodegen.cpp
</span><span class="lines">@@ -887,7 +886,6 @@
</span><span class="cx">     runtime/WeakMapPrototype.cpp
</span><span class="cx">     runtime/WeakSetConstructor.cpp
</span><span class="cx">     runtime/WeakSetPrototype.cpp
</span><del>-    runtime/WebAssemblyExecutable.cpp
</del><span class="cx"> 
</span><span class="cx">     tools/CodeProfile.cpp
</span><span class="cx">     tools/CodeProfiling.cpp
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/ChangeLog (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/ChangeLog        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/ChangeLog        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -1,3 +1,50 @@
</span><ins>+2016-12-06  Saam Barati  &lt;sbarati@apple.com&gt;
+
+        Remove old Wasm object model
+        https://bugs.webkit.org/show_bug.cgi?id=165481
+
+        Reviewed by Keith Miller and Mark Lam.
+
+        It's confusing to see code that consults both the old
+        Wasm object model alongside the new one. The old object
+        model is not a thing, and it's not being used. Let's
+        remove it now to prevent further confusion.
+
+        * CMakeLists.txt:
+        * JavaScriptCore.xcodeproj/project.pbxproj:
+        * bytecode/CodeBlock.cpp:
+        (JSC::CodeBlock::finalizeLLIntInlineCaches):
+        (JSC::CodeBlock::replacement):
+        (JSC::CodeBlock::computeCapabilityLevel):
+        (JSC::CodeBlock::updateAllPredictions):
+        * bytecode/CodeBlock.h:
+        * bytecode/WebAssemblyCodeBlock.cpp: Removed.
+        * bytecode/WebAssemblyCodeBlock.h: Removed.
+        * dfg/DFGCapabilities.cpp:
+        (JSC::DFG::isSupportedForInlining):
+        * interpreter/Interpreter.cpp:
+        (JSC::GetStackTraceFunctor::operator()):
+        (JSC::UnwindFunctor::operator()):
+        (JSC::isWebAssemblyExecutable): Deleted.
+        * jit/JITOperations.cpp:
+        * jit/Repatch.cpp:
+        (JSC::linkPolymorphicCall):
+        * llint/LLIntSlowPaths.cpp:
+        (JSC::LLInt::setUpCall):
+        * runtime/ExecutableBase.cpp:
+        (JSC::ExecutableBase::clearCode):
+        * runtime/ExecutableBase.h:
+        (JSC::ExecutableBase::isWebAssemblyExecutable): Deleted.
+        * runtime/JSFunction.cpp:
+        * runtime/JSFunction.h:
+        * runtime/JSFunctionInlines.h:
+        (JSC::JSFunction::isBuiltinFunction):
+        * runtime/VM.cpp:
+        (JSC::VM::VM):
+        * runtime/VM.h:
+        * runtime/WebAssemblyExecutable.cpp: Removed.
+        * runtime/WebAssemblyExecutable.h: Removed.
+
</ins><span class="cx"> 2016-12-06  JF Bastien  &lt;jfbastien@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         PureNaN: fix typo
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreJavaScriptCorexcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -1099,7 +1099,6 @@
</span><span class="cx">                 147341D41DC02E6D00AA29BA /* ProgramExecutable.h in Headers */ = {isa = PBXBuildFile; fileRef = 147341D31DC02E6D00AA29BA /* ProgramExecutable.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 147341D61DC02EB900AA29BA /* ModuleProgramExecutable.h in Headers */ = {isa = PBXBuildFile; fileRef = 147341D51DC02EB900AA29BA /* ModuleProgramExecutable.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 147341D81DC02F9900AA29BA /* FunctionExecutable.h in Headers */ = {isa = PBXBuildFile; fileRef = 147341D71DC02F9900AA29BA /* FunctionExecutable.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><del>-                147341DA1DC0300100AA29BA /* WebAssemblyExecutable.h in Headers */ = {isa = PBXBuildFile; fileRef = 147341D91DC0300100AA29BA /* WebAssemblyExecutable.h */; settings = {ATTRIBUTES = (Private, ); }; };
</del><span class="cx">                 147341E21DC2CE9600AA29BA /* EvalExecutable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 147341DB1DC2CE9600AA29BA /* EvalExecutable.cpp */; };
</span><span class="cx">                 147341E31DC2CE9600AA29BA /* FunctionExecutable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 147341DC1DC2CE9600AA29BA /* FunctionExecutable.cpp */; };
</span><span class="cx">                 147341E41DC2CE9600AA29BA /* ModuleProgramExecutable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 147341DD1DC2CE9600AA29BA /* ModuleProgramExecutable.cpp */; };
</span><span class="lines">@@ -1106,7 +1105,6 @@
</span><span class="cx">                 147341E51DC2CE9600AA29BA /* NativeExecutable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 147341DE1DC2CE9600AA29BA /* NativeExecutable.cpp */; };
</span><span class="cx">                 147341E61DC2CE9600AA29BA /* ProgramExecutable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 147341DF1DC2CE9600AA29BA /* ProgramExecutable.cpp */; };
</span><span class="cx">                 147341E71DC2CE9600AA29BA /* ScriptExecutable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 147341E01DC2CE9600AA29BA /* ScriptExecutable.cpp */; };
</span><del>-                147341E81DC2CE9600AA29BA /* WebAssemblyExecutable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 147341E11DC2CE9600AA29BA /* WebAssemblyExecutable.cpp */; };
</del><span class="cx">                 147341EA1DC2CF2500AA29BA /* ExecutableBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 147341E91DC2CF2500AA29BA /* ExecutableBase.cpp */; };
</span><span class="cx">                 1474C33B16AA2D950062F01D /* PrototypeMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 14D844A316AA2C7000A65AF0 /* PrototypeMap.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 1474C33C16AA2D9B0062F01D /* PrototypeMap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14D844A216AA2C7000A65AF0 /* PrototypeMap.cpp */; };
</span><span class="lines">@@ -1157,11 +1155,9 @@
</span><span class="cx">                 14AD910E1DCA92940014F9FE /* GlobalCodeBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 14AD91081DCA92940014F9FE /* GlobalCodeBlock.h */; };
</span><span class="cx">                 14AD910F1DCA92940014F9FE /* ModuleProgramCodeBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 14AD91091DCA92940014F9FE /* ModuleProgramCodeBlock.h */; };
</span><span class="cx">                 14AD91101DCA92940014F9FE /* ProgramCodeBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 14AD910A1DCA92940014F9FE /* ProgramCodeBlock.h */; };
</span><del>-                14AD91111DCA92940014F9FE /* WebAssemblyCodeBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 14AD910B1DCA92940014F9FE /* WebAssemblyCodeBlock.h */; };
</del><span class="cx">                 14AD91171DCA97FD0014F9FE /* EvalCodeBlock.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14AD91121DCA97FD0014F9FE /* EvalCodeBlock.cpp */; };
</span><span class="cx">                 14AD91181DCA97FD0014F9FE /* ModuleProgramCodeBlock.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14AD91131DCA97FD0014F9FE /* ModuleProgramCodeBlock.cpp */; };
</span><span class="cx">                 14AD91191DCA97FD0014F9FE /* ProgramCodeBlock.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14AD91141DCA97FD0014F9FE /* ProgramCodeBlock.cpp */; };
</span><del>-                14AD911A1DCA97FD0014F9FE /* WebAssemblyCodeBlock.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14AD91151DCA97FD0014F9FE /* WebAssemblyCodeBlock.cpp */; };
</del><span class="cx">                 14AD911B1DCA97FD0014F9FE /* FunctionCodeBlock.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14AD91161DCA97FD0014F9FE /* FunctionCodeBlock.cpp */; };
</span><span class="cx">                 14AD91221DCA9FA40014F9FE /* UnlinkedGlobalCodeBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 14AD911C1DCA9FA40014F9FE /* UnlinkedGlobalCodeBlock.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 14AD91231DCA9FA40014F9FE /* UnlinkedFunctionCodeBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 14AD911D1DCA9FA40014F9FE /* UnlinkedFunctionCodeBlock.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="lines">@@ -3485,7 +3481,6 @@
</span><span class="cx">                 147341D31DC02E6D00AA29BA /* ProgramExecutable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProgramExecutable.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 147341D51DC02EB900AA29BA /* ModuleProgramExecutable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ModuleProgramExecutable.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 147341D71DC02F9900AA29BA /* FunctionExecutable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FunctionExecutable.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><del>-                147341D91DC0300100AA29BA /* WebAssemblyExecutable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebAssemblyExecutable.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</del><span class="cx">                 147341DB1DC2CE9600AA29BA /* EvalExecutable.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EvalExecutable.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 147341DC1DC2CE9600AA29BA /* FunctionExecutable.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FunctionExecutable.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 147341DD1DC2CE9600AA29BA /* ModuleProgramExecutable.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ModuleProgramExecutable.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -3492,7 +3487,6 @@
</span><span class="cx">                 147341DE1DC2CE9600AA29BA /* NativeExecutable.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NativeExecutable.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 147341DF1DC2CE9600AA29BA /* ProgramExecutable.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ProgramExecutable.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 147341E01DC2CE9600AA29BA /* ScriptExecutable.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ScriptExecutable.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><del>-                147341E11DC2CE9600AA29BA /* WebAssemblyExecutable.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebAssemblyExecutable.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</del><span class="cx">                 147341E91DC2CF2500AA29BA /* ExecutableBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ExecutableBase.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 147B83AA0E6DB8C9004775A4 /* BatchedTransitionOptimizer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BatchedTransitionOptimizer.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 147B84620E6DE6B1004775A4 /* PutPropertySlot.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PutPropertySlot.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -3523,11 +3517,9 @@
</span><span class="cx">                 14AD91081DCA92940014F9FE /* GlobalCodeBlock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GlobalCodeBlock.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 14AD91091DCA92940014F9FE /* ModuleProgramCodeBlock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ModuleProgramCodeBlock.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 14AD910A1DCA92940014F9FE /* ProgramCodeBlock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProgramCodeBlock.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><del>-                14AD910B1DCA92940014F9FE /* WebAssemblyCodeBlock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebAssemblyCodeBlock.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</del><span class="cx">                 14AD91121DCA97FD0014F9FE /* EvalCodeBlock.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EvalCodeBlock.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 14AD91131DCA97FD0014F9FE /* ModuleProgramCodeBlock.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ModuleProgramCodeBlock.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 14AD91141DCA97FD0014F9FE /* ProgramCodeBlock.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ProgramCodeBlock.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><del>-                14AD91151DCA97FD0014F9FE /* WebAssemblyCodeBlock.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebAssemblyCodeBlock.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</del><span class="cx">                 14AD91161DCA97FD0014F9FE /* FunctionCodeBlock.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FunctionCodeBlock.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 14AD911C1DCA9FA40014F9FE /* UnlinkedGlobalCodeBlock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UnlinkedGlobalCodeBlock.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 14AD911D1DCA9FA40014F9FE /* UnlinkedFunctionCodeBlock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UnlinkedFunctionCodeBlock.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -6660,8 +6652,6 @@
</span><span class="cx">                                 709FB8641AE335C60039D069 /* WeakSetConstructor.h */,
</span><span class="cx">                                 709FB8651AE335C60039D069 /* WeakSetPrototype.cpp */,
</span><span class="cx">                                 709FB8661AE335C60039D069 /* WeakSetPrototype.h */,
</span><del>-                                147341E11DC2CE9600AA29BA /* WebAssemblyExecutable.cpp */,
-                                147341D91DC0300100AA29BA /* WebAssemblyExecutable.h */,
</del><span class="cx">                                 A7DCB77912E3D90500911940 /* WriteBarrier.h */,
</span><span class="cx">                                 C2B6D75218A33793004A9301 /* WriteBarrierInlines.h */,
</span><span class="cx">                                 8B47F234366C4B72AC852A7E /* TemplateRegistryKeyTable.cpp */,
</span><span class="lines">@@ -7309,8 +7299,6 @@
</span><span class="cx">                                 0F426A461460CBAB00131F8F /* VirtualRegister.h */,
</span><span class="cx">                                 0F919D2215853CDE004A4E7D /* Watchpoint.cpp */,
</span><span class="cx">                                 0F919D2315853CDE004A4E7D /* Watchpoint.h */,
</span><del>-                                14AD91151DCA97FD0014F9FE /* WebAssemblyCodeBlock.cpp */,
-                                14AD910B1DCA92940014F9FE /* WebAssemblyCodeBlock.h */,
</del><span class="cx">                                 14142E501B796ECE00F4BF4B /* UnlinkedFunctionExecutable.h */,
</span><span class="cx">                         );
</span><span class="cx">                         path = bytecode;
</span><span class="lines">@@ -7818,7 +7806,6 @@
</span><span class="cx">                                 269D636E1BFBE5D100101B1D /* FTLOutput.h in Headers */,
</span><span class="cx">                                 0FEC853E1BDACDAC0080FF74 /* B3UpsilonValue.h in Headers */,
</span><span class="cx">                                 0FEC85401BDACDAC0080FF74 /* B3UseCounts.h in Headers */,
</span><del>-                                14AD91111DCA92940014F9FE /* WebAssemblyCodeBlock.h in Headers */,
</del><span class="cx">                                 0FEC85421BDACDAC0080FF74 /* B3Validate.h in Headers */,
</span><span class="cx">                                 0FEC85441BDACDAC0080FF74 /* B3Value.h in Headers */,
</span><span class="cx">                                 0FEC85451BDACDAC0080FF74 /* B3ValueInlines.h in Headers */,
</span><span class="lines">@@ -8182,7 +8169,6 @@
</span><span class="cx">                                 53FF7F991DBFCD9000A26CCC /* WasmValidate.h in Headers */,
</span><span class="cx">                                 0FC97F4218202119002C9B26 /* DFGWatchpointCollectionPhase.h in Headers */,
</span><span class="cx">                                 0FDB2CE8174830A2007B3C1B /* DFGWorklist.h in Headers */,
</span><del>-                                147341DA1DC0300100AA29BA /* WebAssemblyExecutable.h in Headers */,
</del><span class="cx">                                 0F070A491D543A93006E7232 /* HeapCellInlines.h in Headers */,
</span><span class="cx">                                 0FE050181AA9091100D33B33 /* DirectArguments.h in Headers */,
</span><span class="cx">                                 0FE050161AA9091100D33B33 /* DirectArgumentsOffset.h in Headers */,
</span><span class="lines">@@ -9555,7 +9541,6 @@
</span><span class="cx">                                 0FEC85871BDACDC70080FF74 /* AirSpecial.cpp in Sources */,
</span><span class="cx">                                 0FEC85891BDACDC70080FF74 /* AirSpillEverything.cpp in Sources */,
</span><span class="cx">                                 0FEC858B1BDACDC70080FF74 /* AirStackSlot.cpp in Sources */,
</span><del>-                                14AD911A1DCA97FD0014F9FE /* WebAssemblyCodeBlock.cpp in Sources */,
</del><span class="cx">                                 0FEC858D1BDACDC70080FF74 /* AirTmp.cpp in Sources */,
</span><span class="cx">                                 0FEC85901BDACDC70080FF74 /* AirValidate.cpp in Sources */,
</span><span class="cx">                                 147F39BD107EC37600427A48 /* ArgList.cpp in Sources */,
</span><span class="lines">@@ -9812,7 +9797,6 @@
</span><span class="cx">                                 0F2B9CEA19D0BA7D00B1D1B5 /* DFGPhiChildren.cpp in Sources */,
</span><span class="cx">                                 A78A977A179738B8009DF744 /* DFGPlan.cpp in Sources */,
</span><span class="cx">                                 0FBE0F7416C1DB090082C5E8 /* DFGPredictionInjectionPhase.cpp in Sources */,
</span><del>-                                147341E81DC2CE9600AA29BA /* WebAssemblyExecutable.cpp in Sources */,
</del><span class="cx">                                 0FFFC95D14EF90B300C72532 /* DFGPredictionPropagationPhase.cpp in Sources */,
</span><span class="cx">                                 0F3E01AA19D353A500F61B7F /* DFGPrePostNumbering.cpp in Sources */,
</span><span class="cx">                                 0F2B9CEC19D0BA7D00B1D1B5 /* DFGPromotedHeapLocation.cpp in Sources */,
</span></span></pre></div>
<a id="trunkSourceJavaScriptCorebytecodeCodeBlockcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/bytecode/CodeBlock.cpp (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/bytecode/CodeBlock.cpp        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/bytecode/CodeBlock.cpp        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -74,8 +74,6 @@
</span><span class="cx"> #include &quot;TypeProfiler.h&quot;
</span><span class="cx"> #include &quot;UnlinkedInstructionStream.h&quot;
</span><span class="cx"> #include &quot;VMInlines.h&quot;
</span><del>-#include &quot;WebAssemblyCodeBlock.h&quot;
-#include &quot;WebAssemblyExecutable.h&quot;
</del><span class="cx"> #include &lt;wtf/BagToHashMap.h&gt;
</span><span class="cx"> #include &lt;wtf/CommaPrinter.h&gt;
</span><span class="cx"> #include &lt;wtf/SimpleStats.h&gt;
</span><span class="lines">@@ -2364,43 +2362,6 @@
</span><span class="cx">     heap()-&gt;reportExtraMemoryAllocated(m_instructions.size() * sizeof(Instruction));
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-#if ENABLE(WEBASSEMBLY)
-CodeBlock::CodeBlock(VM* vm, Structure* structure, WebAssemblyExecutable* ownerExecutable, JSGlobalObject* globalObject)
-    : JSCell(*vm, structure)
-    , m_globalObject(globalObject-&gt;vm(), this, globalObject)
-    , m_numCalleeLocals(0)
-    , m_numVars(0)
-    , m_shouldAlwaysBeInlined(false)
-#if ENABLE(JIT)
-    , m_capabilityLevelState(DFG::CannotCompile)
-#endif
-    , m_didFailJITCompilation(false)
-    , m_didFailFTLCompilation(false)
-    , m_hasBeenCompiledWithFTL(false)
-    , m_isConstructor(false)
-    , m_isStrictMode(false)
-    , m_codeType(FunctionCode)
-    , m_hasDebuggerStatement(false)
-    , m_steppingMode(SteppingModeDisabled)
-    , m_numBreakpoints(0)
-    , m_ownerExecutable(m_globalObject-&gt;vm(), this, ownerExecutable)
-    , m_vm(vm)
-    , m_osrExitCounter(0)
-    , m_optimizationDelayCounter(0)
-    , m_reoptimizationRetryCounter(0)
-    , m_creationTime(std::chrono::steady_clock::now())
-{
-    ASSERT(heap()-&gt;isDeferred());
-}
-
-void CodeBlock::finishCreation(VM&amp; vm, WebAssemblyExecutable*, JSGlobalObject*)
-{
-    Base::finishCreation(vm);
-
-    heap()-&gt;m_codeBlocks-&gt;add(this);
-}
-#endif
-
</del><span class="cx"> CodeBlock::~CodeBlock()
</span><span class="cx"> {
</span><span class="cx">     if (m_vm-&gt;m_perBytecodeProfiler)
</span><span class="lines">@@ -2817,11 +2778,6 @@
</span><span class="cx"> 
</span><span class="cx"> void CodeBlock::finalizeLLIntInlineCaches()
</span><span class="cx"> {
</span><del>-#if ENABLE(WEBASSEMBLY)
-    if (m_ownerExecutable-&gt;isWebAssemblyExecutable())
-        return;
-#endif
-
</del><span class="cx">     Interpreter* interpreter = m_vm-&gt;interpreter;
</span><span class="cx">     const Vector&lt;unsigned&gt;&amp; propertyAccessInstructions = m_unlinkedCode-&gt;propertyAccessInstructions();
</span><span class="cx">     for (size_t size = propertyAccessInstructions.size(), i = 0; i &lt; size; ++i) {
</span><span class="lines">@@ -3376,11 +3332,6 @@
</span><span class="cx">     if (classInfo == ModuleProgramCodeBlock::info())
</span><span class="cx">         return jsCast&lt;ModuleProgramExecutable*&gt;(ownerExecutable())-&gt;codeBlock();
</span><span class="cx"> 
</span><del>-#if ENABLE(WEBASSEMBLY)
-    if (classInfo == WebAssemblyCodeBlock::info())
-        return nullptr;
-#endif
-
</del><span class="cx">     RELEASE_ASSERT_NOT_REACHED();
</span><span class="cx">     return nullptr;
</span><span class="cx"> }
</span><span class="lines">@@ -3404,11 +3355,6 @@
</span><span class="cx">     if (classInfo == ModuleProgramCodeBlock::info())
</span><span class="cx">         return DFG::programCapabilityLevel(this);
</span><span class="cx"> 
</span><del>-#if ENABLE(WEBASSEMBLY)
-    if (classInfo == WebAssemblyCodeBlock::info())
-        return DFG::CannotCompile;
-#endif
-
</del><span class="cx">     RELEASE_ASSERT_NOT_REACHED();
</span><span class="cx">     return DFG::CannotCompile;
</span><span class="cx"> }
</span><span class="lines">@@ -4080,10 +4026,6 @@
</span><span class="cx"> 
</span><span class="cx"> void CodeBlock::updateAllPredictions()
</span><span class="cx"> {
</span><del>-#if ENABLE(WEBASSEMBLY)
-    if (m_ownerExecutable-&gt;isWebAssemblyExecutable())
-        return;
-#endif
</del><span class="cx">     updateAllValueProfilePredictions();
</span><span class="cx">     updateAllArrayPredictions();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceJavaScriptCorebytecodeCodeBlockh"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/bytecode/CodeBlock.h (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/bytecode/CodeBlock.h        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/bytecode/CodeBlock.h        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -119,15 +119,9 @@
</span><span class="cx"> protected:
</span><span class="cx">     CodeBlock(VM*, Structure*, CopyParsedBlockTag, CodeBlock&amp; other);
</span><span class="cx">     CodeBlock(VM*, Structure*, ScriptExecutable* ownerExecutable, UnlinkedCodeBlock*, JSScope*, PassRefPtr&lt;SourceProvider&gt;, unsigned sourceOffset, unsigned firstLineColumnOffset);
</span><del>-#if ENABLE(WEBASSEMBLY)
-    CodeBlock(VM*, Structure*, WebAssemblyExecutable* ownerExecutable, JSGlobalObject*);
-#endif
</del><span class="cx"> 
</span><span class="cx">     void finishCreation(VM&amp;, CopyParsedBlockTag, CodeBlock&amp; other);
</span><span class="cx">     void finishCreation(VM&amp;, ScriptExecutable* ownerExecutable, UnlinkedCodeBlock*, JSScope*);
</span><del>-#if ENABLE(WEBASSEMBLY)
-    void finishCreation(VM&amp;, WebAssemblyExecutable* ownerExecutable, JSGlobalObject*);
-#endif
</del><span class="cx"> 
</span><span class="cx">     WriteBarrier&lt;JSGlobalObject&gt; m_globalObject;
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceJavaScriptCorebytecodeWebAssemblyCodeBlockcpp"></a>
<div class="delfile"><h4>Deleted: trunk/Source/JavaScriptCore/bytecode/WebAssemblyCodeBlock.cpp (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/bytecode/WebAssemblyCodeBlock.cpp        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/bytecode/WebAssemblyCodeBlock.cpp        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -1,47 +0,0 @@
</span><del>-/*
- * Copyright (C) 2008-2010, 2012-2016 Apple Inc. All rights reserved.
- * Copyright (C) 2008 Cameron Zwarich &lt;cwzwarich@uwaterloo.ca&gt;
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- * 3.  Neither the name of Apple Inc. (&quot;Apple&quot;) nor the names of
- *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS &quot;AS IS&quot; AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include &quot;config.h&quot;
-#include &quot;WebAssemblyCodeBlock.h&quot;
-
-namespace JSC {
-
-#if ENABLE(WEBASSEMBLY)
-const ClassInfo WebAssemblyCodeBlock::s_info = {
-    &quot;WebAssemblyCodeBlock&quot;, &amp;Base::s_info, 0,
-    CREATE_METHOD_TABLE(WebAssemblyCodeBlock)
-};
-
-void WebAssemblyCodeBlock::destroy(JSCell* cell)
-{
-    jsCast&lt;WebAssemblyCodeBlock*&gt;(cell)-&gt;~WebAssemblyCodeBlock();
-}
-#endif
-
-} // namespace JSC
</del></span></pre></div>
<a id="trunkSourceJavaScriptCorebytecodeWebAssemblyCodeBlockh"></a>
<div class="delfile"><h4>Deleted: trunk/Source/JavaScriptCore/bytecode/WebAssemblyCodeBlock.h (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/bytecode/WebAssemblyCodeBlock.h        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/bytecode/WebAssemblyCodeBlock.h        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -1,78 +0,0 @@
</span><del>-/*
- * Copyright (C) 2008-2016 Apple Inc. All rights reserved.
- * Copyright (C) 2008 Cameron Zwarich &lt;cwzwarich@uwaterloo.ca&gt;
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- * 3.  Neither the name of Apple Inc. (&quot;Apple&quot;) nor the names of
- *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS &quot;AS IS&quot; AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#pragma once
-
-#include &quot;CodeBlock.h&quot;
-
-namespace JSC {
-
-#if ENABLE(WEBASSEMBLY)
-class WebAssemblyCodeBlock : public CodeBlock {
-public:
-    typedef CodeBlock Base;
-    DECLARE_INFO;
-
-    static WebAssemblyCodeBlock* create(VM* vm, CopyParsedBlockTag, WebAssemblyCodeBlock&amp; other)
-    {
-        WebAssemblyCodeBlock* instance = new (NotNull, allocateCell&lt;WebAssemblyCodeBlock&gt;(vm-&gt;heap))
-            WebAssemblyCodeBlock(vm, vm-&gt;webAssemblyCodeBlockStructure.get(), CopyParsedBlock, other);
-        instance-&gt;finishCreation(*vm, CopyParsedBlock, other);
-        return instance;
-    }
-
-    static WebAssemblyCodeBlock* create(VM* vm, WebAssemblyExecutable* ownerExecutable, JSGlobalObject* globalObject)
-    {
-        WebAssemblyCodeBlock* instance = new (NotNull, allocateCell&lt;WebAssemblyCodeBlock&gt;(vm-&gt;heap))
-            WebAssemblyCodeBlock(vm, vm-&gt;webAssemblyCodeBlockStructure.get(), ownerExecutable, globalObject);
-        instance-&gt;finishCreation(*vm, ownerExecutable, globalObject);
-        return instance;
-    }
-
-    static Structure* createStructure(VM&amp; vm, JSGlobalObject* globalObject, JSValue prototype)
-    {
-        return Structure::create(vm, globalObject, prototype, TypeInfo(CellType, StructureFlags), info());
-    }
-
-private:
-    WebAssemblyCodeBlock(VM* vm, Structure* structure, CopyParsedBlockTag, WebAssemblyCodeBlock&amp; other)
-        : CodeBlock(vm, structure, CopyParsedBlock, other)
-    {
-    }
-
-    WebAssemblyCodeBlock(VM* vm, Structure* structure, WebAssemblyExecutable* ownerExecutable, JSGlobalObject* globalObject)
-        : CodeBlock(vm, structure, ownerExecutable, globalObject)
-    {
-    }
-
-    static void destroy(JSCell*);
-};
-#endif
-
-} // namespace JSC
</del></span></pre></div>
<a id="trunkSourceJavaScriptCoredfgDFGCapabilitiescpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/dfg/DFGCapabilities.cpp (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/dfg/DFGCapabilities.cpp        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/dfg/DFGCapabilities.cpp        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -44,10 +44,6 @@
</span><span class="cx"> 
</span><span class="cx"> bool isSupportedForInlining(CodeBlock* codeBlock)
</span><span class="cx"> {
</span><del>-#if ENABLE(WEBASSEMBLY)
-    if (codeBlock-&gt;ownerExecutable()-&gt;isWebAssemblyExecutable())
-        return false;
-#endif
</del><span class="cx">     return codeBlock-&gt;ownerScriptExecutable()-&gt;isInliningCandidate();
</span><span class="cx"> }
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreinterpreterInterpretercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/interpreter/Interpreter.cpp (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/interpreter/Interpreter.cpp        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/interpreter/Interpreter.cpp        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -447,16 +447,6 @@
</span><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-static inline bool isWebAssemblyExecutable(ExecutableBase* executable)
-{
-#if !ENABLE(WEBASSEMBLY)
-    UNUSED_PARAM(executable);
-    return false;
-#else
-    return executable-&gt;isWebAssemblyExecutable();
-#endif
-}
-
</del><span class="cx"> class GetStackTraceFunctor {
</span><span class="cx"> public:
</span><span class="cx">     GetStackTraceFunctor(VM&amp; vm, Vector&lt;StackFrame&gt;&amp; results, size_t framesToSkip, size_t capacity)
</span><span class="lines">@@ -477,7 +467,6 @@
</span><span class="cx"> 
</span><span class="cx">         if (m_remainingCapacityForFrameCapture) {
</span><span class="cx">             if (visitor-&gt;isJSFrame()
</span><del>-                &amp;&amp; !isWebAssemblyExecutable(visitor-&gt;codeBlock()-&gt;ownerExecutable())
</del><span class="cx">                 &amp;&amp; !visitor-&gt;codeBlock()-&gt;unlinkedCodeBlock()-&gt;isBuiltinFunction()) {
</span><span class="cx">                 StackFrame s = {
</span><span class="cx">                     Strong&lt;JSObject&gt;(m_vm, visitor-&gt;callee()),
</span><span class="lines">@@ -619,7 +608,7 @@
</span><span class="cx"> 
</span><span class="cx">         m_handler = nullptr;
</span><span class="cx">         if (!m_isTermination) {
</span><del>-            if (m_codeBlock &amp;&amp; !isWebAssemblyExecutable(m_codeBlock-&gt;ownerExecutable()))
</del><ins>+            if (m_codeBlock)
</ins><span class="cx">                 m_handler = findExceptionHandler(visitor, m_codeBlock, RequiredHandler::AnyHandler);
</span><span class="cx">         }
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceJavaScriptCorejitJITOperationscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/jit/JITOperations.cpp (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/jit/JITOperations.cpp        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/jit/JITOperations.cpp        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -70,7 +70,6 @@
</span><span class="cx"> #include &quot;TestRunnerUtils.h&quot;
</span><span class="cx"> #include &quot;TypeProfilerLog.h&quot;
</span><span class="cx"> #include &quot;VMInlines.h&quot;
</span><del>-#include &quot;WebAssemblyCodeBlock.h&quot;
</del><span class="cx"> #include &lt;wtf/InlineASM.h&gt;
</span><span class="cx"> 
</span><span class="cx"> namespace JSC {
</span><span class="lines">@@ -895,18 +894,6 @@
</span><span class="cx">     CodeBlock* codeBlock = 0;
</span><span class="cx">     if (executable-&gt;isHostFunction()) {
</span><span class="cx">         codePtr = executable-&gt;entrypointFor(kind, MustCheckArity);
</span><del>-#if ENABLE(WEBASSEMBLY)
-    } else if (executable-&gt;isWebAssemblyExecutable()) {
-        WebAssemblyExecutable* webAssemblyExecutable = static_cast&lt;WebAssemblyExecutable*&gt;(executable);
-        codeBlock = webAssemblyExecutable-&gt;codeBlockForCall();
-        ASSERT(codeBlock);
-        ArityCheckMode arity;
-        if (execCallee-&gt;argumentCountIncludingThis() &lt; static_cast&lt;size_t&gt;(codeBlock-&gt;numParameters()))
-            arity = MustCheckArity;
-        else
-            arity = ArityCheckNotRequired;
-        codePtr = webAssemblyExecutable-&gt;entrypointFor(kind, arity);
-#endif
</del><span class="cx">     } else {
</span><span class="cx">         FunctionExecutable* functionExecutable = static_cast&lt;FunctionExecutable*&gt;(executable);
</span><span class="cx"> 
</span><span class="lines">@@ -1015,37 +1002,22 @@
</span><span class="cx">     JSScope* scope = function-&gt;scopeUnchecked();
</span><span class="cx">     ExecutableBase* executable = function-&gt;executable();
</span><span class="cx">     if (UNLIKELY(!executable-&gt;hasJITCodeFor(kind))) {
</span><del>-        bool isWebAssemblyExecutable = false;
-#if ENABLE(WEBASSEMBLY)
-        isWebAssemblyExecutable = executable-&gt;isWebAssemblyExecutable();
-#endif
-        if (!isWebAssemblyExecutable) {
-            FunctionExecutable* functionExecutable = static_cast&lt;FunctionExecutable*&gt;(executable);
</del><ins>+        FunctionExecutable* functionExecutable = static_cast&lt;FunctionExecutable*&gt;(executable);
</ins><span class="cx"> 
</span><del>-            if (!isCall(kind) &amp;&amp; functionExecutable-&gt;constructAbility() == ConstructAbility::CannotConstruct) {
-                throwException(exec, throwScope, createNotAConstructorError(exec, function));
-                return encodeResult(
-                    vm-&gt;getCTIStub(throwExceptionFromCallSlowPathGenerator).code().executableAddress(),
-                    reinterpret_cast&lt;void*&gt;(KeepTheFrame));
-            }
</del><ins>+        if (!isCall(kind) &amp;&amp; functionExecutable-&gt;constructAbility() == ConstructAbility::CannotConstruct) {
+            throwException(exec, throwScope, createNotAConstructorError(exec, function));
+            return encodeResult(
+                vm-&gt;getCTIStub(throwExceptionFromCallSlowPathGenerator).code().executableAddress(),
+                reinterpret_cast&lt;void*&gt;(KeepTheFrame));
+        }
</ins><span class="cx"> 
</span><del>-            CodeBlock** codeBlockSlot = execCallee-&gt;addressOfCodeBlock();
-            JSObject* error = functionExecutable-&gt;prepareForExecution&lt;FunctionExecutable&gt;(*vm, function, scope, kind, *codeBlockSlot);
-            if (error) {
-                throwException(exec, throwScope, error);
-                return encodeResult(
-                    vm-&gt;getCTIStub(throwExceptionFromCallSlowPathGenerator).code().executableAddress(),
-                    reinterpret_cast&lt;void*&gt;(KeepTheFrame));
-            }
-        } else {
-#if ENABLE(WEBASSEMBLY)
-            if (!isCall(kind)) {
-                throwException(exec, throwScope, createNotAConstructorError(exec, function));
-                return encodeResult(
-                    vm-&gt;getCTIStub(throwExceptionFromCallSlowPathGenerator).code().executableAddress(),
-                    reinterpret_cast&lt;void*&gt;(KeepTheFrame));
-            }
-#endif
</del><ins>+        CodeBlock** codeBlockSlot = execCallee-&gt;addressOfCodeBlock();
+        JSObject* error = functionExecutable-&gt;prepareForExecution&lt;FunctionExecutable&gt;(*vm, function, scope, kind, *codeBlockSlot);
+        if (error) {
+            throwException(exec, throwScope, error);
+            return encodeResult(
+                vm-&gt;getCTIStub(throwExceptionFromCallSlowPathGenerator).code().executableAddress(),
+                reinterpret_cast&lt;void*&gt;(KeepTheFrame));
</ins><span class="cx">         }
</span><span class="cx">     }
</span><span class="cx">     return encodeResult(executable-&gt;entrypointFor(
</span></span></pre></div>
<a id="trunkSourceJavaScriptCorejitRepatchcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/jit/Repatch.cpp (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/jit/Repatch.cpp        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/jit/Repatch.cpp        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -53,7 +53,6 @@
</span><span class="cx"> #include &quot;StructureStubClearingWatchpoint.h&quot;
</span><span class="cx"> #include &quot;StructureStubInfo.h&quot;
</span><span class="cx"> #include &quot;ThunkGenerators.h&quot;
</span><del>-#include &quot;WebAssemblyCodeBlock.h&quot;
</del><span class="cx"> #include &lt;wtf/CommaPrinter.h&gt;
</span><span class="cx"> #include &lt;wtf/ListDump.h&gt;
</span><span class="cx"> #include &lt;wtf/StringPrintStream.h&gt;
</span><span class="lines">@@ -714,12 +713,7 @@
</span><span class="cx">             codeBlock = nullptr;
</span><span class="cx">         else {
</span><span class="cx">             ExecutableBase* executable = variant.executable();
</span><del>-#if ENABLE(WEBASSEMBLY)
-            if (executable-&gt;isWebAssemblyExecutable())
-                codeBlock = jsCast&lt;WebAssemblyExecutable*&gt;(executable)-&gt;codeBlockForCall();
-            else
-#endif
-                codeBlock = jsCast&lt;FunctionExecutable*&gt;(executable)-&gt;codeBlockForCall();
</del><ins>+            codeBlock = jsCast&lt;FunctionExecutable*&gt;(executable)-&gt;codeBlockForCall();
</ins><span class="cx">             // If we cannot handle a callee, either because we don't have a CodeBlock or because arity mismatch,
</span><span class="cx">             // assume that it's better for this whole thing to be a virtual call.
</span><span class="cx">             if (!codeBlock || exec-&gt;argumentCountIncludingThis() &lt; static_cast&lt;size_t&gt;(codeBlock-&gt;numParameters()) || callLinkInfo.isVarargs()) {
</span></span></pre></div>
<a id="trunkSourceJavaScriptCorellintLLIntSlowPathscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -66,7 +66,6 @@
</span><span class="cx"> #include &quot;ShadowChicken.h&quot;
</span><span class="cx"> #include &quot;StructureRareDataInlines.h&quot;
</span><span class="cx"> #include &quot;VMInlines.h&quot;
</span><del>-#include &quot;WebAssemblyCodeBlock.h&quot;
</del><span class="cx"> #include &lt;wtf/NeverDestroyed.h&gt;
</span><span class="cx"> #include &lt;wtf/StringPrintStream.h&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -1292,14 +1291,9 @@
</span><span class="cx"> 
</span><span class="cx">     MacroAssemblerCodePtr codePtr;
</span><span class="cx">     CodeBlock* codeBlock = 0;
</span><del>-    bool isWebAssemblyExecutable = false;
-#if ENABLE(WEBASSEMBLY)
-    isWebAssemblyExecutable = executable-&gt;isWebAssemblyExecutable();
-#endif
-
</del><span class="cx">     if (executable-&gt;isHostFunction()) {
</span><span class="cx">         codePtr = executable-&gt;entrypointFor(kind, MustCheckArity);
</span><del>-    } else if (!isWebAssemblyExecutable) {
</del><ins>+    } else {
</ins><span class="cx">         FunctionExecutable* functionExecutable = static_cast&lt;FunctionExecutable*&gt;(executable);
</span><span class="cx"> 
</span><span class="cx">         if (!isCall(kind) &amp;&amp; functionExecutable-&gt;constructAbility() == ConstructAbility::CannotConstruct)
</span><span class="lines">@@ -1318,20 +1312,8 @@
</span><span class="cx">         else
</span><span class="cx">             arity = ArityCheckNotRequired;
</span><span class="cx">         codePtr = functionExecutable-&gt;entrypointFor(kind, arity);
</span><del>-    } else {
-#if ENABLE(WEBASSEMBLY)
-        WebAssemblyExecutable* webAssemblyExecutable = static_cast&lt;WebAssemblyExecutable*&gt;(executable);
-        codeBlock = webAssemblyExecutable-&gt;codeBlockForCall();
-        ASSERT(codeBlock);
-        ArityCheckMode arity;
-        if (execCallee-&gt;argumentCountIncludingThis() &lt; static_cast&lt;size_t&gt;(codeBlock-&gt;numParameters()))
-            arity = MustCheckArity;
-        else
-            arity = ArityCheckNotRequired;
-        codePtr = webAssemblyExecutable-&gt;entrypointFor(kind, arity);
-#endif
</del><span class="cx">     }
</span><del>-    
</del><ins>+
</ins><span class="cx">     ASSERT(!!codePtr);
</span><span class="cx">     
</span><span class="cx">     if (!LLINT_ALWAYS_ACCESS_SLOW &amp;&amp; callLinkInfo) {
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreruntimeExecutableBasecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/runtime/ExecutableBase.cpp (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/runtime/ExecutableBase.cpp        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/runtime/ExecutableBase.cpp        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -89,14 +89,6 @@
</span><span class="cx">         return;
</span><span class="cx">     }
</span><span class="cx">     
</span><del>-#if ENABLE(WEBASSEMBLY)
-    if (classInfo() == WebAssemblyExecutable::info()) {
-        WebAssemblyExecutable* executable = jsCast&lt;WebAssemblyExecutable*&gt;(this);
-        executable-&gt;m_codeBlockForCall.clear();
-        return;
-    }
-#endif
-
</del><span class="cx">     ASSERT(classInfo() == NativeExecutable::info());
</span><span class="cx"> }
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreruntimeExecutableBaseh"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/runtime/ExecutableBase.h (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/runtime/ExecutableBase.h        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/runtime/ExecutableBase.h        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -50,7 +50,6 @@
</span><span class="cx"> class LLIntOffsetsExtractor;
</span><span class="cx"> class ModuleProgramCodeBlock;
</span><span class="cx"> class ProgramCodeBlock;
</span><del>-class WebAssemblyCodeBlock;
</del><span class="cx"> 
</span><span class="cx"> enum CompilationKind { FirstCompilation, OptimizingCompilation };
</span><span class="cx"> 
</span><span class="lines">@@ -115,13 +114,6 @@
</span><span class="cx">         return m_numParametersForCall == NUM_PARAMETERS_IS_HOST;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-#if ENABLE(WEBASSEMBLY)
-    bool isWebAssemblyExecutable() const
-    {
-        return type() == WebAssemblyExecutableType;
-    }
-#endif
-
</del><span class="cx">     static Structure* createStructure(VM&amp; vm, JSGlobalObject* globalObject, JSValue proto) { return Structure::create(vm, globalObject, proto, TypeInfo(CellType, StructureFlags), info()); }
</span><span class="cx">         
</span><span class="cx">     void clearCode();
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreruntimeJSFunctioncpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/runtime/JSFunction.cpp (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/runtime/JSFunction.cpp        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/runtime/JSFunction.cpp        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -74,16 +74,6 @@
</span><span class="cx">     return result;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-#if ENABLE(WEBASSEMBLY)
-JSFunction* JSFunction::create(VM&amp; vm, WebAssemblyExecutable* executable, JSScope* scope)
-{
-    JSFunction* function = new (NotNull, allocateCell&lt;JSFunction&gt;(vm.heap)) JSFunction(vm, executable, scope);
-    ASSERT(function-&gt;structure(vm)-&gt;globalObject());
-    function-&gt;finishCreation(vm);
-    return function;
-}
-#endif
-
</del><span class="cx"> JSFunction* JSFunction::create(VM&amp; vm, JSGlobalObject* globalObject, int length, const String&amp; name, NativeFunction nativeFunction, Intrinsic intrinsic, NativeFunction nativeConstructor, const DOMJIT::Signature* signature)
</span><span class="cx"> {
</span><span class="cx">     NativeExecutable* executable = vm.getHostFunction(nativeFunction, intrinsic, nativeConstructor, signature, name);
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreruntimeJSFunctionh"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/runtime/JSFunction.h (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/runtime/JSFunction.h        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/runtime/JSFunction.h        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -39,7 +39,6 @@
</span><span class="cx"> class LLIntOffsetsExtractor;
</span><span class="cx"> class NativeExecutable;
</span><span class="cx"> class SourceCode;
</span><del>-class WebAssemblyExecutable;
</del><span class="cx"> class InternalFunction;
</span><span class="cx"> namespace DFG {
</span><span class="cx"> class SpeculativeJIT;
</span><span class="lines">@@ -78,9 +77,6 @@
</span><span class="cx"> 
</span><span class="cx">     static JSFunction* create(VM&amp;, FunctionExecutable*, JSScope*);
</span><span class="cx">     static JSFunction* create(VM&amp;, FunctionExecutable*, JSScope*, Structure*);
</span><del>-#if ENABLE(WEBASSEMBLY)
-    static JSFunction* create(VM&amp;, WebAssemblyExecutable*, JSScope*);
-#endif
</del><span class="cx"> 
</span><span class="cx">     JS_EXPORT_PRIVATE static JSFunction* createBuiltinFunction(VM&amp;, FunctionExecutable*, JSGlobalObject*);
</span><span class="cx">     static JSFunction* createBuiltinFunction(VM&amp;, FunctionExecutable*, JSGlobalObject*, const String&amp; name);
</span><span class="lines">@@ -160,10 +156,6 @@
</span><span class="cx">     JS_EXPORT_PRIVATE JSFunction(VM&amp;, JSGlobalObject*, Structure*);
</span><span class="cx">     JSFunction(VM&amp;, FunctionExecutable*, JSScope*, Structure*);
</span><span class="cx"> 
</span><del>-#if ENABLE(WEBASSEMBLY)
-    JSFunction(VM&amp;, WebAssemblyExecutable*, JSScope*);
-#endif
-
</del><span class="cx">     void finishCreation(VM&amp;, NativeExecutable*, int length, const String&amp; name);
</span><span class="cx">     using Base::finishCreation;
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreruntimeJSFunctionInlinesh"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/runtime/JSFunctionInlines.h (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/runtime/JSFunctionInlines.h        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/runtime/JSFunctionInlines.h        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -28,7 +28,6 @@
</span><span class="cx"> #include &quot;FunctionExecutable.h&quot;
</span><span class="cx"> #include &quot;JSFunction.h&quot;
</span><span class="cx"> #include &quot;NativeExecutable.h&quot;
</span><del>-#include &quot;WebAssemblyExecutable.h&quot;
</del><span class="cx"> 
</span><span class="cx"> namespace JSC {
</span><span class="cx"> 
</span><span class="lines">@@ -46,15 +45,6 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-#if ENABLE(WEBASSEMBLY)
-inline JSFunction::JSFunction(VM&amp; vm, WebAssemblyExecutable* executable, JSScope* scope)
-    : Base(vm, scope, scope-&gt;globalObject(vm)-&gt;functionStructure())
-    , m_executable(vm, this, executable)
-    , m_rareData()
-{
-}
-#endif
-
</del><span class="cx"> inline FunctionExecutable* JSFunction::jsExecutable() const
</span><span class="cx"> {
</span><span class="cx">     ASSERT(!isHostFunctionNonInline());
</span><span class="lines">@@ -74,10 +64,6 @@
</span><span class="cx"> 
</span><span class="cx"> inline bool JSFunction::isBuiltinFunction() const
</span><span class="cx"> {
</span><del>-#if ENABLE(WEBASSEMBLY)
-    if (m_executable-&gt;isWebAssemblyExecutable())
-        return false;
-#endif
</del><span class="cx">     return !isHostFunction() &amp;&amp; jsExecutable()-&gt;isBuiltinFunction();
</span><span class="cx"> }
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreruntimeVMcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/runtime/VM.cpp (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/runtime/VM.cpp        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/runtime/VM.cpp        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -103,7 +103,6 @@
</span><span class="cx"> #include &quot;Watchdog.h&quot;
</span><span class="cx"> #include &quot;WeakGCMapInlines.h&quot;
</span><span class="cx"> #include &quot;WeakMapData.h&quot;
</span><del>-#include &quot;WebAssemblyCodeBlock.h&quot;
</del><span class="cx"> #include &lt;wtf/CurrentTime.h&gt;
</span><span class="cx"> #include &lt;wtf/ProcessID.h&gt;
</span><span class="cx"> #include &lt;wtf/SimpleStats.h&gt;
</span><span class="lines">@@ -229,7 +228,6 @@
</span><span class="cx">     programExecutableStructure.set(*this, ProgramExecutable::createStructure(*this, 0, jsNull()));
</span><span class="cx">     functionExecutableStructure.set(*this, FunctionExecutable::createStructure(*this, 0, jsNull()));
</span><span class="cx"> #if ENABLE(WEBASSEMBLY)
</span><del>-    webAssemblyExecutableStructure.set(*this, WebAssemblyExecutable::createStructure(*this, 0, jsNull()));
</del><span class="cx">     webAssemblyCalleeStructure.set(*this, JSWebAssemblyCallee::createStructure(*this, 0, jsNull()));
</span><span class="cx"> #endif
</span><span class="cx">     moduleProgramExecutableStructure.set(*this, ModuleProgramExecutable::createStructure(*this, 0, jsNull()));
</span><span class="lines">@@ -259,9 +257,6 @@
</span><span class="cx">     moduleProgramCodeBlockStructure.set(*this, ModuleProgramCodeBlock::createStructure(*this, 0, jsNull()));
</span><span class="cx">     evalCodeBlockStructure.set(*this, EvalCodeBlock::createStructure(*this, 0, jsNull()));
</span><span class="cx">     functionCodeBlockStructure.set(*this, FunctionCodeBlock::createStructure(*this, 0, jsNull()));
</span><del>-#if ENABLE(WEBASSEMBLY)
-    webAssemblyCodeBlockStructure.set(*this, WebAssemblyCodeBlock::createStructure(*this, 0, jsNull()));
-#endif
</del><span class="cx">     hashMapBucketSetStructure.set(*this, HashMapBucket&lt;HashMapBucketDataKey&gt;::createStructure(*this, 0, jsNull()));
</span><span class="cx">     hashMapBucketMapStructure.set(*this, HashMapBucket&lt;HashMapBucketDataKeyValue&gt;::createStructure(*this, 0, jsNull()));
</span><span class="cx">     hashMapImplSetStructure.set(*this, HashMapImpl&lt;HashMapBucket&lt;HashMapBucketDataKey&gt;&gt;::createStructure(*this, 0, jsNull()));
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreruntimeVMh"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/runtime/VM.h (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/runtime/VM.h        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/runtime/VM.h        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -309,7 +309,6 @@
</span><span class="cx">     Strong&lt;Structure&gt; programExecutableStructure;
</span><span class="cx">     Strong&lt;Structure&gt; functionExecutableStructure;
</span><span class="cx"> #if ENABLE(WEBASSEMBLY)
</span><del>-    Strong&lt;Structure&gt; webAssemblyExecutableStructure;
</del><span class="cx">     Strong&lt;Structure&gt; webAssemblyCalleeStructure;
</span><span class="cx"> #endif
</span><span class="cx">     Strong&lt;Structure&gt; moduleProgramExecutableStructure;
</span><span class="lines">@@ -340,7 +339,6 @@
</span><span class="cx">     Strong&lt;Structure&gt; moduleProgramCodeBlockStructure;
</span><span class="cx">     Strong&lt;Structure&gt; evalCodeBlockStructure;
</span><span class="cx">     Strong&lt;Structure&gt; functionCodeBlockStructure;
</span><del>-    Strong&lt;Structure&gt; webAssemblyCodeBlockStructure;
</del><span class="cx">     Strong&lt;Structure&gt; hashMapBucketSetStructure;
</span><span class="cx">     Strong&lt;Structure&gt; hashMapBucketMapStructure;
</span><span class="cx">     Strong&lt;Structure&gt; hashMapImplSetStructure;
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreruntimeWebAssemblyExecutablecpp"></a>
<div class="delfile"><h4>Deleted: trunk/Source/JavaScriptCore/runtime/WebAssemblyExecutable.cpp (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/runtime/WebAssemblyExecutable.cpp        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/runtime/WebAssemblyExecutable.cpp        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -1,71 +0,0 @@
</span><del>-/*
- * Copyright (C) 2009, 2010, 2013, 2015-2016 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
- */
-
-#include &quot;config.h&quot;
-
-#include &quot;BatchedTransitionOptimizer.h&quot;
-#include &quot;CodeBlock.h&quot;
-#include &quot;Debugger.h&quot;
-#include &quot;JIT.h&quot;
-#include &quot;JSCInlines.h&quot;
-#include &quot;JSWebAssemblyModule.h&quot;
-#include &quot;LLIntEntrypoint.h&quot;
-#include &quot;Parser.h&quot;
-#include &quot;TypeProfiler.h&quot;
-#include &quot;VMInlines.h&quot;
-#include &quot;WebAssemblyCodeBlock.h&quot;
-#include &lt;wtf/CommaPrinter.h&gt;
-
-namespace JSC {
-
-#if ENABLE(WEBASSEMBLY)
-const ClassInfo WebAssemblyExecutable::s_info = { &quot;WebAssemblyExecutable&quot;, &amp;ExecutableBase::s_info, 0, CREATE_METHOD_TABLE(WebAssemblyExecutable) };
-
-WebAssemblyExecutable::WebAssemblyExecutable(VM&amp; vm, const SourceCode&amp; source, JSWebAssemblyModule* module, unsigned functionIndex)
-    : ExecutableBase(vm, vm.webAssemblyExecutableStructure.get(), NUM_PARAMETERS_NOT_COMPILED, NoIntrinsic)
-    , m_source(source)
-    , m_module(vm, this, module)
-    , m_functionIndex(functionIndex)
-{
-    ASSERT(source.provider()-&gt;sourceType() == SourceProviderSourceType::WebAssembly);
-}
-
-void WebAssemblyExecutable::destroy(JSCell* cell)
-{
-    static_cast&lt;WebAssemblyExecutable*&gt;(cell)-&gt;WebAssemblyExecutable::~WebAssemblyExecutable();
-}
-
-void WebAssemblyExecutable::visitChildren(JSCell* cell, SlotVisitor&amp; visitor)
-{
-    WebAssemblyExecutable* thisObject = jsCast&lt;WebAssemblyExecutable*&gt;(cell);
-    ASSERT_GC_OBJECT_INHERITS(thisObject, info());
-    ExecutableBase::visitChildren(thisObject, visitor);
-    if (thisObject-&gt;m_codeBlockForCall)
-        thisObject-&gt;m_codeBlockForCall-&gt;visitWeakly(visitor);
-    visitor.append(&amp;thisObject-&gt;m_module);
-}
-#endif
-
-} // namespace JSC
</del></span></pre></div>
<a id="trunkSourceJavaScriptCoreruntimeWebAssemblyExecutableh"></a>
<div class="delfile"><h4>Deleted: trunk/Source/JavaScriptCore/runtime/WebAssemblyExecutable.h (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/runtime/WebAssemblyExecutable.h        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/JavaScriptCore/runtime/WebAssemblyExecutable.h        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -1,75 +0,0 @@
</span><del>-/*
- * Copyright (C) 2009, 2010, 2013-2016 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
- */
-
-#pragma once
-
-#include &quot;ExecutableBase.h&quot;
-
-namespace JSC {
-
-#if ENABLE(WEBASSEMBLY)
-class WebAssemblyExecutable final : public ExecutableBase {
-public:
-    typedef ExecutableBase Base;
-    static const unsigned StructureFlags = Base::StructureFlags | StructureIsImmortal;
-
-    static WebAssemblyExecutable* create(VM&amp; vm, const SourceCode&amp; source, JSWebAssemblyModule* module, unsigned functionIndex)
-    {
-        WebAssemblyExecutable* executable = new (NotNull, allocateCell&lt;WebAssemblyExecutable&gt;(vm.heap)) WebAssemblyExecutable(vm, source, module, functionIndex);
-        executable-&gt;finishCreation(vm);
-        return executable;
-    }
-
-    static Structure* createStructure(VM&amp; vm, JSGlobalObject* globalObject, JSValue proto)
-    {
-        return Structure::create(vm, globalObject, proto, TypeInfo(WebAssemblyExecutableType, StructureFlags), info());
-    }
-
-    static void destroy(JSCell*);
-
-    DECLARE_INFO;
-
-    void prepareForExecution(VM&amp;);
-
-    WebAssemblyCodeBlock* codeBlockForCall()
-    {
-        return m_codeBlockForCall.get();
-    }
-
-private:
-    friend class ExecutableBase;
-    WebAssemblyExecutable(VM&amp;, const SourceCode&amp;, JSWebAssemblyModule*, unsigned functionIndex);
-
-    static void visitChildren(JSCell*, SlotVisitor&amp;);
-
-    SourceCode m_source;
-    WriteBarrier&lt;JSWebAssemblyModule&gt; m_module;
-    unsigned m_functionIndex;
-
-    WriteBarrier&lt;WebAssemblyCodeBlock&gt; m_codeBlockForCall;
-};
-#endif
-
-} // namespace JSC
</del></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/WebCore/ChangeLog        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -1,3 +1,13 @@
</span><ins>+2016-12-06  Saam Barati  &lt;sbarati@apple.com&gt;
+
+        Remove old Wasm object model
+        https://bugs.webkit.org/show_bug.cgi?id=165481
+
+        Reviewed by Keith Miller and Mark Lam.
+
+        * testing/Internals.cpp:
+        (WebCore::Internals::parserMetaData):
+
</ins><span class="cx"> 2016-12-06  Antoine Quint  &lt;graouts@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         [Modern Media Controls] Media controls use the fullscreen layout after going from inline to fullscreen to PiP to inline
</span></span></pre></div>
<a id="trunkSourceWebCoretestingInternalscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/testing/Internals.cpp (209432 => 209433)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/testing/Internals.cpp        2016-12-06 23:48:40 UTC (rev 209432)
+++ trunk/Source/WebCore/testing/Internals.cpp        2016-12-07 00:27:58 UTC (rev 209433)
</span><span class="lines">@@ -1553,10 +1553,6 @@
</span><span class="cx">         result.appendLiteral(&quot;module&quot;);
</span><span class="cx">     else if (executable-&gt;isProgramExecutable())
</span><span class="cx">         result.appendLiteral(&quot;program&quot;);
</span><del>-#if ENABLE(WEBASSEMBLY)
-    else if (executable-&gt;isWebAssemblyExecutable())
-        result.appendLiteral(&quot;WebAssembly&quot;);
-#endif
</del><span class="cx">     else
</span><span class="cx">         ASSERT_NOT_REACHED();
</span><span class="cx"> 
</span></span></pre>
</div>
</div>

</body>
</html>