| OLD | NEW |
| 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 #include "src/v8.h" | 5 #include "src/v8.h" |
| 6 | 6 |
| 7 #include "src/disasm.h" | 7 #include "src/disasm.h" |
| 8 #include "src/disassembler.h" | 8 #include "src/disassembler.h" |
| 9 #include "src/heap/objects-visiting.h" | 9 #include "src/heap/objects-visiting.h" |
| 10 #include "src/jsregexp.h" | 10 #include "src/jsregexp.h" |
| 11 #include "src/macro-assembler.h" | 11 #include "src/macro-assembler.h" |
| 12 #include "src/objects-inl.h" |
| 12 #include "src/ostreams.h" | 13 #include "src/ostreams.h" |
| 13 | 14 |
| 14 namespace v8 { | 15 namespace v8 { |
| 15 namespace internal { | 16 namespace internal { |
| 16 | 17 |
| 17 #ifdef VERIFY_HEAP | 18 #ifdef VERIFY_HEAP |
| 18 | 19 |
| 19 void Object::ObjectVerify() { | 20 void Object::ObjectVerify() { |
| 20 if (IsSmi()) { | 21 if (IsSmi()) { |
| 21 Smi::cast(this)->SmiVerify(); | 22 Smi::cast(this)->SmiVerify(); |
| (...skipping 618 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 640 | 641 |
| 641 void PropertyCell::PropertyCellVerify() { | 642 void PropertyCell::PropertyCellVerify() { |
| 642 CHECK(IsPropertyCell()); | 643 CHECK(IsPropertyCell()); |
| 643 VerifyObjectField(kValueOffset); | 644 VerifyObjectField(kValueOffset); |
| 644 VerifyObjectField(kTypeOffset); | 645 VerifyObjectField(kTypeOffset); |
| 645 } | 646 } |
| 646 | 647 |
| 647 | 648 |
| 648 void WeakCell::WeakCellVerify() { | 649 void WeakCell::WeakCellVerify() { |
| 649 CHECK(IsWeakCell()); | 650 CHECK(IsWeakCell()); |
| 650 VerifyObjectField(kValueOffset); | 651 Object* value = ValueNoReadBarrier(); |
| 652 VerifyPointer(value); |
| 651 VerifyObjectField(kNextOffset); | 653 VerifyObjectField(kNextOffset); |
| 652 } | 654 } |
| 653 | 655 |
| 654 | 656 |
| 655 void Code::CodeVerify() { | 657 void Code::CodeVerify() { |
| 656 CHECK(IsAligned(reinterpret_cast<intptr_t>(instruction_start()), | 658 CHECK(IsAligned(reinterpret_cast<intptr_t>(instruction_start()), |
| 657 kCodeAlignment)); | 659 kCodeAlignment)); |
| 658 relocation_info()->ObjectVerify(); | 660 relocation_info()->ObjectVerify(); |
| 659 Address last_gc_pc = NULL; | 661 Address last_gc_pc = NULL; |
| 660 Isolate* isolate = GetIsolate(); | 662 Isolate* isolate = GetIsolate(); |
| (...skipping 589 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1250 while (map != heap->roots_array_start()[i++]) { | 1252 while (map != heap->roots_array_start()[i++]) { |
| 1251 CHECK_LT(i, Heap::kStrongRootListLength); | 1253 CHECK_LT(i, Heap::kStrongRootListLength); |
| 1252 } | 1254 } |
| 1253 } | 1255 } |
| 1254 } | 1256 } |
| 1255 | 1257 |
| 1256 | 1258 |
| 1257 #endif // DEBUG | 1259 #endif // DEBUG |
| 1258 | 1260 |
| 1259 } } // namespace v8::internal | 1261 } } // namespace v8::internal |
| OLD | NEW |