OLD | NEW |
1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2008 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 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
160 | 160 |
161 MUST_USE_RESULT static MaybeObject* ComputeKeyedStoreField( | 161 MUST_USE_RESULT static MaybeObject* ComputeKeyedStoreField( |
162 String* name, | 162 String* name, |
163 JSObject* receiver, | 163 JSObject* receiver, |
164 int field_index, | 164 int field_index, |
165 Map* transition = NULL); | 165 Map* transition = NULL); |
166 | 166 |
167 MUST_USE_RESULT static MaybeObject* ComputeKeyedStoreSpecialized( | 167 MUST_USE_RESULT static MaybeObject* ComputeKeyedStoreSpecialized( |
168 JSObject* receiver); | 168 JSObject* receiver); |
169 | 169 |
| 170 MUST_USE_RESULT static MaybeObject* ComputeKeyedLoadOrStoreExternalArray( |
| 171 JSObject* receiver, |
| 172 bool is_store); |
| 173 |
170 // --- | 174 // --- |
171 | 175 |
172 MUST_USE_RESULT static MaybeObject* ComputeCallField(int argc, | 176 MUST_USE_RESULT static MaybeObject* ComputeCallField(int argc, |
173 InLoopFlag in_loop, | 177 InLoopFlag in_loop, |
174 Code::Kind, | 178 Code::Kind, |
175 String* name, | 179 String* name, |
176 Object* object, | 180 Object* object, |
177 JSObject* holder, | 181 JSObject* holder, |
178 int index); | 182 int index); |
179 | 183 |
(...skipping 606 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
786 // Determines whether the given function can be called using the | 790 // Determines whether the given function can be called using the |
787 // fast api call builtin. | 791 // fast api call builtin. |
788 void AnalyzePossibleApiFunction(JSFunction* function); | 792 void AnalyzePossibleApiFunction(JSFunction* function); |
789 | 793 |
790 JSFunction* constant_function_; | 794 JSFunction* constant_function_; |
791 bool is_simple_api_call_; | 795 bool is_simple_api_call_; |
792 FunctionTemplateInfo* expected_receiver_type_; | 796 FunctionTemplateInfo* expected_receiver_type_; |
793 CallHandlerInfo* api_call_info_; | 797 CallHandlerInfo* api_call_info_; |
794 }; | 798 }; |
795 | 799 |
| 800 class ExternalArrayStubCompiler: public StubCompiler { |
| 801 public: |
| 802 explicit ExternalArrayStubCompiler() {} |
| 803 |
| 804 MUST_USE_RESULT MaybeObject* CompileKeyedLoadStub( |
| 805 ExternalArrayType array_type, Code::Flags flags); |
| 806 |
| 807 MUST_USE_RESULT MaybeObject* CompileKeyedStoreStub( |
| 808 ExternalArrayType array_type, Code::Flags flags); |
| 809 |
| 810 private: |
| 811 MaybeObject* GetCode(Code::Flags flags); |
| 812 }; |
| 813 |
796 } } // namespace v8::internal | 814 } } // namespace v8::internal |
797 | 815 |
798 #endif // V8_STUB_CACHE_H_ | 816 #endif // V8_STUB_CACHE_H_ |
OLD | NEW |