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

Side by Side Diff: src/objects.cc

Issue 2801018: This change allows generating call-stubs for objects with normal (non-fast) o... (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: '' Created 10 years, 5 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 | Annotate | Revision Log
« no previous file with comments | « src/objects.h ('k') | src/objects-inl.h » ('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-2009 the V8 project authors. All rights reserved. 1 // Copyright 2006-2009 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 1728 matching lines...) Expand 10 before | Expand all | Expand 10 after
1739 return; 1739 return;
1740 } 1740 }
1741 value = JSGlobalPropertyCell::cast(value)->value(); 1741 value = JSGlobalPropertyCell::cast(value)->value();
1742 } 1742 }
1743 // Make sure to disallow caching for uninitialized constants 1743 // Make sure to disallow caching for uninitialized constants
1744 // found in the dictionary-mode objects. 1744 // found in the dictionary-mode objects.
1745 if (value->IsTheHole()) result->DisallowCaching(); 1745 if (value->IsTheHole()) result->DisallowCaching();
1746 result->DictionaryResult(this, entry); 1746 result->DictionaryResult(this, entry);
1747 return; 1747 return;
1748 } 1748 }
1749 // Slow case object skipped during lookup. Do not use inline caching.
1750 if (!IsGlobalObject()) result->DisallowCaching();
1751 } 1749 }
1752 result->NotFound(); 1750 result->NotFound();
1753 } 1751 }
1754 1752
1755 1753
1756 void JSObject::LookupRealNamedProperty(String* name, LookupResult* result) { 1754 void JSObject::LookupRealNamedProperty(String* name, LookupResult* result) {
1757 LocalLookupRealNamedProperty(name, result); 1755 LocalLookupRealNamedProperty(name, result);
1758 if (result->IsProperty()) return; 1756 if (result->IsProperty()) return;
1759 1757
1760 LookupRealNamedPropertyInPrototypes(name, result); 1758 LookupRealNamedPropertyInPrototypes(name, result);
(...skipping 6977 matching lines...) Expand 10 before | Expand all | Expand 10 after
8738 if (break_point_objects()->IsUndefined()) return 0; 8736 if (break_point_objects()->IsUndefined()) return 0;
8739 // Single beak point. 8737 // Single beak point.
8740 if (!break_point_objects()->IsFixedArray()) return 1; 8738 if (!break_point_objects()->IsFixedArray()) return 1;
8741 // Multiple break points. 8739 // Multiple break points.
8742 return FixedArray::cast(break_point_objects())->length(); 8740 return FixedArray::cast(break_point_objects())->length();
8743 } 8741 }
8744 #endif 8742 #endif
8745 8743
8746 8744
8747 } } // namespace v8::internal 8745 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/objects.h ('k') | src/objects-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698