Chromium Code Reviews| Index: runtime/vm/intrinsifier.cc |
| =================================================================== |
| --- runtime/vm/intrinsifier.cc (revision 14433) |
| +++ runtime/vm/intrinsifier.cc (working copy) |
| @@ -69,6 +69,9 @@ |
| bool Intrinsifier::CanIntrinsify(const Function& function) { |
| if (!FLAG_intrinsify) return false; |
| + // Intrinsic kind is set lazily below. |
| + if (function.intrinsic_kind() == Function::kIsIntrinsic) return true; |
| + if (function.intrinsic_kind() == Function::kIsNotIntrinsic) return false; |
| // Closure functions may have different arguments. |
| if (function.IsClosureFunction()) return false; |
|
siva
2012/11/01 23:04:06
Should we do the closure function check first beca
srdjan
2012/11/01 23:08:18
Done.
|
| const char* function_name = String::Handle(function.name()).ToCString(); |
| @@ -89,11 +92,13 @@ |
| if (TestFunction(function, \ |
| class_name, function_name, \ |
| #test_class_name, #test_function_name)) { \ |
| + function.set_intrinsic_kind(Function::kIsIntrinsic); \ |
| return true; \ |
| } \ |
| INTRINSIC_LIST(FIND_INTRINSICS); |
| #undef FIND_INTRINSICS |
| + function.set_intrinsic_kind(Function::kIsNotIntrinsic); |
| return false; |
| } |