Title: [202131] trunk/Source/_javascript_Core
Revision
202131
Author
[email protected]
Date
2016-06-16 11:25:54 -0700 (Thu, 16 Jun 2016)

Log Message

Add collecting of LLINT slow path stats.
https://bugs.webkit.org/show_bug.cgi?id=158829

Reviewed by Keith Miller.

* llint/LLIntData.cpp:
(JSC::LLInt::Data::dumpStats):
* llint/LLIntData.h:
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* llint/LLIntSlowPaths.h:
* llint/LowLevelInterpreter.asm:
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (202130 => 202131)


--- trunk/Source/_javascript_Core/ChangeLog	2016-06-16 18:12:41 UTC (rev 202130)
+++ trunk/Source/_javascript_Core/ChangeLog	2016-06-16 18:25:54 UTC (rev 202131)
@@ -1,3 +1,20 @@
+2016-06-16  Mark Lam  <[email protected]>
+
+        Add collecting of LLINT slow path stats.
+        https://bugs.webkit.org/show_bug.cgi?id=158829
+
+        Reviewed by Keith Miller.
+
+        * llint/LLIntData.cpp:
+        (JSC::LLInt::Data::dumpStats):
+        * llint/LLIntData.h:
+        * llint/LLIntSlowPaths.cpp:
+        (JSC::LLInt::LLINT_SLOW_PATH_DECL):
+        * llint/LLIntSlowPaths.h:
+        * llint/LowLevelInterpreter.asm:
+        * llint/LowLevelInterpreter32_64.asm:
+        * llint/LowLevelInterpreter64.asm:
+
 2016-06-15  Keith Miller  <[email protected]>
 
         Add support for Symbol.isConcatSpreadable (round 2)

Modified: trunk/Source/_javascript_Core/llint/LLIntData.cpp (202130 => 202131)


--- trunk/Source/_javascript_Core/llint/LLIntData.cpp	2016-06-16 18:12:41 UTC (rev 202130)
+++ trunk/Source/_javascript_Core/llint/LLIntData.cpp	2016-06-16 18:25:54 UTC (rev 202131)
@@ -236,14 +236,18 @@
 
     auto statsCopy = *s_opcodeStatsArray;
     std::sort(statsCopy.begin(), statsCopy.end(), [] (OpcodeStats& a, OpcodeStats& b) -> bool {
-        return a.count > b.count;
+        if (a.count > b.count)
+            return true;
+        if (a.count < b.count)
+            return false;
+        return a.slowPathCount > b.slowPathCount;
     });
     
     dataLog("Opcode stats:\n");
     unsigned i = 0;
     for (auto& stats : statsCopy) {
         if (stats.count)
-            dataLog("   [", i++, "]: fast:", stats.count, " ", opcodeNames[stats.id], "\n");
+            dataLog("   [", i++, "]: fast:", stats.count, " slow:", stats.slowPathCount, " ", opcodeNames[stats.id], "\n");
     }
 #endif
 }

Modified: trunk/Source/_javascript_Core/llint/LLIntData.h (202130 => 202131)


--- trunk/Source/_javascript_Core/llint/LLIntData.h	2016-06-16 18:12:41 UTC (rev 202130)
+++ trunk/Source/_javascript_Core/llint/LLIntData.h	2016-06-16 18:25:54 UTC (rev 202131)
@@ -46,6 +46,7 @@
 struct OpcodeStats {
     OpcodeID id;
     size_t count { 0 };
+    size_t slowPathCount { 0 };
 };
 typedef std::array<OpcodeStats, numOpcodeIDs> OpcodeStatsArray;
 

Modified: trunk/Source/_javascript_Core/llint/LLIntSlowPaths.cpp (202130 => 202131)


--- trunk/Source/_javascript_Core/llint/LLIntSlowPaths.cpp	2016-06-16 18:12:41 UTC (rev 202130)
+++ trunk/Source/_javascript_Core/llint/LLIntSlowPaths.cpp	2016-06-16 18:25:54 UTC (rev 202131)
@@ -1655,6 +1655,13 @@
     LLINT_END_IMPL();
 }
 
+LLINT_SLOW_PATH_DECL(count_opcode_slow_path)
+{
+    OpcodeID opcodeID = exec->vm().interpreter->getOpcodeID(pc[0].u.opcode);
+    Data::opcodeStats(opcodeID).slowPathCount++;
+    LLINT_END_IMPL();
+}
+
 #endif // ENABLE(LLINT_STATS)
 
 } } // namespace JSC::LLInt

Modified: trunk/Source/_javascript_Core/llint/LLIntSlowPaths.h (202130 => 202131)


--- trunk/Source/_javascript_Core/llint/LLIntSlowPaths.h	2016-06-16 18:12:41 UTC (rev 202130)
+++ trunk/Source/_javascript_Core/llint/LLIntSlowPaths.h	2016-06-16 18:25:54 UTC (rev 202131)
@@ -55,6 +55,7 @@
 LLINT_SLOW_PATH_HIDDEN_DECL(trace);
 LLINT_SLOW_PATH_HIDDEN_DECL(special_trace);
 LLINT_SLOW_PATH_HIDDEN_DECL(count_opcode);
+LLINT_SLOW_PATH_HIDDEN_DECL(count_opcode_slow_path);
 LLINT_SLOW_PATH_HIDDEN_DECL(entry_osr);
 LLINT_SLOW_PATH_HIDDEN_DECL(entry_osr_function_for_call);
 LLINT_SLOW_PATH_HIDDEN_DECL(entry_osr_function_for_construct);

Modified: trunk/Source/_javascript_Core/llint/LowLevelInterpreter.asm (202130 => 202131)


--- trunk/Source/_javascript_Core/llint/LowLevelInterpreter.asm	2016-06-16 18:12:41 UTC (rev 202130)
+++ trunk/Source/_javascript_Core/llint/LowLevelInterpreter.asm	2016-06-16 18:25:54 UTC (rev 202131)
@@ -735,6 +735,17 @@
     end
 end
 
+macro traceSlowPathExecution()
+    if COLLECT_STATS
+        callSlowPath(_llint_count_opcode_slow_path)
+    end
+end
+
+macro callOpcodeSlowPath(slowPath)
+    traceSlowPathExecution()
+    callSlowPath(slowPath)
+end
+
 macro callTargetFunction(callee)
     if C_LOOP
         cloopCallJSFunction callee
@@ -799,6 +810,7 @@
 end
 
 macro slowPathForCall(slowPath, prepareCall)
+    traceSlowPathExecution()
     callCallSlowPath(
         slowPath,
         # Those are r0 and r1
@@ -839,7 +851,7 @@
     checkSwitchToJIT(
         10,
         macro ()
-            callSlowPath(_llint_replace)
+            callOpcodeSlowPath(_llint_replace)
         end)
 end
 
@@ -1222,162 +1234,162 @@
 # Value-representation-agnostic code.
 _llint_op_create_direct_arguments:
     traceExecution()
-    callSlowPath(_slow_path_create_direct_arguments)
+    callOpcodeSlowPath(_slow_path_create_direct_arguments)
     dispatch(2)
 
 
 _llint_op_create_scoped_arguments:
     traceExecution()
-    callSlowPath(_slow_path_create_scoped_arguments)
+    callOpcodeSlowPath(_slow_path_create_scoped_arguments)
     dispatch(3)
 
 
 _llint_op_create_cloned_arguments:
     traceExecution()
-    callSlowPath(_slow_path_create_cloned_arguments)
+    callOpcodeSlowPath(_slow_path_create_cloned_arguments)
     dispatch(2)
 
 
 _llint_op_new_func:
     traceExecution()
-    callSlowPath(_llint_slow_path_new_func)
+    callOpcodeSlowPath(_llint_slow_path_new_func)
     dispatch(4)
 
 
 _llint_op_new_generator_func:
     traceExecution()
-    callSlowPath(_llint_slow_path_new_generator_func)
+    callOpcodeSlowPath(_llint_slow_path_new_generator_func)
     dispatch(4)
 
 
 _llint_op_new_array:
     traceExecution()
-    callSlowPath(_llint_slow_path_new_array)
+    callOpcodeSlowPath(_llint_slow_path_new_array)
     dispatch(5)
 
 
 _llint_op_new_array_with_size:
     traceExecution()
-    callSlowPath(_llint_slow_path_new_array_with_size)
+    callOpcodeSlowPath(_llint_slow_path_new_array_with_size)
     dispatch(4)
 
 
 _llint_op_new_array_buffer:
     traceExecution()
-    callSlowPath(_llint_slow_path_new_array_buffer)
+    callOpcodeSlowPath(_llint_slow_path_new_array_buffer)
     dispatch(5)
 
 
 _llint_op_new_regexp:
     traceExecution()
-    callSlowPath(_llint_slow_path_new_regexp)
+    callOpcodeSlowPath(_llint_slow_path_new_regexp)
     dispatch(3)
 
 
 _llint_op_less:
     traceExecution()
-    callSlowPath(_slow_path_less)
+    callOpcodeSlowPath(_slow_path_less)
     dispatch(4)
 
 
 _llint_op_lesseq:
     traceExecution()
-    callSlowPath(_slow_path_lesseq)
+    callOpcodeSlowPath(_slow_path_lesseq)
     dispatch(4)
 
 
 _llint_op_greater:
     traceExecution()
-    callSlowPath(_slow_path_greater)
+    callOpcodeSlowPath(_slow_path_greater)
     dispatch(4)
 
 
 _llint_op_greatereq:
     traceExecution()
-    callSlowPath(_slow_path_greatereq)
+    callOpcodeSlowPath(_slow_path_greatereq)
     dispatch(4)
 
 
 _llint_op_mod:
     traceExecution()
-    callSlowPath(_slow_path_mod)
+    callOpcodeSlowPath(_slow_path_mod)
     dispatch(4)
 
 
 _llint_op_typeof:
     traceExecution()
-    callSlowPath(_slow_path_typeof)
+    callOpcodeSlowPath(_slow_path_typeof)
     dispatch(3)
 
 
 _llint_op_is_object_or_null:
     traceExecution()
-    callSlowPath(_slow_path_is_object_or_null)
+    callOpcodeSlowPath(_slow_path_is_object_or_null)
     dispatch(3)
 
 _llint_op_is_function:
     traceExecution()
-    callSlowPath(_slow_path_is_function)
+    callOpcodeSlowPath(_slow_path_is_function)
     dispatch(3)
 
 
 _llint_op_in:
     traceExecution()
-    callSlowPath(_slow_path_in)
+    callOpcodeSlowPath(_slow_path_in)
     dispatch(4)
 
 
 _llint_op_try_get_by_id:
     traceExecution()
-    callSlowPath(_llint_slow_path_try_get_by_id)
+    callOpcodeSlowPath(_llint_slow_path_try_get_by_id)
     dispatch(4)
 
 
 _llint_op_del_by_id:
     traceExecution()
-    callSlowPath(_llint_slow_path_del_by_id)
+    callOpcodeSlowPath(_llint_slow_path_del_by_id)
     dispatch(4)
 
 
 _llint_op_del_by_val:
     traceExecution()
-    callSlowPath(_llint_slow_path_del_by_val)
+    callOpcodeSlowPath(_llint_slow_path_del_by_val)
     dispatch(4)
 
 
 _llint_op_put_by_index:
     traceExecution()
-    callSlowPath(_llint_slow_path_put_by_index)
+    callOpcodeSlowPath(_llint_slow_path_put_by_index)
     dispatch(4)
 
 
 _llint_op_put_getter_by_id:
     traceExecution()
-    callSlowPath(_llint_slow_path_put_getter_by_id)
+    callOpcodeSlowPath(_llint_slow_path_put_getter_by_id)
     dispatch(5)
 
 
 _llint_op_put_setter_by_id:
     traceExecution()
-    callSlowPath(_llint_slow_path_put_setter_by_id)
+    callOpcodeSlowPath(_llint_slow_path_put_setter_by_id)
     dispatch(5)
 
 
 _llint_op_put_getter_setter_by_id:
     traceExecution()
-    callSlowPath(_llint_slow_path_put_getter_setter_by_id)
+    callOpcodeSlowPath(_llint_slow_path_put_getter_setter_by_id)
     dispatch(6)
 
 
 _llint_op_put_getter_by_val:
     traceExecution()
-    callSlowPath(_llint_slow_path_put_getter_by_val)
+    callOpcodeSlowPath(_llint_slow_path_put_getter_by_val)
     dispatch(5)
 
 
 _llint_op_put_setter_by_val:
     traceExecution()
-    callSlowPath(_llint_slow_path_put_setter_by_val)
+    callOpcodeSlowPath(_llint_slow_path_put_setter_by_val)
     dispatch(5)
 
 
@@ -1496,23 +1508,23 @@
 
 _llint_op_switch_string:
     traceExecution()
-    callSlowPath(_llint_slow_path_switch_string)
+    callOpcodeSlowPath(_llint_slow_path_switch_string)
     dispatch(0)
 
 
 _llint_op_new_func_exp:
     traceExecution()
-    callSlowPath(_llint_slow_path_new_func_exp)
+    callOpcodeSlowPath(_llint_slow_path_new_func_exp)
     dispatch(4)
 
 _llint_op_new_generator_func_exp:
     traceExecution()
-    callSlowPath(_llint_slow_path_new_generator_func_exp)
+    callOpcodeSlowPath(_llint_slow_path_new_generator_func_exp)
     dispatch(4)
 
 _llint_op_set_function_name:
     traceExecution()
-    callSlowPath(_llint_slow_path_set_function_name)
+    callOpcodeSlowPath(_llint_slow_path_set_function_name)
     dispatch(3)
 
 _llint_op_call:
@@ -1531,7 +1543,7 @@
     doCall(_llint_slow_path_construct, prepareForRegularCall)
 
 macro doCallVarargs(frameSlowPath, slowPath, prepareCall)
-    callSlowPath(frameSlowPath)
+    callOpcodeSlowPath(frameSlowPath)
     branchIfException(_llint_throw_from_slow_path_trampoline)
     # calleeFrame in r1
     if JSVALUE64
@@ -1618,49 +1630,49 @@
 
 _llint_op_strcat:
     traceExecution()
-    callSlowPath(_slow_path_strcat)
+    callOpcodeSlowPath(_slow_path_strcat)
     dispatch(4)
 
 
 _llint_op_push_with_scope:
     traceExecution()
-    callSlowPath(_slow_path_push_with_scope)
+    callOpcodeSlowPath(_slow_path_push_with_scope)
     dispatch(4)
 
 
 _llint_op_assert:
     traceExecution()
-    callSlowPath(_slow_path_assert)
+    callOpcodeSlowPath(_slow_path_assert)
     dispatch(3)
 
 
 _llint_op_save:
     traceExecution()
-    callSlowPath(_slow_path_save)
+    callOpcodeSlowPath(_slow_path_save)
     dispatch(4)
 
 
 _llint_op_resume:
     traceExecution()
-    callSlowPath(_slow_path_resume)
+    callOpcodeSlowPath(_slow_path_resume)
     dispatch(3)
 
 
 _llint_op_create_lexical_environment:
     traceExecution()
-    callSlowPath(_slow_path_create_lexical_environment)
+    callOpcodeSlowPath(_slow_path_create_lexical_environment)
     dispatch(5)
 
 
 _llint_op_throw:
     traceExecution()
-    callSlowPath(_llint_slow_path_throw)
+    callOpcodeSlowPath(_llint_slow_path_throw)
     dispatch(2)
 
 
 _llint_op_throw_static_error:
     traceExecution()
-    callSlowPath(_llint_slow_path_throw_static_error)
+    callOpcodeSlowPath(_llint_slow_path_throw_static_error)
     dispatch(3)
 
 
@@ -1669,7 +1681,7 @@
     loadp CodeBlock[cfr], t0
     loadi CodeBlock::m_debuggerRequests[t0], t0
     btiz t0, .opDebugDone
-    callSlowPath(_llint_slow_path_debug)
+    callOpcodeSlowPath(_llint_slow_path_debug)
 .opDebugDone:                    
     dispatch(3)
 
@@ -1683,77 +1695,77 @@
 
 _llint_op_get_enumerable_length:
     traceExecution()
-    callSlowPath(_slow_path_get_enumerable_length)
+    callOpcodeSlowPath(_slow_path_get_enumerable_length)
     dispatch(3)
 
 _llint_op_has_indexed_property:
     traceExecution()
-    callSlowPath(_slow_path_has_indexed_property)
+    callOpcodeSlowPath(_slow_path_has_indexed_property)
     dispatch(5)
 
 _llint_op_has_structure_property:
     traceExecution()
-    callSlowPath(_slow_path_has_structure_property)
+    callOpcodeSlowPath(_slow_path_has_structure_property)
     dispatch(5)
 
 _llint_op_has_generic_property:
     traceExecution()
-    callSlowPath(_slow_path_has_generic_property)
+    callOpcodeSlowPath(_slow_path_has_generic_property)
     dispatch(4)
 
 _llint_op_get_direct_pname:
     traceExecution()
-    callSlowPath(_slow_path_get_direct_pname)
+    callOpcodeSlowPath(_slow_path_get_direct_pname)
     dispatch(7)
 
 _llint_op_get_property_enumerator:
     traceExecution()
-    callSlowPath(_slow_path_get_property_enumerator)
+    callOpcodeSlowPath(_slow_path_get_property_enumerator)
     dispatch(3)
 
 _llint_op_enumerator_structure_pname:
     traceExecution()
-    callSlowPath(_slow_path_next_structure_enumerator_pname)
+    callOpcodeSlowPath(_slow_path_next_structure_enumerator_pname)
     dispatch(4)
 
 _llint_op_enumerator_generic_pname:
     traceExecution()
-    callSlowPath(_slow_path_next_generic_enumerator_pname)
+    callOpcodeSlowPath(_slow_path_next_generic_enumerator_pname)
     dispatch(4)
 
 _llint_op_to_index_string:
     traceExecution()
-    callSlowPath(_slow_path_to_index_string)
+    callOpcodeSlowPath(_slow_path_to_index_string)
     dispatch(3)
 
 _llint_op_copy_rest:
     traceExecution()
-    callSlowPath(_slow_path_copy_rest)
+    callOpcodeSlowPath(_slow_path_copy_rest)
     dispatch(4)
 
 _llint_op_instanceof:
     traceExecution()
-    callSlowPath(_llint_slow_path_instanceof)
+    callOpcodeSlowPath(_llint_slow_path_instanceof)
     dispatch(4)
 
 _llint_op_get_by_id_with_this:
     traceExecution()
-    callSlowPath(_slow_path_get_by_id_with_this)
+    callOpcodeSlowPath(_slow_path_get_by_id_with_this)
     dispatch(5)
 
 _llint_op_get_by_val_with_this:
     traceExecution()
-    callSlowPath(_slow_path_get_by_val_with_this)
+    callOpcodeSlowPath(_slow_path_get_by_val_with_this)
     dispatch(5)
 
 _llint_op_put_by_id_with_this:
     traceExecution()
-    callSlowPath(_slow_path_put_by_id_with_this)
+    callOpcodeSlowPath(_slow_path_put_by_id_with_this)
     dispatch(5)
 
 _llint_op_put_by_val_with_this:
     traceExecution()
-    callSlowPath(_slow_path_put_by_val_with_this)
+    callOpcodeSlowPath(_slow_path_put_by_val_with_this)
     dispatch(5)
 
 # Lastly, make sure that we can link even though we don't support all opcodes.

Modified: trunk/Source/_javascript_Core/llint/LowLevelInterpreter32_64.asm (202130 => 202131)


--- trunk/Source/_javascript_Core/llint/LowLevelInterpreter32_64.asm	2016-06-16 18:12:41 UTC (rev 202130)
+++ trunk/Source/_javascript_Core/llint/LowLevelInterpreter32_64.asm	2016-06-16 18:25:54 UTC (rev 202131)
@@ -673,7 +673,7 @@
     addi 1, t2
     btinz t2, .opEnterLoop
 .opEnterDone:
-    callSlowPath(_slow_path_enter)
+    callOpcodeSlowPath(_slow_path_enter)
     dispatch(1)
 
 
@@ -719,7 +719,7 @@
     dispatch(5)
 
 .opCreateThisSlow:
-    callSlowPath(_slow_path_create_this)
+    callOpcodeSlowPath(_slow_path_create_this)
     dispatch(5)
 
 
@@ -734,7 +734,7 @@
     dispatch(4)
 
 .opToThisSlow:
-    callSlowPath(_slow_path_to_this)
+    callOpcodeSlowPath(_slow_path_to_this)
     dispatch(4)
 
 
@@ -750,7 +750,7 @@
     dispatch(4)
 
 .opNewObjectSlow:
-    callSlowPath(_llint_slow_path_new_object)
+    callOpcodeSlowPath(_llint_slow_path_new_object)
     dispatch(4)
 
 
@@ -759,7 +759,7 @@
     loadisFromInstruction(1, t0)
     loadConstantOrVariableTag(t0, t1)
     bineq t1, EmptyValueTag, .opNotTDZ
-    callSlowPath(_slow_path_throw_tdz_error)
+    callOpcodeSlowPath(_slow_path_throw_tdz_error)
 
 .opNotTDZ:
     dispatch(2)
@@ -787,7 +787,7 @@
     dispatch(3)
 
 .opNotSlow:
-    callSlowPath(_slow_path_not)
+    callOpcodeSlowPath(_slow_path_not)
     dispatch(3)
 
 
@@ -807,7 +807,7 @@
     dispatch(4)
 
 .opEqSlow:
-    callSlowPath(_slow_path_eq)
+    callOpcodeSlowPath(_slow_path_eq)
     dispatch(4)
 
 
@@ -854,7 +854,7 @@
     dispatch(4)
 
 .opNeqSlow:
-    callSlowPath(_slow_path_neq)
+    callOpcodeSlowPath(_slow_path_neq)
     dispatch(4)
     
 
@@ -903,7 +903,7 @@
     dispatch(4)
 
 .slow:
-    callSlowPath(slowPath)
+    callOpcodeSlowPath(slowPath)
     dispatch(4)
 end
 
@@ -927,7 +927,7 @@
     dispatch(2)
 
 .opIncSlow:
-    callSlowPath(_slow_path_inc)
+    callOpcodeSlowPath(_slow_path_inc)
     dispatch(2)
 
 
@@ -941,7 +941,7 @@
     dispatch(2)
 
 .opDecSlow:
-    callSlowPath(_slow_path_dec)
+    callOpcodeSlowPath(_slow_path_dec)
     dispatch(2)
 
 
@@ -958,7 +958,7 @@
     dispatch(3)
 
 .opToNumberSlow:
-    callSlowPath(_slow_path_to_number)
+    callOpcodeSlowPath(_slow_path_to_number)
     dispatch(3)
 
 
@@ -975,7 +975,7 @@
     dispatch(3)
 
 .opToStringSlow:
-    callSlowPath(_slow_path_to_string)
+    callOpcodeSlowPath(_slow_path_to_string)
     dispatch(3)
 
 
@@ -998,7 +998,7 @@
     dispatch(3)
 
 .opNegateSlow:
-    callSlowPath(_slow_path_negate)
+    callOpcodeSlowPath(_slow_path_negate)
     dispatch(3)
 
 
@@ -1040,7 +1040,7 @@
     dispatch(5)
 
 .slow:
-    callSlowPath(slowPath)
+    callOpcodeSlowPath(slowPath)
     dispatch(5)
 end
 
@@ -1121,7 +1121,7 @@
     dispatch(advance)
 
 .slow:
-    callSlowPath(slowPath)
+    callOpcodeSlowPath(slowPath)
     dispatch(advance)
 end
 
@@ -1159,7 +1159,7 @@
     storei Int32Tag, TagOffset[cfr, t0, 8]
     dispatch(3)
 .opUnsignedSlow:
-    callSlowPath(_slow_path_unsigned)
+    callOpcodeSlowPath(_slow_path_unsigned)
     dispatch(3)
 
 
@@ -1219,7 +1219,7 @@
 
 _llint_op_instanceof_custom:
     traceExecution()
-    callSlowPath(_llint_slow_path_instanceof_custom)
+    callOpcodeSlowPath(_llint_slow_path_instanceof_custom)
     dispatch(5)
 
 
@@ -1382,7 +1382,7 @@
     dispatch(9)
 
 .opGetByIdSlow:
-    callSlowPath(_llint_slow_path_get_by_id)
+    callOpcodeSlowPath(_llint_slow_path_get_by_id)
     dispatch(9)
 
 
@@ -1402,7 +1402,7 @@
     dispatch(9)
 
 .opGetByIdProtoSlow:
-    callSlowPath(_llint_slow_path_get_by_id)
+    callOpcodeSlowPath(_llint_slow_path_get_by_id)
     dispatch(9)
 
 
@@ -1419,7 +1419,7 @@
     dispatch(9)
 
 .opGetByIdUnsetSlow:
-    callSlowPath(_llint_slow_path_get_by_id)
+    callOpcodeSlowPath(_llint_slow_path_get_by_id)
     dispatch(9)
 
 
@@ -1442,7 +1442,7 @@
     dispatch(9)
 
 .opGetArrayLengthSlow:
-    callSlowPath(_llint_slow_path_get_by_id)
+    callOpcodeSlowPath(_llint_slow_path_get_by_id)
     dispatch(9)
 
 
@@ -1573,7 +1573,7 @@
     dispatch(9)
 
 .opPutByIdSlow:
-    callSlowPath(_llint_slow_path_put_by_id)
+    callOpcodeSlowPath(_llint_slow_path_put_by_id)
     dispatch(9)
 
 
@@ -1627,7 +1627,7 @@
     loadpFromInstruction(4, t0)
     storeb 1, ArrayProfile::m_outOfBounds[t0]
 .opGetByValSlow:
-    callSlowPath(_llint_slow_path_get_by_val)
+    callOpcodeSlowPath(_llint_slow_path_get_by_val)
     dispatch(6)
 
 
@@ -1719,7 +1719,7 @@
     loadpFromInstruction(4, t0)
     storeb 1, ArrayProfile::m_outOfBounds[t0]
 .opPutByValSlow:
-    callSlowPath(slowPath)
+    callOpcodeSlowPath(slowPath)
     dispatch(5)
 end
 
@@ -1744,7 +1744,7 @@
     dispatchBranch(8[PC])
 
 .slow:
-    callSlowPath(slow)
+    callOpcodeSlowPath(slow)
     dispatch(0)
 end
 
@@ -1842,7 +1842,7 @@
     dispatchBranch(12[PC])
 
 .slow:
-    callSlowPath(slowPath)
+    callOpcodeSlowPath(slowPath)
     dispatch(0)
 end
 
@@ -1871,7 +1871,7 @@
     dispatchBranch(8[PC])
 
 .opSwitchImmSlow:
-    callSlowPath(_llint_slow_path_switch_imm)
+    callOpcodeSlowPath(_llint_slow_path_switch_imm)
     dispatch(0)
 
 
@@ -1908,7 +1908,7 @@
     dispatchBranch(8[PC])
 
 .opSwitchOnRope:
-    callSlowPath(_llint_slow_path_switch_char)
+    callOpcodeSlowPath(_llint_slow_path_switch_char)
     dispatch(0)
 
 
@@ -1967,7 +1967,7 @@
     dispatch(3)
 
 .opToPrimitiveSlowCase:
-    callSlowPath(_slow_path_to_primitive)
+    callOpcodeSlowPath(_slow_path_to_primitive)
     dispatch(3)
 
 
@@ -1987,7 +1987,7 @@
 
     loadi VM::targetInterpreterPCForThrow[t3], PC
 
-    callSlowPath(_llint_slow_path_check_if_exception_is_uncatchable_and_notify_profiler)
+    callOpcodeSlowPath(_llint_slow_path_check_if_exception_is_uncatchable_and_notify_profiler)
     bpeq r1, 0, .isCatchableException
     jmp _llint_throw_from_slow_path_trampoline
 
@@ -2182,7 +2182,7 @@
     dispatch(7)
 
 .rDynamic:
-    callSlowPath(_slow_path_resolve_scope)
+    callOpcodeSlowPath(_slow_path_resolve_scope)
     dispatch(7)
 
 
@@ -2282,7 +2282,7 @@
     dispatch(8)
 
 .gDynamic:
-    callSlowPath(_llint_slow_path_get_from_scope)
+    callOpcodeSlowPath(_llint_slow_path_get_from_scope)
     dispatch(8)
 
 
@@ -2393,11 +2393,11 @@
 
 .pModuleVar:
     bineq t0, ModuleVar, .pDynamic
-    callSlowPath(_slow_path_throw_strict_mode_readonly_property_write_error)
+    callOpcodeSlowPath(_slow_path_throw_strict_mode_readonly_property_write_error)
     dispatch(7)
 
 .pDynamic:
-    callSlowPath(_llint_slow_path_put_to_scope)
+    callOpcodeSlowPath(_llint_slow_path_put_to_scope)
     dispatch(7)
 
 
@@ -2477,7 +2477,7 @@
 
     loadp TypeProfilerLog::m_logEndPtr[t1], t1
     bpneq t2, t1, .opProfileTypeDone
-    callSlowPath(_slow_path_profile_type_clear_log)
+    callOpcodeSlowPath(_slow_path_profile_type_clear_log)
 
 .opProfileTypeDone:
     dispatch(6)
@@ -2524,7 +2524,7 @@
     storep t1, ShadowChicken::Packet::scope[t0]
     dispatch(2)
 .opLogShadowChickenPrologueSlow:
-    callSlowPath(_llint_slow_path_log_shadow_chicken_prologue)
+    callOpcodeSlowPath(_llint_slow_path_log_shadow_chicken_prologue)
     dispatch(2)
 
 
@@ -2544,5 +2544,5 @@
     storei PC, ShadowChicken::Packet::callSiteIndex[t0]
     dispatch(3)
 .opLogShadowChickenTailSlow:
-    callSlowPath(_llint_slow_path_log_shadow_chicken_tail)
+    callOpcodeSlowPath(_llint_slow_path_log_shadow_chicken_tail)
     dispatch(3)

Modified: trunk/Source/_javascript_Core/llint/LowLevelInterpreter64.asm (202130 => 202131)


--- trunk/Source/_javascript_Core/llint/LowLevelInterpreter64.asm	2016-06-16 18:12:41 UTC (rev 202130)
+++ trunk/Source/_javascript_Core/llint/LowLevelInterpreter64.asm	2016-06-16 18:25:54 UTC (rev 202131)
@@ -580,7 +580,7 @@
     addq 1, t2
     btqnz t2, .opEnterLoop
 .opEnterDone:
-    callSlowPath(_slow_path_enter)
+    callOpcodeSlowPath(_slow_path_enter)
     dispatch(1)
 
 
@@ -623,7 +623,7 @@
     dispatch(5)
 
 .opCreateThisSlow:
-    callSlowPath(_slow_path_create_this)
+    callOpcodeSlowPath(_slow_path_create_this)
     dispatch(5)
 
 
@@ -639,7 +639,7 @@
     dispatch(4)
 
 .opToThisSlow:
-    callSlowPath(_slow_path_to_this)
+    callOpcodeSlowPath(_slow_path_to_this)
     dispatch(4)
 
 
@@ -654,7 +654,7 @@
     dispatch(4)
 
 .opNewObjectSlow:
-    callSlowPath(_llint_slow_path_new_object)
+    callOpcodeSlowPath(_llint_slow_path_new_object)
     dispatch(4)
 
 
@@ -663,7 +663,7 @@
     loadisFromInstruction(1, t0)
     loadConstantOrVariable(t0, t1)
     bqneq t1, ValueEmpty, .opNotTDZ
-    callSlowPath(_slow_path_throw_tdz_error)
+    callOpcodeSlowPath(_slow_path_throw_tdz_error)
 
 .opNotTDZ:
     dispatch(2)
@@ -690,7 +690,7 @@
     dispatch(3)
 
 .opNotSlow:
-    callSlowPath(_slow_path_not)
+    callOpcodeSlowPath(_slow_path_not)
     dispatch(3)
 
 
@@ -707,7 +707,7 @@
     dispatch(4)
 
 .slow:
-    callSlowPath(slowPath)
+    callOpcodeSlowPath(slowPath)
     dispatch(4)
 end
 
@@ -782,7 +782,7 @@
     dispatch(4)
 
 .slow:
-    callSlowPath(slowPath)
+    callOpcodeSlowPath(slowPath)
     dispatch(4)
 end
 
@@ -809,7 +809,7 @@
     dispatch(2)
 
 .slow:
-    callSlowPath(slowPath)
+    callOpcodeSlowPath(slowPath)
     dispatch(2)
 end
 
@@ -837,7 +837,7 @@
     dispatch(3)
 
 .opToNumberSlow:
-    callSlowPath(_slow_path_to_number)
+    callOpcodeSlowPath(_slow_path_to_number)
     dispatch(3)
 
 
@@ -853,7 +853,7 @@
     dispatch(3)
 
 .opToStringSlow:
-    callSlowPath(_slow_path_to_string)
+    callOpcodeSlowPath(_slow_path_to_string)
     dispatch(3)
 
 
@@ -875,7 +875,7 @@
     dispatch(3)
 
 .opNegateSlow:
-    callSlowPath(_slow_path_negate)
+    callOpcodeSlowPath(_slow_path_negate)
     dispatch(3)
 
 
@@ -924,7 +924,7 @@
     dispatch(5)
 
 .slow:
-    callSlowPath(slowPath)
+    callOpcodeSlowPath(slowPath)
     dispatch(5)
 end
 
@@ -996,7 +996,7 @@
             macro (left, right) divd left, right end,
             _slow_path_div)
     else
-        callSlowPath(_slow_path_div)
+        callOpcodeSlowPath(_slow_path_div)
         dispatch(5)
     end
 
@@ -1015,7 +1015,7 @@
     dispatch(advance)
 
 .slow:
-    callSlowPath(slowPath)
+    callOpcodeSlowPath(slowPath)
     dispatch(advance)
 end
 
@@ -1052,7 +1052,7 @@
     storeq t2, [cfr, t0, 8]
     dispatch(3)
 .opUnsignedSlow:
-    callSlowPath(_slow_path_unsigned)
+    callOpcodeSlowPath(_slow_path_unsigned)
     dispatch(3)
 
 
@@ -1105,7 +1105,7 @@
 
 _llint_op_instanceof_custom:
     traceExecution()
-    callSlowPath(_llint_slow_path_instanceof_custom)
+    callOpcodeSlowPath(_llint_slow_path_instanceof_custom)
     dispatch(5)
 
 
@@ -1253,7 +1253,7 @@
     dispatch(9)
 
 .opGetByIdSlow:
-    callSlowPath(_llint_slow_path_get_by_id)
+    callOpcodeSlowPath(_llint_slow_path_get_by_id)
     dispatch(9)
 
 
@@ -1273,7 +1273,7 @@
     dispatch(9)
 
 .opGetByIdProtoSlow:
-    callSlowPath(_llint_slow_path_get_by_id)
+    callOpcodeSlowPath(_llint_slow_path_get_by_id)
     dispatch(9)
 
 
@@ -1290,7 +1290,7 @@
     dispatch(9)
 
 .opGetByIdUnsetSlow:
-    callSlowPath(_llint_slow_path_get_by_id)
+    callOpcodeSlowPath(_llint_slow_path_get_by_id)
     dispatch(9)
 
 
@@ -1313,7 +1313,7 @@
     dispatch(9)
 
 .opGetArrayLengthSlow:
-    callSlowPath(_llint_slow_path_get_by_id)
+    callOpcodeSlowPath(_llint_slow_path_get_by_id)
     dispatch(9)
 
 
@@ -1452,7 +1452,7 @@
     dispatch(9)
 
 .opPutByIdSlow:
-    callSlowPath(_llint_slow_path_put_by_id)
+    callOpcodeSlowPath(_llint_slow_path_put_by_id)
     dispatch(9)
 
 macro finishGetByVal(result, scratch)
@@ -1589,7 +1589,7 @@
     finishDoubleGetByVal(ft0, t0, t1)
 
 .opGetByValSlow:
-    callSlowPath(_llint_slow_path_get_by_val)
+    callOpcodeSlowPath(_llint_slow_path_get_by_val)
     dispatch(6)
 
 
@@ -1677,7 +1677,7 @@
     loadpFromInstruction(4, t0)
     storeb 1, ArrayProfile::m_outOfBounds[t0]
 .opPutByValSlow:
-    callSlowPath(slowPath)
+    callOpcodeSlowPath(slowPath)
     dispatch(5)
 end
 
@@ -1705,7 +1705,7 @@
     dispatchIntIndirect(2)
 
 .slow:
-    callSlowPath(slow)
+    callOpcodeSlowPath(slow)
     dispatch(0)
 end
 
@@ -1804,7 +1804,7 @@
     dispatchIntIndirect(3)
 
 .slow:
-    callSlowPath(slowPath)
+    callOpcodeSlowPath(slowPath)
     dispatch(0)
 end
 
@@ -1833,7 +1833,7 @@
     dispatchIntIndirect(2)
 
 .opSwitchImmSlow:
-    callSlowPath(_llint_slow_path_switch_imm)
+    callOpcodeSlowPath(_llint_slow_path_switch_imm)
     dispatch(0)
 
 
@@ -1870,7 +1870,7 @@
     dispatchIntIndirect(2)
 
 .opSwitchOnRope:
-    callSlowPath(_llint_slow_path_switch_char)
+    callOpcodeSlowPath(_llint_slow_path_switch_char)
     dispatch(0)
 
 
@@ -1927,7 +1927,7 @@
     dispatch(3)
 
 .opToPrimitiveSlowCase:
-    callSlowPath(_slow_path_to_primitive)
+    callOpcodeSlowPath(_slow_path_to_primitive)
     dispatch(3)
 
 
@@ -1951,7 +1951,7 @@
     subp PB, PC
     rshiftp 3, PC
 
-    callSlowPath(_llint_slow_path_check_if_exception_is_uncatchable_and_notify_profiler)
+    callOpcodeSlowPath(_llint_slow_path_check_if_exception_is_uncatchable_and_notify_profiler)
     bpeq r1, 0, .isCatchableException
     jmp _llint_throw_from_slow_path_trampoline
 
@@ -2129,7 +2129,7 @@
     dispatch(7)
 
 .rDynamic:
-    callSlowPath(_slow_path_resolve_scope)
+    callOpcodeSlowPath(_slow_path_resolve_scope)
     dispatch(7)
 
 
@@ -2225,7 +2225,7 @@
     dispatch(8)
 
 .gDynamic:
-    callSlowPath(_llint_slow_path_get_from_scope)
+    callOpcodeSlowPath(_llint_slow_path_get_from_scope)
     dispatch(8)
 
 
@@ -2346,11 +2346,11 @@
 
 .pModuleVar:
     bineq t0, ModuleVar, .pDynamic
-    callSlowPath(_slow_path_throw_strict_mode_readonly_property_write_error)
+    callOpcodeSlowPath(_slow_path_throw_strict_mode_readonly_property_write_error)
     dispatch(7)
 
 .pDynamic:
-    callSlowPath(_llint_slow_path_put_to_scope)
+    callOpcodeSlowPath(_llint_slow_path_put_to_scope)
     dispatch(7)
 
 
@@ -2420,7 +2420,7 @@
 
     loadp TypeProfilerLog::m_logEndPtr[t1], t1
     bpneq t2, t1, .opProfileTypeDone
-    callSlowPath(_slow_path_profile_type_clear_log)
+    callOpcodeSlowPath(_slow_path_profile_type_clear_log)
 
 .opProfileTypeDone:
     dispatch(6)
@@ -2461,7 +2461,7 @@
     storep t1, ShadowChicken::Packet::scope[t0]
     dispatch(2)
 .opLogShadowChickenPrologueSlow:
-    callSlowPath(_llint_slow_path_log_shadow_chicken_prologue)
+    callOpcodeSlowPath(_llint_slow_path_log_shadow_chicken_prologue)
     dispatch(2)
 
 
@@ -2479,5 +2479,5 @@
     storei PC, ShadowChicken::Packet::callSiteIndex[t0]
     dispatch(3)
 .opLogShadowChickenTailSlow:
-    callSlowPath(_llint_slow_path_log_shadow_chicken_tail)
+    callOpcodeSlowPath(_llint_slow_path_log_shadow_chicken_tail)
     dispatch(3)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to