OLD | NEW |
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/code-factory.h" | 5 #include "src/code-factory.h" |
6 | 6 |
7 #include "src/bootstrapper.h" | 7 #include "src/bootstrapper.h" |
8 #include "src/ic/ic.h" | 8 #include "src/ic/ic.h" |
9 | 9 |
10 namespace v8 { | 10 namespace v8 { |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
84 Callable CodeFactory::KeyedLoadIC_Megamorphic(Isolate* isolate) { | 84 Callable CodeFactory::KeyedLoadIC_Megamorphic(Isolate* isolate) { |
85 if (FLAG_tf_load_ic_stub) { | 85 if (FLAG_tf_load_ic_stub) { |
86 return Callable(isolate->builtins()->KeyedLoadIC_Megamorphic_TF(), | 86 return Callable(isolate->builtins()->KeyedLoadIC_Megamorphic_TF(), |
87 LoadWithVectorDescriptor(isolate)); | 87 LoadWithVectorDescriptor(isolate)); |
88 } | 88 } |
89 return Callable(isolate->builtins()->KeyedLoadIC_Megamorphic(), | 89 return Callable(isolate->builtins()->KeyedLoadIC_Megamorphic(), |
90 LoadWithVectorDescriptor(isolate)); | 90 LoadWithVectorDescriptor(isolate)); |
91 } | 91 } |
92 | 92 |
93 // static | 93 // static |
94 Callable CodeFactory::CallIC(Isolate* isolate, int argc, | 94 Callable CodeFactory::CallIC(Isolate* isolate, ConvertReceiverMode mode, |
95 ConvertReceiverMode mode, | |
96 TailCallMode tail_call_mode) { | 95 TailCallMode tail_call_mode) { |
97 CallICTrampolineStub stub(isolate, CallICState(argc, mode, tail_call_mode)); | 96 CallICTrampolineStub stub(isolate, CallICState(mode, tail_call_mode)); |
98 return make_callable(stub); | 97 return make_callable(stub); |
99 } | 98 } |
100 | 99 |
101 // static | 100 // static |
102 Callable CodeFactory::CallICInOptimizedCode(Isolate* isolate, int argc, | 101 Callable CodeFactory::CallICInOptimizedCode(Isolate* isolate, |
103 ConvertReceiverMode mode, | 102 ConvertReceiverMode mode, |
104 TailCallMode tail_call_mode) { | 103 TailCallMode tail_call_mode) { |
105 CallICStub stub(isolate, CallICState(argc, mode, tail_call_mode)); | 104 CallICStub stub(isolate, CallICState(mode, tail_call_mode)); |
106 return make_callable(stub); | 105 return make_callable(stub); |
107 } | 106 } |
108 | 107 |
109 // static | 108 // static |
110 Callable CodeFactory::StoreIC(Isolate* isolate, LanguageMode language_mode) { | 109 Callable CodeFactory::StoreIC(Isolate* isolate, LanguageMode language_mode) { |
111 if (FLAG_tf_store_ic_stub) { | 110 if (FLAG_tf_store_ic_stub) { |
112 StoreICTrampolineTFStub stub(isolate, StoreICState(language_mode)); | 111 StoreICTrampolineTFStub stub(isolate, StoreICState(language_mode)); |
113 return make_callable(stub); | 112 return make_callable(stub); |
114 } | 113 } |
115 StoreICTrampolineStub stub(isolate, StoreICState(language_mode)); | 114 StoreICTrampolineStub stub(isolate, StoreICState(language_mode)); |
(...skipping 390 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
506 } | 505 } |
507 | 506 |
508 // static | 507 // static |
509 Callable CodeFactory::InterpreterOnStackReplacement(Isolate* isolate) { | 508 Callable CodeFactory::InterpreterOnStackReplacement(Isolate* isolate) { |
510 return Callable(isolate->builtins()->InterpreterOnStackReplacement(), | 509 return Callable(isolate->builtins()->InterpreterOnStackReplacement(), |
511 ContextOnlyDescriptor(isolate)); | 510 ContextOnlyDescriptor(isolate)); |
512 } | 511 } |
513 | 512 |
514 } // namespace internal | 513 } // namespace internal |
515 } // namespace v8 | 514 } // namespace v8 |
OLD | NEW |