<!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>[169584] branches/ftlopt/Source/JavaScriptCore</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/169584">169584</a></dd>
<dt>Author</dt> <dd>fpizlo@apple.com</dd>
<dt>Date</dt> <dd>2014-06-03 21:47:43 -0700 (Tue, 03 Jun 2014)</dd>
</dl>

<h3>Log Message</h3>
<pre>[ftlopt] Unreviewed, roll out <a href="http://trac.webkit.org/projects/webkit/changeset/169578">r169578</a>. The build system needs some more love.

* InlineRuntimeSymbolTable.h: Removed.
* JavaScriptCore.xcodeproj/project.pbxproj:
* build-symbol-table-index.py:
* build-symbol-table-index.sh:
* copy-llvm-ir-to-derived-sources.sh:
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleCall):
* dfg/DFGNode.h:
(JSC::DFG::Node::canBeKnownFunction): Deleted.
(JSC::DFG::Node::hasKnownFunction): Deleted.
(JSC::DFG::Node::knownFunction): Deleted.
(JSC::DFG::Node::giveKnownFunction): Deleted.
* ftl/FTLAbbreviatedTypes.h:
* ftl/FTLCompile.cpp:
(JSC::FTL::compile):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::LowerDFGToLLVM):
(JSC::FTL::LowerDFGToLLVM::lower):
(JSC::FTL::LowerDFGToLLVM::compileCallOrConstruct):
(JSC::FTL::LowerDFGToLLVM::possiblyCompileInlineableNativeCall): Deleted.
(JSC::FTL::LowerDFGToLLVM::getFunctionBySymbol): Deleted.
(JSC::FTL::LowerDFGToLLVM::getModuleByPathForSymbol): Deleted.
(JSC::FTL::LowerDFGToLLVM::isInlinableSize): Deleted.
* ftl/FTLState.cpp:
(JSC::FTL::State::State):
* ftl/FTLState.h:
* heap/HandleStack.h:
* llvm/InitializeLLVM.h:
* llvm/InitializeLLVMMac.cpp: Removed.
* llvm/InitializeLLVMMac.mm: Added.
(JSC::initializeLLVMImpl):
* llvm/LLVMAPIFunctions.h:
* llvm/LLVMHeaders.h:
* runtime/BundlePath.h: Removed.
* runtime/BundlePath.mm: Removed.
* runtime/DateConversion.h:
* runtime/DateInstance.h:
* runtime/ExceptionHelpers.h:
* runtime/JSArray.h:
* runtime/JSCJSValue.h:
(JSC::JSValue::toFloat):
* runtime/JSDateMath.h:
* runtime/JSObject.h:
* runtime/JSWrapperObject.h:
* runtime/Options.h:
* runtime/RegExp.h:
* runtime/StringObject.h:
* runtime/Structure.h:
* tested-symbols.symlst: Removed.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#branchesftloptSourceJavaScriptCoreChangeLog">branches/ftlopt/Source/JavaScriptCore/ChangeLog</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreJavaScriptCorexcodeprojprojectpbxproj">branches/ftlopt/Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj</a></li>
<li><a href="#branchesftloptSourceJavaScriptCorebuildsymboltableindexpy">branches/ftlopt/Source/JavaScriptCore/build-symbol-table-index.py</a></li>
<li><a href="#branchesftloptSourceJavaScriptCorebuildsymboltableindexsh">branches/ftlopt/Source/JavaScriptCore/build-symbol-table-index.sh</a></li>
<li><a href="#branchesftloptSourceJavaScriptCorecopyllvmirtoderivedsourcessh">branches/ftlopt/Source/JavaScriptCore/copy-llvm-ir-to-derived-sources.sh</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoredfgDFGByteCodeParsercpp">branches/ftlopt/Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoredfgDFGNodeh">branches/ftlopt/Source/JavaScriptCore/dfg/DFGNode.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreftlFTLAbbreviatedTypesh">branches/ftlopt/Source/JavaScriptCore/ftl/FTLAbbreviatedTypes.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreftlFTLCompilecpp">branches/ftlopt/Source/JavaScriptCore/ftl/FTLCompile.cpp</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreftlFTLLowerDFGToLLVMcpp">branches/ftlopt/Source/JavaScriptCore/ftl/FTLLowerDFGToLLVM.cpp</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreftlFTLStatecpp">branches/ftlopt/Source/JavaScriptCore/ftl/FTLState.cpp</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreftlFTLStateh">branches/ftlopt/Source/JavaScriptCore/ftl/FTLState.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreheapHandleStackh">branches/ftlopt/Source/JavaScriptCore/heap/HandleStack.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCorellvmInitializeLLVMh">branches/ftlopt/Source/JavaScriptCore/llvm/InitializeLLVM.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCorellvmLLVMAPIFunctionsh">branches/ftlopt/Source/JavaScriptCore/llvm/LLVMAPIFunctions.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCorellvmLLVMHeadersh">branches/ftlopt/Source/JavaScriptCore/llvm/LLVMHeaders.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreruntimeDateConversionh">branches/ftlopt/Source/JavaScriptCore/runtime/DateConversion.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreruntimeDateInstanceh">branches/ftlopt/Source/JavaScriptCore/runtime/DateInstance.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreruntimeExceptionHelpersh">branches/ftlopt/Source/JavaScriptCore/runtime/ExceptionHelpers.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreruntimeJSArrayh">branches/ftlopt/Source/JavaScriptCore/runtime/JSArray.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreruntimeJSCJSValueh">branches/ftlopt/Source/JavaScriptCore/runtime/JSCJSValue.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreruntimeJSDateMathh">branches/ftlopt/Source/JavaScriptCore/runtime/JSDateMath.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreruntimeJSObjecth">branches/ftlopt/Source/JavaScriptCore/runtime/JSObject.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreruntimeJSWrapperObjecth">branches/ftlopt/Source/JavaScriptCore/runtime/JSWrapperObject.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreruntimeOptionsh">branches/ftlopt/Source/JavaScriptCore/runtime/Options.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreruntimeRegExph">branches/ftlopt/Source/JavaScriptCore/runtime/RegExp.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreruntimeStringObjecth">branches/ftlopt/Source/JavaScriptCore/runtime/StringObject.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreruntimeStructureh">branches/ftlopt/Source/JavaScriptCore/runtime/Structure.h</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#branchesftloptSourceJavaScriptCorellvmInitializeLLVMMacmm">branches/ftlopt/Source/JavaScriptCore/llvm/InitializeLLVMMac.mm</a></li>
</ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#branchesftloptSourceJavaScriptCoreInlineRuntimeSymbolTableh">branches/ftlopt/Source/JavaScriptCore/InlineRuntimeSymbolTable.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCorellvmInitializeLLVMMaccpp">branches/ftlopt/Source/JavaScriptCore/llvm/InitializeLLVMMac.cpp</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreruntimeBundlePathh">branches/ftlopt/Source/JavaScriptCore/runtime/BundlePath.h</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoreruntimeBundlePathmm">branches/ftlopt/Source/JavaScriptCore/runtime/BundlePath.mm</a></li>
<li><a href="#branchesftloptSourceJavaScriptCoretestedsymbolssymlst">branches/ftlopt/Source/JavaScriptCore/tested-symbols.symlst</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="branchesftloptSourceJavaScriptCoreChangeLog"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/ChangeLog (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/ChangeLog        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/ChangeLog        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -1,5 +1,59 @@
</span><span class="cx"> 2014-06-03  Filip Pizlo  &lt;fpizlo@apple.com&gt;
</span><span class="cx"> 
</span><ins>+        [ftlopt] Unreviewed, roll out r169578. The build system needs some more love.
+
+        * InlineRuntimeSymbolTable.h: Removed.
+        * JavaScriptCore.xcodeproj/project.pbxproj:
+        * build-symbol-table-index.py:
+        * build-symbol-table-index.sh:
+        * copy-llvm-ir-to-derived-sources.sh:
+        * dfg/DFGByteCodeParser.cpp:
+        (JSC::DFG::ByteCodeParser::handleCall):
+        * dfg/DFGNode.h:
+        (JSC::DFG::Node::canBeKnownFunction): Deleted.
+        (JSC::DFG::Node::hasKnownFunction): Deleted.
+        (JSC::DFG::Node::knownFunction): Deleted.
+        (JSC::DFG::Node::giveKnownFunction): Deleted.
+        * ftl/FTLAbbreviatedTypes.h:
+        * ftl/FTLCompile.cpp:
+        (JSC::FTL::compile):
+        * ftl/FTLLowerDFGToLLVM.cpp:
+        (JSC::FTL::LowerDFGToLLVM::LowerDFGToLLVM):
+        (JSC::FTL::LowerDFGToLLVM::lower):
+        (JSC::FTL::LowerDFGToLLVM::compileCallOrConstruct):
+        (JSC::FTL::LowerDFGToLLVM::possiblyCompileInlineableNativeCall): Deleted.
+        (JSC::FTL::LowerDFGToLLVM::getFunctionBySymbol): Deleted.
+        (JSC::FTL::LowerDFGToLLVM::getModuleByPathForSymbol): Deleted.
+        (JSC::FTL::LowerDFGToLLVM::isInlinableSize): Deleted.
+        * ftl/FTLState.cpp:
+        (JSC::FTL::State::State):
+        * ftl/FTLState.h:
+        * heap/HandleStack.h:
+        * llvm/InitializeLLVM.h:
+        * llvm/InitializeLLVMMac.cpp: Removed.
+        * llvm/InitializeLLVMMac.mm: Added.
+        (JSC::initializeLLVMImpl):
+        * llvm/LLVMAPIFunctions.h:
+        * llvm/LLVMHeaders.h:
+        * runtime/BundlePath.h: Removed.
+        * runtime/BundlePath.mm: Removed.
+        * runtime/DateConversion.h:
+        * runtime/DateInstance.h:
+        * runtime/ExceptionHelpers.h:
+        * runtime/JSArray.h:
+        * runtime/JSCJSValue.h:
+        (JSC::JSValue::toFloat):
+        * runtime/JSDateMath.h:
+        * runtime/JSObject.h:
+        * runtime/JSWrapperObject.h:
+        * runtime/Options.h:
+        * runtime/RegExp.h:
+        * runtime/StringObject.h:
+        * runtime/Structure.h:
+        * tested-symbols.symlst: Removed.
+
+2014-06-03  Filip Pizlo  &lt;fpizlo@apple.com&gt;
+
</ins><span class="cx">         [ftlopt] FTL native inlining tests take far too long
</span><span class="cx">         https://bugs.webkit.org/show_bug.cgi?id=133498
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreInlineRuntimeSymbolTableh"></a>
<div class="delfile"><h4>Deleted: branches/ftlopt/Source/JavaScriptCore/InlineRuntimeSymbolTable.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/InlineRuntimeSymbolTable.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/InlineRuntimeSymbolTable.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -1,80 +0,0 @@
</span><del>-#define FOR_EACH_LIBRARY_SYMBOL(macro) \
-macro(&quot;_ZN3JSC19JSDataViewPrototype6s_infoE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL22JSONProtoFuncStringifyEPNS_9ExecStateE&quot;, &quot;JSONObject.bc&quot;) \
-macro(&quot;_ZN3JSCL19dateProtoFuncGetDayEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL18mathProtoFuncASinhEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSCL20dateProtoFuncGetYearEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL18mathProtoFuncACoshEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSC7setDataINS_11Int8AdaptorEEExPNS_9ExecStateE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL31dateProtoFuncGetUTCMillisecondsEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL17mathProtoFuncCoshEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSCL23dateProtoFuncGetSecondsEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL17mathProtoFuncSinhEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSCL17mathProtoFuncASinEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSC7setDataINS_14Float32AdaptorEEExPNS_9ExecStateE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL16mathProtoFuncCosEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSCL24dateProtoFuncGetUTCHoursEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL25dataViewProtoFuncSetInt16EPNS_9ExecStateE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSC15globalFuncIsNaNEPNS_9ExecStateE&quot;, &quot;JSGlobalObjectFunctions.bc&quot;) \
-macro(&quot;_ZN3JSCL25dataViewProtoFuncGetUint8EPNS_9ExecStateE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSC7getDataINS_12Uint8AdaptorEEExPNS_9ExecStateE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL21dateProtoFuncGetHoursEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL18dataViewTableIndexE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL23objectConstructorFreezeEPNS_9ExecStateE&quot;, &quot;ObjectConstructor.bc&quot;) \
-macro(&quot;_ZN3JSCL24dateProtoFuncGetUTCMonthEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL20dateProtoFuncGetTimeEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL21dateProtoFuncToStringEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL18mathProtoFuncTruncEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSC23objectProtoFuncToStringEPNS_9ExecStateE&quot;, &quot;ObjectPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL25dataViewProtoFuncSetUint8EPNS_9ExecStateE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL25dateProtoFuncToDateStringEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL18mathProtoFuncLog1pEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSCL19mathProtoFuncRandomEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSC7setDataINS_12Int16AdaptorEEExPNS_9ExecStateE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL20stringProtoFuncSliceEPNS_9ExecStateE&quot;, &quot;StringPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL20dateProtoFuncGetDateEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSC19JSDataViewPrototype15createStructureERNS_2VMEPNS_14JSGlobalObjectENS_7JSValueE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL23dateProtoFuncGetMinutesEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL18mathProtoFuncExpm1EPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSCL22dateProtoFuncGetUTCDayEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL18mathProtoFuncHypotEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSCL27dataViewProtoFuncSetFloat32EPNS_9ExecStateE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL26stringProtoFuncToLowerCaseEPNS_9ExecStateE&quot;, &quot;StringPrototype.bc&quot;) \
-macro(&quot;_ZN3JSC19JSDataViewPrototype6createERNS_2VMEPNS_9StructureE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL17mathProtoFuncCbrtEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSCL9dateParseEPNS_9ExecStateE&quot;, &quot;DateConstructor.bc&quot;) \
-macro(&quot;_ZN3JSCL27dataViewProtoFuncSetFloat64EPNS_9ExecStateE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL17mathProtoFuncLog2EPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSC7setDataINS_12Int32AdaptorEEExPNS_9ExecStateE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSC9ExecState13dataViewTableERNS_2VME&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSC7setDataINS_13Uint32AdaptorEEExPNS_9ExecStateE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL16mathProtoFuncTanEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSCL25dataViewProtoFuncSetInt32EPNS_9ExecStateE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL24dataViewProtoFuncGetInt8EPNS_9ExecStateE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL27dateProtoFuncGetUTCFullYearEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL18mathProtoFuncATanhEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSCL24dataViewProtoFuncSetInt8EPNS_9ExecStateE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL26dateProtoFuncGetUTCMinutesEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL17mathProtoFuncATanEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSCL25dateProtoFuncToTimeStringEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL21dateProtoFuncGetMonthEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL16mathProtoFuncSinEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSCL25objectConstructorIsFrozenEPNS_9ExecStateE&quot;, &quot;ObjectConstructor.bc&quot;) \
-macro(&quot;_ZN3JSCL26stringProtoFuncToUpperCaseEPNS_9ExecStateE&quot;, &quot;StringPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL24dateProtoFuncGetFullYearEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL23dateProtoFuncGetUTCDateEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL28dateProtoFuncGetMilliSecondsEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL18mathProtoFuncATan2EPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSCL19arrayProtoFuncShiftEPNS_9ExecStateE&quot;, &quot;ArrayPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL31dateProtoFuncToLocaleDateStringEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL30dateProtoFuncGetTimezoneOffsetEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL18mathProtoFuncLog10EPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSCL36objectConstructorGetOwnPropertyNamesEPNS_9ExecStateE&quot;, &quot;ObjectConstructor.bc&quot;) \
-macro(&quot;_ZN3JSCL26dateProtoFuncGetUTCSecondsEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSC13dataViewTableE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL17mathProtoFuncTanhEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSCL17mathProtoFuncACosEPNS_9ExecStateE&quot;, &quot;MathObject.bc&quot;) \
-macro(&quot;_ZN3JSCL19dataViewTableValuesE&quot;, &quot;JSDataViewPrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL20dateProtoFuncSetDateEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;) \
-macro(&quot;_ZN3JSCL34objectConstructorPreventExtensionsEPNS_9ExecStateE&quot;, &quot;ObjectConstructor.bc&quot;) \
-macro(&quot;_ZN3JSCL24dateProtoFuncToUTCStringEPNS_9ExecStateE&quot;, &quot;DatePrototype.bc&quot;)
</del></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreJavaScriptCorexcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -477,9 +477,11 @@
</span><span class="cx">                 0FCEFAAB1804C13E00472CE4 /* FTLSaveRestore.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FCEFAA91804C13E00472CE4 /* FTLSaveRestore.cpp */; };
</span><span class="cx">                 0FCEFAAC1804C13E00472CE4 /* FTLSaveRestore.h in Headers */ = {isa = PBXBuildFile; fileRef = 0FCEFAAA1804C13E00472CE4 /* FTLSaveRestore.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 0FCEFAB01805CA6D00472CE4 /* InitializeLLVM.h in Headers */ = {isa = PBXBuildFile; fileRef = 0FCEFAAE1805CA6D00472CE4 /* InitializeLLVM.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><ins>+                0FCEFAB11805CA6D00472CE4 /* InitializeLLVMMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0FCEFAAF1805CA6D00472CE4 /* InitializeLLVMMac.mm */; };
</ins><span class="cx">                 0FCEFAC11805D94E00472CE4 /* LLVMOverrides.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FCEFAC01805D94100472CE4 /* LLVMOverrides.cpp */; };
</span><span class="cx">                 0FCEFAC31805E74000472CE4 /* LLVMExports.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FCEFAC21805E74000472CE4 /* LLVMExports.cpp */; };
</span><span class="cx">                 0FCEFACA1805E75500472CE4 /* InitializeLLVM.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FCEFAC41805E75500472CE4 /* InitializeLLVM.cpp */; };
</span><ins>+                0FCEFACB1805E75500472CE4 /* InitializeLLVMPOSIX.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FCEFAC51805E75500472CE4 /* InitializeLLVMPOSIX.cpp */; };
</ins><span class="cx">                 0FCEFACC1805E75500472CE4 /* InitializeLLVMPOSIX.h in Headers */ = {isa = PBXBuildFile; fileRef = 0FCEFAC61805E75500472CE4 /* InitializeLLVMPOSIX.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 0FCEFACD1805E75500472CE4 /* LLVMAPI.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FCEFAC71805E75500472CE4 /* LLVMAPI.cpp */; };
</span><span class="cx">                 0FCEFACE1805E75500472CE4 /* LLVMAPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 0FCEFAC81805E75500472CE4 /* LLVMAPI.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="lines">@@ -822,7 +824,6 @@
</span><span class="cx">                 4443AE3316E188D90076F110 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 51F0EB6105C86C6B00E6DF1B /* Foundation.framework */; };
</span><span class="cx">                 451539B912DC994500EF7AC4 /* Yarr.h in Headers */ = {isa = PBXBuildFile; fileRef = 451539B812DC994500EF7AC4 /* Yarr.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 5510502618EB827500001F3E /* JSCallbackFunction.h in Headers */ = {isa = PBXBuildFile; fileRef = 1440F88F0A508B100005F061 /* JSCallbackFunction.h */; };
</span><del>-                552EA70C1908704800A66F2F /* JSDataViewPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F2B66BF17B6B5AB00A7AE3F /* JSDataViewPrototype.cpp */; };
</del><span class="cx">                 5540757218DA58AD00EFF7F2 /* ArgList.h in Headers */ = {isa = PBXBuildFile; fileRef = BCF605120E203EF800B9A64D /* ArgList.h */; };
</span><span class="cx">                 5540757318DA58AD00EFF7F2 /* Arguments.h in Headers */ = {isa = PBXBuildFile; fileRef = BC257DE60E1F51C50016B6C9 /* Arguments.h */; };
</span><span class="cx">                 5540757418DA58AD00EFF7F2 /* ArgumentsIteratorConstructor.h in Headers */ = {isa = PBXBuildFile; fileRef = A76140C8182982CB00750624 /* ArgumentsIteratorConstructor.h */; };
</span><span class="lines">@@ -1056,46 +1057,6 @@
</span><span class="cx">                 554078AF18DA58AD00EFF7F2 /* ArrayPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F692A84D0255597D01FF60F7 /* ArrayPrototype.cpp */; };
</span><span class="cx">                 55407A3818DA58AD00EFF7F2 /* NumberConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC2680C20E16D4E900A06E92 /* NumberConstructor.cpp */; };
</span><span class="cx">                 55407A3A18DA58AD00EFF7F2 /* NumberPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC2680C40E16D4E900A06E92 /* NumberPrototype.cpp */; };
</span><del>-                556A35C8190842BC00B56747 /* SetConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7299DA317D12858005F5FF9 /* SetConstructor.cpp */; };
-                556A35C9190842D500B56747 /* NativeErrorConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC02E9080E1839DB000F9297 /* NativeErrorConstructor.cpp */; };
-                556A35CA190842DD00B56747 /* Arguments.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC257DE50E1F51C50016B6C9 /* Arguments.cpp */; };
-                556A35CB190842E800B56747 /* ArgumentsIteratorPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A76140C9182982CB00750624 /* ArgumentsIteratorPrototype.cpp */; };
-                556A35CC190842F300B56747 /* ArrayIteratorPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7BDAEC217F4EA1400F6140C /* ArrayIteratorPrototype.cpp */; };
-                556A35CD190842FD00B56747 /* BooleanConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC7952320E15EB5600A898AB /* BooleanConstructor.cpp */; };
-                556A35CE1908430B00B56747 /* BooleanPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC7952340E15EB5600A898AB /* BooleanPrototype.cpp */; };
-                556A35CF1908431600B56747 /* DateConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCD203450E17135E002C7E82 /* DateConstructor.cpp */; };
-                556A35D01908432000B56747 /* DatePrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCD203470E17135E002C7E82 /* DatePrototype.cpp */; };
-                556A35D11908432900B56747 /* ErrorConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC02E9040E1839DB000F9297 /* ErrorConstructor.cpp */; };
-                556A35D21908433300B56747 /* ErrorPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC02E9060E1839DB000F9297 /* ErrorPrototype.cpp */; };
-                556A35D31908434300B56747 /* FunctionConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC2680C00E16D4E900A06E92 /* FunctionConstructor.cpp */; };
-                556A35D41908434D00B56747 /* FunctionPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F692A85C0255597D01FF60F7 /* FunctionPrototype.cpp */; };
-                556A35D51908436800B56747 /* JSArrayBufferConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F2B66B617B6B5AB00A7AE3F /* JSArrayBufferConstructor.cpp */; };
-                556A35D61908437500B56747 /* JSArrayBufferPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F2B66B817B6B5AB00A7AE3F /* JSArrayBufferPrototype.cpp */; };
-                556A35D71908438A00B56747 /* JSArrayIterator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7BDAEC417F4EA1400F6140C /* JSArrayIterator.cpp */; };
-                556A35D81908439D00B56747 /* JSBoundFunction.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 86FA9E8F142BBB2D001773B7 /* JSBoundFunction.cpp */; };
-                556A35D9190843B100B56747 /* JSFunction.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F692A85E0255597D01FF60F7 /* JSFunction.cpp */; };
-                556A35DA190843C200B56747 /* JSGlobalObjectFunctions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC756FC60E2031B200DE7D12 /* JSGlobalObjectFunctions.cpp */; };
-                556A35DB190843CF00B56747 /* JSONObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7F9935E0FD7325100A0B2D0 /* JSONObject.cpp */; };
-                556A35DC190843E700B56747 /* JSPromiseConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C184E2017BEE240007CB63A /* JSPromiseConstructor.cpp */; };
-                556A35DD190843E700B56747 /* JSPromiseFunctions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C008CD0186F8A9300955C24 /* JSPromiseFunctions.cpp */; };
-                556A35DE190843E700B56747 /* JSPromisePrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C184E1C17BEE22E007CB63A /* JSPromisePrototype.cpp */; };
-                556A35DF190843F300B56747 /* ConsolePrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A53CE08118BC1A5600BEDF76 /* ConsolePrototype.cpp */; };
-                556A35E01908441D00B56747 /* MapConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A700873717CBE85300C3E643 /* MapConstructor.cpp */; };
-                556A35E11908441D00B56747 /* MapIteratorPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A74DEF8D182D991400522C22 /* MapIteratorPrototype.cpp */; };
-                556A35E21908441D00B56747 /* MapPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A700873B17CBE8D300C3E643 /* MapPrototype.cpp */; };
-                556A35E31908442A00B56747 /* MathObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F692A86A0255597D01FF60F7 /* MathObject.cpp */; };
-                556A35E41908443700B56747 /* NameConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 86EBF2F91560F036008E9222 /* NameConstructor.cpp */; };
-                556A35E51908443700B56747 /* NamePrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 86EBF2FD1560F036008E9222 /* NamePrototype.cpp */; };
-                556A35E61908444900B56747 /* ObjectConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC2680C60E16D4E900A06E92 /* ObjectConstructor.cpp */; };
-                556A35E71908444900B56747 /* ObjectPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC2680C80E16D4E900A06E92 /* ObjectPrototype.cpp */; };
-                556A35E81908448000B56747 /* RegExpConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCD202BD0E1706A7002C7E82 /* RegExpConstructor.cpp */; };
-                556A35E91908448000B56747 /* RegExpPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCD202BF0E1706A7002C7E82 /* RegExpPrototype.cpp */; };
-                556A35EA190844A000B56747 /* SetIteratorPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A790DD67182F499700588807 /* SetIteratorPrototype.cpp */; };
-                556A35EB190844A000B56747 /* SetPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7299D9F17D12848005F5FF9 /* SetPrototype.cpp */; };
-                556A35EC190844AA00B56747 /* StringConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC18C3C00E16EE3300B34460 /* StringConstructor.cpp */; };
-                556A35ED190844B500B56747 /* WeakMapConstructor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7CA3ADD17DA41AE006538AF /* WeakMapConstructor.cpp */; };
-                556A35EE190844C000B56747 /* WeakMapPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7CA3ADF17DA41AE006538AF /* WeakMapPrototype.cpp */; };
-                55A04E211908653D0024E40C /* StringPrototype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC18C3C50E16EE3300B34460 /* StringPrototype.cpp */; };
</del><span class="cx">                 5D53726F0E1C54880021E549 /* Tracing.h in Headers */ = {isa = PBXBuildFile; fileRef = 5D53726E0E1C54880021E549 /* Tracing.h */; };
</span><span class="cx">                 5D5D8AD10E0D0EBE00F9C692 /* libedit.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 5D5D8AD00E0D0EBE00F9C692 /* libedit.dylib */; };
</span><span class="cx">                 5DBB151B131D0B310056AD36 /* testapi.js in Copy Support Script */ = {isa = PBXBuildFile; fileRef = 14D857740A4696C80032146C /* testapi.js */; };
</span><span class="lines">@@ -1269,11 +1230,6 @@
</span><span class="cx">                 99E45A2618A1B2590026D88F /* EncodedValue.h in Headers */ = {isa = PBXBuildFile; fileRef = 99E45A2118A1B2590026D88F /* EncodedValue.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 99E45A2718A1B2590026D88F /* InputCursor.h in Headers */ = {isa = PBXBuildFile; fileRef = 99E45A2218A1B2590026D88F /* InputCursor.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 99E45A2818A1B2590026D88F /* NondeterministicInput.h in Headers */ = {isa = PBXBuildFile; fileRef = 99E45A2318A1B2590026D88F /* NondeterministicInput.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><del>-                9E729407190F01A5001A91B5 /* InitializeThreading.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E178636C0D9BEEC300D74E75 /* InitializeThreading.cpp */; };
-                9E729408190F021E001A91B5 /* InitializeLLVMPOSIX.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FCEFAC51805E75500472CE4 /* InitializeLLVMPOSIX.cpp */; };
-                9E72940B190F0514001A91B5 /* BundlePath.h in Headers */ = {isa = PBXBuildFile; fileRef = 9E72940A190F0514001A91B5 /* BundlePath.h */; };
-                9EA5C7A1190F084200508EBE /* BundlePath.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9E729409190F0306001A91B5 /* BundlePath.mm */; };
-                9EA5C7A2190F088700508EBE /* InitializeLLVMMac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9EA5C7A0190F05D200508EBE /* InitializeLLVMMac.cpp */; };
</del><span class="cx">                 A1712B3B11C7B212007A5315 /* RegExpCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A1712B3A11C7B212007A5315 /* RegExpCache.cpp */; };
</span><span class="cx">                 A1712B3F11C7B228007A5315 /* RegExpCache.h in Headers */ = {isa = PBXBuildFile; fileRef = A1712B3E11C7B228007A5315 /* RegExpCache.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 A1712B4111C7B235007A5315 /* RegExpKey.h in Headers */ = {isa = PBXBuildFile; fileRef = A1712B4011C7B235007A5315 /* RegExpKey.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="lines">@@ -1746,6 +1702,7 @@
</span><span class="cx">                 C2FE18A416BAEC4000AF3061 /* StructureRareData.h in Headers */ = {isa = PBXBuildFile; fileRef = C2FE18A316BAEC4000AF3061 /* StructureRareData.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 E124A8F70E555775003091F1 /* OpaqueJSString.h in Headers */ = {isa = PBXBuildFile; fileRef = E124A8F50E555775003091F1 /* OpaqueJSString.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 E124A8F80E555775003091F1 /* OpaqueJSString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E124A8F60E555775003091F1 /* OpaqueJSString.cpp */; };
</span><ins>+                E178636D0D9BEEC300D74E75 /* InitializeThreading.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E178636C0D9BEEC300D74E75 /* InitializeThreading.cpp */; };
</ins><span class="cx">                 E18E3A590DF9278C00D90B34 /* VM.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E18E3A570DF9278C00D90B34 /* VM.cpp */; };
</span><span class="cx">                 E49DC16B12EF293E00184A1F /* SourceProviderCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E49DC15512EF277200184A1F /* SourceProviderCache.cpp */; };
</span><span class="cx">                 E49DC16C12EF294E00184A1F /* SourceProviderCache.h in Headers */ = {isa = PBXBuildFile; fileRef = E49DC15112EF272200184A1F /* SourceProviderCache.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="lines">@@ -2339,6 +2296,7 @@
</span><span class="cx">                 0FCEFAA91804C13E00472CE4 /* FTLSaveRestore.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = FTLSaveRestore.cpp; path = ftl/FTLSaveRestore.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 0FCEFAAA1804C13E00472CE4 /* FTLSaveRestore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FTLSaveRestore.h; path = ftl/FTLSaveRestore.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 0FCEFAAE1805CA6D00472CE4 /* InitializeLLVM.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = InitializeLLVM.h; path = llvm/InitializeLLVM.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><ins>+                0FCEFAAF1805CA6D00472CE4 /* InitializeLLVMMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = InitializeLLVMMac.mm; path = llvm/InitializeLLVMMac.mm; sourceTree = &quot;&lt;group&gt;&quot;; };
</ins><span class="cx">                 0FCEFAB61805D61600472CE4 /* libllvmForJSC.dylib */ = {isa = PBXFileReference; explicitFileType = &quot;compiled.mach-o.dylib&quot;; includeInIndex = 0; path = libllvmForJSC.dylib; sourceTree = BUILT_PRODUCTS_DIR; };
</span><span class="cx">                 0FCEFABE1805D86900472CE4 /* LLVMForJSC.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = LLVMForJSC.xcconfig; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 0FCEFAC01805D94100472CE4 /* LLVMOverrides.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = LLVMOverrides.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -2873,9 +2831,6 @@
</span><span class="cx">                 99E45A2118A1B2590026D88F /* EncodedValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EncodedValue.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 99E45A2218A1B2590026D88F /* InputCursor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InputCursor.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 99E45A2318A1B2590026D88F /* NondeterministicInput.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NondeterministicInput.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><del>-                9E729409190F0306001A91B5 /* BundlePath.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = BundlePath.mm; sourceTree = &quot;&lt;group&gt;&quot;; };
-                9E72940A190F0514001A91B5 /* BundlePath.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BundlePath.h; sourceTree = &quot;&lt;group&gt;&quot;; };
-                9EA5C7A0190F05D200508EBE /* InitializeLLVMMac.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = InitializeLLVMMac.cpp; path = llvm/InitializeLLVMMac.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</del><span class="cx">                 A1712B3A11C7B212007A5315 /* RegExpCache.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RegExpCache.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 A1712B3E11C7B228007A5315 /* RegExpCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RegExpCache.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 A1712B4011C7B235007A5315 /* RegExpKey.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RegExpKey.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -3580,10 +3535,10 @@
</span><span class="cx">                 0FCEFAAD1805CA4400472CE4 /* llvm */ = {
</span><span class="cx">                         isa = PBXGroup;
</span><span class="cx">                         children = (
</span><del>-                                9EA5C7A0190F05D200508EBE /* InitializeLLVMMac.cpp */,
</del><span class="cx">                                 0FCEFABF1805D94100472CE4 /* library */,
</span><span class="cx">                                 0FCEFAC41805E75500472CE4 /* InitializeLLVM.cpp */,
</span><span class="cx">                                 0FCEFAAE1805CA6D00472CE4 /* InitializeLLVM.h */,
</span><ins>+                                0FCEFAAF1805CA6D00472CE4 /* InitializeLLVMMac.mm */,
</ins><span class="cx">                                 0FCEFAC51805E75500472CE4 /* InitializeLLVMPOSIX.cpp */,
</span><span class="cx">                                 0FCEFAC61805E75500472CE4 /* InitializeLLVMPOSIX.h */,
</span><span class="cx">                                 0FCEFAC71805E75500472CE4 /* LLVMAPI.cpp */,
</span><span class="lines">@@ -4212,8 +4167,6 @@
</span><span class="cx">                 7EF6E0BB0EB7A1EC0079AFAF /* runtime */ = {
</span><span class="cx">                         isa = PBXGroup;
</span><span class="cx">                         children = (
</span><del>-                                9E72940A190F0514001A91B5 /* BundlePath.h */,
-                                9E729409190F0306001A91B5 /* BundlePath.mm */,
</del><span class="cx">                                 BCF605110E203EF800B9A64D /* ArgList.cpp */,
</span><span class="cx">                                 BCF605120E203EF800B9A64D /* ArgList.h */,
</span><span class="cx">                                 BC257DE50E1F51C50016B6C9 /* Arguments.cpp */,
</span><span class="lines">@@ -5851,7 +5804,6 @@
</span><span class="cx">                                 0F235BDE17178E1C00690C7F /* FTLOSRExitCompilationInfo.h in Headers */,
</span><span class="cx">                                 0F235BE017178E1C00690C7F /* FTLOSRExitCompiler.h in Headers */,
</span><span class="cx">                                 0FEA0A11170513DB00BB722C /* FTLOutput.h in Headers */,
</span><del>-                                9E72940B190F0514001A91B5 /* BundlePath.h in Headers */,
</del><span class="cx">                                 0F48532A187DFDEC0083B687 /* FTLRecoveryOpcode.h in Headers */,
</span><span class="cx">                                 0F6B1CC41862C47800845D97 /* FTLRegisterAtOffset.h in Headers */,
</span><span class="cx">                                 0FCEFAAC1804C13E00472CE4 /* FTLSaveRestore.h in Headers */,
</span><span class="lines">@@ -6857,47 +6809,6 @@
</span><span class="cx">                         isa = PBXSourcesBuildPhase;
</span><span class="cx">                         buildActionMask = 2147483647;
</span><span class="cx">                         files = (
</span><del>-                                552EA70C1908704800A66F2F /* JSDataViewPrototype.cpp in Sources */,
-                                55A04E211908653D0024E40C /* StringPrototype.cpp in Sources */,
-                                556A35EE190844C000B56747 /* WeakMapPrototype.cpp in Sources */,
-                                556A35ED190844B500B56747 /* WeakMapConstructor.cpp in Sources */,
-                                556A35EC190844AA00B56747 /* StringConstructor.cpp in Sources */,
-                                556A35EA190844A000B56747 /* SetIteratorPrototype.cpp in Sources */,
-                                556A35EB190844A000B56747 /* SetPrototype.cpp in Sources */,
-                                556A35E81908448000B56747 /* RegExpConstructor.cpp in Sources */,
-                                556A35E91908448000B56747 /* RegExpPrototype.cpp in Sources */,
-                                556A35E61908444900B56747 /* ObjectConstructor.cpp in Sources */,
-                                556A35E71908444900B56747 /* ObjectPrototype.cpp in Sources */,
-                                556A35E41908443700B56747 /* NameConstructor.cpp in Sources */,
-                                556A35E51908443700B56747 /* NamePrototype.cpp in Sources */,
-                                556A35E31908442A00B56747 /* MathObject.cpp in Sources */,
-                                556A35E01908441D00B56747 /* MapConstructor.cpp in Sources */,
-                                556A35E11908441D00B56747 /* MapIteratorPrototype.cpp in Sources */,
-                                556A35E21908441D00B56747 /* MapPrototype.cpp in Sources */,
-                                556A35DF190843F300B56747 /* ConsolePrototype.cpp in Sources */,
-                                556A35DC190843E700B56747 /* JSPromiseConstructor.cpp in Sources */,
-                                556A35DD190843E700B56747 /* JSPromiseFunctions.cpp in Sources */,
-                                556A35DE190843E700B56747 /* JSPromisePrototype.cpp in Sources */,
-                                556A35DB190843CF00B56747 /* JSONObject.cpp in Sources */,
-                                556A35DA190843C200B56747 /* JSGlobalObjectFunctions.cpp in Sources */,
-                                556A35D9190843B100B56747 /* JSFunction.cpp in Sources */,
-                                556A35D81908439D00B56747 /* JSBoundFunction.cpp in Sources */,
-                                556A35D71908438A00B56747 /* JSArrayIterator.cpp in Sources */,
-                                556A35D61908437500B56747 /* JSArrayBufferPrototype.cpp in Sources */,
-                                556A35D51908436800B56747 /* JSArrayBufferConstructor.cpp in Sources */,
-                                556A35D41908434D00B56747 /* FunctionPrototype.cpp in Sources */,
-                                556A35D31908434300B56747 /* FunctionConstructor.cpp in Sources */,
-                                556A35D21908433300B56747 /* ErrorPrototype.cpp in Sources */,
-                                556A35D11908432900B56747 /* ErrorConstructor.cpp in Sources */,
-                                556A35D01908432000B56747 /* DatePrototype.cpp in Sources */,
-                                556A35CF1908431600B56747 /* DateConstructor.cpp in Sources */,
-                                556A35CE1908430B00B56747 /* BooleanPrototype.cpp in Sources */,
-                                556A35CD190842FD00B56747 /* BooleanConstructor.cpp in Sources */,
-                                556A35CC190842F300B56747 /* ArrayIteratorPrototype.cpp in Sources */,
-                                556A35CB190842E800B56747 /* ArgumentsIteratorPrototype.cpp in Sources */,
-                                556A35CA190842DD00B56747 /* Arguments.cpp in Sources */,
-                                556A35C9190842D500B56747 /* NativeErrorConstructor.cpp in Sources */,
-                                556A35C8190842BC00B56747 /* SetConstructor.cpp in Sources */,
</del><span class="cx">                                 554078AB18DA58AD00EFF7F2 /* ArrayConstructor.cpp in Sources */,
</span><span class="cx">                                 554078AF18DA58AD00EFF7F2 /* ArrayPrototype.cpp in Sources */,
</span><span class="cx">                                 55407A3818DA58AD00EFF7F2 /* NumberConstructor.cpp in Sources */,
</span><span class="lines">@@ -6917,10 +6828,6 @@
</span><span class="cx">                         isa = PBXSourcesBuildPhase;
</span><span class="cx">                         buildActionMask = 2147483647;
</span><span class="cx">                         files = (
</span><del>-                                9EA5C7A2190F088700508EBE /* InitializeLLVMMac.cpp in Sources */,
-                                9EA5C7A1190F084200508EBE /* BundlePath.mm in Sources */,
-                                9E729408190F021E001A91B5 /* InitializeLLVMPOSIX.cpp in Sources */,
-                                9E729407190F01A5001A91B5 /* InitializeThreading.cpp in Sources */,
</del><span class="cx">                                 0FFA549716B8835000B3A982 /* A64DOpcode.cpp in Sources */,
</span><span class="cx">                                 0F55F0F414D1063900AC7649 /* AbstractPC.cpp in Sources */,
</span><span class="cx">                                 147F39BD107EC37600427A48 /* ArgList.cpp in Sources */,
</span><span class="lines">@@ -7172,6 +7079,9 @@
</span><span class="cx">                                 C25F8BCD157544A900245B71 /* IncrementalSweeper.cpp in Sources */,
</span><span class="cx">                                 0F13E04E16164A1F00DC8DE7 /* IndexingType.cpp in Sources */,
</span><span class="cx">                                 0FCEFACA1805E75500472CE4 /* InitializeLLVM.cpp in Sources */,
</span><ins>+                                0FCEFAB11805CA6D00472CE4 /* InitializeLLVMMac.mm in Sources */,
+                                0FCEFACB1805E75500472CE4 /* InitializeLLVMPOSIX.cpp in Sources */,
+                                E178636D0D9BEEC300D74E75 /* InitializeThreading.cpp in Sources */,
</ins><span class="cx">                                 A513E5B7185B8BD3007E95AD /* InjectedScript.cpp in Sources */,
</span><span class="cx">                                 A514B2C2185A684400F3C7CB /* InjectedScriptBase.cpp in Sources */,
</span><span class="cx">                                 A58E35911860DECF001F24FE /* InjectedScriptHost.cpp in Sources */,
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCorebuildsymboltableindexpy"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/build-symbol-table-index.py (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/build-symbol-table-index.py        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/build-symbol-table-index.py        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -4,7 +4,6 @@
</span><span class="cx"> import os
</span><span class="cx"> import subprocess
</span><span class="cx"> import sys
</span><del>-from sets import Set
</del><span class="cx"> from operator import itemgetter
</span><span class="cx"> 
</span><span class="cx"> 
</span><span class="lines">@@ -34,19 +33,9 @@
</span><span class="cx"> if os.path.isfile(symbol_table_location):
</span><span class="cx">     symbol_table_modification_time = os.path.getmtime(symbol_table_location)
</span><span class="cx"> 
</span><del>-file_suffix = &quot;bc&quot;
</del><ins>+file_suffix = &quot;bc.gz&quot;
</ins><span class="cx"> file_suffix_length = len(file_suffix)
</span><span class="cx"> 
</span><del>-tested_symbols_location = &quot;./tested-symbols.symlst&quot;
-include_symbol_table_location = &quot;./InlineRuntimeSymbolTable.h&quot;
-tested_symbols = Set([])
-
-if os.path.isfile(tested_symbols_location):
-    with open(tested_symbols_location, 'r') as file:
-        print(&quot;Loading tested symbols&quot;)
-        for line in file:
-            tested_symbols.add(line[:-1])
-
</del><span class="cx"> for bitcode_file in glob.iglob(os.path.join(framework_directory, &quot;*.&quot; + file_suffix)):
</span><span class="cx">     bitcode_basename = os.path.basename(bitcode_file)
</span><span class="cx">     binary_file = os.path.join(binary_file_directory, bitcode_basename[:-file_suffix_length] + &quot;o&quot;)
</span><span class="lines">@@ -59,8 +48,8 @@
</span><span class="cx">     lines = subprocess.check_output([&quot;nm&quot;, &quot;-U&quot;, &quot;-j&quot;, binary_file]).splitlines()
</span><span class="cx"> 
</span><span class="cx">     for symbol in lines:
</span><del>-        if symbol[:2] == &quot;__&quot; and symbol[-3:] != &quot;.eh&quot; and symbol in tested_symbols:
-            symbol_table[symbol[1:]] = bitcode_basename
</del><ins>+        if symbol[:2] == &quot;__&quot; and symbol[-3:] != &quot;.eh&quot;:
+            symbol_table[symbol] = bitcode_basename[1:]
</ins><span class="cx"> 
</span><span class="cx"> if not symbol_table_is_out_of_date:
</span><span class="cx">     sys.exit()
</span><span class="lines">@@ -78,11 +67,8 @@
</span><span class="cx"> 
</span><span class="cx"> print(&quot;Writing symbol table&quot;)
</span><span class="cx"> 
</span><del>-with open(symbol_table_location, &quot;w&quot;) as symbol_file:
-    with open(include_symbol_table_location, &quot;w&quot;) as include_file:
-        include_file.write(&quot;#define FOR_EACH_LIBRARY_SYMBOL(macro)&quot;)
-        for symbol, location in symbol_list:
-            symbol_file.write(&quot;{} {}\n&quot;.format(symbol, location))
-            include_file.write(&quot; \\\nmacro(\&quot;{}\&quot;, \&quot;{}\&quot;)&quot;.format(symbol, location))
-        include_file.write(&quot;\n&quot;)
</del><ins>+with open(symbol_table_location, &quot;w&quot;) as file:
+    for symbol, location in symbol_list:
+        file.write(&quot;{} {}\n&quot;.format(symbol, location))
+
</ins><span class="cx"> print(&quot;Done&quot;)
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCorebuildsymboltableindexsh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/build-symbol-table-index.sh (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/build-symbol-table-index.sh        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/build-symbol-table-index.sh        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -8,7 +8,7 @@
</span><span class="cx">     if [ -d &quot;$RUNTIME_DERIVED_SOURCES_DIR/$arch&quot; ];
</span><span class="cx">     then
</span><span class="cx">         mkdir -p &quot;$RUNTIME_INSTALL_DIR/$arch&quot;
</span><del>-        cp &quot;$RUNTIME_DERIVED_SOURCES_DIR/$arch&quot;/*.bc &quot;$RUNTIME_INSTALL_DIR/$arch&quot;/.
</del><ins>+        cp &quot;$RUNTIME_DERIVED_SOURCES_DIR/$arch&quot;/*.bc.gz &quot;$RUNTIME_INSTALL_DIR/$arch&quot;/.
</ins><span class="cx">         ${SRCROOT}/build-symbol-table-index.py $arch
</span><span class="cx">     fi
</span><span class="cx"> done
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCorecopyllvmirtoderivedsourcessh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/copy-llvm-ir-to-derived-sources.sh (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/copy-llvm-ir-to-derived-sources.sh        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/copy-llvm-ir-to-derived-sources.sh        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -11,7 +11,7 @@
</span><span class="cx">         for file in &quot;$OBJ_DIR/$arch&quot;/*.o;
</span><span class="cx">         do
</span><span class="cx">             file_name=${file##*/}
</span><del>-            cp &quot;$file&quot; &quot;$RUNTIME_DERIVED_SOURCES_DIR/$arch/${file_name%.o}.bc&quot;
</del><ins>+            gzip -9 -c &quot;$file&quot; &gt; &quot;$RUNTIME_DERIVED_SOURCES_DIR/$arch/${file_name%.o}.bc.gz&quot;
</ins><span class="cx">         done
</span><span class="cx">     fi
</span><span class="cx"> done
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoredfgDFGByteCodeParsercpp"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -1253,8 +1253,6 @@
</span><span class="cx">     }
</span><span class="cx">         
</span><span class="cx">     Intrinsic intrinsic = callLinkStatus.intrinsicFor(specializationKind);
</span><del>-
-    JSFunction* knownFunction = nullptr;
</del><span class="cx">     if (intrinsic != NoIntrinsic) {
</span><span class="cx">         emitFunctionChecks(callLinkStatus, callTarget, registerOffset, specializationKind);
</span><span class="cx">             
</span><span class="lines">@@ -1271,13 +1269,9 @@
</span><span class="cx">         if (m_graph.compilation())
</span><span class="cx">             m_graph.compilation()-&gt;noticeInlinedCall();
</span><span class="cx">         return;
</span><del>-    } else if (JSFunction* function = callLinkStatus.function())
-        if (function-&gt;isHostFunction()) {
-            emitFunctionChecks(callLinkStatus, callTarget, registerOffset, specializationKind);
-            knownFunction = function;
-        }
</del><ins>+    }
</ins><span class="cx">     
</span><del>-    addCall(result, op, callTarget, argumentCountIncludingThis, registerOffset)-&gt;giveKnownFunction(knownFunction);
</del><ins>+    addCall(result, op, callTarget, argumentCountIncludingThis, registerOffset);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void ByteCodeParser::emitFunctionChecks(const CallLinkStatus&amp; callLinkStatus, Node* callTarget, int registerOffset, CodeSpecializationKind kind)
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoredfgDFGNodeh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/dfg/DFGNode.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/dfg/DFGNode.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/dfg/DFGNode.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -1032,40 +1032,6 @@
</span><span class="cx">         return mergeSpeculation(m_opInfo2, prediction);
</span><span class="cx">     }
</span><span class="cx">     
</span><del>-    bool canBeKnownFunction()
-    {
-        switch (op()) {
-        case Construct:
-        case Call:
-            return true;
-        default:
-            return false;
-        }
-    }
-
-    bool hasKnownFunction()
-    {
-        switch (op()) {
-        case Construct:
-        case Call:
-            return (bool)m_opInfo;
-        default:
-            return false;
-        }
-    }
-    
-    JSFunction* knownFunction()
-    {
-        ASSERT(canBeKnownFunction());
-        return bitwise_cast&lt;JSFunction*&gt;(m_opInfo);
-    }
-
-    void giveKnownFunction(JSFunction* callData) 
-    {
-        ASSERT(canBeKnownFunction());
-        m_opInfo = bitwise_cast&lt;uintptr_t&gt;(callData);
-    }
-
</del><span class="cx">     bool hasFunction()
</span><span class="cx">     {
</span><span class="cx">         switch (op()) {
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreftlFTLAbbreviatedTypesh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/ftl/FTLAbbreviatedTypes.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/ftl/FTLAbbreviatedTypes.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/ftl/FTLAbbreviatedTypes.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -43,7 +43,6 @@
</span><span class="cx"> typedef LLVMRealPredicate LRealPredicate;
</span><span class="cx"> typedef LLVMTypeRef LType;
</span><span class="cx"> typedef LLVMValueRef LValue;
</span><del>-typedef LLVMMemoryBufferRef LMemoryBuffer;
</del><span class="cx"> 
</span><span class="cx"> } } // namespace JSC::FTL
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreftlFTLCompilecpp"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/ftl/FTLCompile.cpp (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/ftl/FTLCompile.cpp        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/ftl/FTLCompile.cpp        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -523,32 +523,18 @@
</span><span class="cx">         if (Options::llvmSimpleOpt()) {
</span><span class="cx">             modulePasses = llvm-&gt;CreatePassManager();
</span><span class="cx">             llvm-&gt;AddTargetData(llvm-&gt;GetExecutionEngineTargetData(engine), modulePasses);
</span><del>-
-            LLVMTargetMachineRef targetMachine = llvm-&gt;GetExecutionEngineTargetMachine(engine);
-            
-            llvm-&gt;AddAnalysisPasses(targetMachine, modulePasses);
</del><span class="cx">             llvm-&gt;AddPromoteMemoryToRegisterPass(modulePasses);
</span><del>-
-            llvm-&gt;AddGlobalOptimizerPass(modulePasses);
-
-            llvm-&gt;AddFunctionInliningPass(modulePasses);
-            llvm-&gt;AddPruneEHPass(modulePasses);
-            llvm-&gt;AddGlobalDCEPass(modulePasses);
-            
</del><span class="cx">             llvm-&gt;AddConstantPropagationPass(modulePasses);
</span><del>-            llvm-&gt;AddAggressiveDCEPass(modulePasses);
</del><span class="cx">             llvm-&gt;AddInstructionCombiningPass(modulePasses);
</span><span class="cx">             llvm-&gt;AddBasicAliasAnalysisPass(modulePasses);
</span><span class="cx">             llvm-&gt;AddTypeBasedAliasAnalysisPass(modulePasses);
</span><span class="cx">             llvm-&gt;AddGVNPass(modulePasses);
</span><span class="cx">             llvm-&gt;AddCFGSimplificationPass(modulePasses);
</span><span class="cx">             llvm-&gt;AddDeadStoreEliminationPass(modulePasses);
</span><del>-
</del><span class="cx">             llvm-&gt;RunPassManager(modulePasses, state.module);
</span><span class="cx">         } else {
</span><span class="cx">             LLVMPassManagerBuilderRef passBuilder = llvm-&gt;PassManagerBuilderCreate();
</span><span class="cx">             llvm-&gt;PassManagerBuilderSetOptLevel(passBuilder, Options::llvmOptimizationLevel());
</span><del>-            llvm-&gt;PassManagerBuilderUseInlinerWithThreshold(passBuilder, 275);
</del><span class="cx">             llvm-&gt;PassManagerBuilderSetSizeLevel(passBuilder, Options::llvmSizeLevel());
</span><span class="cx">         
</span><span class="cx">             functionPasses = llvm-&gt;CreateFunctionPassManagerForModule(state.module);
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreftlFTLLowerDFGToLLVMcpp"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/ftl/FTLLowerDFGToLLVM.cpp (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/ftl/FTLLowerDFGToLLVM.cpp        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/ftl/FTLLowerDFGToLLVM.cpp        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -28,7 +28,6 @@
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(FTL_JIT)
</span><span class="cx"> 
</span><del>-#include &quot;BundlePath.h&quot;
</del><span class="cx"> #include &quot;CodeBlockWithJITType.h&quot;
</span><span class="cx"> #include &quot;DFGAbstractInterpreterInlines.h&quot;
</span><span class="cx"> #include &quot;DFGInPlaceAbstractState.h&quot;
</span><span class="lines">@@ -41,13 +40,11 @@
</span><span class="cx"> #include &quot;FTLOutput.h&quot;
</span><span class="cx"> #include &quot;FTLThunks.h&quot;
</span><span class="cx"> #include &quot;FTLWeightedTarget.h&quot;
</span><del>-#include &quot;JSCInlines.h&quot;
</del><span class="cx"> #include &quot;LinkBuffer.h&quot;
</span><span class="cx"> #include &quot;OperandsInlines.h&quot;
</span><ins>+#include &quot;JSCInlines.h&quot;
</ins><span class="cx"> #include &quot;VirtualRegister.h&quot;
</span><span class="cx"> #include &lt;atomic&gt;
</span><del>-#include &lt;dlfcn.h&gt;
-#include &lt;llvm/InitializeLLVM.h&gt;
</del><span class="cx"> #include &lt;wtf/ProcessID.h&gt;
</span><span class="cx"> 
</span><span class="cx"> namespace JSC { namespace FTL {
</span><span class="lines">@@ -78,8 +75,6 @@
</span><span class="cx">         , m_state(state.graph)
</span><span class="cx">         , m_interpreter(state.graph, m_state)
</span><span class="cx">         , m_stackmapIDs(0)
</span><del>-        , m_tbaaKind(mdKindID(state.context, &quot;tbaa&quot;))
-        , m_tbaaStructKind(mdKindID(state.context, &quot;tbaa.struct&quot;))
</del><span class="cx">     {
</span><span class="cx">     }
</span><span class="cx">     
</span><span class="lines">@@ -125,35 +120,7 @@
</span><span class="cx">         
</span><span class="cx">         m_out.appendTo(m_prologue, stackOverflow);
</span><span class="cx">         createPhiVariables();
</span><del>-
-        Vector&lt;BasicBlock*&gt; depthFirst;
-        m_graph.getBlocksInDepthFirstOrder(depthFirst);
-
-        int maxNumberOfArguments = -1;
-        for (unsigned blockIndex = depthFirst.size(); blockIndex--; ) {
-            BasicBlock* block = depthFirst[blockIndex];
-            for (unsigned nodeIndex = block-&gt;size(); nodeIndex--; ) {
-                Node* m_node = block-&gt;at(nodeIndex);
-                if (m_node-&gt;hasKnownFunction()) {
-                    int numArgs = m_node-&gt;numChildren();
-                    NativeFunction func = m_node-&gt;knownFunction()-&gt;nativeFunction();
-                    Dl_info info;
-                    if (dladdr((void*)func, &amp;info)) {
-                        LValue callee = getFunctionBySymbol(info.dli_sname);
-                        if (callee &amp;&amp; numArgs &gt; maxNumberOfArguments)
-                            maxNumberOfArguments = numArgs;
-                    }
-                }
-            }
-        }
-
</del><span class="cx">         LValue capturedAlloca = m_out.alloca(arrayType(m_out.int64, m_graph.m_nextMachineLocal));
</span><del>-
-        if (maxNumberOfArguments &gt;= 0) {
-            m_execState = m_out.alloca(arrayType(m_out.int64, JSStack::CallFrameHeaderSize + maxNumberOfArguments));
-            m_execStorage = m_out.ptrToInt(m_execState, m_out.intPtr);        
-        }
-
</del><span class="cx">         m_captured = m_out.add(
</span><span class="cx">             m_out.ptrToInt(capturedAlloca, m_out.intPtr),
</span><span class="cx">             m_out.constIntPtr(m_graph.m_nextMachineLocal * sizeof(Register)));
</span><span class="lines">@@ -190,8 +157,9 @@
</span><span class="cx">             m_out.stackmapIntrinsic(), m_out.constInt64(m_ftlState.handleExceptionStackmapID),
</span><span class="cx">             m_out.constInt32(MacroAssembler::maxJumpReplacementSize()));
</span><span class="cx">         m_out.unreachable();
</span><del>-
-
</del><ins>+        
+        Vector&lt;BasicBlock*&gt; depthFirst;
+        m_graph.getBlocksInDepthFirstOrder(depthFirst);
</ins><span class="cx">         for (unsigned i = 0; i &lt; depthFirst.size(); ++i)
</span><span class="cx">             compileBlock(depthFirst[i]);
</span><span class="cx">         
</span><span class="lines">@@ -3560,19 +3528,15 @@
</span><span class="cx">     {
</span><span class="cx">         setBoolean(m_out.bitNot(boolify(m_node-&gt;child1())));
</span><span class="cx">     }
</span><del>-
</del><ins>+    
</ins><span class="cx">     void compileCallOrConstruct()
</span><span class="cx">     {
</span><span class="cx">         int dummyThisArgument = m_node-&gt;op() == Call ? 0 : 1;
</span><span class="cx">         int numPassedArgs = m_node-&gt;numChildren() - 1;
</span><span class="cx">         int numArgs = numPassedArgs + dummyThisArgument;
</span><del>-
-        if (m_node-&gt;hasKnownFunction()
-            &amp;&amp; possiblyCompileInlineableNativeCall(dummyThisArgument, numPassedArgs, numArgs))
-            return;
-
-        LValue jsCallee = lowJSValue(m_graph.varArgChild(m_node, 0));
-
</del><ins>+        
+        LValue callee = lowJSValue(m_graph.varArgChild(m_node, 0));
+        
</ins><span class="cx">         unsigned stackmapID = m_stackmapIDs++;
</span><span class="cx">         
</span><span class="cx">         Vector&lt;LValue&gt; arguments;
</span><span class="lines">@@ -3580,10 +3544,10 @@
</span><span class="cx">         arguments.append(m_out.constInt32(sizeOfCall()));
</span><span class="cx">         arguments.append(constNull(m_out.ref8));
</span><span class="cx">         arguments.append(m_out.constInt32(1 + JSStack::CallFrameHeaderSize - JSStack::CallerFrameAndPCSize + numArgs));
</span><del>-        arguments.append(jsCallee); // callee -&gt; %rax
</del><ins>+        arguments.append(callee); // callee -&gt; %rax
</ins><span class="cx">         arguments.append(getUndef(m_out.int64)); // code block
</span><span class="cx">         arguments.append(getUndef(m_out.int64)); // scope chain
</span><del>-        arguments.append(jsCallee); // callee -&gt; stack
</del><ins>+        arguments.append(callee); // callee -&gt; stack
</ins><span class="cx">         arguments.append(m_out.constInt64(numArgs)); // argument count and zeros for the tag
</span><span class="cx">         if (dummyThisArgument)
</span><span class="cx">             arguments.append(getUndef(m_out.int64));
</span><span class="lines">@@ -3599,165 +3563,7 @@
</span><span class="cx">         
</span><span class="cx">         setJSValue(call);
</span><span class="cx">     }
</span><del>-
-    bool possiblyCompileInlineableNativeCall(int dummyThisArgument, int numPassedArgs, int numArgs)
-    {
-        JSFunction* knownFunction = m_node-&gt;knownFunction();
-        NativeFunction function = knownFunction-&gt;nativeFunction();
-        Dl_info info;
-        if (dladdr((void*)function, &amp;info)) {
-            LValue callee = getFunctionBySymbol(info.dli_sname);
-            LType typeCallee;
-            if (callee &amp;&amp; (typeCallee = llvm-&gt;TypeOf(callee)) &amp;&amp; (typeCallee = llvm-&gt;GetElementType(typeCallee))) {
-
-                JSScope* scope = knownFunction-&gt;scopeUnchecked();
-                m_out.storePtr(m_callFrame, m_execStorage, m_heaps.CallFrame_callerFrame);
-                m_out.storePtr(constNull(m_out.intPtr), addressFor(m_execStorage, JSStack::CodeBlock));
-                m_out.storePtr(weakPointer(scope), addressFor(m_execStorage, JSStack::ScopeChain));
-                m_out.storePtr(weakPointer(knownFunction), addressFor(m_execStorage, JSStack::Callee));
-
-                m_out.store64(m_out.constInt64(numArgs), addressFor(m_execStorage, JSStack::ArgumentCount));
-
-                if (dummyThisArgument) 
-                    m_out.storePtr(getUndef(m_out.int64), addressFor(m_execStorage, JSStack::ThisArgument));
-                
-                for (int i = 0; i &lt; numPassedArgs; ++i) {
-                    m_out.storePtr(lowJSValue(m_graph.varArgChild(m_node, 1 + i)),
-                        addressFor(m_execStorage, dummyThisArgument ? JSStack::FirstArgument : JSStack::ThisArgument, i * sizeof(Register)));
-                }
-
-                LType typeCalleeArg;
-                llvm-&gt;GetParamTypes(typeCallee, &amp;typeCalleeArg);
-                LValue calleeCallFrame = m_out.address(m_execState, m_heaps.CallFrame_callerFrame).value();
-                m_out.storePtr(m_out.ptrToInt(calleeCallFrame, m_out.intPtr), m_out.absolute(&amp;vm().topCallFrame));
-                
-                LValue call = vmCall(callee, 
-                    m_out.bitCast(calleeCallFrame, typeCalleeArg));
-
-                if (Options::verboseCompilation())
-                    dataLog(&quot;Inlining: &quot;, info.dli_sname, &quot;\n&quot;);
-
-                setJSValue(call);
-                return true;
-            }
-        }
-        return false;
-    }
-
-    LValue getFunctionBySymbol(const CString symbol)
-    {
-        if (!m_ftlState.symbolTable.contains(symbol)) 
-            return nullptr;
-        if (!getModuleByPathForSymbol(m_ftlState.symbolTable.get(symbol), symbol))
-            return nullptr;
-        return llvm-&gt;GetNamedFunction(m_ftlState.module, symbol.data());
-    }
-
-    bool getModuleByPathForSymbol(const CString path, const CString symbol)
-    {
-        if (m_ftlState.nativeLoadedLibraries.contains(path)) {
-            LValue function = llvm-&gt;GetNamedFunction(m_ftlState.module, symbol.data());
-            if (!isInlinableSize(function)) {
-                // We had no choice but to compile this function, but don't try to inline it ever again.
-                m_ftlState.symbolTable.remove(symbol);
-                return false;
-            }
-            return true;
-        }
-
-        LMemoryBuffer memBuf;
-        
-        const CString actualPath = toCString(bundlePath().data(), 
-#if CPU(X86_64)
-            &quot;/Resources/Runtime/x86_64/&quot;,
-#elif CPU(ARM64) 
-            &quot;/Resources/Runtime/arm64/&quot;,
-#else
-#error &quot;Unrecognized Architecture&quot;
-#endif
-            path.data());
-
-        if (llvm-&gt;CreateMemoryBufferWithContentsOfFile(actualPath.data(), &amp;memBuf, nullptr)) {
-            if (Options::verboseCompilation()) 
-                dataLog(&quot;Failed to load module at &quot;, actualPath.data(), &quot;\n for symbol &quot;, symbol.data());
-            return false;
-        }
-
-        LModule module;
-
-        if (llvm-&gt;ParseBitcodeInContext(m_ftlState.context, memBuf, &amp;module, nullptr)) {
-            llvm-&gt;DisposeMemoryBuffer(memBuf);
-            return false;
-        }
-
-        llvm-&gt;DisposeMemoryBuffer(memBuf);
-        
-        if (LValue function = llvm-&gt;GetNamedFunction(m_ftlState.module, symbol.data())) {
-            if (!isInlinableSize(function)) {
-                m_ftlState.symbolTable.remove(symbol);
-                llvm-&gt;DisposeModule(module);
-                return false;
-            }
-        }
-
-        Vector&lt;CString&gt; namedFunctions;
-        for (LValue function = llvm-&gt;GetFirstFunction(module); function; function = llvm-&gt;GetNextFunction(function)) {
-            CString functionName(llvm-&gt;GetValueName(function));
-            namedFunctions.append(functionName);
-            
-            for (LBasicBlock basicBlock = llvm-&gt;GetFirstBasicBlock(function); basicBlock; basicBlock = llvm-&gt;GetNextBasicBlock(basicBlock)) {
-                for (LValue instruction = llvm-&gt;GetFirstInstruction(basicBlock); instruction; instruction = llvm-&gt;GetNextInstruction(instruction)) {
-                    llvm-&gt;SetMetadata(instruction, m_tbaaKind, nullptr);
-                    llvm-&gt;SetMetadata(instruction, m_tbaaStructKind, nullptr);
-                }
-            }
-        }
-
-        Vector&lt;CString&gt; namedGlobals;
-        for (LValue global = llvm-&gt;GetFirstGlobal(module); global; global = llvm-&gt;GetNextGlobal(global)) {
-            CString globalName(llvm-&gt;GetValueName(global));
-            namedGlobals.append(globalName);
-        }
-
-        if (llvm-&gt;LinkModules(m_ftlState.module, module, LLVMLinkerDestroySource, nullptr))
-            return false;
-        
-        for (CString* symbol = namedFunctions.begin(); symbol != namedFunctions.end(); ++symbol) {
-            LValue function = llvm-&gt;GetNamedFunction(m_ftlState.module, symbol-&gt;data());
-            llvm-&gt;SetVisibility(function, LLVMHiddenVisibility);
-            if (!llvm-&gt;IsDeclaration(function)) {
-                llvm-&gt;SetLinkage(function, LLVMPrivateLinkage);
-
-#if ASSERT_DISABLED
-                llvm-&gt;RemoveFunctionAttr(function, LLVMStackProtectAttribute);
-#endif // ASSERT_DISABLED
-            }
-        }
-
-        for (CString* symbol = namedGlobals.begin(); symbol != namedGlobals.end(); ++symbol) {
-            LValue global = llvm-&gt;GetNamedGlobal(m_ftlState.module, symbol-&gt;data());
-            llvm-&gt;SetVisibility(global, LLVMHiddenVisibility);
-            if (!llvm-&gt;IsDeclaration(global))
-                llvm-&gt;SetLinkage(global, LLVMPrivateLinkage);
-        }
-
-        m_ftlState.nativeLoadedLibraries.add(path);
-        return true;
-    }
-
-    bool isInlinableSize(LValue function)
-    {
-        size_t instructionCount = 0;
-        size_t maxSize = Options::maximumLLVMInstructionCountForNativeInlining();
-        for (LBasicBlock basicBlock = llvm-&gt;GetFirstBasicBlock(function); basicBlock; basicBlock = llvm-&gt;GetNextBasicBlock(basicBlock)) {
-            for (LValue instruction = llvm-&gt;GetFirstInstruction(basicBlock); instruction; instruction = llvm-&gt;GetNextInstruction(instruction)) {
-                if (++instructionCount &gt;= maxSize)
-                    return false;
-            }
-        }
-        return true;
-    }
-
</del><ins>+    
</ins><span class="cx">     void compileJump()
</span><span class="cx">     {
</span><span class="cx">         m_out.jump(lowBlock(m_node-&gt;targetBlock()));
</span><span class="lines">@@ -6276,8 +6082,6 @@
</span><span class="cx">     LBasicBlock m_handleExceptions;
</span><span class="cx">     HashMap&lt;BasicBlock*, LBasicBlock&gt; m_blocks;
</span><span class="cx">     
</span><del>-    LValue m_execState;
-    LValue m_execStorage;
</del><span class="cx">     LValue m_callFrame;
</span><span class="cx">     LValue m_captured;
</span><span class="cx">     LValue m_tagTypeNumber;
</span><span class="lines">@@ -6309,8 +6113,6 @@
</span><span class="cx">     Node* m_node;
</span><span class="cx">     
</span><span class="cx">     uint32_t m_stackmapIDs;
</span><del>-    unsigned m_tbaaKind;
-    unsigned m_tbaaStructKind;
</del><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> void lowerDFGToLLVM(State&amp; state)
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreftlFTLStatecpp"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/ftl/FTLState.cpp (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/ftl/FTLState.cpp        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/ftl/FTLState.cpp        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -32,15 +32,11 @@
</span><span class="cx"> #include &quot;FTLForOSREntryJITCode.h&quot;
</span><span class="cx"> #include &quot;FTLJITCode.h&quot;
</span><span class="cx"> #include &quot;FTLJITFinalizer.h&quot;
</span><del>-#include &quot;InlineRuntimeSymbolTable.h&quot;
-#include &lt;llvm/InitializeLLVM.h&gt;
-#include &lt;stdio.h&gt;
</del><span class="cx"> 
</span><span class="cx"> namespace JSC { namespace FTL {
</span><span class="cx"> 
</span><span class="cx"> using namespace DFG;
</span><span class="cx"> 
</span><del>-#define LINE_SIZE 500
</del><span class="cx"> State::State(Graph&amp; graph)
</span><span class="cx">     : graph(graph)
</span><span class="cx">     , context(llvm-&gt;ContextCreate())
</span><span class="lines">@@ -50,12 +46,6 @@
</span><span class="cx">     , compactUnwind(0)
</span><span class="cx">     , compactUnwindSize(0)
</span><span class="cx"> {
</span><del>-
-#define SYMBOL_TABLE_ADD(symbol, file) \
-    symbolTable.fastAdd(symbol, file);
-    FOR_EACH_LIBRARY_SYMBOL(SYMBOL_TABLE_ADD)
-#undef SYMBOL_TABLE_ADD
-    
</del><span class="cx">     switch (graph.m_plan.mode) {
</span><span class="cx">     case FTLMode: {
</span><span class="cx">         jitCode = adoptRef(new JITCode());
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreftlFTLStateh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/ftl/FTLState.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/ftl/FTLState.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/ftl/FTLState.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -81,9 +81,6 @@
</span><span class="cx">     RefPtr&lt;DataSection&gt; stackmapsSection;
</span><span class="cx">     
</span><span class="cx">     void dumpState(const char* when);
</span><del>-
-    HashSet&lt;CString&gt; nativeLoadedLibraries;
-    HashMap&lt;CString, CString&gt; symbolTable;
</del><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> } } // namespace JSC::FTL
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreheapHandleStackh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/heap/HandleStack.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/heap/HandleStack.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/heap/HandleStack.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -53,7 +53,7 @@
</span><span class="cx">     void visit(HeapRootVisitor&amp;);
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    JS_EXPORT_PRIVATE void grow();
</del><ins>+    void grow();
</ins><span class="cx">     void zapTo(Frame&amp;);
</span><span class="cx">     HandleSlot findFirstAfter(HandleSlot);
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCorellvmInitializeLLVMh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/llvm/InitializeLLVM.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/llvm/InitializeLLVM.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/llvm/InitializeLLVM.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -28,15 +28,10 @@
</span><span class="cx"> 
</span><span class="cx"> #if HAVE(LLVM)
</span><span class="cx"> 
</span><del>-#include &lt;string&gt;
-#include &lt;wtf/text/CString.h&gt;
-
</del><span class="cx"> namespace JSC {
</span><span class="cx"> 
</span><span class="cx"> void initializeLLVMImpl();
</span><span class="cx"> 
</span><del>-extern const CString* llvmBitcodeLibraryForInliningPath;
-
</del><span class="cx"> // You msut call this before using JSC::llvm. It's safe to call this multiple times.
</span><span class="cx"> // Returns true if we successfully loaded LLVM. Returns false if we didn't.
</span><span class="cx"> bool initializeLLVM();
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCorellvmInitializeLLVMMaccpp"></a>
<div class="delfile"><h4>Deleted: branches/ftlopt/Source/JavaScriptCore/llvm/InitializeLLVMMac.cpp (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/llvm/InitializeLLVMMac.cpp        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/llvm/InitializeLLVMMac.cpp        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -1,47 +0,0 @@
</span><del>-/*
- * Copyright (C) 2013 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;InitializeLLVM.h&quot;
-
-#if HAVE(LLVM)
-
-#include &quot;BundlePath.h&quot;
-#include &quot;InitializeLLVMPOSIX.h&quot;
-#include &lt;wtf/StringPrintStream.h&gt;
-
-// Use the &quot;JS&quot; prefix to make check-for-inappropriate-objc-class-names happy. I
-// think this is better than hacking that script.
-
-namespace JSC {
-
-void initializeLLVMImpl()
-{
-    initializeLLVMPOSIX(toCString(bundlePath().data(), &quot;/Libraries/libllvmForJSC.dylib&quot;).data());
-}
-
-} // namespace JSC
-
-#endif // HAVE(LLVM)
</del></span></pre></div>
<a id="branchesftloptSourceJavaScriptCorellvmInitializeLLVMMacmm"></a>
<div class="addfile"><h4>Added: branches/ftlopt/Source/JavaScriptCore/llvm/InitializeLLVMMac.mm (0 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/llvm/InitializeLLVMMac.mm                                (rev 0)
+++ branches/ftlopt/Source/JavaScriptCore/llvm/InitializeLLVMMac.mm        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -0,0 +1,57 @@
</span><ins>+/*
+ * Copyright (C) 2013 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. 
+ */
+
+#import &quot;config.h&quot;
+#import &quot;InitializeLLVM.h&quot;
+
+#if HAVE(LLVM)
+
+#import &quot;InitializeLLVMPOSIX.h&quot;
+#import &lt;Foundation/Foundation.h&gt;
+
+// Use the &quot;JS&quot; prefix to make check-for-inappropriate-objc-class-names happy. I
+// think this is better than hacking that script.
+
+@interface JSJavaScriptCoreBundleFinder : NSObject
+@end
+
+@implementation JSJavaScriptCoreBundleFinder
+@end
+
+namespace JSC {
+
+void initializeLLVMImpl()
+{
+    @autoreleasepool {
+        NSBundle *myBundle = [NSBundle bundleForClass:[JSJavaScriptCoreBundleFinder class]];
+        NSString *path = [[myBundle bundlePath] stringByAppendingPathComponent:@&quot;Libraries/libllvmForJSC.dylib&quot;];
+        
+        initializeLLVMPOSIX([path UTF8String]);
+    }
+}
+
+} // namespace JSC
+
+#endif // HAVE(LLVM)
</ins></span></pre></div>
<a id="branchesftloptSourceJavaScriptCorellvmLLVMAPIFunctionsh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/llvm/LLVMAPIFunctions.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/llvm/LLVMAPIFunctions.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/llvm/LLVMAPIFunctions.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -29,13 +29,6 @@
</span><span class="cx"> #include &quot;LLVMHeaders.h&quot;
</span><span class="cx"> 
</span><span class="cx"> #define FOR_EACH_LLVM_API_FUNCTION(macro) \
</span><del>-    macro(LLVMBool, ParseBitcode, (LLVMMemoryBufferRef MemBuf, LLVMModuleRef *OutModule, char **OutMessage)) \
-    macro(LLVMBool, ParseBitcodeInContext, (LLVMContextRef ContextRef, LLVMMemoryBufferRef MemBuf, LLVMModuleRef *OutModule, char **OutMessage)) \
-    macro(LLVMBool, GetBitcodeModuleInContext, (LLVMContextRef ContextRef, LLVMMemoryBufferRef MemBuf, LLVMModuleRef *OutM, char **OutMessage)) \
-    macro(LLVMBool, GetBitcodeModule, (LLVMMemoryBufferRef MemBuf, LLVMModuleRef *OutM, char **OutMessage)) \
-    macro(LLVMBool, GetBitcodeModuleProviderInContext, (LLVMContextRef ContextRef, LLVMMemoryBufferRef MemBuf, LLVMModuleProviderRef *OutMP, char **OutMessage)) \
-    macro(LLVMBool, GetBitcodeModuleProvider, (LLVMMemoryBufferRef MemBuf, LLVMModuleProviderRef *OutMP, char **OutMessage)) \
-    macro(LLVMBool, LinkModules, (LLVMModuleRef Dest, LLVMModuleRef Str, LLVMLinkerMode Mode, char **OutMessage)) \
</del><span class="cx">     macro(void, InitializeCore, (LLVMPassRegistryRef R)) \
</span><span class="cx">     macro(void, Shutdown, ()) \
</span><span class="cx">     macro(char *, CreateMessage, (const char *Message)) \
</span><span class="lines">@@ -58,7 +51,6 @@
</span><span class="cx">     macro(void, SetModuleInlineAsm, (LLVMModuleRef M, const char *Asm)) \
</span><span class="cx">     macro(LLVMContextRef, GetModuleContext, (LLVMModuleRef M)) \
</span><span class="cx">     macro(LLVMTypeRef, GetTypeByName, (LLVMModuleRef M, const char *Name)) \
</span><del>-    macro(void, DumpType, (LLVMTypeRef Val)) \
</del><span class="cx">     macro(unsigned, GetNamedMetadataNumOperands, (LLVMModuleRef M, const char* name)) \
</span><span class="cx">     macro(void, GetNamedMetadataOperands, (LLVMModuleRef M, const char* name, LLVMValueRef *Dest)) \
</span><span class="cx">     macro(void, AddNamedMetadataOperand, (LLVMModuleRef M, const char* name, LLVMValueRef Val)) \
</span><span class="lines">@@ -583,7 +575,6 @@
</span><span class="cx">     macro(LLVMBool, FindFunction, (LLVMExecutionEngineRef EE, const char *Name, LLVMValueRef *OutFn)) \
</span><span class="cx">     macro(void *, RecompileAndRelinkFunction, (LLVMExecutionEngineRef EE, LLVMValueRef Fn)) \
</span><span class="cx">     macro(LLVMTargetDataRef, GetExecutionEngineTargetData, (LLVMExecutionEngineRef EE)) \
</span><del>-    macro(LLVMTargetMachineRef, GetExecutionEngineTargetMachine, (LLVMExecutionEngineRef EE)) \
</del><span class="cx">     macro(void, AddGlobalMapping, (LLVMExecutionEngineRef EE, LLVMValueRef Global, void* Addr)) \
</span><span class="cx">     macro(void *, GetPointerToGlobal, (LLVMExecutionEngineRef EE, LLVMValueRef Global)) \
</span><span class="cx">     macro(LLVMMCJITMemoryManagerRef, CreateSimpleMCJITMemoryManager, (void *Opaque, LLVMMemoryManagerAllocateCodeSectionCallback AllocateCodeSection, LLVMMemoryManagerAllocateDataSectionCallback AllocateDataSection, LLVMMemoryManagerFinalizeMemoryCallback FinalizeMemory, LLVMMemoryManagerDestroyCallback Destory)) \
</span><span class="lines">@@ -610,18 +601,9 @@
</span><span class="cx">     macro(void, PassManagerBuilderPopulateFunctionPassManager, (LLVMPassManagerBuilderRef PMB, LLVMPassManagerRef PM)) \
</span><span class="cx">     macro(void, PassManagerBuilderPopulateModulePassManager, (LLVMPassManagerBuilderRef PMB, LLVMPassManagerRef PM)) \
</span><span class="cx">     macro(void, PassManagerBuilderPopulateLTOPassManager, (LLVMPassManagerBuilderRef PMB, LLVMPassManagerRef PM, LLVMBool Internalize, LLVMBool RunInliner)) \
</span><del>-    macro(void, AddAnalysisPasses, (LLVMTargetMachineRef T, LLVMPassManagerRef PM)) \
-    macro(void, AddInternalizePass, (LLVMPassManagerRef PM, unsigned AllButMain)) \
</del><span class="cx">     macro(void, AddAggressiveDCEPass, (LLVMPassManagerRef PM)) \
</span><span class="cx">     macro(void, AddCFGSimplificationPass, (LLVMPassManagerRef PM)) \
</span><span class="cx">     macro(void, AddDeadStoreEliminationPass, (LLVMPassManagerRef PM)) \
</span><del>-    macro(void, AddFunctionInliningPass, (LLVMPassManagerRef PM)) \
-    macro(void, AddGlobalDCEPass, (LLVMPassManagerRef PM)) \
-    macro(void, AddPruneEHPass, (LLVMPassManagerRef PM)) \
-    macro(void, AddIPSCCPPass, (LLVMPassManagerRef PM)) \
-    macro(void, AddDeadArgEliminationPass, (LLVMPassManagerRef PM)) \
-    macro(void, AddConstantMergePass, (LLVMPassManagerRef PM)) \
-    macro(void, AddGlobalOptimizerPass, (LLVMPassManagerRef PM)) \
</del><span class="cx">     macro(void, AddGVNPass, (LLVMPassManagerRef PM)) \
</span><span class="cx">     macro(void, AddIndVarSimplifyPass, (LLVMPassManagerRef PM)) \
</span><span class="cx">     macro(void, AddInstructionCombiningPass, (LLVMPassManagerRef PM)) \
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCorellvmLLVMHeadersh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/llvm/LLVMHeaders.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/llvm/LLVMHeaders.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/llvm/LLVMHeaders.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -43,15 +43,10 @@
</span><span class="cx"> #endif // COMPILER(CLANG)
</span><span class="cx"> 
</span><span class="cx"> #include &lt;llvm-c/Analysis.h&gt;
</span><del>-#include &lt;llvm-c/BitReader.h&gt;
</del><span class="cx"> #include &lt;llvm-c/Core.h&gt;
</span><span class="cx"> #include &lt;llvm-c/Disassembler.h&gt;
</span><span class="cx"> #include &lt;llvm-c/ExecutionEngine.h&gt;
</span><del>-#include &lt;llvm-c/Initialization.h&gt;
-#include &lt;llvm-c/Linker.h&gt;
</del><span class="cx"> #include &lt;llvm-c/Target.h&gt;
</span><del>-#include &lt;llvm-c/TargetMachine.h&gt;
-#include &lt;llvm-c/Transforms/IPO.h&gt;
</del><span class="cx"> #include &lt;llvm-c/Transforms/PassManagerBuilder.h&gt;
</span><span class="cx"> #include &lt;llvm-c/Transforms/Scalar.h&gt;
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreruntimeBundlePathh"></a>
<div class="delfile"><h4>Deleted: branches/ftlopt/Source/JavaScriptCore/runtime/BundlePath.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/runtime/BundlePath.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/runtime/BundlePath.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -1,39 +0,0 @@
</span><del>-/*
- * Copyright (C) 2013, 2014 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. 
- */
-
-#ifndef BundlePath_h
-#define BundlePath_h
-
-#include &lt;string&gt;
-#include &lt;wtf/text/CString.h&gt;
-
-namespace JSC {
-
-const CString&amp; bundlePath();
-
-} // namespace JSC
-
-#endif // BundlePath_h
-
</del></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreruntimeBundlePathmm"></a>
<div class="delfile"><h4>Deleted: branches/ftlopt/Source/JavaScriptCore/runtime/BundlePath.mm (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/runtime/BundlePath.mm        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/runtime/BundlePath.mm        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -1,56 +0,0 @@
</span><del>-/*
- * Copyright (C) 2013 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. 
- */
-
-#import &quot;config.h&quot;
-#import &quot;BundlePath.h&quot;
-
-#import &lt;Foundation/Foundation.h&gt;
-#import &lt;string&gt;
-
-@interface JSJavaScriptCoreFinder : NSObject
-@end
-
-@implementation JSJavaScriptCoreFinder
-@end
-
-
-namespace JSC {
-
-const CString* constantBundlePath = nullptr;
-
-const CString&amp; bundlePath()
-{
-    if (!constantBundlePath) {
-        @autoreleasepool {
-            NSBundle* myBundle = [NSBundle bundleForClass:[JSJavaScriptCoreFinder class]];
-
-            constantBundlePath = new CString([[myBundle bundlePath] UTF8String]);
-        }
-    }
-
-    return *constantBundlePath;
-}
-
-} // namespace JSC
</del></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreruntimeDateConversionh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/runtime/DateConversion.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/runtime/DateConversion.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/runtime/DateConversion.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -39,7 +39,7 @@
</span><span class="cx">     DateTimeFormatDateAndTime = DateTimeFormatDate | DateTimeFormatTime
</span><span class="cx"> };
</span><span class="cx"> 
</span><del>-JS_EXPORT_PRIVATE WTF::String formatDateTime(const GregorianDateTime&amp;, DateTimeFormat, bool asUTCVariant);
</del><ins>+WTF::String formatDateTime(const GregorianDateTime&amp;, DateTimeFormat, bool asUTCVariant);
</ins><span class="cx"> 
</span><span class="cx"> } // namespace JSC
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreruntimeDateInstanceh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/runtime/DateInstance.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/runtime/DateInstance.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/runtime/DateInstance.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -31,7 +31,7 @@
</span><span class="cx">         void finishCreation(VM&amp;);
</span><span class="cx">         JS_EXPORT_PRIVATE void finishCreation(VM&amp;, double);
</span><span class="cx"> 
</span><del>-        JS_EXPORT_PRIVATE static void destroy(JSCell*);
</del><ins>+        static void destroy(JSCell*);
</ins><span class="cx">  
</span><span class="cx">     public:
</span><span class="cx">         typedef JSWrapperObject Base;
</span><span class="lines">@@ -74,8 +74,8 @@
</span><span class="cx">         }
</span><span class="cx"> 
</span><span class="cx">     private:
</span><del>-        JS_EXPORT_PRIVATE const GregorianDateTime* calculateGregorianDateTime(ExecState*) const;
-        JS_EXPORT_PRIVATE const GregorianDateTime* calculateGregorianDateTimeUTC(ExecState*) const;
</del><ins>+        const GregorianDateTime* calculateGregorianDateTime(ExecState*) const;
+        const GregorianDateTime* calculateGregorianDateTimeUTC(ExecState*) const;
</ins><span class="cx"> 
</span><span class="cx">         mutable RefPtr&lt;DateInstanceData&gt; m_data;
</span><span class="cx">     };
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreruntimeExceptionHelpersh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/runtime/ExceptionHelpers.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/runtime/ExceptionHelpers.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/runtime/ExceptionHelpers.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -50,9 +50,9 @@
</span><span class="cx"> JSObject* createErrorForInvalidGlobalAssignment(ExecState*, const String&amp;);
</span><span class="cx"> JSString* errorDescriptionForValue(ExecState*, JSValue);
</span><span class="cx"> 
</span><del>-JS_EXPORT_PRIVATE JSObject* throwOutOfMemoryError(ExecState*);
-JS_EXPORT_PRIVATE JSObject* throwStackOverflowError(ExecState*);
-JS_EXPORT_PRIVATE JSObject* throwTerminatedExecutionException(ExecState*);
</del><ins>+JSObject* throwOutOfMemoryError(ExecState*);
+JSObject* throwStackOverflowError(ExecState*);
+JSObject* throwTerminatedExecutionException(ExecState*);
</ins><span class="cx"> 
</span><span class="cx"> 
</span><span class="cx"> class TerminatedExecutionError : public JSNonFinalObject {
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreruntimeJSArrayh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/runtime/JSArray.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/runtime/JSArray.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/runtime/JSArray.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -61,20 +61,20 @@
</span><span class="cx"> 
</span><span class="cx">     JS_EXPORT_PRIVATE static bool defineOwnProperty(JSObject*, ExecState*, PropertyName, const PropertyDescriptor&amp;, bool throwException);
</span><span class="cx"> 
</span><del>-    JS_EXPORT_PRIVATE static bool getOwnPropertySlot(JSObject*, ExecState*, PropertyName, PropertySlot&amp;);
</del><ins>+    static bool getOwnPropertySlot(JSObject*, ExecState*, PropertyName, PropertySlot&amp;);
</ins><span class="cx"> 
</span><span class="cx">     DECLARE_EXPORT_INFO;
</span><span class="cx">         
</span><span class="cx">     unsigned length() const { return getArrayLength(); }
</span><span class="cx">     // OK to use on new arrays, but not if it might be a RegExpMatchArray.
</span><del>-    JS_EXPORT_PRIVATE bool setLength(ExecState*, unsigned, bool throwException = false);
</del><ins>+    bool setLength(ExecState*, unsigned, bool throwException = false);
</ins><span class="cx"> 
</span><del>-    JS_EXPORT_PRIVATE void sort(ExecState*);
-    JS_EXPORT_PRIVATE void sort(ExecState*, JSValue compareFunction, CallType, const CallData&amp;);
-    JS_EXPORT_PRIVATE void sortNumeric(ExecState*, JSValue compareFunction, CallType, const CallData&amp;);
</del><ins>+    void sort(ExecState*);
+    void sort(ExecState*, JSValue compareFunction, CallType, const CallData&amp;);
+    void sortNumeric(ExecState*, JSValue compareFunction, CallType, const CallData&amp;);
</ins><span class="cx"> 
</span><del>-    JS_EXPORT_PRIVATE void push(ExecState*, JSValue);
-    JS_EXPORT_PRIVATE JSValue pop(ExecState*);
</del><ins>+    void push(ExecState*, JSValue);
+    JSValue pop(ExecState*);
</ins><span class="cx"> 
</span><span class="cx">     enum ShiftCountMode {
</span><span class="cx">         // This form of shift hints that we're doing queueing. With this assumption in hand,
</span><span class="lines">@@ -131,8 +131,8 @@
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    JS_EXPORT_PRIVATE void fillArgList(ExecState*, MarkedArgumentBuffer&amp;);
-    JS_EXPORT_PRIVATE void copyToArguments(ExecState*, CallFrame*, uint32_t length, int32_t firstVarArgOffset);
</del><ins>+    void fillArgList(ExecState*, MarkedArgumentBuffer&amp;);
+    void copyToArguments(ExecState*, CallFrame*, uint32_t length, int32_t firstVarArgOffset);
</ins><span class="cx"> 
</span><span class="cx">     static Structure* createStructure(VM&amp; vm, JSGlobalObject* globalObject, JSValue prototype, IndexingType indexingType)
</span><span class="cx">     {
</span><span class="lines">@@ -157,7 +157,7 @@
</span><span class="cx">     }
</span><span class="cx">         
</span><span class="cx">     bool shiftCountWithAnyIndexingType(ExecState*, unsigned startIndex, unsigned count);
</span><del>-    JS_EXPORT_PRIVATE bool shiftCountWithArrayStorage(unsigned startIndex, unsigned count, ArrayStorage*);
</del><ins>+    bool shiftCountWithArrayStorage(unsigned startIndex, unsigned count, ArrayStorage*);
</ins><span class="cx"> 
</span><span class="cx">     bool unshiftCountWithAnyIndexingType(ExecState*, unsigned startIndex, unsigned count);
</span><span class="cx">     bool unshiftCountWithArrayStorage(ExecState*, unsigned startIndex, unsigned count, ArrayStorage*);
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreruntimeJSCJSValueh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/runtime/JSCJSValue.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/runtime/JSCJSValue.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/runtime/JSCJSValue.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -240,14 +240,14 @@
</span><span class="cx">     JSObject* toObject(ExecState*, JSGlobalObject*) const;
</span><span class="cx"> 
</span><span class="cx">     // Integer conversions.
</span><del>-    double toInteger(ExecState*) const;
-    JS_EXPORT_PRIVATE double toIntegerPreserveNaN(ExecState*) const;
</del><ins>+    JS_EXPORT_PRIVATE double toInteger(ExecState*) const;
+    double toIntegerPreserveNaN(ExecState*) const;
</ins><span class="cx">     int32_t toInt32(ExecState*) const;
</span><span class="cx">     uint32_t toUInt32(ExecState*) const;
</span><span class="cx"> 
</span><span class="cx">     // Floating point conversions (this is a convenience method for webcore;
</span><span class="cx">     // signle precision float is not a representation used in JS or JSC).
</span><del>-    JS_EXPORT_PRIVATE float toFloat(ExecState* exec) const { return static_cast&lt;float&gt;(toNumber(exec)); }
</del><ins>+    float toFloat(ExecState* exec) const { return static_cast&lt;float&gt;(toNumber(exec)); }
</ins><span class="cx"> 
</span><span class="cx">     // Object operations, with the toObject operation included.
</span><span class="cx">     JSValue get(ExecState*, PropertyName) const;
</span><span class="lines">@@ -255,8 +255,8 @@
</span><span class="cx">     JSValue get(ExecState*, unsigned propertyName) const;
</span><span class="cx">     JSValue get(ExecState*, unsigned propertyName, PropertySlot&amp;) const;
</span><span class="cx">     void put(ExecState*, PropertyName, JSValue, PutPropertySlot&amp;);
</span><del>-    JS_EXPORT_PRIVATE void putToPrimitive(ExecState*, PropertyName, JSValue, PutPropertySlot&amp;);
-    JS_EXPORT_PRIVATE void putToPrimitiveByIndex(ExecState*, unsigned propertyName, JSValue, bool shouldThrow);
</del><ins>+    void putToPrimitive(ExecState*, PropertyName, JSValue, PutPropertySlot&amp;);
+    void putToPrimitiveByIndex(ExecState*, unsigned propertyName, JSValue, bool shouldThrow);
</ins><span class="cx">     void putByIndex(ExecState*, unsigned propertyName, JSValue, bool shouldThrow);
</span><span class="cx"> 
</span><span class="cx">     JSValue toThis(ExecState*, ECMAMode) const;
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreruntimeJSDateMathh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/runtime/JSDateMath.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/runtime/JSDateMath.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/runtime/JSDateMath.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -50,10 +50,10 @@
</span><span class="cx"> 
</span><span class="cx"> class VM;
</span><span class="cx"> 
</span><del>-JS_EXPORT_PRIVATE void msToGregorianDateTime(VM&amp;, double, bool outputIsUTC, GregorianDateTime&amp;);
-JS_EXPORT_PRIVATE double gregorianDateTimeToMS(VM&amp;, const GregorianDateTime&amp;, double, bool inputIsUTC);
-JS_EXPORT_PRIVATE double getUTCOffset(VM&amp;);
-JS_EXPORT_PRIVATE double parseDate(VM&amp;, const WTF::String&amp;);
</del><ins>+void msToGregorianDateTime(VM&amp;, double, bool outputIsUTC, GregorianDateTime&amp;);
+double gregorianDateTimeToMS(VM&amp;, const GregorianDateTime&amp;, double, bool inputIsUTC);
+double getUTCOffset(VM&amp;);
+double parseDate(VM&amp;, const WTF::String&amp;);
</ins><span class="cx"> 
</span><span class="cx"> } // namespace JSC
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreruntimeJSObjecth"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/runtime/JSObject.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/runtime/JSObject.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/runtime/JSObject.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -110,8 +110,8 @@
</span><span class="cx">     JS_EXPORT_PRIVATE static String className(const JSObject*);
</span><span class="cx"> 
</span><span class="cx">     JSValue prototype() const;
</span><del>-    JS_EXPORT_PRIVATE void setPrototype(VM&amp;, JSValue prototype);
-    JS_EXPORT_PRIVATE bool setPrototypeWithCycleCheck(ExecState*, JSValue prototype);
</del><ins>+    void setPrototype(VM&amp;, JSValue prototype);
+    bool setPrototypeWithCycleCheck(ExecState*, JSValue prototype);
</ins><span class="cx">         
</span><span class="cx">     bool mayInterceptIndexedAccesses()
</span><span class="cx">     {
</span><span class="lines">@@ -131,9 +131,9 @@
</span><span class="cx">     // The key difference between this and getOwnPropertySlot is that getOwnPropertySlot
</span><span class="cx">     // currently returns incorrect results for the DOM window (with non-own properties)
</span><span class="cx">     // being returned. Once this is fixed we should migrate code &amp; remove this method.
</span><del>-    JS_EXPORT_PRIVATE bool getOwnPropertyDescriptor(ExecState*, PropertyName, PropertyDescriptor&amp;);
</del><ins>+    bool getOwnPropertyDescriptor(ExecState*, PropertyName, PropertyDescriptor&amp;);
</ins><span class="cx"> 
</span><del>-    JS_EXPORT_PRIVATE bool allowsAccessFrom(ExecState*);
</del><ins>+    bool allowsAccessFrom(ExecState*);
</ins><span class="cx"> 
</span><span class="cx">     unsigned getArrayLength() const
</span><span class="cx">     {
</span><span class="lines">@@ -589,7 +589,7 @@
</span><span class="cx">     JS_EXPORT_PRIVATE void putDirectNativeFunction(VM&amp;, JSGlobalObject*, const PropertyName&amp;, unsigned functionLength, NativeFunction, Intrinsic, unsigned attributes);
</span><span class="cx">     JSFunction* putDirectBuiltinFunction(VM&amp;, JSGlobalObject*, const PropertyName&amp;, FunctionExecutable*, unsigned attributes);
</span><span class="cx">     JSFunction* putDirectBuiltinFunctionWithoutTransition(VM&amp;, JSGlobalObject*, const PropertyName&amp;, FunctionExecutable*, unsigned attributes);
</span><del>-    JS_EXPORT_PRIVATE void putDirectNativeFunctionWithoutTransition(VM&amp;, JSGlobalObject*, const PropertyName&amp;, unsigned functionLength, NativeFunction, Intrinsic, unsigned attributes);
</del><ins>+    void putDirectNativeFunctionWithoutTransition(VM&amp;, JSGlobalObject*, const PropertyName&amp;, unsigned functionLength, NativeFunction, Intrinsic, unsigned attributes);
</ins><span class="cx"> 
</span><span class="cx">     JS_EXPORT_PRIVATE static bool defineOwnProperty(JSObject*, ExecState*, PropertyName, const PropertyDescriptor&amp;, bool shouldThrow);
</span><span class="cx"> 
</span><span class="lines">@@ -600,8 +600,8 @@
</span><span class="cx">     bool isActivationObject() const;
</span><span class="cx">     bool isErrorInstance() const;
</span><span class="cx"> 
</span><del>-    JS_EXPORT_PRIVATE void seal(VM&amp;);
-    JS_EXPORT_PRIVATE void freeze(VM&amp;);
</del><ins>+    void seal(VM&amp;);
+    void freeze(VM&amp;);
</ins><span class="cx">     JS_EXPORT_PRIVATE void preventExtensions(VM&amp;);
</span><span class="cx">     bool isSealed(VM&amp; vm) { return structure(vm)-&gt;isSealed(vm); }
</span><span class="cx">     bool isFrozen(VM&amp; vm) { return structure(vm)-&gt;isFrozen(vm); }
</span><span class="lines">@@ -978,7 +978,7 @@
</span><span class="cx">     ContiguousDoubles ensureDoubleSlow(VM&amp;);
</span><span class="cx">     ContiguousJSValues ensureContiguousSlow(VM&amp;);
</span><span class="cx">     ContiguousJSValues rageEnsureContiguousSlow(VM&amp;);
</span><del>-    JS_EXPORT_PRIVATE ArrayStorage* ensureArrayStorageSlow(VM&amp;);
</del><ins>+    ArrayStorage* ensureArrayStorageSlow(VM&amp;);
</ins><span class="cx">     
</span><span class="cx">     enum DoubleToContiguousMode { EncodeValueAsDouble, RageConvertDoubleToValue };
</span><span class="cx">     template&lt;DoubleToContiguousMode mode&gt;
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreruntimeJSWrapperObjecth"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/runtime/JSWrapperObject.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/runtime/JSWrapperObject.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/runtime/JSWrapperObject.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -60,7 +60,7 @@
</span><span class="cx">         explicit JSWrapperObject(VM&amp;, Structure*);
</span><span class="cx">         static const unsigned StructureFlags = OverridesVisitChildren | Base::StructureFlags;
</span><span class="cx"> 
</span><del>-        JS_EXPORT_PRIVATE static void visitChildren(JSCell*, SlotVisitor&amp;);
</del><ins>+        static void visitChildren(JSCell*, SlotVisitor&amp;);
</ins><span class="cx"> 
</span><span class="cx">     private:
</span><span class="cx">         WriteBarrier&lt;Unknown&gt; m_internalValue;
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreruntimeOptionsh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/runtime/Options.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/runtime/Options.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/runtime/Options.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -196,8 +196,6 @@
</span><span class="cx">     v(unsigned, maximumInliningDepthForMustInline, 7) \
</span><span class="cx">     v(unsigned, maximumInliningRecursionForMustInline, 3) \
</span><span class="cx">     \
</span><del>-    v(unsigned, maximumLLVMInstructionCountForNativeInlining, 80) \
-    \
</del><span class="cx">     /* Maximum size of a caller for enabling inlining. This is purely to protect us */\
</span><span class="cx">     /* from super long compiles that take a lot of memory. */\
</span><span class="cx">     v(unsigned, maximumInliningCallerSize, 10000) \
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreruntimeRegExph"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/runtime/RegExp.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/runtime/RegExp.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/runtime/RegExp.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -61,7 +61,7 @@
</span><span class="cx">         const char* errorMessage() const { return m_constructionError; }
</span><span class="cx"> 
</span><span class="cx">         JS_EXPORT_PRIVATE int match(VM&amp;, const String&amp;, unsigned startOffset, Vector&lt;int, 32&gt;&amp; ovector);
</span><del>-        JS_EXPORT_PRIVATE MatchResult match(VM&amp;, const String&amp;, unsigned startOffset);
</del><ins>+        MatchResult match(VM&amp;, const String&amp;, unsigned startOffset);
</ins><span class="cx">         unsigned numSubpatterns() const { return m_numSubpatterns; }
</span><span class="cx"> 
</span><span class="cx">         bool hasCode()
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreruntimeStringObjecth"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/runtime/StringObject.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/runtime/StringObject.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/runtime/StringObject.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -45,16 +45,16 @@
</span><span class="cx">         }
</span><span class="cx">         static StringObject* create(VM&amp;, JSGlobalObject*, JSString*);
</span><span class="cx"> 
</span><del>-        JS_EXPORT_PRIVATE static bool getOwnPropertySlot(JSObject*, ExecState*, PropertyName, PropertySlot&amp;);
-        JS_EXPORT_PRIVATE static bool getOwnPropertySlotByIndex(JSObject*, ExecState*, unsigned propertyName, PropertySlot&amp;);
</del><ins>+        static bool getOwnPropertySlot(JSObject*, ExecState*, PropertyName, PropertySlot&amp;);
+        static bool getOwnPropertySlotByIndex(JSObject*, ExecState*, unsigned propertyName, PropertySlot&amp;);
</ins><span class="cx"> 
</span><del>-        JS_EXPORT_PRIVATE static void put(JSCell*, ExecState*, PropertyName, JSValue, PutPropertySlot&amp;);
-        JS_EXPORT_PRIVATE static void putByIndex(JSCell*, ExecState*, unsigned propertyName, JSValue, bool shouldThrow);
</del><ins>+        static void put(JSCell*, ExecState*, PropertyName, JSValue, PutPropertySlot&amp;);
+        static void putByIndex(JSCell*, ExecState*, unsigned propertyName, JSValue, bool shouldThrow);
</ins><span class="cx"> 
</span><del>-        JS_EXPORT_PRIVATE static bool deleteProperty(JSCell*, ExecState*, PropertyName);
-        JS_EXPORT_PRIVATE static bool deletePropertyByIndex(JSCell*, ExecState*, unsigned propertyName);
-        JS_EXPORT_PRIVATE static void getOwnPropertyNames(JSObject*, ExecState*, PropertyNameArray&amp;, EnumerationMode);
-        JS_EXPORT_PRIVATE static bool defineOwnProperty(JSObject*, ExecState*, PropertyName, const PropertyDescriptor&amp;, bool shouldThrow);
</del><ins>+        static bool deleteProperty(JSCell*, ExecState*, PropertyName);
+        static bool deletePropertyByIndex(JSCell*, ExecState*, unsigned propertyName);
+        static void getOwnPropertyNames(JSObject*, ExecState*, PropertyNameArray&amp;, EnumerationMode);
+        static bool defineOwnProperty(JSObject*, ExecState*, PropertyName, const PropertyDescriptor&amp;, bool shouldThrow);
</ins><span class="cx"> 
</span><span class="cx">         DECLARE_EXPORT_INFO;
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoreruntimeStructureh"></a>
<div class="modfile"><h4>Modified: branches/ftlopt/Source/JavaScriptCore/runtime/Structure.h (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/runtime/Structure.h        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/runtime/Structure.h        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -120,13 +120,13 @@
</span><span class="cx">     static Structure* attributeChangeTransition(VM&amp;, Structure*, PropertyName, unsigned attributes);
</span><span class="cx">     static Structure* toCacheableDictionaryTransition(VM&amp;, Structure*);
</span><span class="cx">     static Structure* toUncacheableDictionaryTransition(VM&amp;, Structure*);
</span><del>-    JS_EXPORT_PRIVATE static Structure* sealTransition(VM&amp;, Structure*);
-    JS_EXPORT_PRIVATE static Structure* freezeTransition(VM&amp;, Structure*);
</del><ins>+    static Structure* sealTransition(VM&amp;, Structure*);
+    static Structure* freezeTransition(VM&amp;, Structure*);
</ins><span class="cx">     static Structure* preventExtensionsTransition(VM&amp;, Structure*);
</span><del>-    JS_EXPORT_PRIVATE static Structure* nonPropertyTransition(VM&amp;, Structure*, NonPropertyTransition);
</del><ins>+    static Structure* nonPropertyTransition(VM&amp;, Structure*, NonPropertyTransition);
</ins><span class="cx"> 
</span><del>-    JS_EXPORT_PRIVATE bool isSealed(VM&amp;);
-    JS_EXPORT_PRIVATE bool isFrozen(VM&amp;);
</del><ins>+    bool isSealed(VM&amp;);
+    bool isFrozen(VM&amp;);
</ins><span class="cx">     bool isExtensible() const { return !m_preventExtensions; }
</span><span class="cx">     bool didTransition() const { return m_didTransition; }
</span><span class="cx">     bool putWillGrowOutOfLineStorage();
</span><span class="lines">@@ -478,7 +478,7 @@
</span><span class="cx">         
</span><span class="cx">     bool checkOffsetConsistency() const;
</span><span class="cx"> 
</span><del>-    JS_EXPORT_PRIVATE void allocateRareData(VM&amp;);
</del><ins>+    void allocateRareData(VM&amp;);
</ins><span class="cx">     void cloneRareDataFrom(VM&amp;, const Structure*);
</span><span class="cx"> 
</span><span class="cx">     static const int s_maxTransitionLength = 64;
</span></span></pre></div>
<a id="branchesftloptSourceJavaScriptCoretestedsymbolssymlst"></a>
<div class="delfile"><h4>Deleted: branches/ftlopt/Source/JavaScriptCore/tested-symbols.symlst (169583 => 169584)</h4>
<pre class="diff"><span>
<span class="info">--- branches/ftlopt/Source/JavaScriptCore/tested-symbols.symlst        2014-06-04 04:34:28 UTC (rev 169583)
+++ branches/ftlopt/Source/JavaScriptCore/tested-symbols.symlst        2014-06-04 04:47:43 UTC (rev 169584)
</span><span class="lines">@@ -1,87 +0,0 @@
</span><del>-__ZN3JSC15globalFuncIsNaNEPNS_9ExecStateE
-__ZN3JSC23objectProtoFuncToStringEPNS_9ExecStateE
-__ZN3JSCL16mathProtoFuncCosEPNS_9ExecStateE
-__ZN3JSCL16mathProtoFuncSinEPNS_9ExecStateE
-__ZN3JSCL16mathProtoFuncTanEPNS_9ExecStateE
-__ZN3JSCL17mathProtoFuncACosEPNS_9ExecStateE
-__ZN3JSCL17mathProtoFuncASinEPNS_9ExecStateE
-__ZN3JSCL17mathProtoFuncATanEPNS_9ExecStateE
-__ZN3JSCL17mathProtoFuncCbrtEPNS_9ExecStateE
-__ZN3JSCL17mathProtoFuncCoshEPNS_9ExecStateE
-__ZN3JSCL17mathProtoFuncLog2EPNS_9ExecStateE
-__ZN3JSCL17mathProtoFuncSinhEPNS_9ExecStateE
-__ZN3JSCL17mathProtoFuncTanhEPNS_9ExecStateE
-__ZN3JSCL18mathProtoFuncACoshEPNS_9ExecStateE
-__ZN3JSCL18mathProtoFuncASinhEPNS_9ExecStateE
-__ZN3JSCL18mathProtoFuncATan2EPNS_9ExecStateE
-__ZN3JSCL18mathProtoFuncATanhEPNS_9ExecStateE
-__ZN3JSCL18mathProtoFuncExpm1EPNS_9ExecStateE
-__ZN3JSCL18mathProtoFuncExpm1EPNS_9ExecStateE
-__ZN3JSCL18mathProtoFuncHypotEPNS_9ExecStateE
-__ZN3JSCL18mathProtoFuncLog10EPNS_9ExecStateE
-__ZN3JSCL18mathProtoFuncLog1pEPNS_9ExecStateE
-__ZN3JSCL18mathProtoFuncTruncEPNS_9ExecStateE
-__ZN3JSCL19arrayProtoFuncShiftEPNS_9ExecStateE
-__ZN3JSCL19dateProtoFuncGetDayEPNS_9ExecStateE
-__ZN3JSCL19mathProtoFuncRandomEPNS_9ExecStateE
-__ZN3JSCL20dateProtoFuncGetDateEPNS_9ExecStateE
-__ZN3JSCL20dateProtoFuncGetTimeEPNS_9ExecStateE
-__ZN3JSCL20dateProtoFuncGetYearEPNS_9ExecStateE
-__ZN3JSCL20dateProtoFuncSetDateEPNS_9ExecStateE
-__ZN3JSCL20stringProtoFuncSliceEPNS_9ExecStateE
-__ZN3JSCL21dateProtoFuncGetHoursEPNS_9ExecStateE
-__ZN3JSCL21dateProtoFuncGetMonthEPNS_9ExecStateE
-__ZN3JSCL21dateProtoFuncToStringEPNS_9ExecStateE
-__ZN3JSCL22JSONProtoFuncStringifyEPNS_9ExecStateE
-__ZN3JSCL22dateProtoFuncGetUTCDayEPNS_9ExecStateE
-__ZN3JSCL23dateProtoFuncGetMinutesEPNS_9ExecStateE
-__ZN3JSCL23dateProtoFuncGetSecondsEPNS_9ExecStateE
-__ZN3JSCL23dateProtoFuncGetUTCDateEPNS_9ExecStateE
-__ZN3JSCL23objectConstructorFreezeEPNS_9ExecStateE
-__ZN3JSCL24dateProtoFuncGetFullYearEPNS_9ExecStateE
-__ZN3JSCL24dateProtoFuncGetUTCHoursEPNS_9ExecStateE
-__ZN3JSCL24dateProtoFuncGetUTCMonthEPNS_9ExecStateE
-__ZN3JSCL24dateProtoFuncToUTCStringEPNS_9ExecStateE
-__ZN3JSCL25dataViewProtoFuncGetUint8EPNS_9ExecStateE
-__ZN3JSCL25dataViewProtoFuncSetUint8EPNS_9ExecStateE
-__ZN3JSCL25dateProtoFuncToDateStringEPNS_9ExecStateE
-__ZN3JSCL25dateProtoFuncToTimeStringEPNS_9ExecStateE
-__ZN3JSCL25objectConstructorIsFrozenEPNS_9ExecStateE
-__ZN3JSCL26dateProtoFuncGetUTCMinutesEPNS_9ExecStateE
-__ZN3JSCL26dateProtoFuncGetUTCSecondsEPNS_9ExecStateE
-__ZN3JSCL26stringProtoFuncToLowerCaseEPNS_9ExecStateE
-__ZN3JSCL26stringProtoFuncToUpperCaseEPNS_9ExecStateE
-__ZN3JSCL27dateProtoFuncGetUTCFullYearEPNS_9ExecStateE
-__ZN3JSCL28dateProtoFuncGetMilliSecondsEPNS_9ExecStateE
-__ZN3JSCL30dateProtoFuncGetTimezoneOffsetEPNS_9ExecStateE
-__ZN3JSCL31dateProtoFuncGetUTCMillisecondsEPNS_9ExecStateE
-__ZN3JSCL31dateProtoFuncToLocaleDateStringEPNS_9ExecStateE
-__ZN3JSCL34objectConstructorPreventExtensionsEPNS_9ExecStateE
-__ZN3JSCL36objectConstructorGetOwnPropertyNamesEPNS_9ExecStateE
-__ZN3JSCL9dateParseEPNS_9ExecStateE
-__ZN3JSC9ExecState13dataViewTableERNS_2VME
-__ZN3JSC13dataViewTableE
-__ZN3JSC19JSDataViewPrototype15createStructureERNS_2VMEPNS_14JSGlobalObjectENS_7JSValueE
-__ZN3JSC1teENS_12PropertyNameERNS_12PropertySlotE
-__ZN3JSC19JSDataViewPrototype6createERNS_2VMEPNS_9StructureE
-__ZN3JSC19JSDataViewPrototype6s_infoE
-__ZN3JSC19JSDataViewPrototypeC1ERNS_2VMEPNS_9Structu1getStaticFunctionSlotINS_8JSObjectEEEbPNS_9ExecStateERKNS_9HashTableEPS1_NS_12PropertyNameERNS_12PropertyS_9ExecStateE
-__ZN3JSC7getDataINS_12Uint8AdaptorEEExPNS_9ExecStateE
-__ZN3JSC7getDataI64AdaptorEEExPNS_9ExecStateE
-__ZN3JSC7setDataINS_11Int8AdaptorEEExPNS_9ExecStateE
-__ZN3JSC7setDataINS_12Int16AdaptorEEExPNS_9ExecStateE
-__ZN3JSC7setDataINS_12Int32AdaptorEEExPNS_9ExecStateE
-__ZNS_13Uint16AdaptorEEExPNS_9ExecStateE
-__ZN3JSC7setDataINS_13Uint32AdaptorEEExPNS_9ExecStateE
-__ZN3JSC7setDataINS_14Float32AdaptorEEExPNS_9ExecStateE
-__ZN3JSC7setDataINS_14Float64AdaptorEEExPNStaViewTableIndexE
-__ZN3JSCL19dataViewTableValuesE
-__ZN3JSCL24dataViewProtoFuncGetInt8EPNS_9ExecStateE
-__ZN3JSCL24dataViewProtoFuncSetInt8EPNS_9ExecStateE
-__ZN3JSCL25dataViewProtoFuncGetInt16EPNZN3JSCL25dataViewProtoFuncGetUint8EPNS_9ExecStateE
-__ZN3JSCL25dataViewProtoFuncSetInt16EPNS_9ExecStateE
-__ZN3JSCL25dataViewProtoFuncSetInt32EPNS_9ExecStateE
-__ZN3JSCL25dataViewProtoFuncSetUintteE
-__ZN3JSCL27dataViewProtoFuncSetFloat32EPNS_9ExecStateE
-__ZN3JSCL27dataViewProtoFuncSetFloat64EPNS_9ExecStateE
-__ZN3JSCL18dataViewTableIndexE
</del></span></pre>
</div>
</div>

</body>
</html>