OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 644 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
655 | 655 |
656 MUST_USE_RESULT MaybeObject* CompileLoadMegamorphic( | 656 MUST_USE_RESULT MaybeObject* CompileLoadMegamorphic( |
657 MapList* receiver_maps, | 657 MapList* receiver_maps, |
658 CodeList* handler_ics); | 658 CodeList* handler_ics); |
659 | 659 |
660 static void GenerateLoadExternalArray(MacroAssembler* masm, | 660 static void GenerateLoadExternalArray(MacroAssembler* masm, |
661 JSObject::ElementsKind elements_kind); | 661 JSObject::ElementsKind elements_kind); |
662 | 662 |
663 static void GenerateLoadFastElement(MacroAssembler* masm); | 663 static void GenerateLoadFastElement(MacroAssembler* masm); |
664 | 664 |
| 665 static void GenerateLoadFastDoubleElement(MacroAssembler* masm); |
| 666 |
665 static void GenerateLoadDictionaryElement(MacroAssembler* masm); | 667 static void GenerateLoadDictionaryElement(MacroAssembler* masm); |
666 | 668 |
667 private: | 669 private: |
668 MaybeObject* GetCode(PropertyType type, | 670 MaybeObject* GetCode(PropertyType type, |
669 String* name, | 671 String* name, |
670 InlineCacheState state = MONOMORPHIC); | 672 InlineCacheState state = MONOMORPHIC); |
671 }; | 673 }; |
672 | 674 |
673 | 675 |
674 class StoreStubCompiler: public StubCompiler { | 676 class StoreStubCompiler: public StubCompiler { |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
710 | 712 |
711 MUST_USE_RESULT MaybeObject* CompileStoreElement(Map* receiver_map); | 713 MUST_USE_RESULT MaybeObject* CompileStoreElement(Map* receiver_map); |
712 | 714 |
713 MUST_USE_RESULT MaybeObject* CompileStoreMegamorphic( | 715 MUST_USE_RESULT MaybeObject* CompileStoreMegamorphic( |
714 MapList* receiver_maps, | 716 MapList* receiver_maps, |
715 CodeList* handler_ics); | 717 CodeList* handler_ics); |
716 | 718 |
717 static void GenerateStoreFastElement(MacroAssembler* masm, | 719 static void GenerateStoreFastElement(MacroAssembler* masm, |
718 bool is_js_array); | 720 bool is_js_array); |
719 | 721 |
| 722 static void GenerateStoreFastDoubleElement(MacroAssembler* masm, |
| 723 bool is_js_array); |
| 724 |
720 static void GenerateStoreExternalArray(MacroAssembler* masm, | 725 static void GenerateStoreExternalArray(MacroAssembler* masm, |
721 JSObject::ElementsKind elements_kind); | 726 JSObject::ElementsKind elements_kind); |
722 | 727 |
723 static void GenerateStoreDictionaryElement(MacroAssembler* masm); | 728 static void GenerateStoreDictionaryElement(MacroAssembler* masm); |
724 | 729 |
725 private: | 730 private: |
726 MaybeObject* GetCode(PropertyType type, | 731 MaybeObject* GetCode(PropertyType type, |
727 String* name, | 732 String* name, |
728 InlineCacheState state = MONOMORPHIC); | 733 InlineCacheState state = MONOMORPHIC); |
729 | 734 |
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
896 JSFunction* constant_function_; | 901 JSFunction* constant_function_; |
897 bool is_simple_api_call_; | 902 bool is_simple_api_call_; |
898 FunctionTemplateInfo* expected_receiver_type_; | 903 FunctionTemplateInfo* expected_receiver_type_; |
899 CallHandlerInfo* api_call_info_; | 904 CallHandlerInfo* api_call_info_; |
900 }; | 905 }; |
901 | 906 |
902 | 907 |
903 } } // namespace v8::internal | 908 } } // namespace v8::internal |
904 | 909 |
905 #endif // V8_STUB_CACHE_H_ | 910 #endif // V8_STUB_CACHE_H_ |
OLD | NEW |