136 references to Add
ILCompiler.Compiler (119)
Compiler\Dataflow\HandleCallAction.cs (10)
267_reflectionMarker.Dependencies.Add(_reflectionMarker.Factory.ReflectedType(systemTypeValue.RepresentedType.Type.MakeArrayType()), "Enum.GetValues"); 303_reflectionMarker.Dependencies.Add(_reflectionMarker.Factory.StructMarshallingData((DefType)systemTypeValue.RepresentedType.Type), "Marshal API"); 308_reflectionMarker.Dependencies.Add(_reflectionMarker.Factory.ReflectedMethod(ctorMethod.GetCanonMethodTarget(CanonicalFormKind.Specific)), "Marshal API"); 336_reflectionMarker.Dependencies.Add(_reflectionMarker.Factory.DelegateMarshallingData((DefType)systemTypeValue.RepresentedType.Type), "Marshal API"); 374_reflectionMarker.Dependencies.Add(_reflectionMarker.Factory.ReflectedDelegate(null), "Delegate.Method access on unknown delegate type"); 379_reflectionMarker.Dependencies.Add(_reflectionMarker.Factory.ReflectedDelegate(staticType.GetTypeDefinition()), "Delegate.Method access (on inexact type)"); 381_reflectionMarker.Dependencies.Add(_reflectionMarker.Factory.ReflectedDelegate(staticType.ConvertToCanonForm(CanonicalFormKind.Specific)), "Delegate.Method access"); 477_reflectionMarker.Dependencies.Add(_reflectionMarker.Factory.ObjectGetTypeCalled(closestMetadataType), "GetType called on this type"); 523_reflectionMarker.Dependencies.Add(_reflectionMarker.Factory.ExternalTypeMapRequest(typeMapGroup), "TypeMapping.GetOrCreateExternalTypeMapping called on type"); 541_reflectionMarker.Dependencies.Add(_reflectionMarker.Factory.ProxyTypeMapRequest(typeMapGroup), "TypeMapping.GetOrCreateProxyTypeMapping called on type");
Compiler\Dataflow\ReflectionMarker.cs (2)
113_dependencies.Add(Factory.ModuleMetadata(referencedModule), displayName); 143_dependencies.Add(Factory.ModuleMetadata(referencedModule), reason);
Compiler\DependencyAnalysis\CodeBasedDependencyAlgorithm.cs (1)
59dependencies.Add(factory.NativeLayout.TemplateTypeLayout(templateType), "Generic comparer");
Compiler\DependencyAnalysis\ConstructedEETypeNode.cs (2)
33dependencyList.Add(factory.AnalysisCharacteristic("DynamicInterfaceCastablePresent"), "Implements IDynamicInterfaceCastable"); 58dependencyList.Add(factory.VTable(closestDefType), "VTable");
Compiler\DependencyAnalysis\CustomAttributeBasedDependencyAlgorithm.cs (5)
125caDependencies.Add(factory.ReflectedMethod(constructor.GetCanonMethodTarget(CanonicalFormKind.Specific)), "Attribute constructor"); 126caDependencies.Add(factory.ReflectedType(constructor.OwningType), "Attribute type"); 201dependencies.Add(factory.ReflectedField(field), "Custom attribute blob"); 242dependencies.Add(factory.ReflectedMethod(setterMethod.GetCanonMethodTarget(CanonicalFormKind.Specific)), "Custom attribute blob"); 267dependencies.Add(factory.ReflectedType(type), "Custom attribute blob");
Compiler\DependencyAnalysis\DataflowAnalyzedTypeDefinitionNode.cs (1)
62dependencies.Add(factory.DataflowAnalyzedTypeDefinition(type), "Dataflow for type definition");
Compiler\DependencyAnalysis\DynamicDependencyAttributesOnEntityNode.cs (2)
42dependencies.Add(factory.DynamicDependencyAttributesOnEntity(method), "DynamicDependencyAttribute present"); 51dependencies.Add(factory.DynamicDependencyAttributesOnEntity(field), "DynamicDependencyAttribute present");
Compiler\DependencyAnalysis\EETypeNode.cs (2)
597dependencies.Add(factory.InterfaceUse(_type.GetTypeDefinition()), "Interface is used"); 624dependencies.Add(factory.VTable(intface), "Interface vtable slice");
Compiler\DependencyAnalysis\FieldMetadataNode.cs (1)
41dependencies.Add(factory.TypeMetadata(_field.OwningType), "Owning type metadata");
Compiler\DependencyAnalysis\GCStaticsNode.cs (3)
60dependencyList.Add(factory.EagerCctorIndirection(_type.GetStaticConstructor()), "Eager .cctor"); 65dependencyList.Add(factory.GCStaticsRegion, "GCStatics Region"); 67dependencyList.Add(factory.GCStaticIndirection(_type), "GC statics indirection");
Compiler\DependencyAnalysis\GenericDictionaryNode.cs (3)
127result.Add(GetDictionaryLayout(factory), "Layout"); 212dependencies.Add(GetDictionaryLayout(factory), "Layout"); 244dependencies.Add(factory.ShadowConcreteMethod(_owningMethod), "Dictionary contents");
Compiler\DependencyAnalysis\GenericVirtualMethodImplNode.cs (4)
57dependencies.Add(factory.NativeLayout.TemplateMethodEntry(_method), "GVM Dependency - Template entry"); 58dependencies.Add(factory.NativeLayout.TemplateMethodLayout(_method), "GVM Dependency - Template"); 59dependencies.Add(factory.ShadowNonConcreteMethod(_method), "GVM Dependency - shadow generic method"); 63dependencies.Add(factory.ExactMethodInstantiationsHashtableEntry(_method), "GVM Dependency - runtime lookups");
Compiler\DependencyAnalysis\InlineableStringsResourceNode.cs (1)
67dependencies.Add(factory.InlineableStringResource((EcmaModule)mdType.Module), "Using the System.SR class");
Compiler\DependencyAnalysis\InterfaceDispatchCellNode.cs (1)
100result.Add(factory.VirtualMethodUse(_targetMethod), "Interface method use");
Compiler\DependencyAnalysis\InterfaceDispatchMapNode.cs (1)
57result.Add(factory.VTable(runtimeInterface), "Interface for a dispatch map");
Compiler\DependencyAnalysis\MethodMetadataNode.cs (5)
48dependencies.Add(factory.TypeMetadata(owningType), "Owning type metadata"); 54dependencies.Add(factory.MethodParameterMetadata(new ReflectableParameter(_method.Module, parameterHandle)), "Parameter is visible"); 89dependencies.Add(factory.AnalysisCharacteristic("StackTraceHiddenMetadataPresent"), "Method is StackTraceHidden"); 106dependencies.Add( 117dependencies.Add(
Compiler\DependencyAnalysis\ModuleMetadataNode.cs (3)
39dependencies.Add(factory.TypeMetadata(_module.GetGlobalModuleType()), "Global module type"); 44dependencies.Add(factory.ReflectedMethod(entrypoint), "Reflectable entrypoint"); 51dependencies.Add(factory.ModuleMetadata(satelliteModule), "Satellite assembly");
Compiler\DependencyAnalysis\NativeLayoutVertexNode.cs (4)
1311dependencies.Add(factory.NativeLayout.MethodEntry(_method), "wrappednode"); 1397result.Add(factory.GVMDependencies(_method.GetCanonMethodTarget(CanonicalFormKind.Specific)), "Potential dynamic GVM call"); 1400result.Add(factory.NativeLayout.MethodEntry(_method), "wrappednode"); 1557dependencies.Add(_wrappedNode, "wrappednode");
Compiler\DependencyAnalysis\NonGCStaticsNode.cs (1)
168dependencyList.Add(factory.EagerCctorIndirection(_type.GetStaticConstructor()), "Eager .cctor");
Compiler\DependencyAnalysis\ObjectGetTypeFlowDependenciesNode.cs (2)
49result.Add(factory.ObjectGetTypeFlowDependencies(baseType), "Apply annotations to bases"); 56result.Add(factory.ObjectGetTypeFlowDependencies((MetadataType)interfaceType), "Apply annotations to interfaces");
Compiler\DependencyAnalysis\ReadyToRunGenericHelperNode.cs (2)
218dependencies.Add(factory.VTable(type), "Owning type vtable"); 221dependencies.Add(factory.GenericDictionaryLayout(_dictionaryOwner), "Layout");
Compiler\DependencyAnalysis\ReadyToRunHelperNode.cs (2)
136dependencyList.Add(factory.VirtualMethodUse((MethodDesc)_target), "ReadyToRun Virtual Method Call"); 157dependencyList.Add(factory.VirtualMethodUse(info.TargetMethod), "ReadyToRun Delegate to virtual method");
Compiler\DependencyAnalysis\ReflectedFieldNode.cs (3)
48dependencies.Add(factory.NotReadOnlyField(_field), "Reflection writable field"); 56dependencies.Add(factory.ReflectedField(typicalField), "Definition of the reflectable field"); 95dependencies.Add(factory.GenericStaticBaseInfo(_field.OwningType), "Field on a generic type");
Compiler\DependencyAnalysis\ReflectedMethodNode.cs (1)
46dependencies.Add(factory.ReflectedMethod(typicalMethod), "Definition of the reflectable method");
Compiler\DependencyAnalysis\ReflectionInvokeMapNode.cs (1)
67dependencies.Add(factory.ShadowNonConcreteMethod(method), "Shadow generic reflectable method");
Compiler\DependencyAnalysis\ReflectionVirtualInvokeMapNode.cs (2)
95dependencies.Add(factory.GVMDependencies(slotDefiningMethod.GetCanonMethodTarget(CanonicalFormKind.Specific)), "GVM callable reflectable method"); 101dependencies.Add(factory.VirtualMethodUse(slotDefiningMethod), "Reflection virtual invoke method");
Compiler\DependencyAnalysis\RuntimeMethodHandleNode.cs (1)
57dependencies.Add(factory.GVMDependencies(canonMethod), "GVM dependencies for runtime method handle");
Compiler\DependencyAnalysis\ScannedMethodNode.cs (1)
68_dependencies.Add(factory.EagerCctorIndirection(owningType.GetStaticConstructor()), "Eager .cctor");
Compiler\DependencyAnalysis\SealedVTableNode.cs (3)
228_nonRelocationDependencies.Add(factory.InterfaceUse(declTypeRuntimeInterfaces[i].GetTypeDefinition()), "Interface with shared default methods folows this"); 255result.Add(factory.VTable(declType), "VTable of the type"); 258result.Add(factory.VTable(interfaceType), "VTable of the interface");
Compiler\DependencyAnalysis\TypeMetadataNode.cs (9)
42dependencies.Add(factory.TypeMetadata(containingType), "Containing type of a reflectable type"); 44dependencies.Add(factory.ModuleMetadata(_type.Module), "Containing module of a reflectable type"); 56dependencies.Add(factory.ReflectedType(_type), "Reflectable enum"); 64dependencies.Add(factory.FieldMetadata(enumField), "Value of a reflectable enum"); 89dependencies.Add(factory.MethodMetadata(method), "Complete metadata for type"); 96dependencies.Add(factory.FieldMetadata(field), "Complete metadata for type"); 149dependencies.Add(nodeFactory.ReflectedType(type), "Reflected IDynamicInterfaceCastableImplementation"); 158dependencies.Add(nodeFactory.TypeMetadata((MetadataType)typeDefinition), reason); 171dependencies.Add(nodeFactory.TypeMetadata((MetadataType)type), reason);
Compiler\DependencyAnalysis\VirtualMethodUseNode.cs (3)
65dependencies.Add(factory.VirtualMethodUse(canonDecl), "Canonical method"); 67dependencies.Add(factory.VTable(_decl.OwningType), "VTable of a VirtualMethodUse"); 74dependencies.Add(factory.VariantInterfaceMethodUse(_decl.GetTypicalMethodDefinition()), "Variant interface call");
Compiler\DescriptorMarker.cs (4)
171_dependencies.Add(_factory.ModuleMetadata(assembly), "Type used through forwarder"); 238_dependencies.Add(_factory.ReflectedField(field), "field kept due to descriptor"); 246_dependencies.Add(_factory.ReflectedMethod(method), "method kept due to descriptor"); 250_dependencies.Add(_factory.ReflectedMethod(method), "method kept due to descriptor");
Compiler\MetadataManager.cs (2)
469dependencies.Add(factory.GenericMethodsHashtableEntry(method), "Will need to look up owning type from dictionary"); 621dependencies.Add(factory.DelegateTargetVirtualMethod(target), "Delegate to a virtual method created");
Compiler\RootingHelpers.cs (6)
144dependencies.Add(factory.ReflectedMethod(typicalMethod), reason); 189dependencies.Add(factory.ReflectedMethod(method.GetCanonMethodTarget(CanonicalFormKind.Specific)), reason); 209dependencies.Add(factory.ReflectedField(typicalField), reason); 240dependencies.Add(factory.ReflectedField(field), reason); 262dependencies.Add(factory.ReflectedType(type), reason); 273dependencies.Add(factory.ReflectedType(((MetadataType)type).MakeInstantiatedType(inst)), reason);
Compiler\UsageBasedInteropStubManager.cs (3)
46dependencies.Add(factory.DelegateMarshallingData(delegateType), "Delegate marshalling"); 78dependencies.Add(factory.DelegateMarshallingData((DefType)type), "Delegate marshlling"); 86dependencies.Add(factory.StructMarshallingData(defType), "Struct marshalling");
Compiler\UsageBasedMetadataManager.cs (12)
244dependencies.Add(factory.MethodMetadata(method.GetTypicalMethodDefinition()), "Reflectable method"); 252dependencies.Add(factory.LimitedMethodMetadata(method.GetTypicalMethodDefinition()), "Method referenced from native layout"); 265dependencies.Add(factory.FieldMetadata(field.GetTypicalFieldDefinition()), "Reflectable field"); 290dependencies.Add(factory.EmbeddedTrimmingDescriptor(ecmaModule), "Embedded descriptor file"); 311dependencies.Add(factory.ReflectedMethod(invokeMethod.GetCanonMethodTarget(CanonicalFormKind.Specific)), "Delegate invoke method is always reflectable"); 326dependencies.Add(factory.ReflectedMethod(defaultConstructor.GetCanonMethodTarget(CanonicalFormKind.Specific)), "Array.Initialize needs default constructor"); 557dependencies.Add(factory.ReflectedField(field), "LDTOKEN field"); 568dependencies.Add(factory.ReflectedMethod(canonicalMethod), "LDTOKEN method"); 574dependencies.Add(factory.ReflectedType(instArg), "LDTOKEN method"); 723dependencies.Add(factory.ReflectedMethod(method.GetCanonMethodTarget(CanonicalFormKind.Specific)), "Abstract reflectable method"); 765dependencies.Add(factory.ReflectedField(fieldToReport), "Use of a field"); 967dependencies.Add(factory.DataflowAnalyzedMethod(methodILDefinition), reason);
IL\ILImporter.Scanner.cs (9)
545_dependencies.Add(_factory.VTable(method.OwningType), reason); 814_dependencies.Add(_factory.ShadowNonConcreteMethod(concreteMethod), reason); 905_dependencies.Add(_factory.RuntimeMethodHandle(methodToLookup), reason); 918_dependencies.Add(_factory.InterfaceDispatchCell(method), reason); 925_dependencies.Add(_factory.VirtualMethodUse(slotDefiningMethod), reason); 1175_dependencies.Add(_factory.RuntimeMethodHandle(method), "ldtoken"); 1192_dependencies.Add(_factory.RuntimeFieldHandle(field), "ldtoken"); 1246_dependencies.Add(_factory.NotReadOnlyField(fieldToReport), "Field written outside initializer"); 1320_dependencies.Add(_factory.SerializedStringObject((string)_methodIL.GetObject(token)), "ldstr");
src\runtime\src\coreclr\tools\Common\Compiler\DependencyAnalysis\ObjectNode.cs (1)
76dependencies.Add(wasmTypeNode, "Wasm Method Code Nodes Require Signature");
ILCompiler.ReadyToRun (14)
Compiler\DependencyAnalysis\AllMethodsOnTypeNode.cs (1)
46dependencies.Add(context.CompiledMethodNode(method), $"Method on type {Type.ToString()}");
Compiler\DependencyAnalysis\ReadyToRun\ImportThunk.cs (1)
101dependencies.Add(factory.DelayLoadMethodCallThunks, "MethodCallThunksList");
Compiler\DependencyAnalysis\ReadyToRun\InstrumentationDataTableNode.cs (1)
208dependencies.Add(imp, "Dependency of synthesized PGO data");
Compiler\DependencyAnalysis\ReadyToRun\MethodFixupSignature.cs (2)
69list.Add(factory.CompiledMethodNode(canonMethod), "Virtual function dependency on cross module inlineable method"); 91list.Add(factory.GVMDependencies(Method), "Virtual dispatch dependency");
Compiler\DependencyAnalysis\ReadyToRun\MethodWithGCInfo.cs (1)
270dependencyList.Add(this.ColdCodeNode, "cold");
Compiler\DependencyAnalysis\ReadyToRun\StringDiscoverableAssemblyStubNode.cs (1)
28dependencies.Add(factory.InjectStringThunksImport, "StringDiscoverableAssemblyStubNode requires InjectStringThunks fixup");
Compiler\DependencyAnalysis\ReadyToRun\TypeFixupSignature.cs (3)
213dependencies.Add(factory.AllMethodsOnType(_typeDesc), "Methods on generic type instantiation"); 224dependencies.Add(factory.InheritedVirtualMethods(_typeDesc), "Inherited virtual/interface methods on type"); 274dependencies.Add(factory.CompiledMethodNode(method), $"AsyncStateMachineBox Method on type {type.ToString()}");
Compiler\DependencyAnalysis\ReadyToRun\WasmInterpreterToR2RThunkNode.cs (2)
75dependencies.Add(_targetTypeNode, "Wasm interpreter-to-R2R thunk requires target type node"); 76dependencies.Add(factory.WasmTypeNode(sigForInterpToR2RThunks), "Wasm interpreter-to-R2R thunk requires type for the function entry point");
Compiler\DependencyAnalysis\ReadyToRun\WasmR2RToInterpreterThunkNode.cs (1)
85dependencies.Add(_typeNode, "Wasm R2R to interpreter thunk requires type node");
src\runtime\src\coreclr\tools\Common\Compiler\DependencyAnalysis\ObjectNode.cs (1)
76dependencies.Add(wasmTypeNode, "Wasm Method Code Nodes Require Signature");
ILCompiler.RyuJit (3)
Compiler\DependencyAnalysis\MethodCodeNode.cs (2)
84dependencies.Add(factory.EagerCctorIndirection(owningType.GetStaticConstructor()), "Eager .cctor"); 90dependencies.Add(_ehInfo, "Exception handling information");
JitInterface\CorInfoImpl.RyuJit.cs (1)
1884(_additionalDependencies ??= new ILCompiler.DependencyAnalysisFramework.DependencyNodeCore<NodeFactory>.DependencyList()).Add(_compilation.NodeFactory.VirtualMethodUse(methodDesc), "Virtual method call");