Index: src/code-stubs.h |
diff --git a/src/code-stubs.h b/src/code-stubs.h |
index 4e49680652fbd5518b983a47447d8be85d1db89c..7ec5245d42135472ca2f4c4cfcab00b484d1e25f 100644 |
--- a/src/code-stubs.h |
+++ b/src/code-stubs.h |
@@ -317,7 +317,7 @@ struct CodeStubInterfaceDescriptor { |
return has_miss_handler_; |
} |
- Register GetParameterRegister(int index) { |
+ Register GetParameterRegister(int index) const { |
return register_params_[index]; |
} |
@@ -339,6 +339,41 @@ struct CodeStubInterfaceDescriptor { |
}; |
+struct PlatformCallInterfaceDescriptor; |
+ |
+ |
+struct CallInterfaceDescriptor { |
+ CallInterfaceDescriptor() |
+ : register_param_count_(-1), |
+ register_params_(NULL), |
+ param_representations_(NULL), |
+ platform_specific_descriptor_(NULL) { } |
+ |
+ bool initialized() const { return register_param_count_ >= 0; } |
+ |
+ int environment_length() const { |
+ return register_param_count_; |
+ } |
+ |
+ Representation GetParameterRepresentation(int index) const { |
+ return param_representations_[index]; |
+ } |
+ |
+ Register GetParameterRegister(int index) const { |
+ return register_params_[index]; |
+ } |
+ |
+ PlatformCallInterfaceDescriptor* platform_specific_descriptor() const { |
+ return platform_specific_descriptor_; |
+ } |
+ |
+ int register_param_count_; |
+ Register* register_params_; |
+ Representation* param_representations_; |
+ PlatformCallInterfaceDescriptor* platform_specific_descriptor_; |
+}; |
+ |
+ |
class HydrogenCodeStub : public CodeStub { |
public: |
enum InitializationState { |
@@ -2366,6 +2401,12 @@ class ProfileEntryHookStub : public PlatformCodeStub { |
DISALLOW_COPY_AND_ASSIGN(ProfileEntryHookStub); |
}; |
+ |
+class CallDescriptors { |
+ public: |
+ static void InitializeForIsolate(Isolate* isolate); |
+}; |
+ |
} } // namespace v8::internal |
#endif // V8_CODE_STUBS_H_ |