| Index: runtime/vm/jit_optimizer.cc
|
| diff --git a/runtime/vm/jit_optimizer.cc b/runtime/vm/jit_optimizer.cc
|
| index fb6ee1d43be1d01be334cbb573a14b2f57af868e..9063e4f618997288f06b2763c9ab7e6874c659e6 100644
|
| --- a/runtime/vm/jit_optimizer.cc
|
| +++ b/runtime/vm/jit_optimizer.cc
|
| @@ -137,9 +137,11 @@ bool JitOptimizer::TryCreateICData(InstanceCallInstr* call) {
|
| // finalized yet.
|
| return false;
|
| }
|
| - const Array& args_desc_array =
|
| - Array::Handle(Z, ArgumentsDescriptor::New(call->ArgumentCount(),
|
| - call->argument_names()));
|
| + const Array& args_desc_array = Array::Handle(
|
| + Z, ArgumentsDescriptor::New(
|
| + call->type_args_len(),
|
| + call->ArgumentCount() - (call->type_args_len() > 0 ? 1 : 0),
|
| + call->argument_names()));
|
| ArgumentsDescriptor args_desc(args_desc_array);
|
| bool allow_add = false;
|
| const Function& function = Function::Handle(
|
| @@ -171,9 +173,11 @@ bool JitOptimizer::TryCreateICData(InstanceCallInstr* call) {
|
| const Class& owner_class = Class::Handle(Z, function().Owner());
|
| if (!owner_class.is_abstract() && !CHA::HasSubclasses(owner_class) &&
|
| !CHA::IsImplemented(owner_class)) {
|
| - const Array& args_desc_array =
|
| - Array::Handle(Z, ArgumentsDescriptor::New(call->ArgumentCount(),
|
| - call->argument_names()));
|
| + const int kTypeArgsLen = 0;
|
| + ASSERT(call->type_args_len() == kTypeArgsLen);
|
| + const Array& args_desc_array = Array::Handle(
|
| + Z, ArgumentsDescriptor::New(kTypeArgsLen, call->ArgumentCount(),
|
| + call->argument_names()));
|
| ArgumentsDescriptor args_desc(args_desc_array);
|
| bool allow_add = false;
|
| const Function& function = Function::Handle(
|
|
|