anchor.diff:        // contains any of these variables then don't split it, for fear of mucking up tailcalls.
         // See FSharp 1.0 bug 2892
         dontSplitVars: ValMap<unit>;  
  +      // Disable method splittingin loops
  +      inLoop: bool;
         /// The Val for the function binding being generated, if any. 
         functionVal: (Val * Tast.ValReprInfo) option;
         typarInfos: (Typar * TypeValueInfo) list; 
  
positive.code:     // REVIEW: This should only apply to methods that actually make self-tailcalls (tested further below).
      // Old comment "don't mess with taking guaranteed tailcalls if used with --no-tailcalls!" 
      cenv.emitTailcalls &&
      einfo.FunctionSize >= threshold &&
  
       // We can only split an expression out as a method if certain conditions are met. 
  
negative.code:           typarInfos = [];
            functionVal = None; 
            dontSplitVars = ValMap.Empty;
            inLoop = false
            localExternalVals = LayeredMap.Empty; 
            globalModuleInfos = LayeredMap.Empty }
  
  