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

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

Issue 2095893002: Use source position table for unoptimized code. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 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
OLDNEW
1 // Copyright 2015 the V8 project authors. All rights reserved. 1 // Copyright 2015 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_BODY_DESCRIPTORS_INL_H_ 5 #ifndef V8_OBJECTS_BODY_DESCRIPTORS_INL_H_
6 #define V8_OBJECTS_BODY_DESCRIPTORS_INL_H_ 6 #define V8_OBJECTS_BODY_DESCRIPTORS_INL_H_
7 7
8 #include "src/objects-body-descriptors.h" 8 #include "src/objects-body-descriptors.h"
9 9
10 namespace v8 { 10 namespace v8 {
(...skipping 337 matching lines...) Expand 10 before | Expand all | Expand 10 after
348 static inline int SizeOf(Map* map, HeapObject* object) { return kSize; } 348 static inline int SizeOf(Map* map, HeapObject* object) { return kSize; }
349 }; 349 };
350 350
351 351
352 class Code::BodyDescriptor final : public BodyDescriptorBase { 352 class Code::BodyDescriptor final : public BodyDescriptorBase {
353 public: 353 public:
354 STATIC_ASSERT(kRelocationInfoOffset + kPointerSize == kHandlerTableOffset); 354 STATIC_ASSERT(kRelocationInfoOffset + kPointerSize == kHandlerTableOffset);
355 STATIC_ASSERT(kHandlerTableOffset + kPointerSize == 355 STATIC_ASSERT(kHandlerTableOffset + kPointerSize ==
356 kDeoptimizationDataOffset); 356 kDeoptimizationDataOffset);
357 STATIC_ASSERT(kDeoptimizationDataOffset + kPointerSize == 357 STATIC_ASSERT(kDeoptimizationDataOffset + kPointerSize ==
358 kSourcePositionTableOffset);
359 STATIC_ASSERT(kSourcePositionTableOffset + kPointerSize ==
358 kTypeFeedbackInfoOffset); 360 kTypeFeedbackInfoOffset);
359 STATIC_ASSERT(kTypeFeedbackInfoOffset + kPointerSize == kNextCodeLinkOffset); 361 STATIC_ASSERT(kTypeFeedbackInfoOffset + kPointerSize == kNextCodeLinkOffset);
360 362
361 static bool IsValidSlot(HeapObject* obj, int offset) { 363 static bool IsValidSlot(HeapObject* obj, int offset) {
362 // Slots in code can't be invalid because we never trim code objects. 364 // Slots in code can't be invalid because we never trim code objects.
363 return true; 365 return true;
364 } 366 }
365 367
366 template <typename ObjectVisitor> 368 template <typename ObjectVisitor>
367 static inline void IterateBody(HeapObject* obj, ObjectVisitor* v) { 369 static inline void IterateBody(HeapObject* obj, ObjectVisitor* v) {
(...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after
564 566
565 template <typename ObjectVisitor> 567 template <typename ObjectVisitor>
566 void HeapObject::IterateBodyFast(InstanceType type, int object_size, 568 void HeapObject::IterateBodyFast(InstanceType type, int object_size,
567 ObjectVisitor* v) { 569 ObjectVisitor* v) {
568 BodyDescriptorApply<CallIterateBody, void>(type, this, object_size, v); 570 BodyDescriptorApply<CallIterateBody, void>(type, this, object_size, v);
569 } 571 }
570 } // namespace internal 572 } // namespace internal
571 } // namespace v8 573 } // namespace v8
572 574
573 #endif // V8_OBJECTS_BODY_DESCRIPTORS_INL_H_ 575 #endif // V8_OBJECTS_BODY_DESCRIPTORS_INL_H_
OLDNEW
« no previous file with comments | « src/objects.cc ('k') | src/objects-inl.h » ('j') | src/objects-inl.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698