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

Side by Side Diff: src/heap/objects-visiting.h

Issue 1230753004: [Interpreter] Add BytecodeArray class and add to SharedFunctionInfo. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Fix pedantic build (take2). Created 5 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
« no previous file with comments | « src/heap/heap.cc ('k') | src/heap/objects-visiting.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 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_VISITING_H_ 5 #ifndef V8_OBJECTS_VISITING_H_
6 #define V8_OBJECTS_VISITING_H_ 6 #define V8_OBJECTS_VISITING_H_
7 7
8 #include "src/allocation.h" 8 #include "src/allocation.h"
9 #include "src/layout-descriptor.h" 9 #include "src/layout-descriptor.h"
10 10
(...skipping 11 matching lines...) Expand all
22 22
23 23
24 // Base class for all static visitors. 24 // Base class for all static visitors.
25 class StaticVisitorBase : public AllStatic { 25 class StaticVisitorBase : public AllStatic {
26 public: 26 public:
27 #define VISITOR_ID_LIST(V) \ 27 #define VISITOR_ID_LIST(V) \
28 V(SeqOneByteString) \ 28 V(SeqOneByteString) \
29 V(SeqTwoByteString) \ 29 V(SeqTwoByteString) \
30 V(ShortcutCandidate) \ 30 V(ShortcutCandidate) \
31 V(ByteArray) \ 31 V(ByteArray) \
32 V(BytecodeArray) \
32 V(FreeSpace) \ 33 V(FreeSpace) \
33 V(FixedArray) \ 34 V(FixedArray) \
34 V(FixedDoubleArray) \ 35 V(FixedDoubleArray) \
35 V(FixedTypedArray) \ 36 V(FixedTypedArray) \
36 V(FixedFloat64Array) \ 37 V(FixedFloat64Array) \
37 V(NativeContext) \ 38 V(NativeContext) \
38 V(AllocationSite) \ 39 V(AllocationSite) \
39 V(DataObject2) \ 40 V(DataObject2) \
40 V(DataObject3) \ 41 V(DataObject3) \
41 V(DataObject4) \ 42 V(DataObject4) \
(...skipping 271 matching lines...) Expand 10 before | Expand all | Expand 10 after
313 heap, HeapObject::RawField(object, 314 heap, HeapObject::RawField(object,
314 JSFunction::kCodeEntryOffset + kPointerSize), 315 JSFunction::kCodeEntryOffset + kPointerSize),
315 HeapObject::RawField(object, JSFunction::kNonWeakFieldsEndOffset)); 316 HeapObject::RawField(object, JSFunction::kNonWeakFieldsEndOffset));
316 return JSFunction::kSize; 317 return JSFunction::kSize;
317 } 318 }
318 319
319 INLINE(static int VisitByteArray(Map* map, HeapObject* object)) { 320 INLINE(static int VisitByteArray(Map* map, HeapObject* object)) {
320 return reinterpret_cast<ByteArray*>(object)->ByteArraySize(); 321 return reinterpret_cast<ByteArray*>(object)->ByteArraySize();
321 } 322 }
322 323
324 INLINE(static int VisitBytecodeArray(Map* map, HeapObject* object)) {
325 return reinterpret_cast<BytecodeArray*>(object)->BytecodeArraySize();
326 }
327
323 INLINE(static int VisitFixedDoubleArray(Map* map, HeapObject* object)) { 328 INLINE(static int VisitFixedDoubleArray(Map* map, HeapObject* object)) {
324 int length = reinterpret_cast<FixedDoubleArray*>(object)->length(); 329 int length = reinterpret_cast<FixedDoubleArray*>(object)->length();
325 return FixedDoubleArray::SizeFor(length); 330 return FixedDoubleArray::SizeFor(length);
326 } 331 }
327 332
328 INLINE(static int VisitFixedTypedArray(Map* map, HeapObject* object)) { 333 INLINE(static int VisitFixedTypedArray(Map* map, HeapObject* object)) {
329 return reinterpret_cast<FixedTypedArrayBase*>(object)->size(); 334 return reinterpret_cast<FixedTypedArrayBase*>(object)->size();
330 } 335 }
331 336
332 INLINE(static int VisitJSObject(Map* map, HeapObject* object)) { 337 INLINE(static int VisitJSObject(Map* map, HeapObject* object)) {
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after
489 // the next element. Given the head of the list, this function removes dead 494 // the next element. Given the head of the list, this function removes dead
490 // elements from the list and if requested records slots for next-element 495 // elements from the list and if requested records slots for next-element
491 // pointers. The template parameter T is a WeakListVisitor that defines how to 496 // pointers. The template parameter T is a WeakListVisitor that defines how to
492 // access the next-element pointers. 497 // access the next-element pointers.
493 template <class T> 498 template <class T>
494 Object* VisitWeakList(Heap* heap, Object* list, WeakObjectRetainer* retainer); 499 Object* VisitWeakList(Heap* heap, Object* list, WeakObjectRetainer* retainer);
495 } 500 }
496 } // namespace v8::internal 501 } // namespace v8::internal
497 502
498 #endif // V8_OBJECTS_VISITING_H_ 503 #endif // V8_OBJECTS_VISITING_H_
OLDNEW
« no previous file with comments | « src/heap/heap.cc ('k') | src/heap/objects-visiting.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698