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/jsregexp.h" | 9 #include "src/jsregexp.h" |
10 #include "src/macro-assembler.h" | 10 #include "src/macro-assembler.h" |
(...skipping 621 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
632 Address last_gc_pc = NULL; | 632 Address last_gc_pc = NULL; |
633 Isolate* isolate = GetIsolate(); | 633 Isolate* isolate = GetIsolate(); |
634 for (RelocIterator it(this); !it.done(); it.next()) { | 634 for (RelocIterator it(this); !it.done(); it.next()) { |
635 it.rinfo()->Verify(isolate); | 635 it.rinfo()->Verify(isolate); |
636 // Ensure that GC will not iterate twice over the same pointer. | 636 // Ensure that GC will not iterate twice over the same pointer. |
637 if (RelocInfo::IsGCRelocMode(it.rinfo()->rmode())) { | 637 if (RelocInfo::IsGCRelocMode(it.rinfo()->rmode())) { |
638 CHECK(it.rinfo()->pc() != last_gc_pc); | 638 CHECK(it.rinfo()->pc() != last_gc_pc); |
639 last_gc_pc = it.rinfo()->pc(); | 639 last_gc_pc = it.rinfo()->pc(); |
640 } | 640 } |
641 } | 641 } |
642 CHECK(raw_type_feedback_info()->IsUndefined() || | 642 CHECK(raw_type_feedback_info() == Smi::FromInt(0) || |
643 raw_type_feedback_info()->IsSmi() == IsCodeStubOrIC()); | 643 raw_type_feedback_info()->IsSmi() == IsCodeStubOrIC()); |
644 } | 644 } |
645 | 645 |
646 | 646 |
647 void Code::VerifyEmbeddedObjectsDependency() { | 647 void Code::VerifyEmbeddedObjectsDependency() { |
648 if (!CanContainWeakObjects()) return; | 648 if (!CanContainWeakObjects()) return; |
649 DisallowHeapAllocation no_gc; | 649 DisallowHeapAllocation no_gc; |
650 Isolate* isolate = GetIsolate(); | 650 Isolate* isolate = GetIsolate(); |
651 HandleScope scope(isolate); | 651 HandleScope scope(isolate); |
652 int mode_mask = RelocInfo::ModeMask(RelocInfo::EMBEDDED_OBJECT); | 652 int mode_mask = RelocInfo::ModeMask(RelocInfo::EMBEDDED_OBJECT); |
(...skipping 539 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1192 for (int i = 0; i < number_of_transitions(); ++i) { | 1192 for (int i = 0; i < number_of_transitions(); ++i) { |
1193 if (!CheckOneBackPointer(current_map, GetTarget(i))) return false; | 1193 if (!CheckOneBackPointer(current_map, GetTarget(i))) return false; |
1194 } | 1194 } |
1195 return true; | 1195 return true; |
1196 } | 1196 } |
1197 | 1197 |
1198 | 1198 |
1199 #endif // DEBUG | 1199 #endif // DEBUG |
1200 | 1200 |
1201 } } // namespace v8::internal | 1201 } } // namespace v8::internal |
OLD | NEW |