Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(422)

Unified Diff: src/code-stubs.h

Issue 426233002: Land the Fan (disabled) (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Review feedback, rebase and "git cl format" Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/checks.cc ('k') | src/code-stubs.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/code-stubs.h
diff --git a/src/code-stubs.h b/src/code-stubs.h
index fd6b0a9e27d4293eec0b6a2d44044dc0487ef258..03f7a69ffa45d7527ca15d9c0da15ff865837cdb 100644
--- a/src/code-stubs.h
+++ b/src/code-stubs.h
@@ -10,6 +10,7 @@
#include "src/codegen.h"
#include "src/globals.h"
#include "src/macro-assembler.h"
+#include "src/ostreams.h"
namespace v8 {
namespace internal {
@@ -348,13 +349,13 @@ class CodeStubInterfaceDescriptor: public InterfaceDescriptor {
public:
CodeStubInterfaceDescriptor();
- void Initialize(int register_parameter_count, Register* registers,
- Address deoptimization_handler = NULL,
+ void Initialize(CodeStub::Major major, int register_parameter_count,
+ Register* registers, Address deoptimization_handler = NULL,
Representation* register_param_representations = NULL,
int hint_stack_parameter_count = -1,
StubFunctionMode function_mode = NOT_JS_FUNCTION_STUB_MODE);
- void Initialize(int register_parameter_count, Register* registers,
- Register stack_parameter_count,
+ void Initialize(CodeStub::Major major, int register_parameter_count,
+ Register* registers, Register stack_parameter_count,
Address deoptimization_handler = NULL,
Representation* register_param_representations = NULL,
int hint_stack_parameter_count = -1,
@@ -394,6 +395,7 @@ class CodeStubInterfaceDescriptor: public InterfaceDescriptor {
Register stack_parameter_count() const { return stack_parameter_count_; }
StubFunctionMode function_mode() const { return function_mode_; }
Address deoptimization_handler() const { return deoptimization_handler_; }
+ CodeStub::Major MajorKey() const { return major_; }
private:
Register stack_parameter_count_;
@@ -407,6 +409,7 @@ class CodeStubInterfaceDescriptor: public InterfaceDescriptor {
ExternalReference miss_handler_;
bool has_miss_handler_;
+ CodeStub::Major major_;
};
@@ -743,6 +746,9 @@ class InstanceofStub: public PlatformCodeStub {
void Generate(MacroAssembler* masm);
+ virtual void InitializeInterfaceDescriptor(
+ Isolate* isolate, CodeStubInterfaceDescriptor* descriptor);
+
private:
Major MajorKey() const { return Instanceof; }
int MinorKey() const { return static_cast<int>(flags_); }
@@ -1132,10 +1138,11 @@ class CallApiGetterStub : public PlatformCodeStub {
class BinaryOpICStub : public HydrogenCodeStub {
public:
- BinaryOpICStub(Isolate* isolate, Token::Value op, OverwriteMode mode)
+ BinaryOpICStub(Isolate* isolate, Token::Value op,
+ OverwriteMode mode = NO_OVERWRITE)
: HydrogenCodeStub(isolate, UNINITIALIZED), state_(isolate, op, mode) {}
- BinaryOpICStub(Isolate* isolate, const BinaryOpIC::State& state)
+ explicit BinaryOpICStub(Isolate* isolate, const BinaryOpIC::State& state)
: HydrogenCodeStub(isolate), state_(state) {}
static void GenerateAheadOfTime(Isolate* isolate);
@@ -1618,6 +1625,9 @@ class CallFunctionStub: public PlatformCodeStub {
return ArgcBits::decode(minor_key);
}
+ virtual void InitializeInterfaceDescriptor(
+ Isolate* isolate, CodeStubInterfaceDescriptor* descriptor);
+
private:
int argc_;
CallFunctionFlags flags_;
@@ -1655,6 +1665,9 @@ class CallConstructStub: public PlatformCodeStub {
code->set_has_function_cache(RecordCallTarget());
}
+ virtual void InitializeInterfaceDescriptor(
+ Isolate* isolate, CodeStubInterfaceDescriptor* descriptor);
+
private:
CallConstructorFlags flags_;
« no previous file with comments | « src/checks.cc ('k') | src/code-stubs.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698