Index: runtime/vm/jit_optimizer.cc |
diff --git a/runtime/vm/jit_optimizer.cc b/runtime/vm/jit_optimizer.cc |
index f85d9c46fb3b212ad580ed0ee36a5428469b0e57..d44da83d89a2415e3e01cf19e6b5b906d7537868 100644 |
--- a/runtime/vm/jit_optimizer.cc |
+++ b/runtime/vm/jit_optimizer.cc |
@@ -141,10 +141,10 @@ bool JitOptimizer::TryCreateICData(InstanceCallInstr* call) { |
Array::Handle(Z, ArgumentsDescriptor::New(call->ArgumentCount(), |
call->argument_names())); |
ArgumentsDescriptor args_desc(args_desc_array); |
- const Function& function = |
- Function::Handle(Z, Resolver::ResolveDynamicForReceiverClass( |
- receiver_class, call->function_name(), |
- args_desc, false /* allow add */)); |
+ bool allow_add = false; |
+ const Function& function = Function::Handle( |
+ Z, Resolver::ResolveDynamicForReceiverClass( |
+ receiver_class, call->function_name(), args_desc, allow_add)); |
if (function.IsNull()) { |
return false; |
} |
@@ -175,10 +175,10 @@ bool JitOptimizer::TryCreateICData(InstanceCallInstr* call) { |
Array::Handle(Z, ArgumentsDescriptor::New(call->ArgumentCount(), |
call->argument_names())); |
ArgumentsDescriptor args_desc(args_desc_array); |
- const Function& function = |
- Function::Handle(Z, Resolver::ResolveDynamicForReceiverClass( |
- owner_class, call->function_name(), args_desc, |
- false /* allow_add */)); |
+ bool allow_add = false; |
+ const Function& function = Function::Handle( |
+ Z, Resolver::ResolveDynamicForReceiverClass( |
+ owner_class, call->function_name(), args_desc, allow_add)); |
if (!function.IsNull()) { |
const ICData& ic_data = ICData::ZoneHandle( |
Z, ICData::NewFrom(*call->ic_data(), class_ids.length())); |
@@ -1458,8 +1458,10 @@ bool JitOptimizer::LookupMethodFor(int class_id, |
if (!cls.is_finalized()) return false; |
if (Array::Handle(cls.functions()).IsNull()) return false; |
- Function& target_function = Function::Handle( |
- Z, Resolver::ResolveDynamicForReceiverClass(cls, name, args_desc)); |
+ bool allow_add = false; |
+ Function& target_function = |
+ Function::Handle(Z, Resolver::ResolveDynamicForReceiverClass( |
Vyacheslav Egorov (Google)
2017/04/07 05:53:00
How about adding an assertion into ResolveDynamicF
rmacnak
2017/04/07 16:42:57
It fails. I created https://github.com/dart-lang/s
|
+ cls, name, args_desc, allow_add)); |
if (target_function.IsNull()) return false; |
*fn_return ^= target_function.raw(); |
return true; |