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

Side by Side Diff: src/objects.h

Issue 380153002: Revert "Support ES6 Map and Set in heap profiler" (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 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/heap-snapshot-generator.cc ('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 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_OBJECTS_H_ 5 #ifndef V8_OBJECTS_H_
6 #define V8_OBJECTS_H_ 6 #define V8_OBJECTS_H_
7 7
8 #include "src/allocation.h" 8 #include "src/allocation.h"
9 #include "src/assert-scope.h" 9 #include "src/assert-scope.h"
10 #include "src/builtins.h" 10 #include "src/builtins.h"
(...skipping 26 matching lines...) Expand all
37 // - Object 37 // - Object
38 // - Smi (immediate small integer) 38 // - Smi (immediate small integer)
39 // - HeapObject (superclass for everything allocated in the heap) 39 // - HeapObject (superclass for everything allocated in the heap)
40 // - JSReceiver (suitable for property access) 40 // - JSReceiver (suitable for property access)
41 // - JSObject 41 // - JSObject
42 // - JSArray 42 // - JSArray
43 // - JSArrayBuffer 43 // - JSArrayBuffer
44 // - JSArrayBufferView 44 // - JSArrayBufferView
45 // - JSTypedArray 45 // - JSTypedArray
46 // - JSDataView 46 // - JSDataView
47 // - JSCollection 47 // - JSSet
48 // - JSSet 48 // - JSMap
49 // - JSMap
50 // - JSSetIterator 49 // - JSSetIterator
51 // - JSMapIterator 50 // - JSMapIterator
52 // - JSWeakCollection 51 // - JSWeakCollection
53 // - JSWeakMap 52 // - JSWeakMap
54 // - JSWeakSet 53 // - JSWeakSet
55 // - JSRegExp 54 // - JSRegExp
56 // - JSFunction 55 // - JSFunction
57 // - JSGeneratorObject 56 // - JSGeneratorObject
58 // - JSModule 57 // - JSModule
59 // - GlobalObject 58 // - GlobalObject
(...skipping 10012 matching lines...) Expand 10 before | Expand all | Expand 10 after
10072 10071
10073 typedef FixedBodyDescriptor<kHandlerOffset, 10072 typedef FixedBodyDescriptor<kHandlerOffset,
10074 kConstructTrapOffset + kPointerSize, 10073 kConstructTrapOffset + kPointerSize,
10075 kSize> BodyDescriptor; 10074 kSize> BodyDescriptor;
10076 10075
10077 private: 10076 private:
10078 DISALLOW_IMPLICIT_CONSTRUCTORS(JSFunctionProxy); 10077 DISALLOW_IMPLICIT_CONSTRUCTORS(JSFunctionProxy);
10079 }; 10078 };
10080 10079
10081 10080
10082 class JSCollection : public JSObject {
10083 public:
10084 // [table]: the backing hash table
10085 DECL_ACCESSORS(table, Object)
10086
10087 static const int kTableOffset = JSObject::kHeaderSize;
10088 static const int kSize = kTableOffset + kPointerSize;
10089
10090 private:
10091 DISALLOW_IMPLICIT_CONSTRUCTORS(JSCollection);
10092 };
10093
10094
10095 // The JSSet describes EcmaScript Harmony sets 10081 // The JSSet describes EcmaScript Harmony sets
10096 class JSSet : public JSCollection { 10082 class JSSet: public JSObject {
10097 public: 10083 public:
10084 // [set]: the backing hash set containing keys.
10085 DECL_ACCESSORS(table, Object)
10086
10098 DECLARE_CAST(JSSet) 10087 DECLARE_CAST(JSSet)
10099 10088
10100 // Dispatched behavior. 10089 // Dispatched behavior.
10101 DECLARE_PRINTER(JSSet) 10090 DECLARE_PRINTER(JSSet)
10102 DECLARE_VERIFIER(JSSet) 10091 DECLARE_VERIFIER(JSSet)
10103 10092
10093 static const int kTableOffset = JSObject::kHeaderSize;
10094 static const int kSize = kTableOffset + kPointerSize;
10095
10104 private: 10096 private:
10105 DISALLOW_IMPLICIT_CONSTRUCTORS(JSSet); 10097 DISALLOW_IMPLICIT_CONSTRUCTORS(JSSet);
10106 }; 10098 };
10107 10099
10108 10100
10109 // The JSMap describes EcmaScript Harmony maps 10101 // The JSMap describes EcmaScript Harmony maps
10110 class JSMap : public JSCollection { 10102 class JSMap: public JSObject {
10111 public: 10103 public:
10104 // [table]: the backing hash table mapping keys to values.
10105 DECL_ACCESSORS(table, Object)
10106
10112 DECLARE_CAST(JSMap) 10107 DECLARE_CAST(JSMap)
10113 10108
10114 // Dispatched behavior. 10109 // Dispatched behavior.
10115 DECLARE_PRINTER(JSMap) 10110 DECLARE_PRINTER(JSMap)
10116 DECLARE_VERIFIER(JSMap) 10111 DECLARE_VERIFIER(JSMap)
10117 10112
10113 static const int kTableOffset = JSObject::kHeaderSize;
10114 static const int kSize = kTableOffset + kPointerSize;
10115
10118 private: 10116 private:
10119 DISALLOW_IMPLICIT_CONSTRUCTORS(JSMap); 10117 DISALLOW_IMPLICIT_CONSTRUCTORS(JSMap);
10120 }; 10118 };
10121 10119
10122 10120
10123 // OrderedHashTableIterator is an iterator that iterates over the keys and 10121 // OrderedHashTableIterator is an iterator that iterates over the keys and
10124 // values of an OrderedHashTable. 10122 // values of an OrderedHashTable.
10125 // 10123 //
10126 // The iterator has a reference to the underlying OrderedHashTable data, 10124 // The iterator has a reference to the underlying OrderedHashTable data,
10127 // [table], as well as the current [index] the iterator is at. 10125 // [table], as well as the current [index] the iterator is at.
(...skipping 1103 matching lines...) Expand 10 before | Expand all | Expand 10 after
11231 } else { 11229 } else {
11232 value &= ~(1 << bit_position); 11230 value &= ~(1 << bit_position);
11233 } 11231 }
11234 return value; 11232 return value;
11235 } 11233 }
11236 }; 11234 };
11237 11235
11238 } } // namespace v8::internal 11236 } } // namespace v8::internal
11239 11237
11240 #endif // V8_OBJECTS_H_ 11238 #endif // V8_OBJECTS_H_
OLDNEW
« no previous file with comments | « src/heap-snapshot-generator.cc ('k') | src/objects-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698