Title: [151041] branches/dfgFourthTier/Source/_javascript_Core
- Revision
- 151041
- Author
- [email protected]
- Date
- 2013-05-31 14:48:46 -0700 (Fri, 31 May 2013)
Log Message
Remove CodeOrigin::valueProfileOffset since it was only needed for op_call_put_result.
Rubber stamped by Mark Hahnenberg.
* bytecode/CodeOrigin.h:
(CodeOrigin):
(JSC::CodeOrigin::CodeOrigin):
(JSC::CodeOrigin::isSet):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::currentCodeOrigin):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::valueProfileFor):
Modified Paths
Diff
Modified: branches/dfgFourthTier/Source/_javascript_Core/ChangeLog (151040 => 151041)
--- branches/dfgFourthTier/Source/_javascript_Core/ChangeLog 2013-05-31 21:44:26 UTC (rev 151040)
+++ branches/dfgFourthTier/Source/_javascript_Core/ChangeLog 2013-05-31 21:48:46 UTC (rev 151041)
@@ -1,5 +1,20 @@
2013-05-31 Filip Pizlo <[email protected]>
+ Remove CodeOrigin::valueProfileOffset since it was only needed for op_call_put_result.
+
+ Rubber stamped by Mark Hahnenberg.
+
+ * bytecode/CodeOrigin.h:
+ (CodeOrigin):
+ (JSC::CodeOrigin::CodeOrigin):
+ (JSC::CodeOrigin::isSet):
+ * dfg/DFGByteCodeParser.cpp:
+ (JSC::DFG::ByteCodeParser::currentCodeOrigin):
+ * dfg/DFGGraph.h:
+ (JSC::DFG::Graph::valueProfileFor):
+
+2013-05-31 Filip Pizlo <[email protected]>
+
Remove finalDestinationOrIgnored since it isn't called anymore.
Rubber stamped by Mark Hahnenberg.
Modified: branches/dfgFourthTier/Source/_javascript_Core/bytecode/CodeOrigin.h (151040 => 151041)
--- branches/dfgFourthTier/Source/_javascript_Core/bytecode/CodeOrigin.h 2013-05-31 21:44:26 UTC (rev 151040)
+++ branches/dfgFourthTier/Source/_javascript_Core/bytecode/CodeOrigin.h 2013-05-31 21:48:46 UTC (rev 151041)
@@ -43,39 +43,31 @@
class JSFunction;
struct CodeOrigin {
- static const unsigned maximumBytecodeIndex = (1u << 29) - 1;
+ static const unsigned invalidBytecodeIndex = UINT_MAX;
- // Bytecode offset that you'd use to re-execute this instruction.
- unsigned bytecodeIndex : 29;
- // Bytecode offset corresponding to the opcode that gives the result (needed to handle
- // op_call/op_call_put_result and op_method_check/op_get_by_id).
- unsigned valueProfileOffset : 3;
+ // Bytecode offset that you'd use to re-execute this instruction, and the
+ // bytecode index of the bytecode instruction that produces some result that
+ // you're interested in (used for mapping Nodes whose values you're using
+ // to bytecode instructions that have the appropriate value profile).
+ unsigned bytecodeIndex;
InlineCallFrame* inlineCallFrame;
CodeOrigin()
- : bytecodeIndex(maximumBytecodeIndex)
- , valueProfileOffset(0)
+ : bytecodeIndex(invalidBytecodeIndex)
, inlineCallFrame(0)
{
}
- explicit CodeOrigin(unsigned bytecodeIndex, InlineCallFrame* inlineCallFrame = 0, unsigned valueProfileOffset = 0)
+ explicit CodeOrigin(unsigned bytecodeIndex, InlineCallFrame* inlineCallFrame = 0)
: bytecodeIndex(bytecodeIndex)
- , valueProfileOffset(valueProfileOffset)
, inlineCallFrame(inlineCallFrame)
{
- RELEASE_ASSERT(bytecodeIndex <= maximumBytecodeIndex);
- RELEASE_ASSERT(valueProfileOffset < (1u << 3));
+ ASSERT(bytecodeIndex < invalidBytecodeIndex);
}
- bool isSet() const { return bytecodeIndex != maximumBytecodeIndex; }
+ bool isSet() const { return bytecodeIndex != invalidBytecodeIndex; }
- unsigned bytecodeIndexForValueProfile() const
- {
- return bytecodeIndex + valueProfileOffset;
- }
-
// The inline depth is the depth of the inline stack, so 1 = not inlined,
// 2 = inlined one deep, etc.
unsigned inlineDepth() const;
Modified: branches/dfgFourthTier/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp (151040 => 151041)
--- branches/dfgFourthTier/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp 2013-05-31 21:44:26 UTC (rev 151040)
+++ branches/dfgFourthTier/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp 2013-05-31 21:48:46 UTC (rev 151041)
@@ -681,7 +681,7 @@
CodeOrigin currentCodeOrigin()
{
- return CodeOrigin(m_currentIndex, inlineCallFrame(), 0);
+ return CodeOrigin(m_currentIndex, inlineCallFrame());
}
bool canFold(Node* node)
Modified: branches/dfgFourthTier/Source/_javascript_Core/dfg/DFGGraph.h (151040 => 151041)
--- branches/dfgFourthTier/Source/_javascript_Core/dfg/DFGGraph.h 2013-05-31 21:44:26 UTC (rev 151040)
+++ branches/dfgFourthTier/Source/_javascript_Core/dfg/DFGGraph.h 2013-05-31 21:48:46 UTC (rev 151041)
@@ -440,7 +440,7 @@
}
if (node->hasHeapPrediction())
- return profiledBlock->valueProfileForBytecodeOffset(node->codeOrigin.bytecodeIndexForValueProfile());
+ return profiledBlock->valueProfileForBytecodeOffset(node->codeOrigin.bytecodeIndex);
return 0;
}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes