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...) 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 610 matching lines...) Loading... |
790 // Determines whether the given function can be called using the | 794 // Determines whether the given function can be called using the |
791 // fast api call builtin. | 795 // fast api call builtin. |
792 void AnalyzePossibleApiFunction(JSFunction* function); | 796 void AnalyzePossibleApiFunction(JSFunction* function); |
793 | 797 |
794 JSFunction* constant_function_; | 798 JSFunction* constant_function_; |
795 bool is_simple_api_call_; | 799 bool is_simple_api_call_; |
796 FunctionTemplateInfo* expected_receiver_type_; | 800 FunctionTemplateInfo* expected_receiver_type_; |
797 CallHandlerInfo* api_call_info_; | 801 CallHandlerInfo* api_call_info_; |
798 }; | 802 }; |
799 | 803 |
| 804 class ExternalArrayStubCompiler: public StubCompiler { |
| 805 public: |
| 806 explicit ExternalArrayStubCompiler() {} |
| 807 |
| 808 MUST_USE_RESULT MaybeObject* CompileKeyedLoadStub( |
| 809 ExternalArrayType array_type, Code::Flags flags); |
| 810 |
| 811 MUST_USE_RESULT MaybeObject* CompileKeyedStoreStub( |
| 812 ExternalArrayType array_type, Code::Flags flags); |
| 813 |
| 814 private: |
| 815 MaybeObject* GetCode(Code::Flags flags); |
| 816 }; |
| 817 |
800 } } // namespace v8::internal | 818 } } // namespace v8::internal |
801 | 819 |
802 #endif // V8_STUB_CACHE_H_ | 820 #endif // V8_STUB_CACHE_H_ |
OLD | NEW |