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

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

Issue 1314433004: Vector ICs: Stop iterating the heap to clear keyed store ics. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Code review. Created 5 years, 3 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/objects.cc ('k') | src/type-feedback-vector.h » ('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 #include "src/objects.h" 5 #include "src/objects.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/interpreter/bytecodes.h" 9 #include "src/interpreter/bytecodes.h"
10 #include "src/objects-inl.h" 10 #include "src/objects-inl.h"
(...skipping 554 matching lines...) Expand 10 before | Expand all | Expand 10 after
565 FeedbackVectorICSlot slot(i); 565 FeedbackVectorICSlot slot(i);
566 Code::Kind kind = GetKind(slot); 566 Code::Kind kind = GetKind(slot);
567 os << "\n ICSlot " << i; 567 os << "\n ICSlot " << i;
568 if (kind == Code::LOAD_IC) { 568 if (kind == Code::LOAD_IC) {
569 LoadICNexus nexus(this, slot); 569 LoadICNexus nexus(this, slot);
570 os << " LOAD_IC " << Code::ICState2String(nexus.StateFromFeedback()); 570 os << " LOAD_IC " << Code::ICState2String(nexus.StateFromFeedback());
571 } else if (kind == Code::KEYED_LOAD_IC) { 571 } else if (kind == Code::KEYED_LOAD_IC) {
572 KeyedLoadICNexus nexus(this, slot); 572 KeyedLoadICNexus nexus(this, slot);
573 os << " KEYED_LOAD_IC " 573 os << " KEYED_LOAD_IC "
574 << Code::ICState2String(nexus.StateFromFeedback()); 574 << Code::ICState2String(nexus.StateFromFeedback());
575 } else { 575 } else if (kind == Code::CALL_IC) {
576 DCHECK(kind == Code::CALL_IC);
577 CallICNexus nexus(this, slot); 576 CallICNexus nexus(this, slot);
578 os << " CALL_IC " << Code::ICState2String(nexus.StateFromFeedback()); 577 os << " CALL_IC " << Code::ICState2String(nexus.StateFromFeedback());
578 } else if (kind == Code::STORE_IC) {
579 StoreICNexus nexus(this, slot);
580 os << " STORE_IC " << Code::ICState2String(nexus.StateFromFeedback());
581 } else {
582 DCHECK(kind == Code::KEYED_STORE_IC);
583 KeyedStoreICNexus nexus(this, slot);
584 os << " KEYED_STORE_IC "
585 << Code::ICState2String(nexus.StateFromFeedback());
579 } 586 }
580 587
581 os << "\n [" << GetIndex(slot) << "]: " << Brief(Get(slot)); 588 os << "\n [" << GetIndex(slot) << "]: " << Brief(Get(slot));
582 os << "\n [" << (GetIndex(slot) + 1) 589 os << "\n [" << (GetIndex(slot) + 1)
583 << "]: " << Brief(get(GetIndex(slot) + 1)); 590 << "]: " << Brief(get(GetIndex(slot) + 1));
584 } 591 }
585 } 592 }
586 os << "\n"; 593 os << "\n";
587 } 594 }
588 595
(...skipping 676 matching lines...) Expand 10 before | Expand all | Expand 10 after
1265 } 1272 }
1266 } 1273 }
1267 1274
1268 1275
1269 void JSObject::PrintTransitions(std::ostream& os) { // NOLINT 1276 void JSObject::PrintTransitions(std::ostream& os) { // NOLINT
1270 TransitionArray::PrintTransitions(os, map()->raw_transitions()); 1277 TransitionArray::PrintTransitions(os, map()->raw_transitions());
1271 } 1278 }
1272 #endif // defined(DEBUG) || defined(OBJECT_PRINT) 1279 #endif // defined(DEBUG) || defined(OBJECT_PRINT)
1273 } // namespace internal 1280 } // namespace internal
1274 } // namespace v8 1281 } // namespace v8
OLDNEW
« no previous file with comments | « src/objects.cc ('k') | src/type-feedback-vector.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698