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

Side by Side Diff: src/objects.cc

Issue 115462: Add a script cache to the debugger... (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: '' Created 11 years, 7 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
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 5918 matching lines...) Expand 10 before | Expand all | Expand 10 after
5929 return counter; 5929 return counter;
5930 } 5930 }
5931 5931
5932 5932
5933 int JSObject::GetEnumElementKeys(FixedArray* storage) { 5933 int JSObject::GetEnumElementKeys(FixedArray* storage) {
5934 return GetLocalElementKeys(storage, 5934 return GetLocalElementKeys(storage,
5935 static_cast<PropertyAttributes>(DONT_ENUM)); 5935 static_cast<PropertyAttributes>(DONT_ENUM));
5936 } 5936 }
5937 5937
5938 5938
5939 // Thomas Wang, Integer Hash Functions.
5940 // http://www.concentric.net/~Ttwang/tech/inthash.htm
5941 static uint32_t ComputeIntegerHash(uint32_t key) {
5942 uint32_t hash = key;
5943 hash = ~hash + (hash << 15); // hash = (hash << 15) - hash - 1;
5944 hash = hash ^ (hash >> 12);
5945 hash = hash + (hash << 2);
5946 hash = hash ^ (hash >> 4);
5947 hash = hash * 2057; // hash = (hash + (hash << 3)) + (hash << 11);
5948 hash = hash ^ (hash >> 16);
5949 return hash;
5950 }
5951
5952
5953 // The NumberKey uses carries the uint32_t as key. 5939 // The NumberKey uses carries the uint32_t as key.
5954 // This avoids allocation in HasProperty. 5940 // This avoids allocation in HasProperty.
5955 class NumberKey : public HashTableKey { 5941 class NumberKey : public HashTableKey {
5956 public: 5942 public:
5957 explicit NumberKey(uint32_t number) : number_(number) { } 5943 explicit NumberKey(uint32_t number) : number_(number) { }
5958 5944
5959 bool IsMatch(Object* number) { 5945 bool IsMatch(Object* number) {
5960 return number_ == ToUint32(number); 5946 return number_ == ToUint32(number);
5961 } 5947 }
5962 5948
(...skipping 1509 matching lines...) Expand 10 before | Expand all | Expand 10 after
7472 // No break point. 7458 // No break point.
7473 if (break_point_objects()->IsUndefined()) return 0; 7459 if (break_point_objects()->IsUndefined()) return 0;
7474 // Single beak point. 7460 // Single beak point.
7475 if (!break_point_objects()->IsFixedArray()) return 1; 7461 if (!break_point_objects()->IsFixedArray()) return 1;
7476 // Multiple break points. 7462 // Multiple break points.
7477 return FixedArray::cast(break_point_objects())->length(); 7463 return FixedArray::cast(break_point_objects())->length();
7478 } 7464 }
7479 #endif 7465 #endif
7480 7466
7481 } } // namespace v8::internal 7467 } } // namespace v8::internal
OLDNEW
« src/debug.cc ('K') | « src/heap.cc ('k') | src/objects-debug.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698