Index: src/ic/arm64/ic-arm64.cc |
diff --git a/src/ic/arm64/ic-arm64.cc b/src/ic/arm64/ic-arm64.cc |
index 9d66eb24950bba553148e16e6dda3d3c45b5bf38..15fee7b88fea854379d295c841fa775ad5ca6889 100644 |
--- a/src/ic/arm64/ic-arm64.cc |
+++ b/src/ic/arm64/ic-arm64.cc |
@@ -458,6 +458,14 @@ void KeyedStoreIC::GenerateMiss(MacroAssembler* masm) { |
__ TailCallRuntime(Runtime::kKeyedStoreIC_Miss); |
} |
+void KeyedStoreIC::GenerateSlow(MacroAssembler* masm) { |
+ ASM_LOCATION("KeyedStoreIC::GenerateSlow"); |
+ StoreIC_PushArgs(masm); |
+ |
+ // The slow case calls into the runtime to complete the store without causing |
+ // an IC miss that would otherwise cause a transition to the generic stub. |
+ __ TailCallRuntime(Runtime::kKeyedStoreIC_Slow); |
+} |
static void KeyedStoreGenerateMegamorphicHelper( |
MacroAssembler* masm, Label* fast_object, Label* fast_double, Label* slow, |