OLD | NEW |
---|---|
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_CODE_STUBS_H_ | 5 #ifndef V8_CODE_STUBS_H_ |
6 #define V8_CODE_STUBS_H_ | 6 #define V8_CODE_STUBS_H_ |
7 | 7 |
8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
9 #include "src/assembler.h" | 9 #include "src/assembler.h" |
10 #include "src/codegen.h" | 10 #include "src/codegen.h" |
(...skipping 569 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
580 FunctionKindBits::encode(kind)); | 580 FunctionKindBits::encode(kind)); |
581 } | 581 } |
582 | 582 |
583 LanguageMode language_mode() const { | 583 LanguageMode language_mode() const { |
584 return LanguageModeBits::decode(sub_minor_key()); | 584 return LanguageModeBits::decode(sub_minor_key()); |
585 } | 585 } |
586 | 586 |
587 FunctionKind kind() const { | 587 FunctionKind kind() const { |
588 return FunctionKindBits::decode(sub_minor_key()); | 588 return FunctionKindBits::decode(sub_minor_key()); |
589 } | 589 } |
590 bool is_arrow() const { return IsArrowFunction(kind()); } | |
591 bool is_generator() const { return IsGeneratorFunction(kind()); } | |
592 bool is_concise_method() const { return IsConciseMethod(kind()); } | |
593 bool is_default_constructor() const { return IsDefaultConstructor(kind()); } | |
594 | 590 |
595 private: | 591 private: |
596 STATIC_ASSERT(LANGUAGE_END == 3); | 592 STATIC_ASSERT(LANGUAGE_END == 3); |
597 class LanguageModeBits : public BitField<LanguageMode, 0, 2> {}; | 593 class LanguageModeBits : public BitField<LanguageMode, 0, 2> {}; |
598 class FunctionKindBits : public BitField<FunctionKind, 2, 4> {}; | 594 class FunctionKindBits : public BitField<FunctionKind, 2, 6> {}; |
adamk
2015/02/05 23:18:43
Out of curiosity, was this just busted before?
arv (Not doing code reviews)
2015/02/05 23:34:01
Someone forgot to update it.
| |
599 | 595 |
600 DEFINE_CALL_INTERFACE_DESCRIPTOR(FastNewClosure); | 596 DEFINE_CALL_INTERFACE_DESCRIPTOR(FastNewClosure); |
601 DEFINE_HYDROGEN_CODE_STUB(FastNewClosure, HydrogenCodeStub); | 597 DEFINE_HYDROGEN_CODE_STUB(FastNewClosure, HydrogenCodeStub); |
602 }; | 598 }; |
603 | 599 |
604 | 600 |
605 class FastNewContextStub FINAL : public HydrogenCodeStub { | 601 class FastNewContextStub FINAL : public HydrogenCodeStub { |
606 public: | 602 public: |
607 static const int kMaximumSlots = 64; | 603 static const int kMaximumSlots = 64; |
608 | 604 |
(...skipping 2074 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2683 | 2679 |
2684 #undef DEFINE_CALL_INTERFACE_DESCRIPTOR | 2680 #undef DEFINE_CALL_INTERFACE_DESCRIPTOR |
2685 #undef DEFINE_PLATFORM_CODE_STUB | 2681 #undef DEFINE_PLATFORM_CODE_STUB |
2686 #undef DEFINE_HANDLER_CODE_STUB | 2682 #undef DEFINE_HANDLER_CODE_STUB |
2687 #undef DEFINE_HYDROGEN_CODE_STUB | 2683 #undef DEFINE_HYDROGEN_CODE_STUB |
2688 #undef DEFINE_CODE_STUB | 2684 #undef DEFINE_CODE_STUB |
2689 #undef DEFINE_CODE_STUB_BASE | 2685 #undef DEFINE_CODE_STUB_BASE |
2690 } } // namespace v8::internal | 2686 } } // namespace v8::internal |
2691 | 2687 |
2692 #endif // V8_CODE_STUBS_H_ | 2688 #endif // V8_CODE_STUBS_H_ |
OLD | NEW |