Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(218)

Side by Side Diff: src/objects-inl.h

Issue 647013: Make setting length on arrays faster. (Closed)
Patch Set: Porting to ARM and x64 Created 10 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/objects.cc ('k') | src/x64/ic-x64.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 2755 matching lines...) Expand 10 before | Expand all | Expand 10 after
2766 bool JSObject::HasNamedInterceptor() { 2766 bool JSObject::HasNamedInterceptor() {
2767 return map()->has_named_interceptor(); 2767 return map()->has_named_interceptor();
2768 } 2768 }
2769 2769
2770 2770
2771 bool JSObject::HasIndexedInterceptor() { 2771 bool JSObject::HasIndexedInterceptor() {
2772 return map()->has_indexed_interceptor(); 2772 return map()->has_indexed_interceptor();
2773 } 2773 }
2774 2774
2775 2775
2776 bool JSObject::AllowsSetElementsLength() {
2777 bool result = elements()->IsFixedArray();
2778 ASSERT(result == (!HasPixelElements() && !HasExternalArrayElements()));
2779 return result;
2780 }
2781
2782
2776 StringDictionary* JSObject::property_dictionary() { 2783 StringDictionary* JSObject::property_dictionary() {
2777 ASSERT(!HasFastProperties()); 2784 ASSERT(!HasFastProperties());
2778 return StringDictionary::cast(properties()); 2785 return StringDictionary::cast(properties());
2779 } 2786 }
2780 2787
2781 2788
2782 NumberDictionary* JSObject::element_dictionary() { 2789 NumberDictionary* JSObject::element_dictionary() {
2783 ASSERT(HasDictionaryElements()); 2790 ASSERT(HasDictionaryElements());
2784 return NumberDictionary::cast(elements()); 2791 return NumberDictionary::cast(elements());
2785 } 2792 }
(...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after
3040 #undef WRITE_INT_FIELD 3047 #undef WRITE_INT_FIELD
3041 #undef READ_SHORT_FIELD 3048 #undef READ_SHORT_FIELD
3042 #undef WRITE_SHORT_FIELD 3049 #undef WRITE_SHORT_FIELD
3043 #undef READ_BYTE_FIELD 3050 #undef READ_BYTE_FIELD
3044 #undef WRITE_BYTE_FIELD 3051 #undef WRITE_BYTE_FIELD
3045 3052
3046 3053
3047 } } // namespace v8::internal 3054 } } // namespace v8::internal
3048 3055
3049 #endif // V8_OBJECTS_INL_H_ 3056 #endif // V8_OBJECTS_INL_H_
OLDNEW
« no previous file with comments | « src/objects.cc ('k') | src/x64/ic-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698