| Index: src/code-factory.cc
|
| diff --git a/src/code-factory.cc b/src/code-factory.cc
|
| index 79cc649d560e4d46140c50a747f1159ac67d15f5..ce588e7bc8ce3f2340e13ce51668915534a4a650 100644
|
| --- a/src/code-factory.cc
|
| +++ b/src/code-factory.cc
|
| @@ -101,6 +101,10 @@ Callable CodeFactory::StoreICInOptimizedCode(Isolate* isolate,
|
| // static
|
| Callable CodeFactory::KeyedStoreIC(Isolate* isolate,
|
| LanguageMode language_mode) {
|
| + if (FLAG_tf_store_ic_stub) {
|
| + KeyedStoreICTrampolineTFStub stub(isolate, StoreICState(language_mode));
|
| + return make_callable(stub);
|
| + }
|
| KeyedStoreICTrampolineStub stub(isolate, StoreICState(language_mode));
|
| return make_callable(stub);
|
| }
|
| @@ -108,11 +112,24 @@ Callable CodeFactory::KeyedStoreIC(Isolate* isolate,
|
| // static
|
| Callable CodeFactory::KeyedStoreICInOptimizedCode(Isolate* isolate,
|
| LanguageMode language_mode) {
|
| + if (FLAG_tf_store_ic_stub) {
|
| + KeyedStoreICTFStub stub(isolate, StoreICState(language_mode));
|
| + return make_callable(stub);
|
| + }
|
| KeyedStoreICStub stub(isolate, StoreICState(language_mode));
|
| return make_callable(stub);
|
| }
|
|
|
| // static
|
| +Callable CodeFactory::KeyedStoreIC_Megamorphic(Isolate* isolate,
|
| + LanguageMode language_mode) {
|
| + return Callable(language_mode == STRICT
|
| + ? isolate->builtins()->KeyedStoreIC_Megamorphic_Strict()
|
| + : isolate->builtins()->KeyedStoreIC_Megamorphic(),
|
| + StoreWithVectorDescriptor(isolate));
|
| +}
|
| +
|
| +// static
|
| Callable CodeFactory::CompareIC(Isolate* isolate, Token::Value op) {
|
| CompareICStub stub(isolate, op);
|
| return make_callable(stub);
|
|
|