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 158 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
169 | 169 |
170 MUST_USE_RESULT static MaybeObject* ComputeKeyedStoreField( | 170 MUST_USE_RESULT static MaybeObject* ComputeKeyedStoreField( |
171 String* name, | 171 String* name, |
172 JSObject* receiver, | 172 JSObject* receiver, |
173 int field_index, | 173 int field_index, |
174 Map* transition = NULL); | 174 Map* transition = NULL); |
175 | 175 |
176 MUST_USE_RESULT static MaybeObject* ComputeKeyedStoreSpecialized( | 176 MUST_USE_RESULT static MaybeObject* ComputeKeyedStoreSpecialized( |
177 JSObject* receiver); | 177 JSObject* receiver); |
178 | 178 |
| 179 MUST_USE_RESULT static MaybeObject* ComputeKeyedStorePixelArray( |
| 180 JSObject* receiver); |
| 181 |
179 MUST_USE_RESULT static MaybeObject* ComputeKeyedLoadOrStoreExternalArray( | 182 MUST_USE_RESULT static MaybeObject* ComputeKeyedLoadOrStoreExternalArray( |
180 JSObject* receiver, | 183 JSObject* receiver, |
181 bool is_store); | 184 bool is_store); |
182 | 185 |
183 // --- | 186 // --- |
184 | 187 |
185 MUST_USE_RESULT static MaybeObject* ComputeCallField(int argc, | 188 MUST_USE_RESULT static MaybeObject* ComputeCallField(int argc, |
186 InLoopFlag in_loop, | 189 InLoopFlag in_loop, |
187 Code::Kind, | 190 Code::Kind, |
188 String* name, | 191 String* name, |
(...skipping 463 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
652 | 655 |
653 class KeyedStoreStubCompiler: public StubCompiler { | 656 class KeyedStoreStubCompiler: public StubCompiler { |
654 public: | 657 public: |
655 MUST_USE_RESULT MaybeObject* CompileStoreField(JSObject* object, | 658 MUST_USE_RESULT MaybeObject* CompileStoreField(JSObject* object, |
656 int index, | 659 int index, |
657 Map* transition, | 660 Map* transition, |
658 String* name); | 661 String* name); |
659 | 662 |
660 MUST_USE_RESULT MaybeObject* CompileStoreSpecialized(JSObject* receiver); | 663 MUST_USE_RESULT MaybeObject* CompileStoreSpecialized(JSObject* receiver); |
661 | 664 |
| 665 MUST_USE_RESULT MaybeObject* CompileStorePixelArray(JSObject* receiver); |
| 666 |
662 private: | 667 private: |
663 MaybeObject* GetCode(PropertyType type, String* name); | 668 MaybeObject* GetCode(PropertyType type, String* name); |
664 }; | 669 }; |
665 | 670 |
666 | 671 |
667 // Subset of FUNCTIONS_WITH_ID_LIST with custom constant/global call | 672 // Subset of FUNCTIONS_WITH_ID_LIST with custom constant/global call |
668 // IC stubs. | 673 // IC stubs. |
669 #define CUSTOM_CALL_IC_GENERATORS(V) \ | 674 #define CUSTOM_CALL_IC_GENERATORS(V) \ |
670 V(ArrayPush) \ | 675 V(ArrayPush) \ |
671 V(ArrayPop) \ | 676 V(ArrayPop) \ |
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
826 MUST_USE_RESULT MaybeObject* CompileKeyedStoreStub( | 831 MUST_USE_RESULT MaybeObject* CompileKeyedStoreStub( |
827 ExternalArrayType array_type, Code::Flags flags); | 832 ExternalArrayType array_type, Code::Flags flags); |
828 | 833 |
829 private: | 834 private: |
830 MaybeObject* GetCode(Code::Flags flags); | 835 MaybeObject* GetCode(Code::Flags flags); |
831 }; | 836 }; |
832 | 837 |
833 } } // namespace v8::internal | 838 } } // namespace v8::internal |
834 | 839 |
835 #endif // V8_STUB_CACHE_H_ | 840 #endif // V8_STUB_CACHE_H_ |
OLD | NEW |