private ISymbolNode GetGenericLookupHelper(ReadyToRunHelperId helperId, object helperArgument) { GenericDictionaryLookup lookup = _compilation.ComputeGenericLookup(_canonMethod, helperId, helperArgument); Debug.Assert(lookup.UseHelper); if (_canonMethod.RequiresInstMethodDescArg()) { return(_compilation.NodeFactory.ReadyToRunHelperFromDictionaryLookup(lookup.HelperId, lookup.HelperObject, _canonMethod)); } else { Debug.Assert(_canonMethod.RequiresInstArg() || _canonMethod.AcquiresInstMethodTableFromThis()); return(_compilation.NodeFactory.ReadyToRunHelperFromTypeLookup(lookup.HelperId, lookup.HelperObject, _canonMethod.OwningType)); } }