anchor.diff:      // sense.
       if (function is FunctionElement &&
           function.asyncMarker != AsyncMarker.SYNC) {
  +      return;
  +    }
  +
  +    // Do not inline in functions containing try statements.  V8 does not
  +    // optimize code in such functions, so inlining will move optimizable code
  +    // into a context where it cannot be optimized.
  +    if (function.resolvedAst.elements.containsTryStatement) {
         return;
       }
   
  
positive.code:   Primitive tryInlining(InvocationPrimitive invoke, FunctionElement target,
                          CallStructure callStructure) {
      // Quick checks: do not inline or even cache calls to targets without an
      // AST node or targets that are asynchronous or generator functions.
      if (!target.hasNode) return null;
      if (target.asyncMarker != AsyncMarker.SYNC) return null;
  
      Reference<Primitive> dartReceiver = invoke.dartReceiverReference;
      TypeMask abstractReceiver =
  
negative.code:   }
  
    void rewrite(FunctionDefinition node, [CallStructure callStructure]) {
      ExecutableElement function = node.element;
  
      // Inlining in asynchronous or generator functions is disabled.  Inlining
      // triggers a bug in the async rewriter.
  