Changeset 194423 in webkit
- Timestamp:
- Dec 26, 2015, 10:27:03 PM (11 years ago)
- Location:
- trunk/Source/JavaScriptCore
- Files:
-
- 4 edited
-
ChangeLog (modified) (1 diff)
-
dfg/DFGByteCodeParser.cpp (modified) (7 diffs)
-
dfg/DFGNodeFlags.cpp (modified) (1 diff)
-
dfg/DFGNodeFlags.h (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/ChangeLog
r194409 r194423 1 2015-12-26 Mark Lam <mark.lam@apple.com> 2 3 Rename NodeMayOverflowInXXX to NodeMayOverflowInt32InXXX. 4 https://bugs.webkit.org/show_bug.cgi?id=152555 5 6 Reviewed by Alex Christensen. 7 8 That's because the NodeMayOverflowInBaseline and NodeMayOverflowInDFG flags only 9 indicates potential overflowing of Int32 values. We'll be adding overflow 10 profiling for Int52 values later, and we should disambiguate between the 2 types. 11 12 This is purely a renaming patch. There are no semantic changes. 13 14 * dfg/DFGByteCodeParser.cpp: 15 (JSC::DFG::ByteCodeParser::makeSafe): 16 (JSC::DFG::ByteCodeParser::makeDivSafe): 17 (JSC::DFG::ByteCodeParser::handleIntrinsicCall): 18 * dfg/DFGNodeFlags.cpp: 19 (JSC::DFG::dumpNodeFlags): 20 * dfg/DFGNodeFlags.h: 21 (JSC::DFG::nodeMayOverflowInt32): 22 (JSC::DFG::nodeCanSpeculateInt32): 23 (JSC::DFG::nodeMayOverflow): Deleted. 24 1 25 2015-12-23 Andreas Kling <akling@apple.com> 2 26 -
trunk/Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp
r194293 r194423 883 883 { 884 884 if (m_inlineStackTop->m_exitProfile.hasExitSite(m_currentIndex, Overflow)) 885 node->mergeFlags(NodeMayOverflowIn DFG);885 node->mergeFlags(NodeMayOverflowInt32InDFG); 886 886 if (m_inlineStackTop->m_exitProfile.hasExitSite(m_currentIndex, NegativeZero)) 887 887 node->mergeFlags(NodeMayNegZeroInDFG); … … 899 899 case ValueAdd: 900 900 case ArithMod: // for ArithMod "MayOverflow" means we tried to divide by zero, or we saw double. 901 node->mergeFlags(NodeMayOverflowIn Baseline);901 node->mergeFlags(NodeMayOverflowInt32InBaseline); 902 902 break; 903 903 … … 906 906 // (i.e. -(1 << 31)) or generating negative zero (i.e. -0). If it took slow 907 907 // path then we assume that it did both of those things. 908 node->mergeFlags(NodeMayOverflowIn Baseline);908 node->mergeFlags(NodeMayOverflowInt32InBaseline); 909 909 node->mergeFlags(NodeMayNegZeroInBaseline); 910 910 break; … … 916 916 if (m_inlineStackTop->m_profiledBlock->likelyToTakeDeepestSlowCase(m_currentIndex) 917 917 || m_inlineStackTop->m_exitProfile.hasExitSite(m_currentIndex, Overflow)) 918 node->mergeFlags(NodeMayOverflowIn Baseline | NodeMayNegZeroInBaseline);918 node->mergeFlags(NodeMayOverflowInt32InBaseline | NodeMayNegZeroInBaseline); 919 919 else if (m_inlineStackTop->m_profiledBlock->likelyToTakeSlowCase(m_currentIndex) 920 920 || m_inlineStackTop->m_exitProfile.hasExitSite(m_currentIndex, NegativeZero)) … … 935 935 936 936 if (m_inlineStackTop->m_exitProfile.hasExitSite(m_currentIndex, Overflow)) 937 node->mergeFlags(NodeMayOverflowIn DFG);937 node->mergeFlags(NodeMayOverflowInt32InDFG); 938 938 if (m_inlineStackTop->m_exitProfile.hasExitSite(m_currentIndex, NegativeZero)) 939 939 node->mergeFlags(NodeMayNegZeroInDFG); … … 949 949 950 950 // FIXME: It might be possible to make this more granular. 951 node->mergeFlags(NodeMayOverflowIn Baseline | NodeMayNegZeroInBaseline);951 node->mergeFlags(NodeMayOverflowInt32InBaseline | NodeMayNegZeroInBaseline); 952 952 953 953 return node; … … 2011 2011 Node* node = addToGraph(ArithAbs, get(virtualRegisterForArgument(1, registerOffset))); 2012 2012 if (m_inlineStackTop->m_exitProfile.hasExitSite(m_currentIndex, Overflow)) 2013 node->mergeFlags(NodeMayOverflowIn DFG);2013 node->mergeFlags(NodeMayOverflowInt32InDFG); 2014 2014 set(VirtualRegister(resultOperand), node); 2015 2015 return true; -
trunk/Source/JavaScriptCore/dfg/DFGNodeFlags.cpp
r179840 r194423 85 85 out.print(comma, "UseAsOther"); 86 86 } 87 88 if (flags & NodeMayOverflowIn Baseline)89 out.print(comma, "MayOverflowIn Baseline");90 91 if (flags & NodeMayOverflowIn DFG)92 out.print(comma, "MayOverflowIn DFG");93 87 88 if (flags & NodeMayOverflowInt32InBaseline) 89 out.print(comma, "MayOverflowInt32InBaseline"); 90 91 if (flags & NodeMayOverflowInt32InDFG) 92 out.print(comma, "MayOverflowInt32InDFG"); 93 94 94 if (flags & NodeMayNegZeroInBaseline) 95 95 out.print(comma, "MayNegZeroInBaseline"); -
trunk/Source/JavaScriptCore/dfg/DFGNodeFlags.h
r183497 r194423 50 50 51 51 #define NodeBehaviorMask 0x0780 52 #define NodeMayOverflowIn Baseline0x008053 #define NodeMayOverflowIn DFG0x010052 #define NodeMayOverflowInt32InBaseline 0x0080 53 #define NodeMayOverflowInt32InDFG 0x0100 54 54 #define NodeMayNegZeroInBaseline 0x0200 55 55 #define NodeMayNegZeroInDFG 0x0400 … … 95 95 }; 96 96 97 static inline bool nodeMayOverflow (NodeFlags flags, RareCaseProfilingSource source)97 static inline bool nodeMayOverflowInt32(NodeFlags flags, RareCaseProfilingSource source) 98 98 { 99 99 NodeFlags mask = 0; 100 100 switch (source) { 101 101 case BaselineRareCase: 102 mask = NodeMayOverflowIn Baseline;102 mask = NodeMayOverflowInt32InBaseline; 103 103 break; 104 104 case DFGRareCase: 105 mask = NodeMayOverflowIn DFG;105 mask = NodeMayOverflowInt32InDFG; 106 106 break; 107 107 case AllRareCases: 108 mask = NodeMayOverflowIn Baseline | NodeMayOverflowInDFG;108 mask = NodeMayOverflowInt32InBaseline | NodeMayOverflowInt32InDFG; 109 109 break; 110 110 } … … 131 131 static inline bool nodeCanSpeculateInt32(NodeFlags flags, RareCaseProfilingSource source) 132 132 { 133 if (nodeMayOverflow (flags, source))133 if (nodeMayOverflowInt32(flags, source)) 134 134 return !bytecodeUsesAsNumber(flags); 135 135
Note:
See TracChangeset
for help on using the changeset viewer.