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

Side by Side Diff: src/objects-debug.cc

Issue 409613002: Store both major and minor key on code stubs. (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
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 #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
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() ||
643 raw_type_feedback_info()->IsSmi() == IsCodeStubOrIC());
642 } 644 }
643 645
644 646
645 void Code::VerifyEmbeddedObjectsDependency() { 647 void Code::VerifyEmbeddedObjectsDependency() {
646 if (!CanContainWeakObjects()) return; 648 if (!CanContainWeakObjects()) return;
647 DisallowHeapAllocation no_gc; 649 DisallowHeapAllocation no_gc;
648 Isolate* isolate = GetIsolate(); 650 Isolate* isolate = GetIsolate();
649 HandleScope scope(isolate); 651 HandleScope scope(isolate);
650 int mode_mask = RelocInfo::ModeMask(RelocInfo::EMBEDDED_OBJECT); 652 int mode_mask = RelocInfo::ModeMask(RelocInfo::EMBEDDED_OBJECT);
651 for (RelocIterator it(this, mode_mask); !it.done(); it.next()) { 653 for (RelocIterator it(this, mode_mask); !it.done(); it.next()) {
(...skipping 538 matching lines...) Expand 10 before | Expand all | Expand 10 after
1190 for (int i = 0; i < number_of_transitions(); ++i) { 1192 for (int i = 0; i < number_of_transitions(); ++i) {
1191 if (!CheckOneBackPointer(current_map, GetTarget(i))) return false; 1193 if (!CheckOneBackPointer(current_map, GetTarget(i))) return false;
1192 } 1194 }
1193 return true; 1195 return true;
1194 } 1196 }
1195 1197
1196 1198
1197 #endif // DEBUG 1199 #endif // DEBUG
1198 1200
1199 } } // namespace v8::internal 1201 } } // namespace v8::internal
OLDNEW
« src/objects.h ('K') | « src/objects.cc ('k') | src/objects-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698