Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (181840 => 181841)
--- trunk/Source/_javascript_Core/ChangeLog 2015-03-23 02:04:11 UTC (rev 181840)
+++ trunk/Source/_javascript_Core/ChangeLog 2015-03-23 02:18:36 UTC (rev 181841)
@@ -1,5 +1,20 @@
2015-03-22 Filip Pizlo <[email protected]>
+ Remove DFG::ValueRecoveryOverride; it's been dead since we removed forward speculations
+ https://bugs.webkit.org/show_bug.cgi?id=142956
+
+ Rubber stamped by Gyuyoung Kim.
+
+ Just removing dead code.
+
+ * _javascript_Core.vcxproj/_javascript_Core.vcxproj:
+ * _javascript_Core.xcodeproj/project.pbxproj:
+ * dfg/DFGOSRExit.h:
+ * dfg/DFGOSRExitCompiler.cpp:
+ * dfg/DFGValueRecoveryOverride.h: Removed.
+
+2015-03-22 Filip Pizlo <[email protected]>
+
DFG OSR exit shouldn't assume that the frame count for exit is greater than the frame count in DFG
https://bugs.webkit.org/show_bug.cgi?id=142948
Modified: trunk/Source/_javascript_Core/_javascript_Core.vcxproj/_javascript_Core.vcxproj (181840 => 181841)
--- trunk/Source/_javascript_Core/_javascript_Core.vcxproj/_javascript_Core.vcxproj 2015-03-23 02:04:11 UTC (rev 181840)
+++ trunk/Source/_javascript_Core/_javascript_Core.vcxproj/_javascript_Core.vcxproj 2015-03-23 02:18:36 UTC (rev 181841)
@@ -1159,7 +1159,6 @@
<ClInclude Include="..\dfg\DFGUnificationPhase.h" />
<ClInclude Include="..\dfg\DFGUseKind.h" />
<ClInclude Include="..\dfg\DFGValidate.h" />
- <ClInclude Include="..\dfg\DFGValueRecoveryOverride.h" />
<ClInclude Include="..\dfg\DFGValueSource.h" />
<ClInclude Include="..\dfg\DFGValueStrength.h" />
<ClInclude Include="..\dfg\DFGVariableAccessData.h" />
Modified: trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj (181840 => 181841)
--- trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj 2015-03-23 02:04:11 UTC (rev 181840)
+++ trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj 2015-03-23 02:18:36 UTC (rev 181841)
@@ -235,7 +235,6 @@
0F2BDC2C151FDE9100CD8910 /* Operands.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F2BDC2B151FDE8B00CD8910 /* Operands.h */; settings = {ATTRIBUTES = (Private, ); }; };
0F2BDC451522801B00CD8910 /* DFGMinifiedGraph.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F2BDC3D1522801700CD8910 /* DFGMinifiedGraph.h */; settings = {ATTRIBUTES = (Private, ); }; };
0F2BDC461522802000CD8910 /* DFGMinifiedNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F2BDC3E1522801700CD8910 /* DFGMinifiedNode.h */; settings = {ATTRIBUTES = (Private, ); }; };
- 0F2BDC471522802500CD8910 /* DFGValueRecoveryOverride.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F2BDC3F1522801700CD8910 /* DFGValueRecoveryOverride.h */; settings = {ATTRIBUTES = (Private, ); }; };
0F2BDC481522802900CD8910 /* DFGValueSource.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F2BDC401522801700CD8910 /* DFGValueSource.h */; settings = {ATTRIBUTES = (Private, ); }; };
0F2BDC491522809600CD8910 /* DFGVariableEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F2BDC411522801700CD8910 /* DFGVariableEvent.h */; settings = {ATTRIBUTES = (Private, ); }; };
0F2BDC4A1522809A00CD8910 /* DFGVariableEventStream.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F2BDC421522801700CD8910 /* DFGVariableEventStream.cpp */; };
@@ -1926,7 +1925,6 @@
0F2BDC2B151FDE8B00CD8910 /* Operands.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Operands.h; sourceTree = "<group>"; };
0F2BDC3D1522801700CD8910 /* DFGMinifiedGraph.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DFGMinifiedGraph.h; path = dfg/DFGMinifiedGraph.h; sourceTree = "<group>"; };
0F2BDC3E1522801700CD8910 /* DFGMinifiedNode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DFGMinifiedNode.h; path = dfg/DFGMinifiedNode.h; sourceTree = "<group>"; };
- 0F2BDC3F1522801700CD8910 /* DFGValueRecoveryOverride.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DFGValueRecoveryOverride.h; path = dfg/DFGValueRecoveryOverride.h; sourceTree = "<group>"; };
0F2BDC401522801700CD8910 /* DFGValueSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DFGValueSource.h; path = dfg/DFGValueSource.h; sourceTree = "<group>"; };
0F2BDC411522801700CD8910 /* DFGVariableEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DFGVariableEvent.h; path = dfg/DFGVariableEvent.h; sourceTree = "<group>"; };
0F2BDC421522801700CD8910 /* DFGVariableEventStream.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = DFGVariableEventStream.cpp; path = dfg/DFGVariableEventStream.cpp; sourceTree = "<group>"; };
@@ -4970,7 +4968,6 @@
0F34B14816D4200E001CDA5A /* DFGUseKind.h */,
0F3B3A2915474FF4003ED0FF /* DFGValidate.cpp */,
0F3B3A2A15474FF4003ED0FF /* DFGValidate.h */,
- 0F2BDC3F1522801700CD8910 /* DFGValueRecoveryOverride.h */,
0F2BDC4E15228BE700CD8910 /* DFGValueSource.cpp */,
0F2BDC401522801700CD8910 /* DFGValueSource.h */,
0F0123301944EA1B00843A0C /* DFGValueStrength.cpp */,
@@ -5744,7 +5741,6 @@
0FBE0F7716C1DB120082C5E8 /* DFGUnificationPhase.h in Headers */,
0F34B14A16D42013001CDA5A /* DFGUseKind.h in Headers */,
0F3B3A2C15475002003ED0FF /* DFGValidate.h in Headers */,
- 0F2BDC471522802500CD8910 /* DFGValueRecoveryOverride.h in Headers */,
0F2BDC481522802900CD8910 /* DFGValueSource.h in Headers */,
0F620174143FCD330068B77C /* DFGVariableAccessData.h in Headers */,
0FAA3E0919D0C2CB00FAC9E2 /* DFGPromoteHeapAccess.h in Headers */,
Modified: trunk/Source/_javascript_Core/dfg/DFGOSRExit.h (181840 => 181841)
--- trunk/Source/_javascript_Core/dfg/DFGOSRExit.h 2015-03-23 02:04:11 UTC (rev 181840)
+++ trunk/Source/_javascript_Core/dfg/DFGOSRExit.h 2015-03-23 02:18:36 UTC (rev 181841)
@@ -32,7 +32,6 @@
#include "DFGCommon.h"
#include "DFGExitProfile.h"
#include "DFGOSRExitBase.h"
-#include "DFGValueRecoveryOverride.h"
#include "GPRInfo.h"
#include "MacroAssembler.h"
#include "MethodOfGettingAValueProfile.h"
@@ -102,8 +101,6 @@
unsigned m_streamIndex;
- RefPtr<ValueRecoveryOverride> m_valueRecoveryOverride;
-
void considerAddingAsFrequentExitSite(CodeBlock* profiledCodeBlock)
{
OSRExitBase::considerAddingAsFrequentExitSite(profiledCodeBlock, ExitFromDFG);
Modified: trunk/Source/_javascript_Core/dfg/DFGOSRExitCompiler.cpp (181840 => 181841)
--- trunk/Source/_javascript_Core/dfg/DFGOSRExitCompiler.cpp 2015-03-23 02:04:11 UTC (rev 181840)
+++ trunk/Source/_javascript_Core/dfg/DFGOSRExitCompiler.cpp 2015-03-23 02:18:36 UTC (rev 181841)
@@ -66,12 +66,6 @@
Operands<ValueRecovery> operands;
codeBlock->jitCode()->dfg()->variableEventStream.reconstruct(codeBlock, exit.m_codeOrigin, codeBlock->jitCode()->dfg()->minifiedDFG, exit.m_streamIndex, operands);
- // There may be an override, for forward speculations.
- if (!!exit.m_valueRecoveryOverride) {
- operands.setOperand(
- exit.m_valueRecoveryOverride->operand, exit.m_valueRecoveryOverride->recovery);
- }
-
SpeculationRecovery* recovery = 0;
if (exit.m_recoveryIndex != UINT_MAX)
recovery = &codeBlock->jitCode()->dfg()->speculationRecovery[exit.m_recoveryIndex];
Deleted: trunk/Source/_javascript_Core/dfg/DFGValueRecoveryOverride.h (181840 => 181841)
--- trunk/Source/_javascript_Core/dfg/DFGValueRecoveryOverride.h 2015-03-23 02:04:11 UTC (rev 181840)
+++ trunk/Source/_javascript_Core/dfg/DFGValueRecoveryOverride.h 2015-03-23 02:18:36 UTC (rev 181841)
@@ -1,55 +0,0 @@
-/*
- * Copyright (C) 2012 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 DFGValueRecoveryOverride_h
-#define DFGValueRecoveryOverride_h
-
-#if ENABLE(DFG_JIT)
-
-#include "ValueRecovery.h"
-#include <wtf/RefCounted.h>
-
-namespace JSC { namespace DFG {
-
-class ValueRecoveryOverride : public RefCounted<ValueRecoveryOverride> {
-public:
- ValueRecoveryOverride() { }
-
- ValueRecoveryOverride(VirtualRegister operand, const ValueRecovery& recovery)
- : operand(operand)
- , recovery(recovery)
- {
- }
-
- VirtualRegister operand;
- ValueRecovery recovery;
-};
-
-} } // namespace JSC::DFG
-
-#endif // ENABLE(DFG_JIT)
-
-#endif // DFGValueRecoveryOverride_h
-