Index: src/x64/code-stubs-x64.h |
diff --git a/src/x64/code-stubs-x64.h b/src/x64/code-stubs-x64.h |
index eafb9602551052bb51f79a8a578d675e4fff1c74..f6cfad048e35c725a12bf1c7a9da15b83f8ca095 100644 |
--- a/src/x64/code-stubs-x64.h |
+++ b/src/x64/code-stubs-x64.h |
@@ -207,11 +207,13 @@ class StringHelper : public AllStatic { |
// Flag that indicates how to generate code for the stub StringAddStub. |
enum StringAddFlags { |
- NO_STRING_ADD_FLAGS = 0, |
+ NO_STRING_ADD_FLAGS = 1 << 0, |
// Omit left string check in stub (left is definitely a string). |
- NO_STRING_CHECK_LEFT_IN_STUB = 1 << 0, |
+ NO_STRING_CHECK_LEFT_IN_STUB = 1 << 1, |
// Omit right string check in stub (right is definitely a string). |
- NO_STRING_CHECK_RIGHT_IN_STUB = 1 << 1, |
+ NO_STRING_CHECK_RIGHT_IN_STUB = 1 << 2, |
+ // Stub needs a frame before calling the runtime |
+ ERECT_FRAME = 1 << 3, |
// Omit both string checks in stub. |
NO_STRING_CHECK_IN_STUB = |
NO_STRING_CHECK_LEFT_IN_STUB | NO_STRING_CHECK_RIGHT_IN_STUB |
@@ -236,6 +238,9 @@ class StringAddStub: public PlatformCodeStub { |
Register scratch3, |
Label* slow); |
+ void GenerateRegisterArgsPush(MacroAssembler* masm); |
+ void GenerateRegisterArgsPop(MacroAssembler* masm, Register temp); |
+ |
const StringAddFlags flags_; |
}; |