Chromium Code Reviews| Index: src/code-stubs.h |
| diff --git a/src/code-stubs.h b/src/code-stubs.h |
| index 17b193e748e0fbd92537980d8a0305fe46b090e7..bff08a21608683b7b10e9071f1eb4138716b4394 100644 |
| --- a/src/code-stubs.h |
| +++ b/src/code-stubs.h |
| @@ -14,6 +14,7 @@ |
| #include "src/interface-descriptors.h" |
| #include "src/macro-assembler.h" |
| #include "src/ostreams.h" |
| +#include "src/utils.h" |
| namespace v8 { |
| namespace internal { |
| @@ -432,6 +433,22 @@ class CodeStub BASE_EMBEDDED { |
| } \ |
| DEFINE_CODE_STUB(NAME, SUPER) |
| +// TODO(mythria): check where generate assembly is used and if have to pass 6 |
| +// parameters. |
| +#define DEFINE_TURBOFAN_BINARY_OP_CODE_STUB_WITH_FEEDBACK(NAME, SUPER) \ |
| + public: \ |
| + static compiler::Node* Generate(CodeStubAssembler* assembler, \ |
| + compiler::Node* left, compiler::Node* right, \ |
| + compiler::Node* context, \ |
| + compiler::Node* type_feedback_vector = NULL, \ |
| + compiler::Node* slot_id = NULL); \ |
| + void GenerateAssembly(CodeStubAssembler* assembler) const override { \ |
|
mythria
2016/08/08 04:33:56
I am not sure where GenerateAssembly is used. I di
|
| + assembler->Return(Generate(assembler, assembler->Parameter(0), \ |
| + assembler->Parameter(1), \ |
| + assembler->Parameter(2))); \ |
| + } \ |
| + DEFINE_CODE_STUB(NAME, SUPER) |
| + |
| #define DEFINE_TURBOFAN_UNARY_OP_CODE_STUB(NAME, SUPER) \ |
| public: \ |
| static compiler::Node* Generate(CodeStubAssembler* assembler, \ |
| @@ -746,7 +763,7 @@ class SubtractStub final : public TurboFanCodeStub { |
| explicit SubtractStub(Isolate* isolate) : TurboFanCodeStub(isolate) {} |
| DEFINE_CALL_INTERFACE_DESCRIPTOR(BinaryOp); |
| - DEFINE_TURBOFAN_BINARY_OP_CODE_STUB(Subtract, TurboFanCodeStub); |
| + DEFINE_TURBOFAN_BINARY_OP_CODE_STUB_WITH_FEEDBACK(Subtract, TurboFanCodeStub); |
|
mythria
2016/08/08 04:33:56
We can remove this once we migrate all binary ops
|
| }; |
| class MultiplyStub final : public TurboFanCodeStub { |