<!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>[197803] trunk</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/197803">197803</a></dd>
<dt>Author</dt> <dd>commit-queue@webkit.org</dd>
<dt>Date</dt> <dd>2016-03-08 13:58:30 -0800 (Tue, 08 Mar 2016)</dd>
</dl>

<h3>Log Message</h3>
<pre>Unreviewed, rolling out <a href="http://trac.webkit.org/projects/webkit/changeset/197793">r197793</a> and <a href="http://trac.webkit.org/projects/webkit/changeset/197799">r197799</a>.
https://bugs.webkit.org/show_bug.cgi?id=155195

something weird happened while landing this and everything
broke (Requested by olliej on #webkit).

Reverted changesets:

&quot;Start moving to separated writable and executable mappings in
the JIT&quot;
https://bugs.webkit.org/show_bug.cgi?id=155178
http://trac.webkit.org/changeset/197793

&quot;arm64 build fix after <a href="http://trac.webkit.org/projects/webkit/changeset/197793">r197793</a>.&quot;
http://trac.webkit.org/changeset/197799</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceJavaScriptCoreChangeLog">trunk/Source/JavaScriptCore/ChangeLog</a></li>
<li><a href="#trunkSourceJavaScriptCoreConfigurationsFeatureDefinesxcconfig">trunk/Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig</a></li>
<li><a href="#trunkSourceJavaScriptCoreassemblerARM64Assemblerh">trunk/Source/JavaScriptCore/assembler/ARM64Assembler.h</a></li>
<li><a href="#trunkSourceJavaScriptCoreassemblerLinkBuffercpp">trunk/Source/JavaScriptCore/assembler/LinkBuffer.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCoreassemblerLinkBufferh">trunk/Source/JavaScriptCore/assembler/LinkBuffer.h</a></li>
<li><a href="#trunkSourceJavaScriptCoreassemblerMacroAssemblerARM64h">trunk/Source/JavaScriptCore/assembler/MacroAssemblerARM64.h</a></li>
<li><a href="#trunkSourceJavaScriptCorejitExecutableAllocatorh">trunk/Source/JavaScriptCore/jit/ExecutableAllocator.h</a></li>
<li><a href="#trunkSourceJavaScriptCorejitExecutableAllocatorFixedVMPoolcpp">trunk/Source/JavaScriptCore/jit/ExecutableAllocatorFixedVMPool.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCoreruntimeOptionscpp">trunk/Source/JavaScriptCore/runtime/Options.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCoreruntimeOptionsh">trunk/Source/JavaScriptCore/runtime/Options.h</a></li>
<li><a href="#trunkSourceWTFChangeLog">trunk/Source/WTF/ChangeLog</a></li>
<li><a href="#trunkSourceWTFwtfFeatureDefinesh">trunk/Source/WTF/wtf/FeatureDefines.h</a></li>
<li><a href="#trunkSourceWTFwtfPlatformh">trunk/Source/WTF/wtf/Platform.h</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreConfigurationsFeatureDefinesxcconfig">trunk/Source/WebCore/Configurations/FeatureDefines.xcconfig</a></li>
<li><a href="#trunkSourceWebKitmacChangeLog">trunk/Source/WebKit/mac/ChangeLog</a></li>
<li><a href="#trunkSourceWebKitmacConfigurationsFeatureDefinesxcconfig">trunk/Source/WebKit/mac/Configurations/FeatureDefines.xcconfig</a></li>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2ConfigurationsFeatureDefinesxcconfig">trunk/Source/WebKit2/Configurations/FeatureDefines.xcconfig</a></li>
<li><a href="#trunkToolsChangeLog">trunk/Tools/ChangeLog</a></li>
<li><a href="#trunkToolsScriptsrunjscbenchmarks">trunk/Tools/Scripts/run-jsc-benchmarks</a></li>
</ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkSourceJavaScriptCorejitExecutableAllocatorFixedVMMachcpp">trunk/Source/JavaScriptCore/jit/ExecutableAllocatorFixedVMMach.cpp</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceJavaScriptCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/ChangeLog (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/ChangeLog        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/JavaScriptCore/ChangeLog        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -1,3 +1,21 @@
</span><ins>+2016-03-08  Commit Queue  &lt;commit-queue@webkit.org&gt;
+
+        Unreviewed, rolling out r197793 and r197799.
+        https://bugs.webkit.org/show_bug.cgi?id=155195
+
+        something weird happened while landing this and everything
+        broke (Requested by olliej on #webkit).
+
+        Reverted changesets:
+
+        &quot;Start moving to separated writable and executable mappings in
+        the JIT&quot;
+        https://bugs.webkit.org/show_bug.cgi?id=155178
+        http://trac.webkit.org/changeset/197793
+
+        &quot;arm64 build fix after r197793.&quot;
+        http://trac.webkit.org/changeset/197799
+
</ins><span class="cx"> 2016-03-08  Alex Christensen  &lt;achristensen@webkit.org&gt;
</span><span class="cx"> 
</span><span class="cx">         arm64 build fix after r197793.
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreConfigurationsFeatureDefinesxcconfig"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -194,7 +194,4 @@
</span><span class="cx"> ENABLE_SHADOW_DOM = ENABLE_SHADOW_DOM;
</span><span class="cx"> ENABLE_CUSTOM_ELEMENTS = ENABLE_CUSTOM_ELEMENTS;
</span><span class="cx"> 
</span><del>-ENABLE_SEPARATED_WX_HEAP[sdk=iphone*] = ENABLE_SEPARATED_WX_HEAP;
-ENABLE_SEPARATED_WX_HEAP[sdk=macosx*] = ;
-
-FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_AVF_CAPTIONS) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_ES6_ARROWFUNCTION_SYNTAX) $(ENABLE_ES6_CLASS_SYNTAX) $(ENABLE_ES6_GENERATORS) $(ENABLE_ES6_MODULES) $(ENABLE_ES6_TEMPLATE_LITERAL_SYNTAX) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_SHAPES) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS3_TEXT_LINE_BREAK) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(ENABLE_DEVICE
 _ORIENTATION) $(ENABLE_DOM4_EVENTS_CONSTRUCTOR) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_ENCRYPTED_MEDIA_V2) $(ENABLE_FETCH_API) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FONT_LOAD_EVENTS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GAMEPAD_DEPRECATED) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDIE_UI) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TEXT_AUTOSIZING) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(E
 NABLE_MATHML) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_HWCONCURRENCY) $(ENABLE_NOTIFICATIONS) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_REQUEST_AUTOCOMPLETE) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_SVG_OTF_CONVERTER) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEMPLATE_ELEMENT) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_USERSELECT_ALL) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_DA
 TACUE_VALUE) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_XSLT) $(ENABLE_FTL_JIT) $(ENABLE_JIT) $(ENABLE_SHADOW_DOM) $(ENABLE_CUSTOM_ELEMENTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_SEPARATED_WX_HEAP);
</del><ins>+FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_AVF_CAPTIONS) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_ES6_ARROWFUNCTION_SYNTAX) $(ENABLE_ES6_CLASS_SYNTAX) $(ENABLE_ES6_GENERATORS) $(ENABLE_ES6_MODULES) $(ENABLE_ES6_TEMPLATE_LITERAL_SYNTAX) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_SHAPES) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS3_TEXT_LINE_BREAK) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(EN
 ABLE_DEVICE_ORIENTATION) $(ENABLE_DOM4_EVENTS_CONSTRUCTOR) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_ENCRYPTED_MEDIA_V2) $(ENABLE_FETCH_API) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FONT_LOAD_EVENTS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GAMEPAD_DEPRECATED) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDIE_UI) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TEXT_AUTOSIZING) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_
 EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_HWCONCURRENCY) $(ENABLE_NOTIFICATIONS) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_REQUEST_AUTOCOMPLETE) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_SVG_OTF_CONVERTER) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEMPLATE_ELEMENT) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_USERSELECT_ALL) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) 
 $(ENABLE_DATACUE_VALUE) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_XSLT) $(ENABLE_FTL_JIT) $(ENABLE_JIT) $(ENABLE_SHADOW_DOM) $(ENABLE_CUSTOM_ELEMENTS) $(ENABLE_VIDEO_PRESENTATION_MODE);
</ins></span></pre></div>
<a id="trunkSourceJavaScriptCoreassemblerARM64Assemblerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/assembler/ARM64Assembler.h (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/assembler/ARM64Assembler.h        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/JavaScriptCore/assembler/ARM64Assembler.h        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -1088,20 +1088,6 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     template&lt;int datasize&gt;
</span><del>-    ALWAYS_INLINE void ldp(RegisterID rt, RegisterID rt2, RegisterID rn, unsigned pimm = 0)
-    {
-        CHECK_DATASIZE();
-        insn(loadStoreRegisterPairOffset(MEMPAIROPSIZE_INT(datasize), false, MemOp_LOAD, pimm, rn, rt, rt2));
-    }
-
-    template&lt;int datasize&gt;
-    ALWAYS_INLINE void ldnp(RegisterID rt, RegisterID rt2, RegisterID rn, unsigned pimm = 0)
-    {
-        CHECK_DATASIZE();
-        insn(loadStoreRegisterPairNonTemporal(MEMPAIROPSIZE_INT(datasize), false, MemOp_LOAD, pimm, rn, rt, rt2));
-    }
-
-    template&lt;int datasize&gt;
</del><span class="cx">     ALWAYS_INLINE void ldr(RegisterID rt, RegisterID rn, RegisterID rm)
</span><span class="cx">     {
</span><span class="cx">         ldr&lt;datasize&gt;(rt, rn, rm, UXTX, 0);
</span><span class="lines">@@ -1488,10 +1474,8 @@
</span><span class="cx">     {
</span><span class="cx">         RELEASE_ASSERT(!(size % sizeof(int32_t)));
</span><span class="cx">         size_t n = size / sizeof(int32_t);
</span><del>-        for (int32_t* ptr = static_cast&lt;int32_t*&gt;(base); n--;) {
-            int insn = nopPseudo();
-            performJITMemcpy(ptr++, &amp;insn, sizeof(int));
-        }
</del><ins>+        for (int32_t* ptr = static_cast&lt;int32_t*&gt;(base); n--;)
+            *ptr++ = nopPseudo();
</ins><span class="cx">     }
</span><span class="cx">     
</span><span class="cx">     ALWAYS_INLINE void dmbSY()
</span><span class="lines">@@ -1662,20 +1646,6 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     template&lt;int datasize&gt;
</span><del>-    ALWAYS_INLINE void stp(RegisterID rt, RegisterID rt2, RegisterID rn, unsigned pimm = 0)
-    {
-        CHECK_DATASIZE();
-        insn(loadStoreRegisterPairOffset(MEMPAIROPSIZE_INT(datasize), false, MemOp_STORE, pimm, rn, rt, rt2));
-    }
-
-    template&lt;int datasize&gt;
-    ALWAYS_INLINE void stnp(RegisterID rt, RegisterID rt2, RegisterID rn, unsigned pimm = 0)
-    {
-        CHECK_DATASIZE();
-        insn(loadStoreRegisterPairNonTemporal(MEMPAIROPSIZE_INT(datasize), false, MemOp_STORE, pimm, rn, rt, rt2));
-    }
-
-    template&lt;int datasize&gt;
</del><span class="cx">     ALWAYS_INLINE void str(RegisterID rt, RegisterID rn, RegisterID rm)
</span><span class="cx">     {
</span><span class="cx">         str&lt;datasize&gt;(rt, rn, rm, UXTX, 0);
</span><span class="lines">@@ -2500,8 +2470,7 @@
</span><span class="cx">     {
</span><span class="cx">         intptr_t offset = (reinterpret_cast&lt;intptr_t&gt;(to) - reinterpret_cast&lt;intptr_t&gt;(where)) &gt;&gt; 2;
</span><span class="cx">         ASSERT(static_cast&lt;int&gt;(offset) == offset);
</span><del>-        int insn = unconditionalBranchImmediate(false, static_cast&lt;int&gt;(offset));
-        performJITMemcpy(where, &amp;insn, sizeof(int));
</del><ins>+        *static_cast&lt;int*&gt;(where) = unconditionalBranchImmediate(false, static_cast&lt;int&gt;(offset));
</ins><span class="cx">         cacheFlush(where, sizeof(int));
</span><span class="cx">     }
</span><span class="cx">     
</span><span class="lines">@@ -2525,8 +2494,7 @@
</span><span class="cx">             ASSERT(!S);
</span><span class="cx">             ASSERT(!shift);
</span><span class="cx">             ASSERT(!(imm12 &amp; ~0xff8));
</span><del>-            int insn = loadStoreRegisterUnsignedImmediate(MemOpSize_64, false, MemOp_LOAD, encodePositiveImmediate&lt;64&gt;(imm12), rn, rd);
-            performJITMemcpy(where, &amp;insn, sizeof(int));
</del><ins>+            *static_cast&lt;int*&gt;(where) = loadStoreRegisterUnsignedImmediate(MemOpSize_64, false, MemOp_LOAD, encodePositiveImmediate&lt;64&gt;(imm12), rn, rd);
</ins><span class="cx">             cacheFlush(where, sizeof(int));
</span><span class="cx">         }
</span><span class="cx"> #if !ASSERT_DISABLED
</span><span class="lines">@@ -2559,8 +2527,7 @@
</span><span class="cx">             ASSERT(!V);
</span><span class="cx">             ASSERT(opc == MemOp_LOAD);
</span><span class="cx">             ASSERT(!(imm12 &amp; ~0x1ff));
</span><del>-            int insn = addSubtractImmediate(Datasize_64, AddOp_ADD, DontSetFlags, 0, imm12 * sizeof(void*), rn, rt);
-            performJITMemcpy(where, &amp;insn, sizeof(int));
</del><ins>+            *static_cast&lt;int*&gt;(where) = addSubtractImmediate(Datasize_64, AddOp_ADD, DontSetFlags, 0, imm12 * sizeof(void*), rn, rt);
</ins><span class="cx">             cacheFlush(where, sizeof(int));
</span><span class="cx">         }
</span><span class="cx"> #if !ASSERT_DISABLED
</span><span class="lines">@@ -2590,11 +2557,9 @@
</span><span class="cx">     static void setPointer(int* address, void* valuePtr, RegisterID rd, bool flush)
</span><span class="cx">     {
</span><span class="cx">         uintptr_t value = reinterpret_cast&lt;uintptr_t&gt;(valuePtr);
</span><del>-        int buffer[3];
-        buffer[0] = moveWideImediate(Datasize_64, MoveWideOp_Z, 0, getHalfword(value, 0), rd);
-        buffer[1] = moveWideImediate(Datasize_64, MoveWideOp_K, 1, getHalfword(value, 1), rd);
-        buffer[2] = moveWideImediate(Datasize_64, MoveWideOp_K, 2, getHalfword(value, 2), rd);
-        performJITMemcpy(address, buffer, sizeof(int) * 3);
</del><ins>+        address[0] = moveWideImediate(Datasize_64, MoveWideOp_Z, 0, getHalfword(value, 0), rd);
+        address[1] = moveWideImediate(Datasize_64, MoveWideOp_K, 1, getHalfword(value, 1), rd);
+        address[2] = moveWideImediate(Datasize_64, MoveWideOp_K, 2, getHalfword(value, 2), rd);
</ins><span class="cx"> 
</span><span class="cx">         if (flush)
</span><span class="cx">             cacheFlush(address, sizeof(int) * 3);
</span><span class="lines">@@ -2613,15 +2578,13 @@
</span><span class="cx">         ASSERT_UNUSED(expected, expected &amp;&amp; !sf &amp;&amp; (opc == MoveWideOp_Z || opc == MoveWideOp_N) &amp;&amp; !hw);
</span><span class="cx">         ASSERT(checkMovk&lt;Datasize_32&gt;(address[1], 1, rd));
</span><span class="cx"> 
</span><del>-        int buffer[2];
</del><span class="cx">         if (value &gt;= 0) {
</span><del>-            buffer[0] = moveWideImediate(Datasize_32, MoveWideOp_Z, 0, getHalfword(value, 0), rd);
-            buffer[1] = moveWideImediate(Datasize_32, MoveWideOp_K, 1, getHalfword(value, 1), rd);
</del><ins>+            address[0] = moveWideImediate(Datasize_32, MoveWideOp_Z, 0, getHalfword(value, 0), rd);
+            address[1] = moveWideImediate(Datasize_32, MoveWideOp_K, 1, getHalfword(value, 1), rd);
</ins><span class="cx">         } else {
</span><del>-            buffer[0] = moveWideImediate(Datasize_32, MoveWideOp_N, 0, ~getHalfword(value, 0), rd);
-            buffer[1] = moveWideImediate(Datasize_32, MoveWideOp_K, 1, getHalfword(value, 1), rd);
</del><ins>+            address[0] = moveWideImediate(Datasize_32, MoveWideOp_N, 0, ~getHalfword(value, 0), rd);
+            address[1] = moveWideImediate(Datasize_32, MoveWideOp_K, 1, getHalfword(value, 1), rd);
</ins><span class="cx">         }
</span><del>-        performJITMemcpy(where, &amp;buffer, sizeof(int) * 2);
</del><span class="cx"> 
</span><span class="cx">         cacheFlush(where, sizeof(int) * 2);
</span><span class="cx">     }
</span><span class="lines">@@ -2685,8 +2648,7 @@
</span><span class="cx">             imm12 = encodePositiveImmediate&lt;32&gt;(value);
</span><span class="cx">         else
</span><span class="cx">             imm12 = encodePositiveImmediate&lt;64&gt;(value);
</span><del>-        int insn = loadStoreRegisterUnsignedImmediate(size, V, opc, imm12, rn, rt);
-        performJITMemcpy(where, &amp;insn, sizeof(int));
</del><ins>+        *static_cast&lt;int*&gt;(where) = loadStoreRegisterUnsignedImmediate(size, V, opc, imm12, rn, rt);
</ins><span class="cx"> 
</span><span class="cx">         cacheFlush(where, sizeof(int));
</span><span class="cx">     }
</span><span class="lines">@@ -2883,8 +2845,7 @@
</span><span class="cx">         intptr_t offset = (reinterpret_cast&lt;intptr_t&gt;(to) - reinterpret_cast&lt;intptr_t&gt;(from)) &gt;&gt; 2;
</span><span class="cx">         ASSERT(static_cast&lt;int&gt;(offset) == offset);
</span><span class="cx"> 
</span><del>-        int insn = unconditionalBranchImmediate(isCall, static_cast&lt;int&gt;(offset));
-        performJITMemcpy(from, &amp;insn, sizeof(int));
</del><ins>+        *from = unconditionalBranchImmediate(isCall, static_cast&lt;int&gt;(offset));
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     template&lt;bool isDirect&gt;
</span><span class="lines">@@ -2899,15 +2860,11 @@
</span><span class="cx">         ASSERT(!isDirect || useDirect);
</span><span class="cx"> 
</span><span class="cx">         if (useDirect || isDirect) {
</span><del>-            int insn = compareAndBranchImmediate(is64Bit ? Datasize_64 : Datasize_32, condition == ConditionNE, static_cast&lt;int&gt;(offset), rt);
-            performJITMemcpy(from, &amp;insn, sizeof(int));
-            if (!isDirect) {
-                insn = nopPseudo();
-                performJITMemcpy(from + 1, &amp;insn, sizeof(int));
-            }
</del><ins>+            *from = compareAndBranchImmediate(is64Bit ? Datasize_64 : Datasize_32, condition == ConditionNE, static_cast&lt;int&gt;(offset), rt);
+            if (!isDirect)
+                *(from + 1) = nopPseudo();
</ins><span class="cx">         } else {
</span><del>-            int insn = compareAndBranchImmediate(is64Bit ? Datasize_64 : Datasize_32, invert(condition) == ConditionNE, 2, rt);
-            performJITMemcpy(from, &amp;insn, sizeof(int));
</del><ins>+            *from = compareAndBranchImmediate(is64Bit ? Datasize_64 : Datasize_32, invert(condition) == ConditionNE, 2, rt);
</ins><span class="cx">             linkJumpOrCall&lt;false&gt;(from + 1, to);
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="lines">@@ -2924,15 +2881,11 @@
</span><span class="cx">         ASSERT(!isDirect || useDirect);
</span><span class="cx"> 
</span><span class="cx">         if (useDirect || isDirect) {
</span><del>-            int insn = conditionalBranchImmediate(static_cast&lt;int&gt;(offset), condition);
-            performJITMemcpy(from, &amp;insn, sizeof(int));
-            if (!isDirect) {
-                insn = nopPseudo();
-                performJITMemcpy(from + 1, &amp;insn, sizeof(int));
-            }
</del><ins>+            *from = conditionalBranchImmediate(static_cast&lt;int&gt;(offset), condition);
+            if (!isDirect)
+                *(from + 1) = nopPseudo();
</ins><span class="cx">         } else {
</span><del>-            int insn = conditionalBranchImmediate(2, invert(condition));
-            performJITMemcpy(from, &amp;insn, sizeof(int));
</del><ins>+            *from = conditionalBranchImmediate(2, invert(condition));
</ins><span class="cx">             linkJumpOrCall&lt;false&gt;(from + 1, to);
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="lines">@@ -2950,15 +2903,11 @@
</span><span class="cx">         ASSERT(!isDirect || useDirect);
</span><span class="cx"> 
</span><span class="cx">         if (useDirect || isDirect) {
</span><del>-            int insn = testAndBranchImmediate(condition == ConditionNE, static_cast&lt;int&gt;(bitNumber), static_cast&lt;int&gt;(offset), rt);
-            performJITMemcpy(from, &amp;insn, sizeof(int));
-            if (!isDirect) {
-                insn = nopPseudo();
-                performJITMemcpy(from + 1, &amp;insn, sizeof(int));
-            }
</del><ins>+            *from = testAndBranchImmediate(condition == ConditionNE, static_cast&lt;int&gt;(bitNumber), static_cast&lt;int&gt;(offset), rt);
+            if (!isDirect)
+                *(from + 1) = nopPseudo();
</ins><span class="cx">         } else {
</span><del>-            int insn = testAndBranchImmediate(invert(condition) == ConditionNE, static_cast&lt;int&gt;(bitNumber), 2, rt);
-            performJITMemcpy(from, &amp;insn, sizeof(int));
</del><ins>+            *from = testAndBranchImmediate(invert(condition) == ConditionNE, static_cast&lt;int&gt;(bitNumber), 2, rt);
</ins><span class="cx">             linkJumpOrCall&lt;false&gt;(from + 1, to);
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="lines">@@ -3400,40 +3349,6 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     // 'V' means vector
</span><del>-    ALWAYS_INLINE static int loadStoreRegisterPairOffset(MemPairOpSize size, bool V, MemOp opc, int immediate, RegisterID rn, FPRegisterID rt, FPRegisterID rt2)
-    {
-        ASSERT(size &lt; 3);
-        ASSERT(opc == (opc &amp; 1)); // Only load or store, load signed 64 is handled via size.
-        ASSERT(V || (size != MemPairOp_LoadSigned_32) || (opc == MemOp_LOAD)); // There isn't an integer store signed.
-        unsigned immedShiftAmount = memPairOffsetShift(V, size);
-        int imm7 = immediate &gt;&gt; immedShiftAmount;
-        ASSERT((imm7 &lt;&lt; immedShiftAmount) == immediate &amp;&amp; isInt7(imm7));
-        return (0x29000000 | size &lt;&lt; 30 | V &lt;&lt; 26 | opc &lt;&lt; 22 | (imm7 &amp; 0x7f) &lt;&lt; 15 | rt2 &lt;&lt; 10 | xOrSp(rn) &lt;&lt; 5 | rt);
-    }
-
-    ALWAYS_INLINE static int loadStoreRegisterPairOffset(MemPairOpSize size, bool V, MemOp opc, int immediate, RegisterID rn, RegisterID rt, RegisterID rt2)
-    {
-        return loadStoreRegisterPairOffset(size, V, opc, immediate, rn, xOrZrAsFPR(rt), xOrZrAsFPR(rt2));
-    }
-
-    // 'V' means vector
-    ALWAYS_INLINE static int loadStoreRegisterPairNonTemporal(MemPairOpSize size, bool V, MemOp opc, int immediate, RegisterID rn, FPRegisterID rt, FPRegisterID rt2)
-    {
-        ASSERT(size &lt; 3);
-        ASSERT(opc == (opc &amp; 1)); // Only load or store, load signed 64 is handled via size.
-        ASSERT(V || (size != MemPairOp_LoadSigned_32) || (opc == MemOp_LOAD)); // There isn't an integer store signed.
-        unsigned immedShiftAmount = memPairOffsetShift(V, size);
-        int imm7 = immediate &gt;&gt; immedShiftAmount;
-        ASSERT((imm7 &lt;&lt; immedShiftAmount) == immediate &amp;&amp; isInt7(imm7));
-        return (0x28000000 | size &lt;&lt; 30 | V &lt;&lt; 26 | opc &lt;&lt; 22 | (imm7 &amp; 0x7f) &lt;&lt; 15 | rt2 &lt;&lt; 10 | xOrSp(rn) &lt;&lt; 5 | rt);
-    }
-
-    ALWAYS_INLINE static int loadStoreRegisterPairNonTemporal(MemPairOpSize size, bool V, MemOp opc, int immediate, RegisterID rn, RegisterID rt, RegisterID rt2)
-    {
-        return loadStoreRegisterPairNonTemporal(size, V, opc, immediate, rn, xOrZrAsFPR(rt), xOrZrAsFPR(rt2));
-    }
-
-    // 'V' means vector
</del><span class="cx">     // 'S' means shift rm
</span><span class="cx">     ALWAYS_INLINE static int loadStoreRegisterRegisterOffset(MemOpSize size, bool V, MemOp opc, RegisterID rm, ExtendType option, bool S, RegisterID rn, FPRegisterID rt)
</span><span class="cx">     {
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreassemblerLinkBuffercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/assembler/LinkBuffer.cpp (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/assembler/LinkBuffer.cpp        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/JavaScriptCore/assembler/LinkBuffer.cpp        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -105,12 +105,7 @@
</span><span class="cx">     Vector&lt;LinkRecord, 0, UnsafeVectorOverflow&gt;&amp; jumpsToLink = macroAssembler.jumpsToLink();
</span><span class="cx">     m_assemblerStorage = macroAssembler.m_assembler.buffer().releaseAssemblerData();
</span><span class="cx">     uint8_t* inData = reinterpret_cast&lt;uint8_t*&gt;(m_assemblerStorage.buffer());
</span><del>-#if ENABLE(SEPARATED_WX_HEAP)
-    AssemblerData outBuffer(m_size);
-    uint8_t* outData = reinterpret_cast&lt;uint8_t*&gt;(outBuffer.buffer());
-#else
</del><span class="cx">     uint8_t* outData = reinterpret_cast&lt;uint8_t*&gt;(m_code);
</span><del>-#endif
</del><span class="cx">     int readPtr = 0;
</span><span class="cx">     int writePtr = 0;
</span><span class="cx">     unsigned jumpCount = jumpsToLink.size();
</span><span class="lines">@@ -165,10 +160,6 @@
</span><span class="cx">     jumpsToLink.clear();
</span><span class="cx">     shrink(writePtr + m_initialSize - readPtr);
</span><span class="cx"> 
</span><del>-#if ENABLE(SEPARATED_WX_HEAP)
-    performJITMemcpy(m_code, outBuffer.buffer(), m_size);
-#endif
-
</del><span class="cx"> #if DUMP_LINK_STATISTICS
</span><span class="cx">     dumpLinkStatistics(m_code, m_initialSize, m_size);
</span><span class="cx"> #endif
</span><span class="lines">@@ -217,7 +208,6 @@
</span><span class="cx">         return;
</span><span class="cx">     }
</span><span class="cx">     
</span><del>-    ASSERT(m_vm != nullptr);
</del><span class="cx">     m_executableMemory = m_vm-&gt;executableAllocator.allocate(*m_vm, initialSize, ownerUID, effort);
</span><span class="cx">     if (!m_executableMemory)
</span><span class="cx">         return;
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreassemblerLinkBufferh"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/assembler/LinkBuffer.h (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/assembler/LinkBuffer.h        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/JavaScriptCore/assembler/LinkBuffer.h        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -95,19 +95,19 @@
</span><span class="cx">         linkCode(macroAssembler, ownerUID, effort);
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    LinkBuffer(MacroAssembler&amp; macroAssembler, void* code, size_t size, JITCompilationEffort effort = JITCompilationMustSucceed)
</del><ins>+    LinkBuffer(VM&amp; vm, MacroAssembler&amp; macroAssembler, void* code, size_t size)
</ins><span class="cx">         : m_size(size)
</span><span class="cx"> #if ENABLE(BRANCH_COMPACTION)
</span><span class="cx">         , m_initialSize(0)
</span><span class="cx"> #endif
</span><span class="cx">         , m_didAllocate(false)
</span><span class="cx">         , m_code(code)
</span><del>-        , m_vm(0)
</del><ins>+        , m_vm(&amp;vm)
</ins><span class="cx"> #ifndef NDEBUG
</span><span class="cx">         , m_completed(false)
</span><span class="cx"> #endif
</span><span class="cx">     {
</span><del>-        linkCode(macroAssembler, 0, effort);
</del><ins>+        linkCode(macroAssembler, 0, JITCompilationCanFail);
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     ~LinkBuffer()
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreassemblerMacroAssemblerARM64h"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/assembler/MacroAssemblerARM64.h (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/assembler/MacroAssemblerARM64.h        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/JavaScriptCore/assembler/MacroAssemblerARM64.h        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -761,11 +761,6 @@
</span><span class="cx">     {
</span><span class="cx">         m_assembler.sub&lt;64&gt;(dest, dest, src);
</span><span class="cx">     }
</span><del>-
-    void sub64(RegisterID a, RegisterID b, RegisterID dest)
-    {
-        m_assembler.sub&lt;64&gt;(dest, a, b);
-    }
</del><span class="cx">     
</span><span class="cx">     void sub64(TrustedImm32 imm, RegisterID dest)
</span><span class="cx">     {
</span><span class="lines">@@ -965,11 +960,6 @@
</span><span class="cx">         load&lt;64&gt;(address, dest);
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    void load64(RegisterID src, PostIndex simm, RegisterID dest)
-    {
-        m_assembler.ldr&lt;64&gt;(dest, src, simm);
-    }
-
</del><span class="cx">     DataLabel32 load64WithAddressOffsetPatch(Address address, RegisterID dest)
</span><span class="cx">     {
</span><span class="cx">         DataLabel32 label(this);
</span><span class="lines">@@ -986,26 +976,6 @@
</span><span class="cx">         return label;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    void loadPair64(RegisterID src, RegisterID dest1, RegisterID dest2)
-    {
-        loadPair64(src, TrustedImm32(0), dest1, dest2);
-    }
-
-    void loadPair64(RegisterID src, TrustedImm32 offset, RegisterID dest1, RegisterID dest2)
-    {
-        m_assembler.ldp&lt;64&gt;(dest1, dest2, src, offset.m_value);
-    }
-
-    void loadPair64WithNonTemporalAccess(RegisterID src, RegisterID dest1, RegisterID dest2)
-    {
-        loadPair64WithNonTemporalAccess(src, TrustedImm32(0), dest1, dest2);
-    }
-
-    void loadPair64WithNonTemporalAccess(RegisterID src, TrustedImm32 offset, RegisterID dest1, RegisterID dest2)
-    {
-        m_assembler.ldnp&lt;64&gt;(dest1, dest2, src, offset.m_value);
-    }
-
</del><span class="cx">     void abortWithReason(AbortReason reason)
</span><span class="cx">     {
</span><span class="cx">         move(TrustedImm32(reason), dataTempRegister);
</span><span class="lines">@@ -1159,11 +1129,6 @@
</span><span class="cx">             cachedMemoryTempRegister().invalidate();
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    void load8(RegisterID src, PostIndex simm, RegisterID dest)
-    {
-        m_assembler.ldr&lt;8&gt;(dest, src, simm);
-    }
-
</del><span class="cx">     void load8SignedExtendTo32(ImplicitAddress address, RegisterID dest)
</span><span class="cx">     {
</span><span class="cx">         if (tryLoadSignedWithOffset&lt;8&gt;(dest, address.base, address.offset))
</span><span class="lines">@@ -1247,11 +1212,6 @@
</span><span class="cx">         moveToCachedReg(imm, dataMemoryTempRegister());
</span><span class="cx">         store64(dataTempRegister, address);
</span><span class="cx">     }
</span><del>-
-    void store64(RegisterID src, RegisterID dest, PostIndex simm)
-    {
-        m_assembler.str&lt;64&gt;(src, dest, simm);
-    }
</del><span class="cx">     
</span><span class="cx">     DataLabel32 store64WithAddressOffsetPatch(RegisterID src, Address address)
</span><span class="cx">     {
</span><span class="lines">@@ -1261,26 +1221,6 @@
</span><span class="cx">         return label;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    void storePair64(RegisterID src1, RegisterID src2, RegisterID dest)
-    {
-        storePair64(src1, src2, dest, TrustedImm32(0));
-    }
-
-    void storePair64(RegisterID src1, RegisterID src2, RegisterID dest, TrustedImm32 offset)
-    {
-        m_assembler.stp&lt;64&gt;(src1, src2, dest, offset.m_value);
-    }
-
-    void storePair64WithNonTemporalAccess(RegisterID src1, RegisterID src2, RegisterID dest)
-    {
-        storePair64WithNonTemporalAccess(src1, src2, dest, TrustedImm32(0));
-    }
-
-    void storePair64WithNonTemporalAccess(RegisterID src1, RegisterID src2, RegisterID dest, TrustedImm32 offset)
-    {
-        m_assembler.stnp&lt;64&gt;(src1, src2, dest, offset.m_value);
-    }
-
</del><span class="cx">     void store32(RegisterID src, ImplicitAddress address)
</span><span class="cx">     {
</span><span class="cx">         if (tryStoreWithOffset&lt;32&gt;(src, address.base, address.offset))
</span><span class="lines">@@ -1428,11 +1368,6 @@
</span><span class="cx">         store8(dataTempRegister, address);
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    void store8(RegisterID src, RegisterID dest, PostIndex simm)
-    {
-        m_assembler.str&lt;8&gt;(src, dest, simm);
-    }
-
</del><span class="cx">     // Floating-point operations:
</span><span class="cx"> 
</span><span class="cx">     static bool supportsFloatingPoint() { return true; }
</span><span class="lines">@@ -2651,13 +2586,6 @@
</span><span class="cx">         return branchAdd64(cond, dest, imm, dest);
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    Jump branchAdd64(RelationalCondition cond, TrustedImm32 imm, RegisterID dest)
-    {
-        ASSERT(isUInt12(imm.m_value));
-        m_assembler.add&lt;64, S&gt;(dest, dest, UInt12(imm.m_value));
-        return Jump(makeBranch(cond));
-    }
-
</del><span class="cx">     Jump branchMul32(ResultCondition cond, RegisterID src1, RegisterID src2, RegisterID scratch1, RegisterID scratch2, RegisterID dest)
</span><span class="cx">     {
</span><span class="cx">         ASSERT(cond != Signed);
</span><span class="lines">@@ -2803,14 +2731,7 @@
</span><span class="cx">         return branchSub64(cond, dest, imm, dest);
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    Jump branchSub64(RelationalCondition cond, TrustedImm32 imm, RegisterID dest)
-    {
-        ASSERT(isUInt12(imm.m_value));
-        m_assembler.sub&lt;64, S&gt;(dest, dest, UInt12(imm.m_value));
-        return Jump(makeBranch(cond));
-    }
</del><span class="cx"> 
</span><del>-
</del><span class="cx">     // Jumps, calls, returns
</span><span class="cx"> 
</span><span class="cx">     ALWAYS_INLINE Call call()
</span></span></pre></div>
<a id="trunkSourceJavaScriptCorejitExecutableAllocatorh"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/jit/ExecutableAllocator.h (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/jit/ExecutableAllocator.h        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/JavaScriptCore/jit/ExecutableAllocator.h        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -90,31 +90,8 @@
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> extern uintptr_t startOfFixedExecutableMemoryPool;
</span><del>-extern uintptr_t endOfFixedExecutableMemoryPool;
-
-#if ENABLE(SEPARATED_WX_HEAP)
-extern uintptr_t jitWriteFunctionAddress;
</del><span class="cx"> #endif
</span><del>-#endif // ENABLE(EXECUTABLE_ALLOCATOR_FIXED)
</del><span class="cx"> 
</span><del>-static inline void* performJITMemcpy(void *dst, const void *src, size_t n)
-{
-#if ENABLE(SEPARATED_WX_HEAP)
-    // Use execute-only write thunk for writes inside the JIT region. This is a variant of
-    // memcpy that takes an offset into the JIT region as its destination (first) parameter.
-    if (jitWriteFunctionAddress &amp;&amp; (uintptr_t)dst &gt;= startOfFixedExecutableMemoryPool &amp;&amp; (uintptr_t)dst &lt;= endOfFixedExecutableMemoryPool) {
-        using JITWriteFunction = void (*)(off_t, const void*, size_t);
-        JITWriteFunction func = (JITWriteFunction)jitWriteFunctionAddress;
-        off_t offset = (off_t)((uintptr_t)dst - startOfFixedExecutableMemoryPool);
-        func(offset, src, n);
-        return dst;
-    }
-#endif
-
-    // Use regular memcpy for writes outside the JIT region.
-    return memcpy(dst, src, n);
-}
-
</del><span class="cx"> class ExecutableAllocator {
</span><span class="cx">     enum ProtectionSetting { Writable, Executable };
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceJavaScriptCorejitExecutableAllocatorFixedVMMachcpp"></a>
<div class="delfile"><h4>Deleted: trunk/Source/JavaScriptCore/jit/ExecutableAllocatorFixedVMMach.cpp (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/jit/ExecutableAllocatorFixedVMMach.cpp        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/JavaScriptCore/jit/ExecutableAllocatorFixedVMMach.cpp        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -1,9 +0,0 @@
</span><del>-//
-//  ExecutableAllocatorFixedVMMach.cpp
-//  JavaScriptCore
-//
-//  Created by Oliver Hunt on 3/8/16.
-//
-//
-
-#include &quot;ExecutableAllocatorFixedVMMach.hpp&quot;
</del></span></pre></div>
<a id="trunkSourceJavaScriptCorejitExecutableAllocatorFixedVMPoolcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/jit/ExecutableAllocatorFixedVMPool.cpp (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/jit/ExecutableAllocatorFixedVMPool.cpp        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/JavaScriptCore/jit/ExecutableAllocatorFixedVMPool.cpp        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -48,28 +48,12 @@
</span><span class="cx"> #include &lt;stdio.h&gt;
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><del>-#if ENABLE(SEPARATED_WX_HEAP)
-#include &quot;LinkBuffer.h&quot;
-#include &quot;MacroAssembler.h&quot;
-
-#if OS(DARWIN)
-#include &lt;mach/mach.h&gt;
-#include &lt;mach/mach_vm.h&gt;
-#endif
-
-#endif
-
</del><span class="cx"> using namespace WTF;
</span><span class="cx"> 
</span><span class="cx"> namespace JSC {
</span><ins>+    
+uintptr_t startOfFixedExecutableMemoryPool;
</ins><span class="cx"> 
</span><del>-JS_EXPORT_PRIVATE uintptr_t startOfFixedExecutableMemoryPool;
-JS_EXPORT_PRIVATE uintptr_t endOfFixedExecutableMemoryPool;
-
-#if ENABLE(SEPARATED_WX_HEAP)
-JS_EXPORT_PRIVATE uintptr_t jitWriteFunctionAddress;
-#endif
-
</del><span class="cx"> class FixedVMPoolExecutableAllocator : public MetaAllocator {
</span><span class="cx">     WTF_MAKE_FAST_ALLOCATED;
</span><span class="cx"> public:
</span><span class="lines">@@ -85,22 +69,9 @@
</span><span class="cx">         m_reservation = PageReservation::reserveWithGuardPages(reservationSize, OSAllocator::JSJITCodePages, EXECUTABLE_POOL_WRITABLE, true);
</span><span class="cx">         if (m_reservation) {
</span><span class="cx">             ASSERT(m_reservation.size() == reservationSize);
</span><del>-            void* reservationBase = m_reservation.base();
-
-#if ENABLE(SEPARATED_WX_HEAP)
-            if (Options::useBulletproofJIT()) {
-                // First page of our JIT allocation is reserved.
-                ASSERT(reservationSize &gt;= pageSize() * 2);
-                reservationBase = (void*)((uintptr_t)reservationBase + pageSize());
-                reservationSize -= pageSize();
-                initializeBulletproofJIT(m_reservation.base(), pageSize(), reservationBase, reservationSize);
-            }
-#endif
-
-            addFreshFreeSpace(reservationBase, reservationSize);
-
-            startOfFixedExecutableMemoryPool = reinterpret_cast&lt;uintptr_t&gt;(reservationBase);
-            endOfFixedExecutableMemoryPool = startOfFixedExecutableMemoryPool + reservationSize;
</del><ins>+            addFreshFreeSpace(m_reservation.base(), m_reservation.size());
+            
+            startOfFixedExecutableMemoryPool = reinterpret_cast&lt;uintptr_t&gt;(m_reservation.base());
</ins><span class="cx">         }
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="lines">@@ -141,113 +112,6 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-#if ENABLE(SEPARATED_WX_HEAP)
-    void initializeBulletproofJIT(void* stubBase, size_t stubSize, void* jitBase, size_t jitSize)
-    {
-        mach_vm_address_t writableAddr = 0;
-
-        // Create a second mapping of the JIT region at a random address.
-        vm_prot_t cur, max;
-        kern_return_t ret = mach_vm_remap(mach_task_self(), &amp;writableAddr, jitSize, 0,
-            VM_FLAGS_ANYWHERE | VM_FLAGS_RANDOM_ADDR,
-            mach_task_self(), (mach_vm_address_t)jitBase, FALSE,
-            &amp;cur, &amp;max, VM_INHERIT_DEFAULT);
-
-        RELEASE_ASSERT(ret == KERN_SUCCESS);
-
-
-        // Assemble a thunk that will serve as the means for writing into the JIT region.
-        MacroAssemblerCodeRef writeThunk = jitWriteThunkGenerator(writableAddr, stubBase, stubSize);
-
-#if defined(VM_PROT_EXECUTE_ONLY)
-        // Prevent reading the write thunk code.
-        int result = mprotect(stubBase, stubSize, VM_PROT_EXECUTE_ONLY);
-        RELEASE_ASSERT(!result);
-#endif
-        
-        // Prevent writing into the executable JIT mapping.
-        result = mprotect(jitBase, jitSize, VM_PROT_READ | VM_PROT_EXECUTE);
-        RELEASE_ASSERT(!result);
-
-        // Prevent execution in the writable JIT mapping.
-        result = mprotect((void*)writableAddr, jitSize, VM_PROT_READ | VM_PROT_WRITE);
-        RELEASE_ASSERT(!result);
-
-        // Zero out writableAddr to avoid leaking the address of the writable mapping.
-        memset_s(&amp;writableAddr, sizeof(writableAddr), 0, sizeof(writableAddr));
-
-        jitWriteFunctionAddress = (uintptr_t)writeThunk.code().executableAddress();
-    }
-
-#if CPU(ARM64)
-    MacroAssemblerCodeRef jitWriteThunkGenerator(mach_vm_address_t writableAddr, void* stubBase, size_t stubSize)
-    {
-        using namespace ARM64Registers;
-        using TrustedImm32 = MacroAssembler::TrustedImm32;
-
-        MacroAssembler jit;
-
-        jit.move(MacroAssembler::TrustedImmPtr((const void*)writableAddr), x7);
-        jit.addPtr(x7, x0);
-
-        jit.move(x0, x3);
-        MacroAssembler::Jump smallCopy = jit.branch64(MacroAssembler::Below, x2, MacroAssembler::TrustedImm64(64));
-
-        jit.add64(TrustedImm32(32), x3);
-        jit.and64(TrustedImm32(-32), x3);
-        jit.loadPair64(x1, x12, x13);
-        jit.loadPair64(x1, TrustedImm32(16), x14, x15);
-        jit.sub64(x3, x0, x5);
-        jit.addPtr(x5, x1);
-
-        jit.loadPair64(x1, x8, x9);
-        jit.loadPair64(x1, TrustedImm32(16), x10, x11);
-        jit.add64(TrustedImm32(32), x1);
-        jit.sub64(x5, x2);
-        jit.storePair64(x12, x13, x0);
-        jit.storePair64(x14, x15, x0, TrustedImm32(16));
-        MacroAssembler::Jump cleanup = jit.branchSub64(MacroAssembler::BelowOrEqual, TrustedImm32(64), x2);
-
-        MacroAssembler::Label copyLoop = jit.label();
-        jit.storePair64WithNonTemporalAccess(x8, x9, x3);
-        jit.storePair64WithNonTemporalAccess(x10, x11, x3, TrustedImm32(16));
-        jit.add64(TrustedImm32(32), x3);
-        jit.loadPair64WithNonTemporalAccess(x1, x8, x9);
-        jit.loadPair64WithNonTemporalAccess(x1, TrustedImm32(16), x10, x11);
-        jit.add64(TrustedImm32(32), x1);
-        jit.branchSub64(MacroAssembler::Above, TrustedImm32(32), x2).linkTo(copyLoop, &amp;jit);
-
-        cleanup.link(&amp;jit);
-        jit.add64(x2, x1);
-        jit.loadPair64(x1, x12, x13);
-        jit.loadPair64(x1, TrustedImm32(16), x14, x15);
-        jit.storePair64(x8, x9, x3);
-        jit.storePair64(x10, x11, x3, TrustedImm32(16));
-        jit.addPtr(x2, x3);
-        jit.storePair64(x12, x13, x3, TrustedImm32(32));
-        jit.storePair64(x14, x15, x3, TrustedImm32(48));
-        jit.ret();
-
-        MacroAssembler::Label local0 = jit.label();
-        jit.load64(x1, PostIndex(8), x6);
-        jit.store64(x6, x3, PostIndex(8));
-        smallCopy.link(&amp;jit);
-        jit.branchSub64(MacroAssembler::AboveOrEqual, TrustedImm32(8), x2).linkTo(local0, &amp;jit);
-        MacroAssembler::Jump local2 = jit.branchAdd64(MacroAssembler::Equal, TrustedImm32(8), x2);
-        MacroAssembler::Label local1 = jit.label();
-        jit.load8(x1, PostIndex(1), x6);
-        jit.store8(x6, x3, PostIndex(1));
-        jit.branchSub64(MacroAssembler::NotEqual, TrustedImm32(1), x2).linkTo(local1, &amp;jit);
-        local2.link(&amp;jit);
-        jit.ret();
-
-        LinkBuffer linkBuffer(jit, stubBase, stubSize);
-        return FINALIZE_CODE(linkBuffer, (&quot;Bulletproof JIT write thunk&quot;));
-    }
-#endif // CPU(ARM64)
-#endif // ENABLE(SEPARATED_WX_HEAP)
-
-private:
</del><span class="cx">     PageReservation m_reservation;
</span><span class="cx"> };
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreruntimeOptionscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/runtime/Options.cpp (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/runtime/Options.cpp        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/JavaScriptCore/runtime/Options.cpp        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -294,9 +294,6 @@
</span><span class="cx"> #if !ENABLE(FTL_JIT)
</span><span class="cx">     Options::useFTLJIT() = false;
</span><span class="cx"> #endif
</span><del>-#if !ENABLE(SEPARATED_WX_HEAP)
-    Options::useSeparatedWXHeap() = false;
-#endif
</del><span class="cx"> #if OS(WINDOWS) &amp;&amp; CPU(X86) 
</span><span class="cx">     // Disable JIT on Windows if SSE2 is not present 
</span><span class="cx">     if (!MacroAssemblerX86::supportsFloatingPoint())
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreruntimeOptionsh"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/runtime/Options.h (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/runtime/Options.h        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/JavaScriptCore/runtime/Options.h        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -118,7 +118,6 @@
</span><span class="cx">     \
</span><span class="cx">     v(bool, crashIfCantAllocateJITMemory, false, nullptr) \
</span><span class="cx">     v(unsigned, jitMemoryReservationSize, 0, &quot;Set this number to change the executable allocation size in ExecutableAllocatorFixedVMPool. (In bytes.)&quot;) \
</span><del>-    v(bool, useSeparatedWXHeap, true, nullptr) \
</del><span class="cx">     \
</span><span class="cx">     v(bool, forceCodeBlockLiveness, false, nullptr) \
</span><span class="cx">     v(bool, forceICFailure, false, nullptr) \
</span></span></pre></div>
<a id="trunkSourceWTFChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WTF/ChangeLog (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WTF/ChangeLog        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/WTF/ChangeLog        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -1,3 +1,21 @@
</span><ins>+2016-03-08  Commit Queue  &lt;commit-queue@webkit.org&gt;
+
+        Unreviewed, rolling out r197793 and r197799.
+        https://bugs.webkit.org/show_bug.cgi?id=155195
+
+        something weird happened while landing this and everything
+        broke (Requested by olliej on #webkit).
+
+        Reverted changesets:
+
+        &quot;Start moving to separated writable and executable mappings in
+        the JIT&quot;
+        https://bugs.webkit.org/show_bug.cgi?id=155178
+        http://trac.webkit.org/changeset/197793
+
+        &quot;arm64 build fix after r197793.&quot;
+        http://trac.webkit.org/changeset/197799
+
</ins><span class="cx"> 2016-03-08  Oliver Hunt  &lt;oliver@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Start moving to separated writable and executable mappings in the JIT
</span></span></pre></div>
<a id="trunkSourceWTFwtfFeatureDefinesh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WTF/wtf/FeatureDefines.h (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WTF/wtf/FeatureDefines.h        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/WTF/wtf/FeatureDefines.h        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -823,10 +823,6 @@
</span><span class="cx"> #define ENABLE_XSLT 1
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><del>-#if !defined(ENABLE_SEPARATED_WX_HEAP)
-#define ENABLE_SEPARATED_WX_HEAP 0
-#endif
-
</del><span class="cx"> /* Asserts, invariants for macro definitions */
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(VIDEO_TRACK) &amp;&amp; !ENABLE(VIDEO)
</span></span></pre></div>
<a id="trunkSourceWTFwtfPlatformh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WTF/wtf/Platform.h (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WTF/wtf/Platform.h        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/WTF/wtf/Platform.h        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -1138,8 +1138,4 @@
</span><span class="cx"> #define USE_OS_LOG 1
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><del>-#if !CPU(ARM64) &amp;&amp; defined(ENABLE_SEPARATED_WX_HEAP)
-#undef ENABLE_SEPARATED_WX_HEAP
-#endif
-
</del><span class="cx"> #endif /* WTF_Platform_h */
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/WebCore/ChangeLog        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -1,3 +1,21 @@
</span><ins>+2016-03-08  Commit Queue  &lt;commit-queue@webkit.org&gt;
+
+        Unreviewed, rolling out r197793 and r197799.
+        https://bugs.webkit.org/show_bug.cgi?id=155195
+
+        something weird happened while landing this and everything
+        broke (Requested by olliej on #webkit).
+
+        Reverted changesets:
+
+        &quot;Start moving to separated writable and executable mappings in
+        the JIT&quot;
+        https://bugs.webkit.org/show_bug.cgi?id=155178
+        http://trac.webkit.org/changeset/197793
+
+        &quot;arm64 build fix after r197793.&quot;
+        http://trac.webkit.org/changeset/197799
+
</ins><span class="cx"> 2016-03-08  Mark Lam  &lt;mark.lam@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         synthesizePrototype() and friends need to be followed by exception checks (or equivalent).
</span></span></pre></div>
<a id="trunkSourceWebCoreConfigurationsFeatureDefinesxcconfig"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/Configurations/FeatureDefines.xcconfig (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/Configurations/FeatureDefines.xcconfig        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/WebCore/Configurations/FeatureDefines.xcconfig        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -194,7 +194,4 @@
</span><span class="cx"> ENABLE_SHADOW_DOM = ENABLE_SHADOW_DOM;
</span><span class="cx"> ENABLE_CUSTOM_ELEMENTS = ENABLE_CUSTOM_ELEMENTS;
</span><span class="cx"> 
</span><del>-ENABLE_SEPARATED_WX_HEAP[sdk=iphone*] = ENABLE_SEPARATED_WX_HEAP;
-ENABLE_SEPARATED_WX_HEAP[sdk=macosx*] = ;
-
-FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_AVF_CAPTIONS) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_ES6_ARROWFUNCTION_SYNTAX) $(ENABLE_ES6_CLASS_SYNTAX) $(ENABLE_ES6_GENERATORS) $(ENABLE_ES6_MODULES) $(ENABLE_ES6_TEMPLATE_LITERAL_SYNTAX) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_SHAPES) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS3_TEXT_LINE_BREAK) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(ENABLE_DEVICE
 _ORIENTATION) $(ENABLE_DOM4_EVENTS_CONSTRUCTOR) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_ENCRYPTED_MEDIA_V2) $(ENABLE_FETCH_API) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FONT_LOAD_EVENTS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GAMEPAD_DEPRECATED) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDIE_UI) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TEXT_AUTOSIZING) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(E
 NABLE_MATHML) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_HWCONCURRENCY) $(ENABLE_NOTIFICATIONS) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_REQUEST_AUTOCOMPLETE) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_SVG_OTF_CONVERTER) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEMPLATE_ELEMENT) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_USERSELECT_ALL) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_DA
 TACUE_VALUE) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_XSLT) $(ENABLE_FTL_JIT) $(ENABLE_JIT) $(ENABLE_SHADOW_DOM) $(ENABLE_CUSTOM_ELEMENTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_SEPARATED_WX_HEAP);
</del><ins>+FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_AVF_CAPTIONS) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_ES6_ARROWFUNCTION_SYNTAX) $(ENABLE_ES6_CLASS_SYNTAX) $(ENABLE_ES6_GENERATORS) $(ENABLE_ES6_MODULES) $(ENABLE_ES6_TEMPLATE_LITERAL_SYNTAX) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_SHAPES) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS3_TEXT_LINE_BREAK) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(EN
 ABLE_DEVICE_ORIENTATION) $(ENABLE_DOM4_EVENTS_CONSTRUCTOR) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_ENCRYPTED_MEDIA_V2) $(ENABLE_FETCH_API) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FONT_LOAD_EVENTS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GAMEPAD_DEPRECATED) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDIE_UI) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TEXT_AUTOSIZING) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_
 EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_HWCONCURRENCY) $(ENABLE_NOTIFICATIONS) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_REQUEST_AUTOCOMPLETE) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_SVG_OTF_CONVERTER) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEMPLATE_ELEMENT) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_USERSELECT_ALL) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) 
 $(ENABLE_DATACUE_VALUE) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_XSLT) $(ENABLE_FTL_JIT) $(ENABLE_JIT) $(ENABLE_SHADOW_DOM) $(ENABLE_CUSTOM_ELEMENTS) $(ENABLE_VIDEO_PRESENTATION_MODE);
</ins></span></pre></div>
<a id="trunkSourceWebKitmacChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/ChangeLog (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/ChangeLog        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/WebKit/mac/ChangeLog        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -1,3 +1,21 @@
</span><ins>+2016-03-08  Commit Queue  &lt;commit-queue@webkit.org&gt;
+
+        Unreviewed, rolling out r197793 and r197799.
+        https://bugs.webkit.org/show_bug.cgi?id=155195
+
+        something weird happened while landing this and everything
+        broke (Requested by olliej on #webkit).
+
+        Reverted changesets:
+
+        &quot;Start moving to separated writable and executable mappings in
+        the JIT&quot;
+        https://bugs.webkit.org/show_bug.cgi?id=155178
+        http://trac.webkit.org/changeset/197793
+
+        &quot;arm64 build fix after r197793.&quot;
+        http://trac.webkit.org/changeset/197799
+
</ins><span class="cx"> 2016-03-08  Oliver Hunt  &lt;oliver@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Start moving to separated writable and executable mappings in the JIT
</span></span></pre></div>
<a id="trunkSourceWebKitmacConfigurationsFeatureDefinesxcconfig"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/Configurations/FeatureDefines.xcconfig (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/Configurations/FeatureDefines.xcconfig        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/WebKit/mac/Configurations/FeatureDefines.xcconfig        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -194,7 +194,4 @@
</span><span class="cx"> ENABLE_SHADOW_DOM = ENABLE_SHADOW_DOM;
</span><span class="cx"> ENABLE_CUSTOM_ELEMENTS = ENABLE_CUSTOM_ELEMENTS;
</span><span class="cx"> 
</span><del>-ENABLE_SEPARATED_WX_HEAP[sdk=iphone*] = ENABLE_SEPARATED_WX_HEAP;
-ENABLE_SEPARATED_WX_HEAP[sdk=macosx*] = ;
-
-FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_AVF_CAPTIONS) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_ES6_ARROWFUNCTION_SYNTAX) $(ENABLE_ES6_CLASS_SYNTAX) $(ENABLE_ES6_GENERATORS) $(ENABLE_ES6_MODULES) $(ENABLE_ES6_TEMPLATE_LITERAL_SYNTAX) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_SHAPES) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS3_TEXT_LINE_BREAK) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(ENABLE_DEVICE
 _ORIENTATION) $(ENABLE_DOM4_EVENTS_CONSTRUCTOR) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_ENCRYPTED_MEDIA_V2) $(ENABLE_FETCH_API) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FONT_LOAD_EVENTS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GAMEPAD_DEPRECATED) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDIE_UI) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TEXT_AUTOSIZING) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(E
 NABLE_MATHML) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_HWCONCURRENCY) $(ENABLE_NOTIFICATIONS) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_REQUEST_AUTOCOMPLETE) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_SVG_OTF_CONVERTER) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEMPLATE_ELEMENT) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_USERSELECT_ALL) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_DA
 TACUE_VALUE) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_XSLT) $(ENABLE_FTL_JIT) $(ENABLE_JIT) $(ENABLE_SHADOW_DOM) $(ENABLE_CUSTOM_ELEMENTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_SEPARATED_WX_HEAP);
</del><ins>+FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_AVF_CAPTIONS) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_ES6_ARROWFUNCTION_SYNTAX) $(ENABLE_ES6_CLASS_SYNTAX) $(ENABLE_ES6_GENERATORS) $(ENABLE_ES6_MODULES) $(ENABLE_ES6_TEMPLATE_LITERAL_SYNTAX) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_SHAPES) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS3_TEXT_LINE_BREAK) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(EN
 ABLE_DEVICE_ORIENTATION) $(ENABLE_DOM4_EVENTS_CONSTRUCTOR) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_ENCRYPTED_MEDIA_V2) $(ENABLE_FETCH_API) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FONT_LOAD_EVENTS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GAMEPAD_DEPRECATED) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDIE_UI) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TEXT_AUTOSIZING) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_
 EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_HWCONCURRENCY) $(ENABLE_NOTIFICATIONS) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_REQUEST_AUTOCOMPLETE) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_SVG_OTF_CONVERTER) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEMPLATE_ELEMENT) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_USERSELECT_ALL) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) 
 $(ENABLE_DATACUE_VALUE) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_XSLT) $(ENABLE_FTL_JIT) $(ENABLE_JIT) $(ENABLE_SHADOW_DOM) $(ENABLE_CUSTOM_ELEMENTS) $(ENABLE_VIDEO_PRESENTATION_MODE);
</ins></span></pre></div>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/ChangeLog        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/WebKit2/ChangeLog        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -1,3 +1,21 @@
</span><ins>+2016-03-08  Commit Queue  &lt;commit-queue@webkit.org&gt;
+
+        Unreviewed, rolling out r197793 and r197799.
+        https://bugs.webkit.org/show_bug.cgi?id=155195
+
+        something weird happened while landing this and everything
+        broke (Requested by olliej on #webkit).
+
+        Reverted changesets:
+
+        &quot;Start moving to separated writable and executable mappings in
+        the JIT&quot;
+        https://bugs.webkit.org/show_bug.cgi?id=155178
+        http://trac.webkit.org/changeset/197793
+
+        &quot;arm64 build fix after r197793.&quot;
+        http://trac.webkit.org/changeset/197799
+
</ins><span class="cx"> 2016-03-08  Brent Fulgham  &lt;bfulgham@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         [WK2] Grant explicit read access to ManagedPreferences
</span></span></pre></div>
<a id="trunkSourceWebKit2ConfigurationsFeatureDefinesxcconfig"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Configurations/FeatureDefines.xcconfig (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Configurations/FeatureDefines.xcconfig        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Source/WebKit2/Configurations/FeatureDefines.xcconfig        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -194,7 +194,4 @@
</span><span class="cx"> ENABLE_SHADOW_DOM = ENABLE_SHADOW_DOM;
</span><span class="cx"> ENABLE_CUSTOM_ELEMENTS = ENABLE_CUSTOM_ELEMENTS;
</span><span class="cx"> 
</span><del>-ENABLE_SEPARATED_WX_HEAP[sdk=iphone*] = ENABLE_SEPARATED_WX_HEAP;
-ENABLE_SEPARATED_WX_HEAP[sdk=macosx*] = ;
-
-FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_AVF_CAPTIONS) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_ES6_ARROWFUNCTION_SYNTAX) $(ENABLE_ES6_CLASS_SYNTAX) $(ENABLE_ES6_GENERATORS) $(ENABLE_ES6_MODULES) $(ENABLE_ES6_TEMPLATE_LITERAL_SYNTAX) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_SHAPES) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS3_TEXT_LINE_BREAK) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(ENABLE_DEVICE
 _ORIENTATION) $(ENABLE_DOM4_EVENTS_CONSTRUCTOR) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_ENCRYPTED_MEDIA_V2) $(ENABLE_FETCH_API) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FONT_LOAD_EVENTS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GAMEPAD_DEPRECATED) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDIE_UI) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TEXT_AUTOSIZING) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(E
 NABLE_MATHML) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_HWCONCURRENCY) $(ENABLE_NOTIFICATIONS) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_REQUEST_AUTOCOMPLETE) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_SVG_OTF_CONVERTER) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEMPLATE_ELEMENT) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_USERSELECT_ALL) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_DA
 TACUE_VALUE) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_XSLT) $(ENABLE_FTL_JIT) $(ENABLE_JIT) $(ENABLE_SHADOW_DOM) $(ENABLE_CUSTOM_ELEMENTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_SEPARATED_WX_HEAP);
</del><ins>+FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_AVF_CAPTIONS) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_ES6_ARROWFUNCTION_SYNTAX) $(ENABLE_ES6_CLASS_SYNTAX) $(ENABLE_ES6_GENERATORS) $(ENABLE_ES6_MODULES) $(ENABLE_ES6_TEMPLATE_LITERAL_SYNTAX) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_SHAPES) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS3_TEXT_LINE_BREAK) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(EN
 ABLE_DEVICE_ORIENTATION) $(ENABLE_DOM4_EVENTS_CONSTRUCTOR) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_ENCRYPTED_MEDIA_V2) $(ENABLE_FETCH_API) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FONT_LOAD_EVENTS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GAMEPAD_DEPRECATED) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDIE_UI) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TEXT_AUTOSIZING) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_
 EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_HWCONCURRENCY) $(ENABLE_NOTIFICATIONS) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_REQUEST_AUTOCOMPLETE) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_SVG_OTF_CONVERTER) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEMPLATE_ELEMENT) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_USERSELECT_ALL) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) 
 $(ENABLE_DATACUE_VALUE) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_XSLT) $(ENABLE_FTL_JIT) $(ENABLE_JIT) $(ENABLE_SHADOW_DOM) $(ENABLE_CUSTOM_ELEMENTS) $(ENABLE_VIDEO_PRESENTATION_MODE);
</ins></span></pre></div>
<a id="trunkToolsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Tools/ChangeLog (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/ChangeLog        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Tools/ChangeLog        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -1,3 +1,21 @@
</span><ins>+2016-03-08  Commit Queue  &lt;commit-queue@webkit.org&gt;
+
+        Unreviewed, rolling out r197793 and r197799.
+        https://bugs.webkit.org/show_bug.cgi?id=155195
+
+        something weird happened while landing this and everything
+        broke (Requested by olliej on #webkit).
+
+        Reverted changesets:
+
+        &quot;Start moving to separated writable and executable mappings in
+        the JIT&quot;
+        https://bugs.webkit.org/show_bug.cgi?id=155178
+        http://trac.webkit.org/changeset/197793
+
+        &quot;arm64 build fix after r197793.&quot;
+        http://trac.webkit.org/changeset/197799
+
</ins><span class="cx"> 2016-03-08  Oliver Hunt  &lt;oliver@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Start moving to separated writable and executable mappings in the JIT
</span></span></pre></div>
<a id="trunkToolsScriptsrunjscbenchmarks"></a>
<div class="modfile"><h4>Modified: trunk/Tools/Scripts/run-jsc-benchmarks (197802 => 197803)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/Scripts/run-jsc-benchmarks        2016-03-08 21:56:14 UTC (rev 197802)
+++ trunk/Tools/Scripts/run-jsc-benchmarks        2016-03-08 21:58:30 UTC (rev 197803)
</span><span class="lines">@@ -2861,7 +2861,7 @@
</span><span class="cx">       nameKind = :auto
</span><span class="cx">     end
</span><span class="cx">     envs = []
</span><del>-    while vm =~ /([a-zA-Z0-9_]+)=([a-zA-Z0-9_:.\/-]+):/
</del><ins>+    while vm =~ /([a-zA-Z0-9_]+)=([a-zA-Z0-9_:.]+):/
</ins><span class="cx">       envs &lt;&lt; [$1, $2]
</span><span class="cx">       vm = $~.post_match
</span><span class="cx">     end
</span></span></pre>
</div>
</div>

</body>
</html>