182 references to IntrinsicId
ILLink.RoslynAnalyzer (182)
RequiresDynamicCodeAnalyzer.cs (4)
53var intrinsicId = Intrinsics.GetIntrinsicIdForMethod(method); 57case IntrinsicId.Type_MakeGenericType: 79case IntrinsicId.MethodInfo_MakeGenericMethod: 101case IntrinsicId.Enum_GetValues:
RequiresUnreferencedCodeAnalyzer.cs (1)
79if (member is IMethodSymbol method && Intrinsics.GetIntrinsicIdForMethod(new MethodProxy(method)) != IntrinsicId.None)
src\runtime\src\tools\illink\src\ILLink.Shared\TrimAnalysis\HandleCallAction.cs (86)
31public bool Invoke(MethodProxy calledMethod, MultiValue instanceValue, IReadOnlyList<MultiValue> argumentValues, IntrinsicId intrinsicId, out MultiValue methodReturnValue) 81IntrinsicId intrinsicId, 88IntrinsicId intrinsicId, 99case IntrinsicId.IntrospectionExtensions_GetTypeInfo: 109case IntrinsicId.TypeInfo_AsType: 119case IntrinsicId.Type_get_UnderlyingSystemType: 124case IntrinsicId.Type_GetTypeFromHandle: 156case IntrinsicId.Type_get_TypeHandle: 187case IntrinsicId.Type_get_Assembly: 211case IntrinsicId.MethodBase_GetMethodFromHandle: 230case IntrinsicId.MethodBase_get_MethodHandle: 248case IntrinsicId.TypeDelegator_Ctor: 251case IntrinsicId.Array_Empty: 253case IntrinsicId.Object_GetType: 261case IntrinsicId.Type_GetInterface: 309case IntrinsicId.Type_GetInterfaces: 342case IntrinsicId.Type_get_AssemblyQualifiedName: 378case IntrinsicId.RuntimeHelpers_RunClassConstructor: 416case IntrinsicId.Type_GetConstructors__BindingFlags: 417case IntrinsicId.Type_GetMethods__BindingFlags: 418case IntrinsicId.Type_GetFields__BindingFlags: 419case IntrinsicId.Type_GetProperties__BindingFlags: 420case IntrinsicId.Type_GetEvents__BindingFlags: 421case IntrinsicId.Type_GetNestedTypes__BindingFlags: 422case IntrinsicId.Type_GetMembers__BindingFlags: 431IntrinsicId.Type_GetConstructors__BindingFlags => DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors, 432IntrinsicId.Type_GetMethods__BindingFlags => DynamicallyAccessedMemberTypes.PublicMethods | DynamicallyAccessedMemberTypes.NonPublicMethods, 433IntrinsicId.Type_GetEvents__BindingFlags => DynamicallyAccessedMemberTypes.PublicEvents | DynamicallyAccessedMemberTypes.NonPublicEvents, 434IntrinsicId.Type_GetFields__BindingFlags => DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields, 435IntrinsicId.Type_GetProperties__BindingFlags => DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, 436IntrinsicId.Type_GetNestedTypes__BindingFlags => DynamicallyAccessedMemberTypes.PublicNestedTypes | DynamicallyAccessedMemberTypes.NonPublicNestedTypes, 437IntrinsicId.Type_GetMembers__BindingFlags => DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors | 450IntrinsicId.Type_GetConstructors__BindingFlags => GetDynamicallyAccessedMemberTypesFromBindingFlagsForConstructors(bindingFlags), 451IntrinsicId.Type_GetMethods__BindingFlags => GetDynamicallyAccessedMemberTypesFromBindingFlagsForMethods(bindingFlags), 452IntrinsicId.Type_GetEvents__BindingFlags => GetDynamicallyAccessedMemberTypesFromBindingFlagsForEvents(bindingFlags), 453IntrinsicId.Type_GetFields__BindingFlags => GetDynamicallyAccessedMemberTypesFromBindingFlagsForFields(bindingFlags), 454IntrinsicId.Type_GetProperties__BindingFlags => GetDynamicallyAccessedMemberTypesFromBindingFlagsForProperties(bindingFlags), 455IntrinsicId.Type_GetNestedTypes__BindingFlags => GetDynamicallyAccessedMemberTypesFromBindingFlagsForNestedTypes(bindingFlags), 456IntrinsicId.Type_GetMembers__BindingFlags => GetDynamicallyAccessedMemberTypesFromBindingFlagsForMembers(bindingFlags), 479case IntrinsicId.Type_GetField: 480case IntrinsicId.Type_GetProperty: 481case IntrinsicId.Type_GetEvent: 498IntrinsicId.Type_GetEvent => GetDynamicallyAccessedMemberTypesFromBindingFlagsForEvents(bindingFlags), 499IntrinsicId.Type_GetField => GetDynamicallyAccessedMemberTypesFromBindingFlagsForFields(bindingFlags), 500IntrinsicId.Type_GetProperty => GetDynamicallyAccessedMemberTypesFromBindingFlagsForProperties(bindingFlags), 515case IntrinsicId.Type_GetEvent: 518case IntrinsicId.Type_GetField: 521case IntrinsicId.Type_GetProperty: 548case IntrinsicId.Type_GetMember: 611case IntrinsicId.Type_GetMethod: 692case IntrinsicId.Type_GetNestedType: 777case IntrinsicId.RuntimeReflectionExtensions_GetRuntimeEvent: 778case IntrinsicId.RuntimeReflectionExtensions_GetRuntimeField: 779case IntrinsicId.RuntimeReflectionExtensions_GetRuntimeMethod: 780case IntrinsicId.RuntimeReflectionExtensions_GetRuntimeProperty: 792IntrinsicId.RuntimeReflectionExtensions_GetRuntimeEvent => DynamicallyAccessedMemberTypes.PublicEvents, 793IntrinsicId.RuntimeReflectionExtensions_GetRuntimeField => DynamicallyAccessedMemberTypes.PublicFields, 794IntrinsicId.RuntimeReflectionExtensions_GetRuntimeMethod => DynamicallyAccessedMemberTypes.PublicMethods, 795IntrinsicId.RuntimeReflectionExtensions_GetRuntimeProperty => DynamicallyAccessedMemberTypes.PublicProperties, 811case IntrinsicId.RuntimeReflectionExtensions_GetRuntimeEvent: 814case IntrinsicId.RuntimeReflectionExtensions_GetRuntimeField: 817case IntrinsicId.RuntimeReflectionExtensions_GetRuntimeMethod: 822case IntrinsicId.RuntimeReflectionExtensions_GetRuntimeProperty: 860case IntrinsicId.Expression_New: 882case IntrinsicId.Expression_Property when calledMethod.HasParameterOfType((ParameterIndex)1, "System.Reflection.MethodInfo"): 919case IntrinsicId.Expression_Field: 920case IntrinsicId.Expression_Property: 922DynamicallyAccessedMemberTypes memberTypes = intrinsicId == IntrinsicId.Expression_Property 942if (intrinsicId == IntrinsicId.Expression_Property) 974case IntrinsicId.Expression_Call: 1029case IntrinsicId.Nullable_GetUnderlyingType: 1066case IntrinsicId.Type_GetType: 1122case IntrinsicId.Type_MakeGenericType: 1214case IntrinsicId.Type_get_BaseType: 1307case IntrinsicId.Type_GetConstructor: 1366case IntrinsicId.MethodInfo_MakeGenericMethod: 1407case IntrinsicId.Activator_CreateInstance__Type: 1493case IntrinsicId.Activator_CreateInstance__AssemblyName_TypeName: 1504case IntrinsicId.Activator_CreateInstanceFrom: 1527case IntrinsicId.AppDomain_CreateInstance: 1528case IntrinsicId.AppDomain_CreateInstanceAndUnwrap: 1529case IntrinsicId.AppDomain_CreateInstanceFrom: 1530case IntrinsicId.AppDomain_CreateInstanceFromAndUnwrap: 1541case IntrinsicId.Assembly_CreateInstance: 1553case IntrinsicId.Assembly_GetType: 1609case IntrinsicId.None:
src\runtime\src\tools\illink\src\ILLink.Shared\TrimAnalysis\Intrinsics.cs (69)
13public static IntrinsicId GetIntrinsicIdForMethod(MethodProxy calledMethod) 18"GetTypeInfo" when calledMethod.IsDeclaredOnType("System.Reflection.IntrospectionExtensions") => IntrinsicId.IntrospectionExtensions_GetTypeInfo, 21"AsType" when calledMethod.IsDeclaredOnType("System.Reflection.TypeInfo") => IntrinsicId.TypeInfo_AsType, 24"GetTypeFromHandle" when calledMethod.IsDeclaredOnType("System.Type") => IntrinsicId.Type_GetTypeFromHandle, 27"get_TypeHandle" when calledMethod.IsDeclaredOnType("System.Type") => IntrinsicId.Type_get_TypeHandle, 30"get_Assembly" when calledMethod.IsDeclaredOnType("System.Type") => IntrinsicId.Type_get_Assembly, 37=> IntrinsicId.MethodBase_GetMethodFromHandle, 40"get_MethodHandle" when calledMethod.IsDeclaredOnType("System.Reflection.MethodBase") => IntrinsicId.MethodBase_get_MethodHandle, 43"MakeGenericType" when calledMethod.IsDeclaredOnType("System.Type") => IntrinsicId.Type_MakeGenericType, 48=> IntrinsicId.RuntimeReflectionExtensions_GetMethodInfo, 54=> IntrinsicId.RuntimeReflectionExtensions_GetRuntimeEvent, 60=> IntrinsicId.RuntimeReflectionExtensions_GetRuntimeField, 66=> IntrinsicId.RuntimeReflectionExtensions_GetRuntimeMethod, 72=> IntrinsicId.RuntimeReflectionExtensions_GetRuntimeProperty, 78=> IntrinsicId.Expression_Call, 84=> IntrinsicId.Expression_Field, 91=> IntrinsicId.Expression_Property, 97=> IntrinsicId.Expression_New, 103=> IntrinsicId.Enum_GetValues, 109=> IntrinsicId.Marshal_SizeOf, 115=> IntrinsicId.Marshal_OffsetOf, 121=> IntrinsicId.Marshal_PtrToStructure, 127=> IntrinsicId.Marshal_DestroyStructure, 133=> IntrinsicId.Marshal_GetDelegateForFunctionPointer, 143=> IntrinsicId.Type_GetType, 151=> IntrinsicId.Type_GetConstructor, 158=> IntrinsicId.Type_GetConstructors__BindingFlags, 174=> IntrinsicId.Type_GetMethod, 181=> IntrinsicId.Type_GetMethods__BindingFlags, 188=> IntrinsicId.Type_GetField, 195=> IntrinsicId.Type_GetFields__BindingFlags, 202=> IntrinsicId.Type_GetEvent, 209=> IntrinsicId.Type_GetEvents__BindingFlags, 216=> IntrinsicId.Type_GetNestedType, 223=> IntrinsicId.Type_GetNestedTypes__BindingFlags, 234=> IntrinsicId.Type_GetMember, 241=> IntrinsicId.Type_GetMembers__BindingFlags, 250=> IntrinsicId.Type_GetInterface, 255=> IntrinsicId.Type_GetInterfaces, 261=> IntrinsicId.Type_get_AssemblyQualifiedName, 267=> IntrinsicId.Type_get_UnderlyingSystemType, 273=> IntrinsicId.Type_get_BaseType, 285=> IntrinsicId.Type_GetProperty, 292=> IntrinsicId.Type_GetProperties__BindingFlags, 296=> IntrinsicId.Object_GetType, 300=> IntrinsicId.TypeDelegator_Ctor, 303=> IntrinsicId.Array_Empty, 309=> IntrinsicId.Array_CreateInstance, 320=> IntrinsicId.Activator_CreateInstance__Type, 329=> IntrinsicId.Activator_CreateInstance__AssemblyName_TypeName, 338=> IntrinsicId.Activator_CreateInstanceFrom, 346=> IntrinsicId.AppDomain_CreateInstance, 354=> IntrinsicId.AppDomain_CreateInstanceAndUnwrap, 362=> IntrinsicId.AppDomain_CreateInstanceFrom, 370=> IntrinsicId.AppDomain_CreateInstanceFromAndUnwrap, 377=> IntrinsicId.Assembly_CreateInstance, 384=> IntrinsicId.Assembly_GetType, 388=> IntrinsicId.Assembly_get_Location, 393=> IntrinsicId.Assembly_GetFile, 399=> IntrinsicId.Assembly_GetFiles, 403=> IntrinsicId.AssemblyName_get_CodeBase, 407=> IntrinsicId.AssemblyName_get_EscapedCodeBase, 412=> IntrinsicId.RuntimeHelpers_RunClassConstructor, 418=> IntrinsicId.MethodInfo_MakeGenericMethod, 424=> IntrinsicId.Nullable_GetUnderlyingType, 430=> IntrinsicId.Delegate_get_Method, 436=> IntrinsicId.TypeMapping_GetOrCreateExternalTypeMapping, 442=> IntrinsicId.TypeMapping_GetOrCreateProxyTypeMapping, 444_ => IntrinsicId.None,
TrimAnalysis\HandleCallAction.cs (20)
100IntrinsicId intrinsicId, 108case IntrinsicId.Array_Empty: 112case IntrinsicId.TypeDelegator_Ctor: 118case IntrinsicId.Object_GetType: 198case IntrinsicId.TypeMapping_GetOrCreateProxyTypeMapping: 199case IntrinsicId.TypeMapping_GetOrCreateExternalTypeMapping: 213case IntrinsicId.Array_CreateInstance: 214case IntrinsicId.Assembly_GetFile: 215case IntrinsicId.Assembly_GetFiles: 216case IntrinsicId.AssemblyName_get_EscapedCodeBase: 217case IntrinsicId.Assembly_get_Location: 218case IntrinsicId.AssemblyName_get_CodeBase: 219case IntrinsicId.Delegate_get_Method: 220case IntrinsicId.Enum_GetValues: 221case IntrinsicId.Marshal_DestroyStructure: 222case IntrinsicId.Marshal_GetDelegateForFunctionPointer: 223case IntrinsicId.Marshal_OffsetOf: 224case IntrinsicId.Marshal_PtrToStructure: 225case IntrinsicId.Marshal_SizeOf: 226case IntrinsicId.RuntimeReflectionExtensions_GetMethodInfo:
TrimAnalysis\TrimAnalysisVisitor.cs (2)
400var intrinsicId = Intrinsics.GetIntrinsicIdForMethod(method); 406static void UnhandledIntrinsicHelper(IntrinsicId intrinsicId)