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 730 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
741 class CallOptimization; | 741 class CallOptimization; |
742 | 742 |
743 class CallStubCompiler: public StubCompiler { | 743 class CallStubCompiler: public StubCompiler { |
744 public: | 744 public: |
745 CallStubCompiler(int argc, | 745 CallStubCompiler(int argc, |
746 InLoopFlag in_loop, | 746 InLoopFlag in_loop, |
747 Code::Kind kind, | 747 Code::Kind kind, |
748 Code::ExtraICState extra_ic_state, | 748 Code::ExtraICState extra_ic_state, |
749 InlineCacheHolderFlag cache_holder); | 749 InlineCacheHolderFlag cache_holder); |
750 | 750 |
751 MUST_USE_RESULT MaybeObject* CompileCallField(JSObject* object, | 751 MUST_USE_RESULT MaybeObject* CompileCallField( |
752 JSObject* holder, | 752 JSObject* object, |
753 int index, | 753 JSObject* holder, |
754 String* name); | 754 int index, |
755 MUST_USE_RESULT MaybeObject* CompileCallConstant(Object* object, | 755 String* name); |
756 JSObject* holder, | 756 |
757 JSFunction* function, | 757 MUST_USE_RESULT MaybeObject* CompileCallConstant( |
758 String* name, | 758 Object* object, |
759 CheckType check); | 759 JSObject* holder, |
760 MUST_USE_RESULT MaybeObject* CompileCallInterceptor(JSObject* object, | 760 JSFunction* function, |
761 JSObject* holder, | 761 String* name, |
762 String* name); | 762 CheckType check); |
| 763 |
| 764 MUST_USE_RESULT MaybeObject* CompileCallInterceptor( |
| 765 JSObject* object, |
| 766 JSObject* holder, |
| 767 String* name); |
| 768 |
763 MUST_USE_RESULT MaybeObject* CompileCallGlobal( | 769 MUST_USE_RESULT MaybeObject* CompileCallGlobal( |
764 JSObject* object, | 770 JSObject* object, |
765 GlobalObject* holder, | 771 GlobalObject* holder, |
766 JSGlobalPropertyCell* cell, | 772 JSGlobalPropertyCell* cell, |
767 JSFunction* function, | 773 JSFunction* function, |
768 String* name, | 774 String* name); |
769 Code::ExtraICState extra_ic_state); | |
770 | 775 |
771 static bool HasCustomCallGenerator(JSFunction* function); | 776 static bool HasCustomCallGenerator(JSFunction* function); |
772 | 777 |
773 private: | 778 private: |
774 // Compiles a custom call constant/global IC. For constant calls | 779 // Compiles a custom call constant/global IC. For constant calls |
775 // cell is NULL. Returns undefined if there is no custom call code | 780 // cell is NULL. Returns undefined if there is no custom call code |
776 // for the given function or it can't be generated. | 781 // for the given function or it can't be generated. |
777 MUST_USE_RESULT MaybeObject* CompileCustomCall(Object* object, | 782 MUST_USE_RESULT MaybeObject* CompileCustomCall(Object* object, |
778 JSObject* holder, | 783 JSObject* holder, |
779 JSGlobalPropertyCell* cell, | 784 JSGlobalPropertyCell* cell, |
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
915 private: | 920 private: |
916 MaybeObject* GetCode(); | 921 MaybeObject* GetCode(); |
917 | 922 |
918 StrictModeFlag strict_mode_; | 923 StrictModeFlag strict_mode_; |
919 }; | 924 }; |
920 | 925 |
921 | 926 |
922 } } // namespace v8::internal | 927 } } // namespace v8::internal |
923 | 928 |
924 #endif // V8_STUB_CACHE_H_ | 929 #endif // V8_STUB_CACHE_H_ |
OLD | NEW |