| Index: src/code-stubs.h
|
| diff --git a/src/code-stubs.h b/src/code-stubs.h
|
| index 85b0883db849033869eae4c5df248d9f907d7c83..b5addd6947eb82e2f1d083eebf951fbdc9df892b 100644
|
| --- a/src/code-stubs.h
|
| +++ b/src/code-stubs.h
|
| @@ -2030,9 +2030,10 @@ class CEntryStub : public PlatformCodeStub {
|
| public:
|
| CEntryStub(Isolate* isolate, int result_size,
|
| SaveFPRegsMode save_doubles = kDontSaveFPRegs,
|
| - ArgvMode argv_mode = kArgvOnStack)
|
| + ArgvMode argv_mode = kArgvOnStack, bool builtin_exit_frame = false)
|
| : PlatformCodeStub(isolate) {
|
| minor_key_ = SaveDoublesBits::encode(save_doubles == kSaveFPRegs) |
|
| + FrameTypeBits::encode(builtin_exit_frame) |
|
| ArgvMode::encode(argv_mode == kArgvInRegister);
|
| DCHECK(result_size == 1 || result_size == 2 || result_size == 3);
|
| minor_key_ = ResultSizeBits::update(minor_key_, result_size);
|
| @@ -2047,13 +2048,15 @@ class CEntryStub : public PlatformCodeStub {
|
| private:
|
| bool save_doubles() const { return SaveDoublesBits::decode(minor_key_); }
|
| bool argv_in_register() const { return ArgvMode::decode(minor_key_); }
|
| + bool is_builtin_exit() const { return FrameTypeBits::decode(minor_key_); }
|
| int result_size() const { return ResultSizeBits::decode(minor_key_); }
|
|
|
| bool NeedsImmovableCode() override;
|
|
|
| class SaveDoublesBits : public BitField<bool, 0, 1> {};
|
| class ArgvMode : public BitField<bool, 1, 1> {};
|
| - class ResultSizeBits : public BitField<int, 2, 3> {};
|
| + class FrameTypeBits : public BitField<bool, 2, 1> {};
|
| + class ResultSizeBits : public BitField<int, 3, 3> {};
|
|
|
| DEFINE_NULL_CALL_INTERFACE_DESCRIPTOR();
|
| DEFINE_PLATFORM_CODE_STUB(CEntry, PlatformCodeStub);
|
|
|