Chromium Code Reviews| Index: src/codegen.h |
| diff --git a/src/codegen.h b/src/codegen.h |
| index d6967b7aff75e9a7bec6e932cd11272bcff923f0..2f8becf95a4b83396da09cc1071c53e7a3c260d2 100644 |
| --- a/src/codegen.h |
| +++ b/src/codegen.h |
| @@ -286,7 +286,7 @@ class CompareStub: public CodeStub { |
| class CEntryStub : public CodeStub { |
| public: |
| - CEntryStub() { } |
| + explicit CEntryStub(int result_size) : result_size_(result_size) { } |
| void Generate(MacroAssembler* masm) { GenerateBody(masm, false); } |
| @@ -302,10 +302,14 @@ class CEntryStub : public CodeStub { |
| void GenerateThrowTOS(MacroAssembler* masm); |
| void GenerateThrowUncatchable(MacroAssembler* masm, |
| UncatchableExceptionType type); |
| - |
| private: |
| + // Number of pointers/values returned. |
| + int result_size_; |
| + |
| Major MajorKey() { return CEntry; } |
| - int MinorKey() { return 0; } |
| + // Minor key must differ if different result_size_ values means different |
| + // code is generated. |
| + int MinorKey(); |
| const char* GetName() { return "CEntryStub"; } |
| }; |
| @@ -313,7 +317,7 @@ class CEntryStub : public CodeStub { |
| class CEntryDebugBreakStub : public CEntryStub { |
| public: |
| - CEntryDebugBreakStub() { } |
| + explicit CEntryDebugBreakStub() : CEntryStub(1) { } |
|
Søren Thygesen Gjesse
2009/09/07 12:22:33
explicit only required when there is one argument,
Lasse Reichstein
2009/09/08 11:51:35
Good catch.
(There was an argument at a point, but
|
| void Generate(MacroAssembler* masm) { GenerateBody(masm, true); } |