Compiler\DependencyAnalysis\ReadyToRunGenericHelperNode.cs (46)
18private readonly ReadyToRunHelperId _id;
29public ReadyToRunHelperId Id => _id;
40public ReadyToRunGenericHelperNode(NodeFactory factory, ReadyToRunHelperId helperId, object target, TypeSystemEntity dictionaryOwner)
52public static GenericLookupResult GetLookupSignature(NodeFactory factory, ReadyToRunHelperId id, object target)
56case ReadyToRunHelperId.TypeHandle:
58case ReadyToRunHelperId.NecessaryTypeHandle:
60case ReadyToRunHelperId.MetadataTypeHandle:
62case ReadyToRunHelperId.TypeHandleForCasting:
66case ReadyToRunHelperId.MethodHandle:
68case ReadyToRunHelperId.FieldHandle:
70case ReadyToRunHelperId.GetGCStaticBase:
72case ReadyToRunHelperId.GetNonGCStaticBase:
74case ReadyToRunHelperId.GetThreadStaticBase:
76case ReadyToRunHelperId.MethodDictionary:
78case ReadyToRunHelperId.DispatchCell:
80case ReadyToRunHelperId.MethodEntry:
82case ReadyToRunHelperId.DelegateCtor:
84case ReadyToRunHelperId.DefaultConstructor:
86case ReadyToRunHelperId.ObjectAllocator:
88case ReadyToRunHelperId.ConstrainedDirectCall:
113if ((_id == ReadyToRunHelperId.GetGCStaticBase || _id == ReadyToRunHelperId.GetThreadStaticBase) &&
136case ReadyToRunHelperId.GetGCStaticBase:
137case ReadyToRunHelperId.GetThreadStaticBase:
152case ReadyToRunHelperId.DelegateCtor:
200if (_id != ReadyToRunHelperId.DelegateCtor)
228if (_id == ReadyToRunHelperId.DelegateCtor)
258if (_id == ReadyToRunHelperId.GetGCStaticBase || _id == ReadyToRunHelperId.GetThreadStaticBase)
273if (_id == ReadyToRunHelperId.DelegateCtor)
309case ReadyToRunHelperId.TypeHandle:
310case ReadyToRunHelperId.NecessaryTypeHandle:
311case ReadyToRunHelperId.GetGCStaticBase:
312case ReadyToRunHelperId.GetNonGCStaticBase:
313case ReadyToRunHelperId.GetThreadStaticBase:
314case ReadyToRunHelperId.DefaultConstructor:
315case ReadyToRunHelperId.ObjectAllocator:
317case ReadyToRunHelperId.MethodHandle:
318case ReadyToRunHelperId.MethodDictionary:
319case ReadyToRunHelperId.DispatchCell:
320case ReadyToRunHelperId.MethodEntry:
322case ReadyToRunHelperId.FieldHandle:
324case ReadyToRunHelperId.DelegateCtor:
326case ReadyToRunHelperId.ConstrainedDirectCall:
336public ReadyToRunGenericLookupFromDictionaryNode(NodeFactory factory, ReadyToRunHelperId helperId, object target, TypeSystemEntity dictionaryOwner)
358public ReadyToRunGenericLookupFromTypeNode(NodeFactory factory, ReadyToRunHelperId helperId, object target, TypeSystemEntity dictionaryOwner)
IL\ILImporter.Scanner.cs (46)
149_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.GetNonGCStaticBase, method.OwningType), "Owning type cctor");
153_dependencies.Add(_factory.ReadyToRunHelper(ReadyToRunHelperId.GetNonGCStaticBase, method.OwningType), "Owning type cctor");
171_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.NecessaryTypeHandle, method.OwningType), reason);
214private ISymbolNode GetGenericLookupHelper(ReadyToRunHelperId helperId, TypeDesc type)
220private ISymbolNode GetGenericLookupHelper(ReadyToRunHelperId helperId, MethodDesc method)
226private ISymbolNode GetGenericLookupHelper(ReadyToRunHelperId helperId, object helperArgument)
279_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.TypeHandleForCasting, catchType), "EH");
283_dependencies.Add(_compilation.ComputeConstantLookup(ReadyToRunHelperId.TypeHandleForCasting, catchType), "EH");
324_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.TypeHandleForCasting, type), "IsInst/CastClass");
328_dependencies.Add(_compilation.ComputeConstantLookup(ReadyToRunHelperId.TypeHandleForCasting, type), "IsInst/CastClass");
622_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.TypeHandle, owningType), reason);
663_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.DefaultConstructor, runtimeDeterminedMethod.Instantiation[0]), reason);
679_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.ObjectAllocator, runtimeDeterminedMethod.Instantiation[0]), reason);
683_dependencies.Add(_compilation.ComputeConstantLookup(ReadyToRunHelperId.ObjectAllocator, method.Instantiation[0]), reason);
693_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.TypeHandle, runtimeDeterminedMethod.Instantiation[0]), reason);
848_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.ConstrainedDirectCall, constrainedCallInfo), reason);
867_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.MethodEntry, targetOfLookup), reason);
879_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.MethodEntry, runtimeDeterminedMethod), reason);
921instParam = GetGenericLookupHelper(ReadyToRunHelperId.MethodDictionary, runtimeDeterminedMethod);
925instParam = GetGenericLookupHelper(ReadyToRunHelperId.TypeHandle, runtimeDeterminedMethod.OwningType);
948_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.TypeHandle, _constrained), reason);
956_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.TypeHandle, runtimeDeterminedMethod.OwningType), reason);
996var constrainedHelperId = ReadyToRunHelperId.ConstrainedDirectCall;
1017_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.DispatchCell, methodToLookup), reason);
1030_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.DispatchCell, runtimeDeterminedMethod), reason);
1065_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.DelegateCtor, info), reason);
1067_dependencies.Add(_factory.ReadyToRunHelper(ReadyToRunHelperId.DelegateCtor, info), reason);
1138_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.MethodDictionary, runtimeDeterminedResult), reason);
1267_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.NecessaryTypeHandle, type), "Unbox");
1308_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.TypeHandle, type), reason);
1323var helperId = ReadyToRunHelperId.MetadataTypeHandle;
1334helperId = ReadyToRunHelperId.NecessaryTypeHandle;
1354helperId = ReadyToRunHelperId.NecessaryTypeHandle;
1367_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.MethodHandle, method), "ldtoken");
1397_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.FieldHandle, field), "ldtoken");
1471ReadyToRunHelperId helperId;
1480helperId = ReadyToRunHelperId.GetNonGCStaticBase;
1488helperId = ReadyToRunHelperId.GetThreadStaticBase;
1492helperId = ReadyToRunHelperId.GetGCStaticBase;
1496helperId = ReadyToRunHelperId.GetNonGCStaticBase;
1593_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.TypeHandle, type), reason);
1621_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.TypeHandle, elementType.MakeArrayType()), "newarr");
1663_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.NecessaryTypeHandle, elementType), "ldelema");
2079_dependencies.Add(GetGenericLookupHelper(ReadyToRunHelperId.MethodDictionary, runtimeDeterminedResult), reason);