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

Side by Side Diff: test/cctest/test-feedback-vector.cc

Issue 1268783004: VectorICs: refactoring to eliminate "for queries only" vector ic mode. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Fix compilation error. Created 5 years, 4 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/x64/builtins-x64.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 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 #include "test/cctest/cctest.h" 6 #include "test/cctest/cctest.h"
7 7
8 #include "src/api.h" 8 #include "src/api.h"
9 #include "src/debug/debug.h" 9 #include "src/debug/debug.h"
10 #include "src/execution.h" 10 #include "src/execution.h"
(...skipping 22 matching lines...) Expand all
33 CHECK_EQ(0, vector->ic_with_type_info_count()); 33 CHECK_EQ(0, vector->ic_with_type_info_count());
34 CHECK_EQ(0, vector->ic_generic_count()); 34 CHECK_EQ(0, vector->ic_generic_count());
35 CHECK_EQ(0, vector->Slots()); 35 CHECK_EQ(0, vector->Slots());
36 CHECK_EQ(0, vector->ICSlots()); 36 CHECK_EQ(0, vector->ICSlots());
37 37
38 FeedbackVectorSpec one_slot(1); 38 FeedbackVectorSpec one_slot(1);
39 vector = factory->NewTypeFeedbackVector(&one_slot); 39 vector = factory->NewTypeFeedbackVector(&one_slot);
40 CHECK_EQ(1, vector->Slots()); 40 CHECK_EQ(1, vector->Slots());
41 CHECK_EQ(0, vector->ICSlots()); 41 CHECK_EQ(0, vector->ICSlots());
42 42
43 FeedbackVectorSpec one_icslot(0, Code::CALL_IC); 43 ZoneFeedbackVectorSpec one_icslot(zone, 0, 1);
44 one_icslot.SetKind(0, Code::CALL_IC);
44 vector = factory->NewTypeFeedbackVector(&one_icslot); 45 vector = factory->NewTypeFeedbackVector(&one_icslot);
45 CHECK_EQ(0, vector->Slots()); 46 CHECK_EQ(0, vector->Slots());
46 CHECK_EQ(1, vector->ICSlots()); 47 CHECK_EQ(1, vector->ICSlots());
47 48
48 ZoneFeedbackVectorSpec spec(zone, 3, 5); 49 ZoneFeedbackVectorSpec spec(zone, 3, 5);
49 for (int i = 0; i < 5; i++) spec.SetKind(i, Code::CALL_IC); 50 for (int i = 0; i < 5; i++) spec.SetKind(i, Code::CALL_IC);
50 vector = factory->NewTypeFeedbackVector(&spec); 51 vector = factory->NewTypeFeedbackVector(&spec);
51 CHECK_EQ(3, vector->Slots()); 52 CHECK_EQ(3, vector->Slots());
52 CHECK_EQ(5, vector->ICSlots()); 53 CHECK_EQ(5, vector->ICSlots());
53 54
(...skipping 422 matching lines...) Expand 10 before | Expand all | Expand 10 after
476 f = GetFunction("testcompound"); 477 f = GetFunction("testcompound");
477 478
478 // There should be 3 LOAD_ICs, for load of a and load of x.old and x.young. 479 // There should be 3 LOAD_ICs, for load of a and load of x.old and x.young.
479 feedback_vector = handle(f->shared()->feedback_vector(), isolate); 480 feedback_vector = handle(f->shared()->feedback_vector(), isolate);
480 CHECK_EQ(3, feedback_vector->ICSlots()); 481 CHECK_EQ(3, feedback_vector->ICSlots());
481 CHECK(feedback_vector->GetKind(FeedbackVectorICSlot(0)) == Code::LOAD_IC); 482 CHECK(feedback_vector->GetKind(FeedbackVectorICSlot(0)) == Code::LOAD_IC);
482 CHECK(feedback_vector->GetKind(FeedbackVectorICSlot(1)) == Code::LOAD_IC); 483 CHECK(feedback_vector->GetKind(FeedbackVectorICSlot(1)) == Code::LOAD_IC);
483 CHECK(feedback_vector->GetKind(FeedbackVectorICSlot(2)) == Code::LOAD_IC); 484 CHECK(feedback_vector->GetKind(FeedbackVectorICSlot(2)) == Code::LOAD_IC);
484 } 485 }
485 } 486 }
OLDNEW
« no previous file with comments | « src/x64/builtins-x64.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698