1 // Licensed to the .NET Foundation under one or more agreements.
2 // The .NET Foundation licenses this file to you under the MIT license.
3 // See the LICENSE file in the project root for more information.
6 // This file contains definitions of FCall entrypoints
13 #define FCFuncElement(name, impl)
16 #ifndef FCFuncElementSig
17 #define FCFuncElementSig(name,sig,impl)
21 #define FCIntrinsic(name,impl,intrinsicID)
24 #ifndef FCIntrinsicSig
25 #define FCIntrinsicSig(name,sig,impl,intrinsicID)
29 #define QCFuncElement(name,impl)
33 #define FCDynamic(name,intrinsicID,dynamicID)
37 #define FCDynamicSig(name,sig,intrinsicID,dynamicID)
40 #ifndef FCUnreferenced
41 #define FCUnreferenced
45 #define FCFuncStart(name)
52 #ifndef FCClassElement
53 #define FCClassElement(name,namespace,funcs)
58 // Entrypoint definitions
64 FCFuncStart(gDependentHandleFuncs)
65 FCFuncElement("nInitialize", DependentHandle::nInitialize)
66 FCFuncElement("nGetPrimary", DependentHandle::nGetPrimary)
67 FCFuncElement("nGetPrimaryAndSecondary", DependentHandle::nGetPrimaryAndSecondary)
68 FCFuncElement("nFree", DependentHandle::nFree)
69 FCFuncElement("nSetPrimary", DependentHandle::nSetPrimary)
70 FCFuncElement("nSetSecondary", DependentHandle::nSetSecondary)
77 FCFuncStart(gEnumFuncs)
78 FCFuncElement("InternalGetUnderlyingType", ReflectionEnum::InternalGetEnumUnderlyingType)
79 FCFuncElement("InternalGetCorElementType", ReflectionEnum::InternalGetCorElementType)
80 QCFuncElement("GetEnumValuesAndNames", ReflectionEnum::GetEnumValuesAndNames)
81 FCFuncElement("InternalBoxEnum", ReflectionEnum::InternalBoxEnum)
82 FCFuncElement("Equals", ReflectionEnum::InternalEquals)
83 FCFuncElement("InternalCompareTo", ReflectionEnum::InternalCompareTo)
84 FCFuncElement("InternalHasFlag", ReflectionEnum::InternalHasFlag)
88 FCFuncStart(gSymWrapperCodePunkSafeHandleFuncs)
89 FCFuncElement("nGetDReleaseTarget", COMPunkSafeHandle::nGetDReleaseTarget)
92 FCFuncStart(gParseNumbersFuncs)
93 FCFuncElement("IntToString", ParseNumbers::IntToString)
94 FCFuncElement("LongToString", ParseNumbers::LongToString)
95 FCFuncElement("StringToInt", ParseNumbers::StringToInt)
96 FCFuncElement("StringToLong", ParseNumbers::StringToLong)
100 FCFuncStart(gObjectFuncs)
101 FCIntrinsic("GetType", ObjectNative::GetClass, CORINFO_INTRINSIC_Object_GetType)
102 FCFuncElement("MemberwiseClone", ObjectNative::Clone)
105 FCFuncStart(gStringFuncs)
106 FCDynamic("FastAllocateString", CORINFO_INTRINSIC_Illegal, ECall::FastAllocateString)
107 FCDynamicSig(COR_CTOR_METHOD_NAME, &gsig_IM_ArrChar_RetVoid, CORINFO_INTRINSIC_Illegal, ECall::CtorCharArrayManaged)
108 FCDynamicSig(COR_CTOR_METHOD_NAME, &gsig_IM_ArrChar_Int_Int_RetVoid, CORINFO_INTRINSIC_Illegal, ECall::CtorCharArrayStartLengthManaged)
109 FCDynamicSig(COR_CTOR_METHOD_NAME, &gsig_IM_PtrChar_RetVoid, CORINFO_INTRINSIC_Illegal, ECall::CtorCharPtrManaged)
110 FCDynamicSig(COR_CTOR_METHOD_NAME, &gsig_IM_PtrChar_Int_Int_RetVoid, CORINFO_INTRINSIC_Illegal, ECall::CtorCharPtrStartLengthManaged)
111 FCDynamicSig(COR_CTOR_METHOD_NAME, &gsig_IM_Char_Int_RetVoid, CORINFO_INTRINSIC_Illegal, ECall::CtorCharCountManaged)
112 FCFuncElementSig(COR_CTOR_METHOD_NAME, &gsig_IM_PtrSByt_RetVoid, COMString::StringInitCharPtr)
113 FCFuncElementSig(COR_CTOR_METHOD_NAME, &gsig_IM_PtrSByt_Int_Int_RetVoid, COMString::StringInitCharPtrPartial)
114 FCFuncElementSig(COR_CTOR_METHOD_NAME, &gsig_IM_PtrSByt_Int_Int_Encoding_RetVoid, COMString::StringInitSBytPtrPartialEx)
115 FCFuncElement("IsFastSort", COMString::IsFastSort)
116 FCFuncElement("nativeCompareOrdinalIgnoreCaseWC", COMString::FCCompareOrdinalIgnoreCaseWC)
117 FCIntrinsic("get_Length", COMString::Length, CORINFO_INTRINSIC_StringLength)
118 FCIntrinsic("get_Chars", COMString::GetCharAt, CORINFO_INTRINSIC_StringGetChar)
119 FCFuncElement("IsAscii", COMString::IsAscii)
120 FCFuncElement("CompareOrdinalHelper", COMString::CompareOrdinalEx)
121 FCFuncElement("IndexOfAny", COMString::IndexOfCharArray)
122 FCFuncElement("LastIndexOfAny", COMString::LastIndexOfCharArray)
123 FCFuncElementSig("ReplaceInternal", &gsig_IM_Str_Str_RetStr, COMString::ReplaceString)
124 #ifdef FEATURE_COMINTEROP
125 FCFuncElement("SetTrailByte", COMString::FCSetTrailByte)
126 FCFuncElement("TryGetTrailByte", COMString::FCTryGetTrailByte)
127 #endif // FEATURE_COMINTEROP
128 #ifdef FEATURE_RANDOMIZED_STRING_HASHING
129 FCFuncElement("InternalMarvin32HashString", COMString::Marvin32HashString)
130 QCFuncElement("InternalUseRandomizedHashing", COMString::UseRandomizedHashing)
131 #endif // FEATURE_RANDOMIZED_STRING_HASHING
134 FCFuncStart(gStringBufferFuncs)
135 FCFuncElement("ReplaceBufferInternal", COMStringBuffer::ReplaceBufferInternal)
136 FCFuncElement("ReplaceBufferAnsiInternal", COMStringBuffer::ReplaceBufferAnsiInternal)
139 FCFuncStart(gValueTypeFuncs)
140 FCFuncElement("CanCompareBits", ValueTypeHelper::CanCompareBits)
141 FCFuncElement("FastEqualsCheck", ValueTypeHelper::FastEqualsCheck)
142 FCFuncElement("GetHashCode", ValueTypeHelper::GetHashCode)
143 FCFuncElement("GetHashCodeOfPtr", ValueTypeHelper::GetHashCodeOfPtr)
146 FCFuncStart(gDiagnosticsDebugger)
147 FCFuncElement("BreakInternal", DebugDebugger::Break)
148 FCFuncElement("LaunchInternal", DebugDebugger::Launch)
149 FCFuncElement("get_IsAttached", DebugDebugger::IsDebuggerAttached)
150 FCFuncElement("Log", DebugDebugger::Log)
151 FCFuncElement("IsLogging", DebugDebugger::IsLogging)
152 FCFuncElement("CustomNotification", DebugDebugger::CustomNotification)
155 FCFuncStart(gDiagnosticsStackTrace)
156 FCFuncElement("GetStackFramesInternal", DebugStackTrace::GetStackFramesInternal)
159 FCFuncStart(gDiagnosticsLog)
160 FCFuncElement("AddLogSwitch", Log::AddLogSwitch)
161 FCFuncElement("ModifyLogSwitch", Log::ModifyLogSwitch)
164 FCFuncStart(gDiagnosticsAssert)
165 FCFuncElement("ShowDefaultAssertDialog", DebuggerAssert::ShowDefaultAssertDialog)
168 FCFuncStart(gDateTimeFuncs)
169 FCFuncElement("GetSystemTimeAsFileTime", SystemNative::__GetSystemTimeAsFileTime)
172 FCFuncStart(gEnvironmentFuncs)
173 FCFuncElement("get_TickCount", SystemNative::GetTickCount)
174 QCFuncElement("_Exit", SystemNative::Exit)
175 FCFuncElement("set_ExitCode", SystemNative::SetExitCode)
176 FCFuncElement("get_ExitCode", SystemNative::GetExitCode)
177 FCFuncElement("get_HasShutdownStarted", SystemNative::HasShutdownStarted)
178 QCFuncElement("GetProcessorCount", SystemNative::GetProcessorCount)
179 FCFuncElement("GetCommandLineArgsNative", SystemNative::GetCommandLineArgs)
180 FCFuncElement("get_CurrentProcessorNumber", SystemNative::GetCurrentProcessorNumber)
182 #if defined(FEATURE_COMINTEROP)
183 QCFuncElement("WinRTSupported", SystemNative::WinRTSupported)
184 #endif // FEATURE_COMINTEROP
185 FCFuncElementSig("FailFast", &gsig_SM_Str_RetVoid, SystemNative::FailFast)
186 FCFuncElementSig("FailFast", &gsig_SM_Str_Exception_RetVoid, SystemNative::FailFastWithException)
189 FCFuncStart(gRuntimeEnvironmentFuncs)
190 FCFuncElement("GetModuleFileName", SystemNative::_GetModuleFileName)
193 FCFuncStart(gSerializationFuncs)
194 FCFuncElement("nativeGetUninitializedObject", ReflectionSerialization::GetUninitializedObject)
197 FCFuncStart(gExceptionFuncs)
198 FCFuncElement("IsImmutableAgileException", ExceptionNative::IsImmutableAgileException)
199 FCFuncElement("nIsTransient", ExceptionNative::IsTransient)
200 FCFuncElement("GetMethodFromStackTrace", SystemNative::GetMethodFromStackTrace)
201 QCFuncElement("GetMessageFromNativeResources", ExceptionNative::GetMessageFromNativeResources)
202 FCFuncElement("PrepareForForeignExceptionRaise", ExceptionNative::PrepareForForeignExceptionRaise)
203 FCFuncElement("CopyStackTrace", ExceptionNative::CopyStackTrace)
204 FCFuncElement("CopyDynamicMethods", ExceptionNative::CopyDynamicMethods)
205 FCFuncElement("GetStackTracesDeepCopy", ExceptionNative::GetStackTracesDeepCopy)
206 FCFuncElement("SaveStackTracesFromDeepCopy", ExceptionNative::SaveStackTracesFromDeepCopy)
209 FCFuncStart(gSafeHandleFuncs)
210 FCFuncElement("InternalDispose", SafeHandle::DisposeNative)
211 FCFuncElement("InternalFinalize", SafeHandle::Finalize)
212 FCFuncElement("SetHandleAsInvalid", SafeHandle::SetHandleAsInvalid)
213 FCFuncElement("DangerousAddRef", SafeHandle::DangerousAddRef)
214 FCFuncElement("DangerousRelease", SafeHandle::DangerousRelease)
217 FCFuncStart(gCriticalHandleFuncs)
218 FCFuncElement("FireCustomerDebugProbe", CriticalHandle::FireCustomerDebugProbe)
221 FCFuncStart(gSafeBufferFuncs)
222 FCFuncElement("PtrToStructureNative", SafeBuffer::PtrToStructure)
223 FCFuncElement("StructureToPtrNative", SafeBuffer::StructureToPtr)
226 FCFuncStart(gTypedReferenceFuncs)
227 FCFuncElement("InternalToObject", ReflectionInvocation::TypedReferenceToObject)
228 FCFuncElement("InternalSetTypedReference", ReflectionInvocation::SetTypedReference)
229 FCFuncElement("InternalMakeTypedReference", ReflectionInvocation::MakeTypedReference)
232 FCFuncStart(gSystem_Type)
233 FCIntrinsic("GetTypeFromHandle", RuntimeTypeHandle::GetTypeFromHandle, CORINFO_INTRINSIC_GetTypeFromHandle)
234 FCFuncElement("GetTypeFromHandleUnsafe", RuntimeTypeHandle::GetRuntimeType)
235 FCIntrinsic("op_Equality", RuntimeTypeHandle::TypeEQ, CORINFO_INTRINSIC_TypeEQ)
236 FCIntrinsic("op_Inequality", RuntimeTypeHandle::TypeNEQ, CORINFO_INTRINSIC_TypeNEQ)
239 FCFuncStart(gSystem_RuntimeType)
240 FCFuncElement("GetGUID", ReflectionInvocation::GetGUID)
241 FCFuncElement("_CreateEnum", ReflectionInvocation::CreateEnum)
242 FCFuncElement("CanValueSpecialCast", ReflectionInvocation::CanValueSpecialCast)
243 FCFuncElement("AllocateValueType", ReflectionInvocation::AllocateValueType)
244 #if defined(FEATURE_COMINTEROP)
245 FCFuncElement("GetTypeFromCLSIDImpl", ReflectionInvocation::GetClassFromCLSID)
246 FCFuncElement("GetTypeFromProgIDImpl", ReflectionInvocation::GetClassFromProgID)
247 FCFuncElement("InvokeDispMethod", ReflectionInvocation::InvokeDispMethod)
248 #ifdef FEATURE_COMINTEROP_WINRT_MANAGED_ACTIVATION
249 FCFuncElement("IsTypeExportedToWindowsRuntime", RuntimeTypeHandle::IsTypeExportedToWindowsRuntime)
251 FCFuncElement("IsWindowsRuntimeObjectType", RuntimeTypeHandle::IsWindowsRuntimeObjectType)
252 #endif // defined(FEATURE_COMINTEROP)
255 FCFuncStart(gJitHelpers)
256 FCFuncElement("UnsafeSetArrayElement", JitHelpers::UnsafeSetArrayElement)
258 FCFuncElement("IsAddressInStack", ReflectionInvocation::IsAddressInStack)
262 FCFuncStart(gCOMTypeHandleFuncs)
263 FCFuncElement("CreateInstance", RuntimeTypeHandle::CreateInstance)
264 FCFuncElement("CreateCaInstance", RuntimeTypeHandle::CreateCaInstance)
265 FCFuncElement("CreateInstanceForAnotherGenericParameter", RuntimeTypeHandle::CreateInstanceForGenericType)
266 QCFuncElement("GetGCHandle", RuntimeTypeHandle::GetGCHandle)
268 FCFuncElement("IsInstanceOfType", RuntimeTypeHandle::IsInstanceOfType)
269 FCFuncElement("GetDeclaringMethod", RuntimeTypeHandle::GetDeclaringMethod)
270 FCFuncElement("GetDeclaringType", RuntimeTypeHandle::GetDeclaringType)
271 QCFuncElement("GetDefaultConstructor", RuntimeTypeHandle::GetDefaultConstructor)
272 QCFuncElement("MakePointer", RuntimeTypeHandle::MakePointer)
273 QCFuncElement("MakeByRef", RuntimeTypeHandle::MakeByRef)
274 QCFuncElement("MakeSZArray", RuntimeTypeHandle::MakeSZArray)
275 QCFuncElement("MakeArray", RuntimeTypeHandle::MakeArray)
276 QCFuncElement("IsCollectible", RuntimeTypeHandle::IsCollectible)
277 FCFuncElement("GetFirstIntroducedMethod", RuntimeTypeHandle::GetFirstIntroducedMethod)
278 FCFuncElement("GetNextIntroducedMethod", RuntimeTypeHandle::GetNextIntroducedMethod)
279 FCFuncElement("GetCorElementType", RuntimeTypeHandle::GetCorElementType)
280 FCFuncElement("GetAssembly", RuntimeTypeHandle::GetAssembly)
281 FCFuncElement("GetModule", RuntimeTypeHandle::GetModule)
282 FCFuncElement("GetBaseType", RuntimeTypeHandle::GetBaseType)
283 FCFuncElement("GetElementType", RuntimeTypeHandle::GetElementType)
284 FCFuncElement("GetArrayRank", RuntimeTypeHandle::GetArrayRank)
285 FCFuncElement("GetToken", RuntimeTypeHandle::GetToken)
286 FCFuncElement("_GetUtf8Name", RuntimeTypeHandle::GetUtf8Name)
287 FCFuncElement("GetMethodAt", RuntimeTypeHandle::GetMethodAt)
288 FCFuncElement("GetFields", RuntimeTypeHandle::GetFields)
289 FCFuncElement("GetInterfaces", RuntimeTypeHandle::GetInterfaces)
290 QCFuncElement("GetConstraints", RuntimeTypeHandle::GetConstraints)
291 FCFuncElement("GetAttributes", RuntimeTypeHandle::GetAttributes)
292 FCFuncElement("_GetMetadataImport", RuntimeTypeHandle::GetMetadataImport)
293 FCFuncElement("GetNumVirtuals", RuntimeTypeHandle::GetNumVirtuals)
294 QCFuncElement("VerifyInterfaceIsImplemented", RuntimeTypeHandle::VerifyInterfaceIsImplemented)
295 QCFuncElement("GetInterfaceMethodImplementationSlot", RuntimeTypeHandle::GetInterfaceMethodImplementationSlot)
296 FCFuncElement("IsComObject", RuntimeTypeHandle::IsComObject)
297 FCFuncElement("IsValueType", RuntimeTypeHandle::IsValueType)
298 FCFuncElement("IsInterface", RuntimeTypeHandle::IsInterface)
299 QCFuncElement("IsSecurityCritical", RuntimeTypeHandle::IsSecurityCritical)
300 QCFuncElement("IsSecuritySafeCritical", RuntimeTypeHandle::IsSecuritySafeCritical)
301 QCFuncElement("IsSecurityTransparent", RuntimeTypeHandle::IsSecurityTransparent)
302 QCFuncElement("_IsVisible", RuntimeTypeHandle::IsVisible)
303 QCFuncElement("ConstructName", RuntimeTypeHandle::ConstructName)
304 FCFuncElement("CanCastTo", RuntimeTypeHandle::CanCastTo)
305 QCFuncElement("GetTypeByName", RuntimeTypeHandle::GetTypeByName)
306 QCFuncElement("GetTypeByNameUsingCARules", RuntimeTypeHandle::GetTypeByNameUsingCARules)
307 QCFuncElement("GetInstantiation", RuntimeTypeHandle::GetInstantiation)
308 QCFuncElement("Instantiate", RuntimeTypeHandle::Instantiate)
309 QCFuncElement("GetGenericTypeDefinition", RuntimeTypeHandle::GetGenericTypeDefinition)
310 FCFuncElement("HasInstantiation", RuntimeTypeHandle::HasInstantiation)
311 FCFuncElement("GetGenericVariableIndex", RuntimeTypeHandle::GetGenericVariableIndex)
312 FCFuncElement("IsGenericVariable", RuntimeTypeHandle::IsGenericVariable)
313 FCFuncElement("IsGenericTypeDefinition", RuntimeTypeHandle::IsGenericTypeDefinition)
314 FCFuncElement("ContainsGenericVariables", RuntimeTypeHandle::ContainsGenericVariables)
315 FCFuncElement("SatisfiesConstraints", RuntimeTypeHandle::SatisfiesConstraints)
316 FCFuncElement("Allocate", RuntimeTypeHandle::Allocate) //for A.CI
317 FCFuncElement("CompareCanonicalHandles", RuntimeTypeHandle::CompareCanonicalHandles)
318 FCIntrinsic("GetValueInternal", RuntimeTypeHandle::GetValueInternal, CORINFO_INTRINSIC_RTH_GetValueInternal)
321 FCFuncStart(gMetaDataImport)
322 FCFuncElement("_GetDefaultValue", MetaDataImport::GetDefaultValue)
323 FCFuncElement("_GetName", MetaDataImport::GetName)
324 FCFuncElement("_GetUserString", MetaDataImport::GetUserString)
325 FCFuncElement("_GetScopeProps", MetaDataImport::GetScopeProps)
326 FCFuncElement("_GetClassLayout", MetaDataImport::GetClassLayout)
327 FCFuncElement("_GetSignatureFromToken", MetaDataImport::GetSignatureFromToken)
328 FCFuncElement("_GetNamespace", MetaDataImport::GetNamespace)
329 FCFuncElement("_GetEventProps", MetaDataImport::GetEventProps)
330 FCFuncElement("_GetFieldDefProps", MetaDataImport::GetFieldDefProps)
331 FCFuncElement("_GetPropertyProps", MetaDataImport::GetPropertyProps)
332 FCFuncElement("_GetParentToken", MetaDataImport::GetParentToken)
333 FCFuncElement("_GetParamDefProps", MetaDataImport::GetParamDefProps)
334 FCFuncElement("_GetGenericParamProps", MetaDataImport::GetGenericParamProps)
336 FCFuncElement("_Enum", MetaDataImport::Enum)
337 FCFuncElement("_GetMemberRefProps", MetaDataImport::GetMemberRefProps)
338 FCFuncElement("_GetCustomAttributeProps", MetaDataImport::GetCustomAttributeProps)
339 FCFuncElement("_GetFieldOffset", MetaDataImport::GetFieldOffset)
341 FCFuncElement("_GetSigOfFieldDef", MetaDataImport::GetSigOfFieldDef)
342 FCFuncElement("_GetSigOfMethodDef", MetaDataImport::GetSigOfMethodDef)
343 FCFuncElement("_GetFieldMarshal", MetaDataImport::GetFieldMarshal)
344 FCFuncElement("_GetPInvokeMap", MetaDataImport::GetPinvokeMap)
345 FCFuncElement("_IsValidToken", MetaDataImport::IsValidToken)
346 FCFuncElement("_GetMarshalAs", MetaDataImport::GetMarshalAs)
349 FCFuncStart(gRuntimeFieldInfoFuncs)
350 FCFuncElement("PerformVisibilityCheckOnField", ReflectionInvocation::PerformVisibilityCheckOnField)
353 FCFuncStart(gSignatureNative)
354 FCFuncElement("GetSignature", SignatureNative::GetSignature)
355 FCFuncElement("GetCustomModifiers", SignatureNative::GetCustomModifiers)
356 FCFuncElement("CompareSig", SignatureNative::CompareSig)
359 FCFuncStart(gRuntimeMethodHandle)
360 QCFuncElement("ConstructInstantiation", RuntimeMethodHandle::ConstructInstantiation)
361 FCFuncElement("_GetCurrentMethod", RuntimeMethodHandle::GetCurrentMethod)
362 FCFuncElement("InvokeMethod", RuntimeMethodHandle::InvokeMethod)
363 QCFuncElement("GetFunctionPointer", RuntimeMethodHandle::GetFunctionPointer)
364 FCFuncElement("GetImplAttributes", RuntimeMethodHandle::GetImplAttributes)
365 FCFuncElement("GetAttributes", RuntimeMethodHandle::GetAttributes)
366 FCFuncElement("GetDeclaringType", RuntimeMethodHandle::GetDeclaringType)
367 FCFuncElement("GetSlot", RuntimeMethodHandle::GetSlot)
368 FCFuncElement("GetMethodDef", RuntimeMethodHandle::GetMethodDef)
369 FCFuncElement("GetName", RuntimeMethodHandle::GetName)
370 FCFuncElement("_GetUtf8Name", RuntimeMethodHandle::GetUtf8Name)
371 FCFuncElement("MatchesNameHash", RuntimeMethodHandle::MatchesNameHash)
372 QCFuncElement("GetMethodInstantiation", RuntimeMethodHandle::GetMethodInstantiation)
373 FCFuncElement("HasMethodInstantiation", RuntimeMethodHandle::HasMethodInstantiation)
374 FCFuncElement("IsGenericMethodDefinition", RuntimeMethodHandle::IsGenericMethodDefinition)
375 FCFuncElement("IsTypicalMethodDefinition", RuntimeMethodHandle::IsTypicalMethodDefinition)
376 QCFuncElement("GetTypicalMethodDefinition", RuntimeMethodHandle::GetTypicalMethodDefinition)
377 QCFuncElement("StripMethodInstantiation", RuntimeMethodHandle::StripMethodInstantiation)
378 FCFuncElement("GetStubIfNeeded", RuntimeMethodHandle::GetStubIfNeeded)
379 FCFuncElement("GetMethodFromCanonical", RuntimeMethodHandle::GetMethodFromCanonical)
380 FCFuncElement("IsDynamicMethod", RuntimeMethodHandle::IsDynamicMethod)
381 FCFuncElement("GetMethodBody", RuntimeMethodHandle::GetMethodBody)
382 QCFuncElement("_IsSecurityTransparent", RuntimeMethodHandle::IsSecurityTransparent)
383 FCFuncElement("CheckLinktimeDemands", RuntimeMethodHandle::CheckLinktimeDemands)
384 QCFuncElement("IsCAVisibleFromDecoratedType", RuntimeMethodHandle::IsCAVisibleFromDecoratedType)
385 FCFuncElement("IsConstructor", RuntimeMethodHandle::IsConstructor)
386 QCFuncElement("Destroy", RuntimeMethodHandle::Destroy)
387 FCFuncElement("GetResolver", RuntimeMethodHandle::GetResolver)
388 FCFuncElement("GetLoaderAllocator", RuntimeMethodHandle::GetLoaderAllocator)
389 FCFuncElement("GetSpecialSecurityFlags", ReflectionInvocation::GetSpecialSecurityFlags)
392 FCFuncStart(gCOMDefaultBinderFuncs)
393 FCFuncElement("CanConvertPrimitive", ReflectionBinder::DBCanConvertPrimitive)
394 FCFuncElement("CanConvertPrimitiveObjectToType", ReflectionBinder::DBCanConvertObjectPrimitive)
398 FCFuncStart(gCOMFieldHandleNewFuncs)
399 FCFuncElement("GetValue", RuntimeFieldHandle::GetValue)
400 FCFuncElement("SetValue", RuntimeFieldHandle::SetValue)
401 FCFuncElement("GetValueDirect", RuntimeFieldHandle::GetValueDirect)
402 FCFuncElement("SetValueDirect", RuntimeFieldHandle::SetValueDirect)
403 FCFuncElement("GetName", RuntimeFieldHandle::GetName)
404 FCFuncElement("_GetUtf8Name", RuntimeFieldHandle::GetUtf8Name)
405 FCFuncElement("MatchesNameHash", RuntimeFieldHandle::MatchesNameHash)
406 FCFuncElement("GetAttributes", RuntimeFieldHandle::GetAttributes)
407 FCFuncElement("GetApproxDeclaringType", RuntimeFieldHandle::GetApproxDeclaringType)
408 FCFuncElement("GetToken", RuntimeFieldHandle::GetToken)
409 FCFuncElement("GetStaticFieldForGenericType", RuntimeFieldHandle::GetStaticFieldForGenericType)
410 QCFuncElement("IsSecurityCritical", RuntimeFieldHandle::IsSecurityCritical)
411 QCFuncElement("IsSecuritySafeCritical", RuntimeFieldHandle::IsSecuritySafeCritical)
412 QCFuncElement("IsSecurityTransparent", RuntimeFieldHandle::IsSecurityTransparent)
413 FCFuncElement("AcquiresContextFromThis", RuntimeFieldHandle::AcquiresContextFromThis)
414 QCFuncElement("CheckAttributeAccess", RuntimeFieldHandle::CheckAttributeAccess)
418 FCFuncStart(gCOMModuleFuncs)
419 QCFuncElement("GetType", COMModule::GetType)
420 QCFuncElement("GetScopeName", COMModule::GetScopeName)
421 FCFuncElement("GetTypes", COMModule::GetTypes)
422 QCFuncElement("GetFullyQualifiedName", COMModule::GetFullyQualifiedName)
423 QCFuncElement("nIsTransientInternal", COMModule::IsTransient)
424 FCFuncElement("IsResource", COMModule::IsResource)
427 FCFuncStart(gCOMModuleBuilderFuncs)
428 FCFuncElement("nCreateISymWriterForDynamicModule", COMModule::nCreateISymWriterForDynamicModule)
429 QCFuncElement("GetStringConstant", COMModule::GetStringConstant)
430 QCFuncElement("GetTypeRef", COMModule::GetTypeRef)
431 QCFuncElement("GetTokenFromTypeSpec", COMModule::GetTokenFromTypeSpec)
432 QCFuncElement("GetMemberRef", COMModule::GetMemberRef)
433 QCFuncElement("GetMemberRefOfMethodInfo", COMModule::GetMemberRefOfMethodInfo)
434 QCFuncElement("GetMemberRefOfFieldInfo", COMModule::GetMemberRefOfFieldInfo)
435 QCFuncElement("GetMemberRefFromSignature", COMModule::GetMemberRefFromSignature)
436 QCFuncElement("GetArrayMethodToken", COMModule::GetArrayMethodToken)
437 QCFuncElement("SetFieldRVAContent", COMModule::SetFieldRVAContent)
440 FCFuncStart(gCOMModuleHandleFuncs)
441 FCFuncElement("GetToken", ModuleHandle::GetToken)
442 QCFuncElement("GetModuleType", ModuleHandle::GetModuleType)
443 FCFuncElement("GetDynamicMethod", ModuleHandle::GetDynamicMethod)
444 FCFuncElement("_GetMetadataImport", ModuleHandle::GetMetadataImport)
445 QCFuncElement("ResolveType", ModuleHandle::ResolveType)
446 QCFuncElement("ResolveMethod", ModuleHandle::ResolveMethod)
447 QCFuncElement("_ContainsPropertyMatchingHash", ModuleHandle::ContainsPropertyMatchingHash)
448 QCFuncElement("ResolveField", ModuleHandle::ResolveField)
449 QCFuncElement("GetPEKind", ModuleHandle::GetPEKind)
450 FCFuncElement("GetMDStreamVersion", ModuleHandle::GetMDStreamVersion)
453 FCFuncStart(gCustomAttributeEncodedArgument)
454 FCFuncElement("ParseAttributeArguments", Attribute::ParseAttributeArguments)
457 FCFuncStart(gCOMCustomAttributeFuncs)
458 FCFuncElement("_ParseAttributeUsageAttribute", COMCustomAttribute::ParseAttributeUsageAttribute)
459 FCFuncElement("_CreateCaObject", COMCustomAttribute::CreateCaObject)
460 FCFuncElement("_GetPropertyOrFieldData", COMCustomAttribute::GetPropertyOrFieldData)
463 FCFuncStart(gCOMClassWriter)
464 QCFuncElement("DefineGenericParam", COMDynamicWrite::DefineGenericParam)
465 QCFuncElement("DefineType", COMDynamicWrite::DefineType)
466 QCFuncElement("SetParentType", COMDynamicWrite::SetParentType)
467 QCFuncElement("AddInterfaceImpl", COMDynamicWrite::AddInterfaceImpl)
468 QCFuncElement("DefineMethod", COMDynamicWrite::DefineMethod)
469 QCFuncElement("DefineMethodSpec", COMDynamicWrite::DefineMethodSpec)
470 QCFuncElement("SetMethodIL", COMDynamicWrite::SetMethodIL)
471 QCFuncElement("TermCreateClass", COMDynamicWrite::TermCreateClass)
472 QCFuncElement("DefineField", COMDynamicWrite::DefineField)
473 QCFuncElement("DefineProperty", COMDynamicWrite::DefineProperty)
474 QCFuncElement("DefineEvent", COMDynamicWrite::DefineEvent)
475 QCFuncElement("DefineMethodSemantics", COMDynamicWrite::DefineMethodSemantics)
476 QCFuncElement("SetMethodImpl", COMDynamicWrite::SetMethodImpl)
477 QCFuncElement("DefineMethodImpl", COMDynamicWrite::DefineMethodImpl)
478 QCFuncElement("GetTokenFromSig", COMDynamicWrite::GetTokenFromSig)
479 QCFuncElement("SetFieldLayoutOffset", COMDynamicWrite::SetFieldLayoutOffset)
480 QCFuncElement("SetClassLayout", COMDynamicWrite::SetClassLayout)
481 QCFuncElement("SetParamInfo", COMDynamicWrite::SetParamInfo)
482 QCFuncElement("SetConstantValue", COMDynamicWrite::SetConstantValue)
483 QCFuncElement("DefineCustomAttribute", COMDynamicWrite::DefineCustomAttribute)
487 FCFuncStart(gCompatibilitySwitchFuncs)
488 FCFuncElement("GetValueInternalCall", CompatibilitySwitch::GetValue)
492 FCFuncStart(gBCLDebugFuncs)
493 FCFuncElement("GetRegistryLoggingValues", ManagedLoggingHelper::GetRegistryLoggingValues)
496 FCFuncStart(gAppDomainManagerFuncs)
497 QCFuncElement("GetEntryAssembly", AssemblyNative::GetEntryAssembly)
502 FCFuncStart(gAppDomainFuncs)
503 FCFuncElement("IsStringInterned", AppDomainNative::IsStringInterned)
504 FCFuncElement("IsUnloadingForcedFinalize", AppDomainNative::IsUnloadingForcedFinalize)
505 #ifdef FEATURE_LOADER_OPTIMIZATION
506 FCFuncElement("UpdateLoaderOptimization", AppDomainNative::UpdateLoaderOptimization)
507 #endif // FEATURE_LOADER_OPTIMIZATION
508 QCFuncElement("DisableFusionUpdatesFromADManager", AppDomainNative::DisableFusionUpdatesFromADManager)
511 QCFuncElement("nGetAppXFlags", AppDomainNative::GetAppXFlags)
513 QCFuncElement("GetAppDomainManagerType", AppDomainNative::GetAppDomainManagerType)
514 QCFuncElement("SetAppDomainManagerType", AppDomainNative::SetAppDomainManagerType)
515 FCFuncElement("nGetFriendlyName", AppDomainNative::GetFriendlyName)
516 QCFuncElement("SetSecurityHomogeneousFlag", AppDomainNative::SetSecurityHomogeneousFlag)
517 QCFuncElement("SetupDomainSecurity", AppDomainNative::SetupDomainSecurity)
518 FCFuncElement("nSetupFriendlyName", AppDomainNative::SetupFriendlyName)
519 #if FEATURE_COMINTEROP
520 FCFuncElement("nSetDisableInterfaceCache", AppDomainNative::SetDisableInterfaceCache)
521 #endif // FEATURE_COMINTEROP
522 FCFuncElement("nGetAssemblies", AppDomainNative::GetAssemblies)
523 FCFuncElement("nCreateContext", AppDomainNative::CreateContext)
524 FCFuncElement("GetId", AppDomainNative::GetId)
525 FCFuncElement("GetOrInternString", AppDomainNative::GetOrInternString)
526 QCFuncElement("GetGrantSet", AppDomainNative::GetGrantSet)
527 QCFuncElement("nSetupBindingPaths", AppDomainNative::SetupBindingPaths)
528 QCFuncElement("nSetNativeDllSearchDirectories", AppDomainNative::SetNativeDllSearchDirectories)
529 FCFuncElement("IsFinalizingForUnload", AppDomainNative::IsFinalizingForUnload)
530 FCFuncElement("PublishAnonymouslyHostedDynamicMethodsAssembly", AppDomainNative::PublishAnonymouslyHostedDynamicMethodsAssembly)
531 #ifdef FEATURE_APPDOMAIN_RESOURCE_MONITORING
532 FCFuncElement("nEnableMonitoring", AppDomainNative::EnableMonitoring)
533 FCFuncElement("nMonitoringIsEnabled", AppDomainNative::MonitoringIsEnabled)
534 FCFuncElement("nGetTotalProcessorTime", AppDomainNative::GetTotalProcessorTime)
535 FCFuncElement("nGetTotalAllocatedMemorySize", AppDomainNative::GetTotalAllocatedMemorySize)
536 FCFuncElement("nGetLastSurvivedMemorySize", AppDomainNative::GetLastSurvivedMemorySize)
537 FCFuncElement("nGetLastSurvivedProcessMemorySize", AppDomainNative::GetLastSurvivedProcessMemorySize)
539 #endif //FEATURE_APPDOMAIN_RESOURCE_MONITORING
543 FCFuncStart(gUtf8String)
544 FCFuncElement("EqualsCaseSensitive", Utf8String::EqualsCaseSensitive)
545 QCFuncElement("EqualsCaseInsensitive", Utf8String::EqualsCaseInsensitive)
546 QCFuncElement("HashCaseInsensitive", Utf8String::HashCaseInsensitive)
549 FCFuncStart(gTypeNameBuilder)
550 QCFuncElement("CreateTypeNameBuilder", TypeNameBuilder::_CreateTypeNameBuilder)
551 QCFuncElement("ReleaseTypeNameBuilder", TypeNameBuilder::_ReleaseTypeNameBuilder)
552 QCFuncElement("OpenGenericArguments", TypeNameBuilder::_OpenGenericArguments)
553 QCFuncElement("CloseGenericArguments", TypeNameBuilder::_CloseGenericArguments)
554 QCFuncElement("OpenGenericArgument", TypeNameBuilder::_OpenGenericArgument)
555 QCFuncElement("CloseGenericArgument", TypeNameBuilder::_CloseGenericArgument)
556 QCFuncElement("AddName", TypeNameBuilder::_AddName)
557 QCFuncElement("AddPointer", TypeNameBuilder::_AddPointer)
558 QCFuncElement("AddByRef", TypeNameBuilder::_AddByRef)
559 QCFuncElement("AddSzArray", TypeNameBuilder::_AddSzArray)
560 QCFuncElement("AddArray", TypeNameBuilder::_AddArray)
561 QCFuncElement("AddAssemblySpec", TypeNameBuilder::_AddAssemblySpec)
562 QCFuncElement("ToString", TypeNameBuilder::_ToString)
563 QCFuncElement("Clear", TypeNameBuilder::_Clear)
567 FCFuncStart(gSafeTypeNameParserHandle)
568 QCFuncElement("_ReleaseTypeNameParser", TypeName::QReleaseTypeNameParser)
571 FCFuncStart(gTypeNameParser)
572 QCFuncElement("_CreateTypeNameParser", TypeName::QCreateTypeNameParser)
573 QCFuncElement("_GetNames", TypeName::QGetNames)
574 QCFuncElement("_GetTypeArguments", TypeName::QGetTypeArguments)
575 QCFuncElement("_GetModifiers", TypeName::QGetModifiers)
576 QCFuncElement("_GetAssemblyName", TypeName::QGetAssemblyName)
579 FCFuncStart(gManifestBasedResourceGrovelerFuncs)
580 QCFuncElement("GetNeutralResourcesLanguageAttribute", AssemblyNative::GetNeutralResourcesLanguageAttribute)
583 FCFuncStart(gAssemblyFuncs)
584 QCFuncElement("GetFullName", AssemblyNative::GetFullName)
585 QCFuncElement("GetLocation", AssemblyNative::GetLocation)
586 QCFuncElement("GetResource", AssemblyNative::GetResource)
587 QCFuncElement("GetCodeBase", AssemblyNative::GetCodeBase)
588 QCFuncElement("GetExecutingAssembly", AssemblyNative::GetExecutingAssembly)
589 QCFuncElement("GetFlags", AssemblyNative::GetFlags)
590 QCFuncElement("GetHashAlgorithm", AssemblyNative::GetHashAlgorithm)
591 QCFuncElement("GetLocale", AssemblyNative::GetLocale)
592 QCFuncElement("GetPublicKey", AssemblyNative::GetPublicKey)
593 QCFuncElement("GetSimpleName", AssemblyNative::GetSimpleName)
594 QCFuncElement("GetVersion", AssemblyNative::GetVersion)
595 FCFuncElement("FCallIsDynamic", AssemblyNative::IsDynamic)
596 FCFuncElement("_nLoad", AssemblyNative::Load)
597 QCFuncElement("GetType", AssemblyNative::GetType)
598 QCFuncElement("GetManifestResourceInfo", AssemblyNative::GetManifestResourceInfo)
599 QCFuncElement("GetModules", AssemblyNative::GetModules)
600 QCFuncElement("GetModule", AssemblyNative::GetModule)
601 FCFuncElement("GetReferencedAssemblies", AssemblyNative::GetReferencedAssemblies)
602 QCFuncElement("GetExportedTypes", AssemblyNative::GetExportedTypes)
603 FCFuncElement("GetManifestResourceNames", AssemblyNative::GetManifestResourceNames)
604 QCFuncElement("GetEntryPoint", AssemblyNative::GetEntryPoint)
605 QCFuncElement("IsAllSecurityTransparent", AssemblyNative::IsAllSecurityTransparent)
606 QCFuncElement("IsAllSecurityCritical", AssemblyNative::IsAllSecurityCritical)
607 QCFuncElement("GetImageRuntimeVersion", AssemblyNative::GetImageRuntimeVersion)
608 FCFuncElement("IsReflectionOnly", AssemblyNative::IsReflectionOnly)
609 FCFuncElement("GetManifestModule", AssemblyHandle::GetManifestModule)
610 FCFuncElement("GetToken", AssemblyHandle::GetToken)
613 FCFuncStart(gAssemblyExtensionsFuncs)
614 QCFuncElement("InternalTryGetRawMetadata", AssemblyNative::InternalTryGetRawMetadata)
617 FCFuncStart(gAssemblyLoadContextFuncs)
618 QCFuncElement("InitializeAssemblyLoadContext", AssemblyNative::InitializeAssemblyLoadContext)
619 QCFuncElement("LoadFromPath", AssemblyNative::LoadFromPath)
620 QCFuncElement("InternalLoadUnmanagedDllFromPath", AssemblyNative::InternalLoadUnmanagedDllFromPath)
621 QCFuncElement("CanUseAppPathAssemblyLoadContextInCurrentDomain", AssemblyNative::CanUseAppPathAssemblyLoadContextInCurrentDomain)
622 QCFuncElement("LoadFromStream", AssemblyNative::LoadFromStream)
623 QCFuncElement("GetLoadContextForAssembly", AssemblyNative::GetLoadContextForAssembly)
624 #if defined(FEATURE_MULTICOREJIT)
625 QCFuncElement("InternalSetProfileRoot", MultiCoreJITNative::InternalSetProfileRoot)
626 QCFuncElement("InternalStartProfile", MultiCoreJITNative::InternalStartProfile)
627 #endif // defined(FEATURE_MULTICOREJIT)
630 FCFuncStart(gAssemblyNameFuncs)
631 FCFuncElement("nInit", AssemblyNameNative::Init)
632 FCFuncElement("nToString", AssemblyNameNative::ToString)
633 FCFuncElement("nGetPublicKeyToken", AssemblyNameNative::GetPublicKeyToken)
634 FCFuncElement("nGetFileInformation", AssemblyNameNative::GetFileInformation)
637 FCFuncStart(gLoaderAllocatorFuncs)
638 QCFuncElement("Destroy", LoaderAllocator::Destroy)
641 FCFuncStart(gAssemblyBuilderFuncs)
642 FCFuncElement("nCreateDynamicAssembly", AppDomainNative::CreateDynamicAssembly)
643 FCFuncElement("GetInMemoryAssemblyModule", AssemblyNative::GetInMemoryAssemblyModule)
648 FCFuncElement("MemberInfoCacheCreation", MdaManagedSupport::MemberInfoCacheCreation)
649 FCFuncElement("DateTimeInvalidLocalFormat", MdaManagedSupport::DateTimeInvalidLocalFormat)
650 FCFuncElement("IsStreamWriterBufferedDataLostEnabled", MdaManagedSupport::IsStreamWriterBufferedDataLostEnabled)
651 FCFuncElement("IsStreamWriterBufferedDataLostCaptureAllocatedCallStack", MdaManagedSupport::IsStreamWriterBufferedDataLostCaptureAllocatedCallStack)
652 FCFuncElement("ReportStreamWriterBufferedDataLost", MdaManagedSupport::ReportStreamWriterBufferedDataLost)
653 FCFuncElement("IsInvalidGCHandleCookieProbeEnabled", MdaManagedSupport::IsInvalidGCHandleCookieProbeEnabled)
654 FCFuncElement("FireInvalidGCHandleCookieProbe", MdaManagedSupport::FireInvalidGCHandleCookieProbe)
655 FCFuncElement("ReportErrorSafeHandleRelease", MdaManagedSupport::ReportErrorSafeHandleRelease)
657 #endif // MDA_SUPPORTED
659 FCFuncStart(gDelegateFuncs)
660 FCFuncElement("BindToMethodName", COMDelegate::BindToMethodName)
661 FCFuncElement("BindToMethodInfo", COMDelegate::BindToMethodInfo)
662 FCFuncElement("GetMulticastInvoke", COMDelegate::GetMulticastInvoke)
663 FCFuncElement("GetInvokeMethod", COMDelegate::GetInvokeMethod)
664 FCFuncElement("InternalAlloc", COMDelegate::InternalAlloc)
665 FCFuncElement("InternalAllocLike", COMDelegate::InternalAllocLike)
666 FCFuncElement("InternalEqualTypes", COMDelegate::InternalEqualTypes)
667 FCFuncElement("InternalEqualMethodHandles", COMDelegate::InternalEqualMethodHandles)
668 FCFuncElement("FindMethodHandle", COMDelegate::FindMethodHandle)
669 FCFuncElement("AdjustTarget", COMDelegate::AdjustTarget)
670 FCFuncElement("GetCallStub", COMDelegate::GetCallStub)
671 FCFuncElement("CompareUnmanagedFunctionPtrs", COMDelegate::CompareUnmanagedFunctionPtrs)
673 // The FCall mechanism knows how to wire multiple different constructor calls into a
674 // single entrypoint, without the following entry. But we need this entry to satisfy
675 // frame creation within the body:
676 FCFuncElement("DelegateConstruct", COMDelegate::DelegateConstruct)
679 FCFuncStart(gMathFuncs)
680 FCIntrinsicSig("Abs", &gsig_SM_Dbl_RetDbl, COMDouble::Abs, CORINFO_INTRINSIC_Abs)
681 FCIntrinsicSig("Abs", &gsig_SM_Flt_RetFlt, COMSingle::Abs, CORINFO_INTRINSIC_Abs)
682 FCIntrinsic("Acos", COMDouble::Acos, CORINFO_INTRINSIC_Acos)
683 FCIntrinsic("Asin", COMDouble::Asin, CORINFO_INTRINSIC_Asin)
684 FCIntrinsic("Atan", COMDouble::Atan, CORINFO_INTRINSIC_Atan)
685 FCIntrinsic("Atan2", COMDouble::Atan2, CORINFO_INTRINSIC_Atan2)
686 FCIntrinsic("Ceiling", COMDouble::Ceil, CORINFO_INTRINSIC_Ceiling)
687 FCIntrinsic("Cos", COMDouble::Cos, CORINFO_INTRINSIC_Cos)
688 FCIntrinsic("Cosh", COMDouble::Cosh, CORINFO_INTRINSIC_Cosh)
689 FCIntrinsic("Exp", COMDouble::Exp, CORINFO_INTRINSIC_Exp)
690 FCIntrinsic("Floor", COMDouble::Floor, CORINFO_INTRINSIC_Floor)
691 FCFuncElement("Log", COMDouble::Log)
692 FCIntrinsic("Log10", COMDouble::Log10, CORINFO_INTRINSIC_Log10)
693 FCIntrinsic("Pow", COMDouble::Pow, CORINFO_INTRINSIC_Pow)
694 FCIntrinsic("Round", COMDouble::Round, CORINFO_INTRINSIC_Round)
695 FCIntrinsic("Sin", COMDouble::Sin, CORINFO_INTRINSIC_Sin)
696 FCIntrinsic("Sinh", COMDouble::Sinh, CORINFO_INTRINSIC_Sinh)
697 FCFuncElement("SplitFractionDouble", COMDouble::ModF)
698 FCIntrinsic("Sqrt", COMDouble::Sqrt, CORINFO_INTRINSIC_Sqrt)
699 FCIntrinsic("Tan", COMDouble::Tan, CORINFO_INTRINSIC_Tan)
700 FCIntrinsic("Tanh", COMDouble::Tanh, CORINFO_INTRINSIC_Tanh)
703 FCFuncStart(gMathFFuncs)
704 FCIntrinsic("Acos", COMSingle::Acos, CORINFO_INTRINSIC_Acos)
705 FCIntrinsic("Asin", COMSingle::Asin, CORINFO_INTRINSIC_Asin)
706 FCIntrinsic("Atan", COMSingle::Atan, CORINFO_INTRINSIC_Atan)
707 FCIntrinsic("Atan2", COMSingle::Atan2, CORINFO_INTRINSIC_Atan2)
708 FCIntrinsic("Ceiling", COMSingle::Ceil, CORINFO_INTRINSIC_Ceiling)
709 FCIntrinsic("Cos", COMSingle::Cos, CORINFO_INTRINSIC_Cos)
710 FCIntrinsic("Cosh", COMSingle::Cosh, CORINFO_INTRINSIC_Cosh)
711 FCIntrinsic("Exp", COMSingle::Exp, CORINFO_INTRINSIC_Exp)
712 FCIntrinsic("Floor", COMSingle::Floor, CORINFO_INTRINSIC_Floor)
713 FCFuncElement("Log", COMSingle::Log)
714 FCIntrinsic("Log10", COMSingle::Log10, CORINFO_INTRINSIC_Log10)
715 FCIntrinsic("Pow", COMSingle::Pow, CORINFO_INTRINSIC_Pow)
716 FCIntrinsic("Round", COMSingle::Round, CORINFO_INTRINSIC_Round)
717 FCIntrinsic("Sin", COMSingle::Sin, CORINFO_INTRINSIC_Sin)
718 FCIntrinsic("Sinh", COMSingle::Sinh, CORINFO_INTRINSIC_Sinh)
719 FCFuncElement("SplitFractionSingle", COMSingle::ModF)
720 FCIntrinsic("Sqrt", COMSingle::Sqrt, CORINFO_INTRINSIC_Sqrt)
721 FCIntrinsic("Tan", COMSingle::Tan, CORINFO_INTRINSIC_Tan)
722 FCIntrinsic("Tanh", COMSingle::Tanh, CORINFO_INTRINSIC_Tanh)
725 FCFuncStart(gRuntimeThreadFuncs)
726 FCFuncElement("get_IsAlive", ThreadNative::IsAlive)
727 FCFuncElement("IsBackgroundNative", ThreadNative::IsBackground)
728 FCFuncElement("SetBackgroundNative", ThreadNative::SetBackground)
729 FCFuncElement("get_IsThreadPoolThread", ThreadNative::IsThreadpoolThread)
730 FCFuncElement("GetPriorityNative", ThreadNative::GetPriority)
731 FCFuncElement("SetPriorityNative", ThreadNative::SetPriority)
732 FCFuncElement("GetThreadStateNative", ThreadNative::GetThreadState)
733 #ifdef FEATURE_COMINTEROP_APARTMENT_SUPPORT
734 FCFuncElement("GetApartmentStateNative", ThreadNative::GetApartmentState)
735 FCFuncElement("SetApartmentStateNative", ThreadNative::SetApartmentState)
736 #endif // FEATURE_COMINTEROP_APARTMENT_SUPPORT
737 #ifdef FEATURE_COMINTEROP
738 FCFuncElement("DisableComObjectEagerCleanup", ThreadNative::DisableComObjectEagerCleanup)
739 #endif // FEATURE_COMINTEROP
740 FCFuncElement("InterruptInternal", ThreadNative::Interrupt)
741 FCFuncElement("JoinInternal", ThreadNative::Join)
744 FCFuncStart(gThreadFuncs)
745 FCDynamic("InternalGetCurrentThread", CORINFO_INTRINSIC_Illegal, ECall::InternalGetCurrentThread)
746 FCFuncElement("StartInternal", ThreadNative::Start)
747 QCFuncElement("nativeInitCultureAccessors", ThreadNative::nativeInitCultureAccessors)
749 FCFuncElement("SleepInternal", ThreadNative::Sleep)
750 #define Sleep(a) Dont_Use_Sleep(a)
751 FCFuncElement("SetStart", ThreadNative::SetStart)
752 FCFuncElement("GetDomainInternal", ThreadNative::GetDomain)
753 FCFuncElement("GetFastDomainInternal", ThreadNative::FastGetDomain)
754 QCFuncElement("InformThreadNameChange", ThreadNative::InformThreadNameChange)
755 FCFuncElement("SpinWaitInternal", ThreadNative::SpinWait)
756 QCFuncElement("YieldInternal", ThreadNative::YieldThread)
757 FCIntrinsic("GetCurrentThreadNative", ThreadNative::GetCurrentThread, CORINFO_INTRINSIC_GetCurrentManagedThread)
758 FCIntrinsic("get_ManagedThreadId", ThreadNative::GetManagedThreadId, CORINFO_INTRINSIC_GetManagedThreadId)
759 FCFuncElement("InternalFinalize", ThreadNative::Finalize)
760 #ifdef FEATURE_COMINTEROP_APARTMENT_SUPPORT
761 FCFuncElement("StartupSetApartmentStateInternal", ThreadNative::StartupSetApartmentState)
762 #endif // FEATURE_COMINTEROP_APARTMENT_SUPPORT
765 FCFuncStart(gThreadPoolFuncs)
766 FCFuncElement("PostQueuedCompletionStatus", ThreadPoolNative::CorPostQueuedCompletionStatus)
767 FCFuncElement("GetAvailableThreadsNative", ThreadPoolNative::CorGetAvailableThreads)
768 FCFuncElement("SetMinThreadsNative", ThreadPoolNative::CorSetMinThreads)
769 FCFuncElement("GetMinThreadsNative", ThreadPoolNative::CorGetMinThreads)
770 FCFuncElement("RegisterWaitForSingleObjectNative", ThreadPoolNative::CorRegisterWaitForSingleObject)
771 FCFuncElement("BindIOCompletionCallbackNative", ThreadPoolNative::CorBindIoCompletionCallback)
772 FCFuncElement("SetMaxThreadsNative", ThreadPoolNative::CorSetMaxThreads)
773 FCFuncElement("GetMaxThreadsNative", ThreadPoolNative::CorGetMaxThreads)
774 FCFuncElement("NotifyWorkItemComplete", ThreadPoolNative::NotifyRequestComplete)
775 FCFuncElement("NotifyWorkItemProgressNative", ThreadPoolNative::NotifyRequestProgress)
776 QCFuncElement("InitializeVMTp", ThreadPoolNative::InitializeVMTp)
777 FCFuncElement("ReportThreadStatus", ThreadPoolNative::ReportThreadStatus)
778 QCFuncElement("RequestWorkerThread", ThreadPoolNative::RequestWorkerThread)
781 FCFuncStart(gTimerFuncs)
782 QCFuncElement("CreateAppDomainTimer", AppDomainTimerNative::CreateAppDomainTimer)
783 QCFuncElement("ChangeAppDomainTimer", AppDomainTimerNative::ChangeAppDomainTimer)
784 QCFuncElement("DeleteAppDomainTimer", AppDomainTimerNative::DeleteAppDomainTimer)
788 FCFuncStart(gRegisteredWaitHandleFuncs)
789 FCFuncElement("UnregisterWaitNative", ThreadPoolNative::CorUnregisterWait)
790 FCFuncElement("WaitHandleCleanupNative", ThreadPoolNative::CorWaitHandleCleanupNative)
793 FCFuncStart(gWaitHandleFuncs)
794 FCFuncElement("WaitOneNative", WaitHandleNative::CorWaitOneNative)
795 FCFuncElement("WaitMultiple", WaitHandleNative::CorWaitMultipleNative)
797 FCFuncElement("SignalAndWaitOne", WaitHandleNative::CorSignalAndWaitOneNative)
798 #endif // !FEATURE_PAL
801 FCFuncStart(gNumberFuncs)
802 FCFuncElement("FormatDecimal", COMNumber::FormatDecimal)
803 FCFuncElement("FormatDouble", COMNumber::FormatDouble)
804 FCFuncElement("FormatInt32", COMNumber::FormatInt32)
805 FCFuncElement("FormatUInt32", COMNumber::FormatUInt32)
806 FCFuncElement("FormatInt64", COMNumber::FormatInt64)
807 FCFuncElement("FormatUInt64", COMNumber::FormatUInt64)
808 FCFuncElement("FormatSingle", COMNumber::FormatSingle)
809 FCFuncElement("NumberBufferToDecimal", COMNumber::NumberBufferToDecimal)
810 FCFuncElement("NumberBufferToDouble", COMNumber::NumberBufferToDouble)
813 #ifdef FEATURE_COMINTEROP
814 FCFuncStart(gVariantFuncs)
815 FCFuncElement("SetFieldsObject", COMVariant::SetFieldsObject)
816 FCFuncElement("SetFieldsR4", COMVariant::SetFieldsR4)
817 FCFuncElement("SetFieldsR8", COMVariant::SetFieldsR8)
818 FCFuncElement("GetR4FromVar", COMVariant::GetR4FromVar)
819 FCFuncElement("GetR8FromVar", COMVariant::GetR8FromVar)
820 FCFuncElement("BoxEnum", COMVariant::BoxEnum)
822 #endif // FEATURE_COMINTEROP
824 #ifdef FEATURE_COMINTEROP
825 FCFuncStart(gOAVariantFuncs)
826 FCFuncElement("ChangeTypeEx", COMOAVariant::ChangeTypeEx)
828 #endif // FEATURE_COMINTEROP
830 FCFuncStart(gDecimalFuncs)
831 FCFuncElementSig(COR_CTOR_METHOD_NAME, &gsig_IM_Flt_RetVoid, COMDecimal::InitSingle)
832 FCFuncElementSig(COR_CTOR_METHOD_NAME, &gsig_IM_Dbl_RetVoid, COMDecimal::InitDouble)
833 FCFuncElement("FCallAddSub", COMDecimal::DoAddSubThrow)
834 FCFuncElement("FCallMultiply", COMDecimal::DoMultiplyThrow)
835 FCFuncElement("FCallDivide", COMDecimal::DoDivideThrow)
836 FCFuncElement("FCallCompare", COMDecimal::DoCompare)
837 FCFuncElement("FCallFloor", COMDecimal::DoFloor)
838 FCFuncElement("GetHashCode", COMDecimal::GetHashCode)
839 FCFuncElement("FCallRound", COMDecimal::DoRound)
840 FCFuncElement("FCallToCurrency", COMDecimal::DoToCurrency)
841 FCFuncElement("FCallToInt32", COMDecimal::ToInt32)
842 FCFuncElement("ToDouble", COMDecimal::ToDouble)
843 FCFuncElement("ToSingle", COMDecimal::ToSingle)
844 FCFuncElement("FCallTruncate", COMDecimal::DoTruncate)
847 FCFuncStart(gCurrencyFuncs)
848 FCFuncElement("FCallToDecimal", COMCurrency::DoToDecimal)
851 FCFuncStart(gClrConfig)
852 QCFuncElement("GetConfigBoolValue", ClrConfigNative::GetConfigBoolValue)
855 #if !defined(FEATURE_COREFX_GLOBALIZATION)
856 FCFuncStart(gCompareInfoFuncs)
857 QCFuncElement("InternalGetGlobalizedHashCode", COMNlsInfo::InternalGetGlobalizedHashCode)
860 FCFuncStart(gEncodingTableFuncs)
861 FCFuncElement("GetNumEncodingItems", COMNlsInfo::nativeGetNumEncodingItems)
862 FCFuncElement("GetEncodingData", COMNlsInfo::nativeGetEncodingTableDataPointer)
863 FCFuncElement("GetCodePageData", COMNlsInfo::nativeGetCodePageTableDataPointer)
865 #endif // !defined(FEATURE_COREFX_GLOBALIZATION)
867 #ifdef FEATURE_COREFX_GLOBALIZATION
868 FCFuncStart(gCompareInfoFuncs)
869 QCFuncElement("InternalHashSortKey", CoreFxGlobalization::HashSortKey)
873 FCFuncStart(gArrayFuncs)
874 FCFuncElement("get_Rank", ArrayNative::GetRank)
875 FCFuncElement("GetLowerBound", ArrayNative::GetLowerBound)
876 FCFuncElement("GetUpperBound", ArrayNative::GetUpperBound)
877 FCIntrinsicSig("GetLength", &gsig_IM_Int_RetInt, ArrayNative::GetLength, CORINFO_INTRINSIC_Array_GetDimLength)
878 FCFuncElement("get_Length", ArrayNative::GetLengthNoRank)
879 FCFuncElement("get_LongLength", ArrayNative::GetLongLengthNoRank)
880 FCFuncElement("GetDataPtrOffsetInternal", ArrayNative::GetDataPtrOffsetInternal)
881 FCFuncElement("Initialize", ArrayNative::Initialize)
882 FCFuncElement("Copy", ArrayNative::ArrayCopy)
883 FCFuncElement("Clear", ArrayNative::ArrayClear)
884 FCFuncElement("InternalCreate", ArrayNative::CreateInstance)
885 FCFuncElement("InternalGetReference", ArrayNative::GetReference)
886 FCFuncElement("InternalSetValue", ArrayNative::SetValue)
887 FCFuncElement("TrySZIndexOf", ArrayHelper::TrySZIndexOf)
888 FCFuncElement("TrySZLastIndexOf", ArrayHelper::TrySZLastIndexOf)
889 FCFuncElement("TrySZBinarySearch", ArrayHelper::TrySZBinarySearch)
890 FCFuncElement("TrySZSort", ArrayHelper::TrySZSort)
891 FCFuncElement("TrySZReverse", ArrayHelper::TrySZReverse)
894 FCFuncStart(gBufferFuncs)
895 FCFuncElement("BlockCopy", Buffer::BlockCopy)
896 FCFuncElement("InternalBlockCopy", Buffer::InternalBlockCopy)
897 FCFuncElement("_GetByte", Buffer::GetByte)
898 FCFuncElement("_SetByte", Buffer::SetByte)
899 FCFuncElement("IsPrimitiveTypeArray", Buffer::IsPrimitiveTypeArray)
900 FCFuncElement("_ByteLength", Buffer::ByteLength)
902 FCFuncElement("Memcpy", FCallMemcpy)
904 QCFuncElement("__Memmove", Buffer::MemMove)
907 FCFuncStart(gGCInterfaceFuncs)
908 FCFuncElement("GetGenerationWR", GCInterface::GetGenerationWR)
909 FCFuncElement("_RegisterForFullGCNotification", GCInterface::RegisterForFullGCNotification)
910 FCFuncElement("_CancelFullGCNotification", GCInterface::CancelFullGCNotification)
911 FCFuncElement("_WaitForFullGCApproach", GCInterface::WaitForFullGCApproach)
912 FCFuncElement("_WaitForFullGCComplete", GCInterface::WaitForFullGCComplete)
913 FCFuncElement("_CollectionCount", GCInterface::CollectionCount)
914 FCFuncElement("GetGCLatencyMode", GCInterface::GetGcLatencyMode)
915 FCFuncElement("SetGCLatencyMode", GCInterface::SetGcLatencyMode)
916 FCFuncElement("GetLOHCompactionMode", GCInterface::GetLOHCompactionMode)
917 FCFuncElement("SetLOHCompactionMode", GCInterface::SetLOHCompactionMode)
918 QCFuncElement("_StartNoGCRegion", GCInterface::StartNoGCRegion)
919 QCFuncElement("_EndNoGCRegion", GCInterface::EndNoGCRegion)
920 FCFuncElement("IsServerGC", SystemNative::IsServerGC)
921 QCFuncElement("_AddMemoryPressure", GCInterface::_AddMemoryPressure)
922 QCFuncElement("_RemoveMemoryPressure", GCInterface::_RemoveMemoryPressure)
923 FCFuncElement("GetGeneration", GCInterface::GetGeneration)
924 QCFuncElement("GetTotalMemory", GCInterface::GetTotalMemory)
925 QCFuncElement("_Collect", GCInterface::Collect)
926 FCFuncElement("GetMaxGeneration", GCInterface::GetMaxGeneration)
927 QCFuncElement("_WaitForPendingFinalizers", GCInterface::WaitForPendingFinalizers)
929 FCFuncElement("_SuppressFinalize", GCInterface::SuppressFinalize)
930 FCFuncElement("_ReRegisterForFinalize", GCInterface::ReRegisterForFinalize)
932 FCFuncElement("_GetAllocatedBytesForCurrentThread", GCInterface::GetAllocatedBytesForCurrentThread)
935 FCFuncStart(gMemoryFailPointFuncs)
936 FCFuncElement("GetMemorySettings", COMMemoryFailPoint::GetMemorySettings)
939 FCFuncStart(gInteropMarshalFuncs)
940 FCFuncElement("GetLastWin32Error", MarshalNative::GetLastWin32Error)
941 FCFuncElement("SetLastWin32Error", MarshalNative::SetLastWin32Error)
942 FCFuncElement("SizeOfHelper", MarshalNative::SizeOfClass)
943 FCFuncElement("GetSystemMaxDBCSCharSize", MarshalNative::GetSystemMaxDBCSCharSize)
944 FCFuncElement("PtrToStructureHelper", MarshalNative::PtrToStructureHelper)
945 FCFuncElement("DestroyStructure", MarshalNative::DestroyStructure)
946 FCFuncElement("UnsafeAddrOfPinnedArrayElement", MarshalNative::FCUnsafeAddrOfPinnedArrayElement)
947 FCFuncElement("GetExceptionCode", ExceptionNative::GetExceptionCode)
948 FCFuncElement("GetExceptionPointers", ExceptionNative::GetExceptionPointers)
949 QCFuncElement("GetHINSTANCE", COMModule::GetHINSTANCE)
951 FCFuncElement("OffsetOfHelper", MarshalNative::OffsetOfHelper)
952 FCFuncElement("SizeOfType", SafeBuffer::SizeOfType)
953 FCFuncElement("AlignedSizeOfType", SafeBuffer::AlignedSizeOfType)
955 QCFuncElement("InternalPrelink", MarshalNative::Prelink)
956 FCFuncElement("CopyToNative", MarshalNative::CopyToNative)
957 FCFuncElement("CopyToManaged", MarshalNative::CopyToManaged)
958 FCFuncElement("StructureToPtr", MarshalNative::StructureToPtr)
959 FCFuncElement("ThrowExceptionForHRInternal", MarshalNative::ThrowExceptionForHR)
960 FCFuncElement("GetExceptionForHRInternal", MarshalNative::GetExceptionForHR)
961 FCFuncElement("GetDelegateForFunctionPointerInternal", MarshalNative::GetDelegateForFunctionPointerInternal)
962 FCFuncElement("GetFunctionPointerForDelegateInternal", MarshalNative::GetFunctionPointerForDelegateInternal)
963 #ifdef FEATURE_COMINTEROP
964 FCFuncElement("GetHRForException", MarshalNative::GetHRForException)
965 FCFuncElement("GetHRForException_WinRT", MarshalNative::GetHRForException_WinRT)
966 FCFuncElement("GetRawIUnknownForComObjectNoAddRef", MarshalNative::GetRawIUnknownForComObjectNoAddRef)
967 FCFuncElement("IsComObject", MarshalNative::IsComObject)
968 FCFuncElement("GetObjectForIUnknown", MarshalNative::GetObjectForIUnknown)
969 FCFuncElement("GetUniqueObjectForIUnknown", MarshalNative::GetUniqueObjectForIUnknown)
970 FCFuncElement("AddRef", MarshalNative::AddRef)
971 FCFuncElement("GetNativeVariantForObject", MarshalNative::GetNativeVariantForObject)
972 FCFuncElement("GetObjectForNativeVariant", MarshalNative::GetObjectForNativeVariant)
973 FCFuncElement("InternalFinalReleaseComObject", MarshalNative::FinalReleaseComObject)
974 FCFuncElement("QueryInterface", MarshalNative::QueryInterface)
975 FCFuncElement("CreateAggregatedObject", MarshalNative::CreateAggregatedObject)
976 FCFuncElement("AreComObjectsAvailableForCleanup", MarshalNative::AreComObjectsAvailableForCleanup)
977 FCFuncElement("InternalCreateWrapperOfType", MarshalNative::InternalCreateWrapperOfType)
978 FCFuncElement("GetObjectsForNativeVariants", MarshalNative::GetObjectsForNativeVariants)
979 FCFuncElement("GetStartComSlot", MarshalNative::GetStartComSlot)
981 FCFuncElement("InitializeManagedWinRTFactoryObject", MarshalNative::InitializeManagedWinRTFactoryObject)
983 FCFuncElement("GetNativeActivationFactory", MarshalNative::GetNativeActivationFactory)
984 FCFuncElement("GetIUnknownForObjectNative", MarshalNative::GetIUnknownForObjectNative)
985 FCFuncElement("GetComInterfaceForObjectNative", MarshalNative::GetComInterfaceForObjectNative)
986 FCFuncElement("InternalReleaseComObject", MarshalNative::ReleaseComObject)
987 FCFuncElement("Release", MarshalNative::Release)
988 FCFuncElement("InitializeWrapperForWinRT", MarshalNative::InitializeWrapperForWinRT)
989 FCFuncElement("GetTypedObjectForIUnknown", MarshalNative::GetTypedObjectForIUnknown)
990 FCFuncElement("ChangeWrapperHandleStrength", MarshalNative::ChangeWrapperHandleStrength)
991 FCFuncElement("CleanupUnusedObjectsInCurrentContext", MarshalNative::CleanupUnusedObjectsInCurrentContext)
992 #endif // FEATURE_COMINTEROP
995 FCFuncStart(gArrayWithOffsetFuncs)
996 FCFuncElement("CalculateCount", MarshalNative::CalculateCount)
999 #ifdef FEATURE_COMINTEROP
1004 #ifdef FEATURE_COMINTEROP_MANAGED_ACTIVATION
1005 FCFuncStart(gRegistrationFuncs)
1006 FCFuncElement("RegisterTypeForComClientsNative", RegisterTypeForComClientsNative)
1007 FCFuncElement("RegisterTypeForComClientsExNative", RegisterTypeForComClientsExNative)
1009 #endif // FEATURE_COMINTEROP_MANAGED_ACTIVATION
1011 #endif // FEATURE_COMINTEROP
1013 FCFuncStart(gTypeLoadExceptionFuncs)
1014 QCFuncElement("GetTypeLoadExceptionMessage", GetTypeLoadExceptionMessage)
1017 FCFuncStart(gFileLoadExceptionFuncs)
1018 QCFuncElement("GetFileLoadExceptionMessage", GetFileLoadExceptionMessage)
1019 QCFuncElement("GetMessageForHR", FileLoadException_GetMessageForHR)
1022 FCFuncStart(gMissingMemberExceptionFuncs)
1023 FCFuncElement("FormatSignature", MissingMemberException_FormatSignature)
1026 FCFuncStart(gInterlockedFuncs)
1027 FCIntrinsicSig("Exchange", &gsig_SM_RefInt_Int_RetInt, COMInterlocked::Exchange, CORINFO_INTRINSIC_InterlockedXchg32)
1028 FCIntrinsicSig("Exchange", &gsig_SM_RefLong_Long_RetLong, COMInterlocked::Exchange64, CORINFO_INTRINSIC_InterlockedXchg64)
1029 FCFuncElementSig("Exchange", &gsig_SM_RefDbl_Dbl_RetDbl, COMInterlocked::ExchangeDouble)
1030 FCFuncElementSig("Exchange", &gsig_SM_RefFlt_Flt_RetFlt, COMInterlocked::ExchangeFloat)
1031 FCFuncElementSig("Exchange", &gsig_SM_RefObj_Obj_RetObj, COMInterlocked::ExchangeObject)
1032 FCFuncElementSig("Exchange", &gsig_SM_RefIntPtr_IntPtr_RetIntPtr, COMInterlocked::ExchangePointer)
1033 FCIntrinsicSig("CompareExchange", &gsig_SM_RefInt_Int_Int_RetInt, COMInterlocked::CompareExchange, CORINFO_INTRINSIC_InterlockedCmpXchg32)
1034 FCIntrinsicSig("CompareExchange", &gsig_SM_RefLong_Long_Long_RetLong, COMInterlocked::CompareExchange64, CORINFO_INTRINSIC_InterlockedCmpXchg64)
1035 FCFuncElementSig("CompareExchange", &gsig_SM_RefDbl_Dbl_Dbl_RetDbl, COMInterlocked::CompareExchangeDouble)
1036 FCFuncElementSig("CompareExchange", &gsig_SM_RefFlt_Flt_Flt_RetFlt, COMInterlocked::CompareExchangeFloat)
1037 FCFuncElementSig("CompareExchange", &gsig_SM_RefObj_Obj_Obj_RetObj, COMInterlocked::CompareExchangeObject)
1038 FCFuncElementSig("CompareExchange", &gsig_SM_RefInt_Int_Int_RefBool_RetInt, COMInterlocked::CompareExchangeReliableResult)
1039 FCFuncElementSig("CompareExchange", &gsig_SM_RefIntPtr_IntPtr_IntPtr_RetIntPtr, COMInterlocked::CompareExchangePointer)
1040 FCIntrinsicSig("ExchangeAdd", &gsig_SM_RefInt_Int_RetInt, COMInterlocked::ExchangeAdd32, CORINFO_INTRINSIC_InterlockedXAdd32)
1041 FCIntrinsicSig("ExchangeAdd", &gsig_SM_RefLong_Long_RetLong, COMInterlocked::ExchangeAdd64, CORINFO_INTRINSIC_InterlockedXAdd64)
1043 FCFuncElement("_Exchange", COMInterlocked::ExchangeGeneric)
1044 FCFuncElement("_CompareExchange", COMInterlocked::CompareExchangeGeneric)
1046 FCIntrinsic("MemoryBarrier", COMInterlocked::FCMemoryBarrier, CORINFO_INTRINSIC_MemoryBarrier)
1047 QCFuncElement("_MemoryBarrierProcessWide", COMInterlocked::MemoryBarrierProcessWide)
1050 FCFuncStart(gVarArgFuncs)
1051 FCFuncElementSig(COR_CTOR_METHOD_NAME, &gsig_IM_IntPtr_PtrVoid_RetVoid, VarArgsNative::Init2)
1052 FCFuncElementSig(COR_CTOR_METHOD_NAME, &gsig_IM_IntPtr_RetVoid, VarArgsNative::Init)
1053 FCFuncElement("GetRemainingCount", VarArgsNative::GetRemainingCount)
1054 FCFuncElement("_GetNextArgType", VarArgsNative::GetNextArgType)
1055 FCFuncElement("FCallGetNextArg", VarArgsNative::DoGetNextArg)
1056 FCFuncElement("InternalGetNextArg", VarArgsNative::GetNextArg2)
1059 FCFuncStart(gMonitorFuncs)
1060 FCFuncElement("Enter", JIT_MonEnter)
1061 FCFuncElement("ReliableEnter", JIT_MonReliableEnter)
1062 FCFuncElement("ReliableEnterTimeout", JIT_MonTryEnter)
1063 FCFuncElement("Exit", JIT_MonExit)
1064 FCFuncElement("ObjWait", ObjectNative::WaitTimeout)
1065 FCFuncElement("ObjPulse", ObjectNative::Pulse)
1066 FCFuncElement("ObjPulseAll", ObjectNative::PulseAll)
1067 FCFuncElement("IsEnteredNative", ObjectNative::IsLockHeld)
1070 FCFuncStart(gOverlappedFuncs)
1071 FCFuncElement("AllocateNativeOverlapped", AllocateNativeOverlapped)
1072 FCFuncElement("FreeNativeOverlapped", FreeNativeOverlapped)
1073 FCFuncElement("CheckVMForIOPacket", CheckVMForIOPacket)
1074 FCFuncElement("GetOverlappedFromNative", GetOverlappedFromNative)
1077 FCFuncStart(gCompilerFuncs)
1078 FCFuncElement("GetObjectValue", ObjectNative::GetObjectValue)
1079 FCIntrinsic("InitializeArray", ArrayNative::InitializeArray, CORINFO_INTRINSIC_InitializeArray)
1080 FCFuncElement("_RunClassConstructor", ReflectionInvocation::RunClassConstructor)
1081 FCFuncElement("_RunModuleConstructor", ReflectionInvocation::RunModuleConstructor)
1082 QCFuncElement("_CompileMethod", ReflectionInvocation::CompileMethod)
1083 FCFuncElement("PrepareContractedDelegate", ReflectionInvocation::PrepareContractedDelegate)
1084 FCFuncElement("ProbeForSufficientStack", ReflectionInvocation::ProbeForSufficientStack)
1085 FCFuncElement("ExecuteCodeWithGuaranteedCleanup", ReflectionInvocation::ExecuteCodeWithGuaranteedCleanup)
1086 FCFuncElement("GetHashCode", ObjectNative::GetHashCode)
1087 FCFuncElement("Equals", ObjectNative::Equals)
1088 FCFuncElement("EnsureSufficientExecutionStack", ReflectionInvocation::EnsureSufficientExecutionStack)
1089 FCFuncElement("TryEnsureSufficientExecutionStack", ReflectionInvocation::TryEnsureSufficientExecutionStack)
1092 FCFuncStart(gContextSynchronizationFuncs)
1093 FCFuncElement("WaitHelperNative", SynchronizationContextNative::WaitHelper)
1095 QCFuncElement("GetWinRTDispatcherForCurrentThread", SynchronizationContextNative::GetWinRTDispatcherForCurrentThread)
1099 FCFuncStart(gDateMarshalerFuncs)
1100 FCFuncElement("ConvertToNative", StubHelpers::DateMarshaler__ConvertToNative)
1101 FCFuncElement("ConvertToManaged", StubHelpers::DateMarshaler__ConvertToManaged)
1104 FCFuncStart(gValueClassMarshalerFuncs)
1105 FCFuncElement("ConvertToNative", StubHelpers::ValueClassMarshaler__ConvertToNative)
1106 FCFuncElement("ConvertToManaged", StubHelpers::ValueClassMarshaler__ConvertToManaged)
1107 FCFuncElement("ClearNative", StubHelpers::ValueClassMarshaler__ClearNative)
1110 FCFuncStart(gMngdNativeArrayMarshalerFuncs)
1111 FCFuncElement("CreateMarshaler", MngdNativeArrayMarshaler::CreateMarshaler)
1112 FCFuncElement("ConvertSpaceToNative", MngdNativeArrayMarshaler::ConvertSpaceToNative)
1113 FCFuncElement("ConvertContentsToNative", MngdNativeArrayMarshaler::ConvertContentsToNative)
1114 FCFuncElement("ConvertSpaceToManaged", MngdNativeArrayMarshaler::ConvertSpaceToManaged)
1115 FCFuncElement("ConvertContentsToManaged", MngdNativeArrayMarshaler::ConvertContentsToManaged)
1116 FCFuncElement("ClearNative", MngdNativeArrayMarshaler::ClearNative)
1117 FCFuncElement("ClearNativeContents", MngdNativeArrayMarshaler::ClearNativeContents)
1120 #ifdef FEATURE_COMINTEROP
1121 FCFuncStart(gObjectMarshalerFuncs)
1122 FCFuncElement("ConvertToNative", StubHelpers::ObjectMarshaler__ConvertToNative)
1123 FCFuncElement("ConvertToManaged", StubHelpers::ObjectMarshaler__ConvertToManaged)
1124 FCFuncElement("ClearNative", StubHelpers::ObjectMarshaler__ClearNative)
1127 FCFuncStart(gInterfaceMarshalerFuncs)
1128 FCFuncElement("ConvertToNative", StubHelpers::InterfaceMarshaler__ConvertToNative)
1129 FCFuncElement("ConvertToManaged", StubHelpers::InterfaceMarshaler__ConvertToManaged)
1130 QCFuncElement("ClearNative", StubHelpers::InterfaceMarshaler__ClearNative)
1131 FCFuncElement("ConvertToManagedWithoutUnboxing", StubHelpers::InterfaceMarshaler__ConvertToManagedWithoutUnboxing)
1134 FCFuncStart(gUriMarshalerFuncs)
1135 FCFuncElement("GetRawUriFromNative", StubHelpers::UriMarshaler__GetRawUriFromNative)
1136 FCFuncElement("CreateNativeUriInstanceHelper", StubHelpers::UriMarshaler__CreateNativeUriInstance)
1139 FCFuncStart(gEventArgsMarshalerFuncs)
1140 QCFuncElement("CreateNativeNCCEventArgsInstanceHelper", StubHelpers::EventArgsMarshaler__CreateNativeNCCEventArgsInstance)
1141 QCFuncElement("CreateNativePCEventArgsInstance", StubHelpers::EventArgsMarshaler__CreateNativePCEventArgsInstance)
1144 FCFuncStart(gMngdSafeArrayMarshalerFuncs)
1145 FCFuncElement("CreateMarshaler", MngdSafeArrayMarshaler::CreateMarshaler)
1146 FCFuncElement("ConvertSpaceToNative", MngdSafeArrayMarshaler::ConvertSpaceToNative)
1147 FCFuncElement("ConvertContentsToNative", MngdSafeArrayMarshaler::ConvertContentsToNative)
1148 FCFuncElement("ConvertSpaceToManaged", MngdSafeArrayMarshaler::ConvertSpaceToManaged)
1149 FCFuncElement("ConvertContentsToManaged", MngdSafeArrayMarshaler::ConvertContentsToManaged)
1150 FCFuncElement("ClearNative", MngdSafeArrayMarshaler::ClearNative)
1153 FCFuncStart(gMngdHiddenLengthArrayMarshalerFuncs)
1154 FCFuncElement("CreateMarshaler", MngdHiddenLengthArrayMarshaler::CreateMarshaler)
1155 FCFuncElement("ConvertSpaceToNative", MngdHiddenLengthArrayMarshaler::ConvertSpaceToNative)
1156 FCFuncElement("ConvertContentsToNative", MngdHiddenLengthArrayMarshaler::ConvertContentsToNative)
1157 FCFuncElement("ConvertSpaceToManaged", MngdHiddenLengthArrayMarshaler::ConvertSpaceToManaged)
1158 FCFuncElement("ConvertContentsToManaged", MngdHiddenLengthArrayMarshaler::ConvertContentsToManaged)
1159 FCFuncElement("ClearNativeContents", MngdHiddenLengthArrayMarshaler::ClearNativeContents)
1162 FCFuncStart(gWinRTTypeNameConverterFuncs)
1163 FCFuncElement("ConvertToWinRTTypeName", StubHelpers::WinRTTypeNameConverter__ConvertToWinRTTypeName)
1164 FCFuncElement("GetTypeFromWinRTTypeName", StubHelpers::WinRTTypeNameConverter__GetTypeFromWinRTTypeName)
1167 #endif // FEATURE_COMINTEROP
1169 FCFuncStart(gMngdRefCustomMarshalerFuncs)
1170 FCFuncElement("CreateMarshaler", MngdRefCustomMarshaler::CreateMarshaler)
1171 FCFuncElement("ConvertContentsToNative", MngdRefCustomMarshaler::ConvertContentsToNative)
1172 FCFuncElement("ConvertContentsToManaged", MngdRefCustomMarshaler::ConvertContentsToManaged)
1173 FCFuncElement("ClearNative", MngdRefCustomMarshaler::ClearNative)
1174 FCFuncElement("ClearManaged", MngdRefCustomMarshaler::ClearManaged)
1177 FCFuncStart(gStubHelperFuncs)
1178 FCFuncElement("IsQCall", StubHelpers::IsQCall)
1179 FCFuncElement("InitDeclaringType", StubHelpers::InitDeclaringType)
1180 FCIntrinsic("GetNDirectTarget", StubHelpers::GetNDirectTarget, CORINFO_INTRINSIC_StubHelpers_GetNDirectTarget)
1181 FCFuncElement("GetDelegateTarget", StubHelpers::GetDelegateTarget)
1182 FCFuncElement("SetLastError", StubHelpers::SetLastError)
1183 FCFuncElement("ClearLastError", StubHelpers::ClearLastError)
1184 FCFuncElement("ThrowInteropParamException", StubHelpers::ThrowInteropParamException)
1185 FCFuncElement("InternalGetHRExceptionObject", StubHelpers::GetHRExceptionObject)
1186 #ifdef FEATURE_COMINTEROP
1187 FCFuncElement("InternalGetCOMHRExceptionObject", StubHelpers::GetCOMHRExceptionObject)
1188 FCFuncElement("GetCOMIPFromRCW", StubHelpers::GetCOMIPFromRCW)
1189 FCFuncElement("GetCOMIPFromRCW_WinRT", StubHelpers::GetCOMIPFromRCW_WinRT)
1190 FCFuncElement("GetCOMIPFromRCW_WinRTSharedGeneric", StubHelpers::GetCOMIPFromRCW_WinRTSharedGeneric)
1191 FCFuncElement("GetCOMIPFromRCW_WinRTDelegate", StubHelpers::GetCOMIPFromRCW_WinRTDelegate)
1192 FCFuncElement("ShouldCallWinRTInterface", StubHelpers::ShouldCallWinRTInterface)
1193 FCFuncElement("GetTargetForAmbiguousVariantCall", StubHelpers::GetTargetForAmbiguousVariantCall)
1194 FCFuncElement("StubRegisterRCW", StubHelpers::StubRegisterRCW)
1195 FCFuncElement("StubUnregisterRCW", StubHelpers::StubUnregisterRCW)
1196 FCFuncElement("GetDelegateInvokeMethod", StubHelpers::GetDelegateInvokeMethod)
1197 FCFuncElement("GetWinRTFactoryObject", StubHelpers::GetWinRTFactoryObject)
1198 FCFuncElement("GetWinRTFactoryReturnValue", StubHelpers::GetWinRTFactoryReturnValue)
1199 FCFuncElement("GetOuterInspectable", StubHelpers::GetOuterInspectable)
1200 #ifdef MDA_SUPPORTED
1201 FCFuncElement("TriggerExceptionSwallowedMDA", StubHelpers::TriggerExceptionSwallowedMDA)
1203 #endif // FEATURE_COMINTEROP
1204 #ifdef MDA_SUPPORTED
1205 FCFuncElement("CheckCollectedDelegateMDA", StubHelpers::CheckCollectedDelegateMDA)
1206 #endif // MDA_SUPPORTED
1207 #ifdef PROFILING_SUPPORTED
1208 FCFuncElement("ProfilerBeginTransitionCallback", StubHelpers::ProfilerBeginTransitionCallback)
1209 FCFuncElement("ProfilerEndTransitionCallback", StubHelpers::ProfilerEndTransitionCallback)
1211 FCFuncElement("CreateCustomMarshalerHelper", StubHelpers::CreateCustomMarshalerHelper)
1212 FCFuncElement("DecimalCanonicalizeInternal", StubHelpers::DecimalCanonicalizeInternal)
1213 FCFuncElement("FmtClassUpdateNativeInternal", StubHelpers::FmtClassUpdateNativeInternal)
1214 FCFuncElement("FmtClassUpdateCLRInternal", StubHelpers::FmtClassUpdateCLRInternal)
1215 FCFuncElement("LayoutDestroyNativeInternal", StubHelpers::LayoutDestroyNativeInternal)
1216 FCFuncElement("AllocateInternal", StubHelpers::AllocateInternal)
1217 FCFuncElement("strlen", StubHelpers::AnsiStrlen)
1218 FCFuncElement("MarshalToUnmanagedVaListInternal", StubHelpers::MarshalToUnmanagedVaListInternal)
1219 FCFuncElement("MarshalToManagedVaListInternal", StubHelpers::MarshalToManagedVaListInternal)
1220 FCFuncElement("CalcVaListSize", StubHelpers::CalcVaListSize)
1221 FCFuncElement("ValidateObject", StubHelpers::ValidateObject)
1222 FCFuncElement("ValidateByref", StubHelpers::ValidateByref)
1223 FCFuncElement("LogPinnedArgument", StubHelpers::LogPinnedArgument)
1224 FCIntrinsic("GetStubContext", StubHelpers::GetStubContext, CORINFO_INTRINSIC_StubHelpers_GetStubContext)
1226 FCIntrinsic("GetStubContextAddr", StubHelpers::GetStubContextAddr, CORINFO_INTRINSIC_StubHelpers_GetStubContextAddr)
1228 #ifdef MDA_SUPPORTED
1229 FCFuncElement("TriggerGCForMDA", StubHelpers::TriggerGCForMDA)
1230 #endif // MDA_SUPPORTED
1231 #ifdef FEATURE_ARRAYSTUB_AS_IL
1232 FCFuncElement("ArrayTypeCheck", StubHelpers::ArrayTypeCheck)
1233 #endif //FEATURE_ARRAYSTUB_AS_IL
1234 #ifdef FEATURE_STUBS_AS_IL
1235 FCFuncElement("MulticastDebuggerTraceHelper", StubHelpers::MulticastDebuggerTraceHelper)
1236 #endif //FEATURE_STUBS_AS_IL
1239 FCFuncStart(gGCHandleFuncs)
1240 FCFuncElement("InternalAlloc", MarshalNative::GCHandleInternalAlloc)
1241 FCFuncElement("InternalFree", MarshalNative::GCHandleInternalFree)
1242 FCFuncElement("InternalGet", MarshalNative::GCHandleInternalGet)
1243 FCFuncElement("InternalSet", MarshalNative::GCHandleInternalSet)
1244 FCFuncElement("InternalCompareExchange", MarshalNative::GCHandleInternalCompareExchange)
1245 FCFuncElement("InternalAddrOfPinnedObject", MarshalNative::GCHandleInternalAddrOfPinnedObject)
1246 FCFuncElement("InternalCheckDomain", MarshalNative::GCHandleInternalCheckDomain)
1250 FCFuncStart(gVersioningHelperFuncs)
1251 FCFuncElement("GetRuntimeId", GetRuntimeId_Wrapper)
1254 FCFuncStart(gStreamFuncs)
1255 FCFuncElement("HasOverriddenBeginEndRead", StreamNative::HasOverriddenBeginEndRead)
1256 FCFuncElement("HasOverriddenBeginEndWrite", StreamNative::HasOverriddenBeginEndWrite)
1260 #ifdef FEATURE_COMINTEROP
1261 FCFuncStart(gWindowsRuntimeBufferHelperFuncs)
1262 QCFuncElement("StoreOverlappedPtrInCCW", WindowsRuntimeBufferHelper::StoreOverlappedPtrInCCW)
1263 //QCFuncElement("ReleaseOverlapped", WindowsRuntimeBufferHelper::ReleaseOverlapped)
1265 #endif // ifdef FEATURE_COMINTEROP
1267 #if defined(FEATURE_EVENTSOURCE_XPLAT)
1268 FCFuncStart(gEventLogger)
1269 QCFuncElement("IsEventSourceLoggingEnabled", XplatEventSourceLogger::IsEventSourceLoggingEnabled)
1270 QCFuncElement("LogEventSource", XplatEventSourceLogger::LogEventSource)
1272 #endif // defined(FEATURE_EVENTSOURCE_XPLAT)
1274 #ifdef FEATURE_COMINTEROP
1275 FCFuncStart(gRuntimeClassFuncs)
1276 FCFuncElement("GetRedirectedGetHashCodeMD", ComObject::GetRedirectedGetHashCodeMD)
1277 FCFuncElement("RedirectGetHashCode", ComObject::RedirectGetHashCode)
1278 FCFuncElement("GetRedirectedToStringMD", ComObject::GetRedirectedToStringMD)
1279 FCFuncElement("RedirectToString", ComObject::RedirectToString)
1280 FCFuncElement("GetRedirectedEqualsMD", ComObject::GetRedirectedEqualsMD)
1281 FCFuncElement("RedirectEquals", ComObject::RedirectEquals)
1283 #endif // ifdef FEATURE_COMINTEROP
1285 FCFuncStart(gRuntimeImportsFuncs)
1286 QCFuncElement("RhZeroMemory", MemoryNative::Clear)
1287 FCFuncElement("RhBulkMoveWithWriteBarrier", MemoryNative::BulkMoveWithWriteBarrier)
1290 FCFuncStart(gWeakReferenceFuncs)
1291 FCFuncElement("Create", WeakReferenceNative::Create)
1292 FCFuncElement("Finalize", WeakReferenceNative::Finalize)
1293 FCFuncElement("get_Target", WeakReferenceNative::GetTarget)
1294 FCFuncElement("set_Target", WeakReferenceNative::SetTarget)
1295 FCFuncElement("get_IsAlive", WeakReferenceNative::IsAlive)
1296 FCFuncElement("IsTrackResurrection", WeakReferenceNative::IsTrackResurrection)
1299 FCFuncStart(gWeakReferenceOfTFuncs)
1300 FCFuncElement("Create", WeakReferenceOfTNative::Create)
1301 FCFuncElement("Finalize", WeakReferenceOfTNative::Finalize)
1302 FCFuncElement("get_Target", WeakReferenceOfTNative::GetTarget)
1303 FCFuncElement("set_Target", WeakReferenceOfTNative::SetTarget)
1304 FCFuncElement("IsTrackResurrection", WeakReferenceOfTNative::IsTrackResurrection)
1307 #ifdef FEATURE_COMINTEROP
1310 // ECall helpers for the standard managed interfaces.
1313 #define MNGSTDITF_BEGIN_INTERFACE(FriendlyName, strMngItfName, strUCOMMngItfName, strCustomMarshalerName, strCustomMarshalerCookie, strManagedViewName, NativeItfIID, bCanCastOnNativeItfQI) \
1314 FCFuncStart(g##FriendlyName##Funcs)
1316 #define MNGSTDITF_DEFINE_METH_IMPL(FriendlyName, FCallMethName, MethName, MethSig, FcallDecl) \
1317 FCUnreferenced FCFuncElementSig(#MethName, MethSig, FriendlyName::FCallMethName)
1319 #define MNGSTDITF_END_INTERFACE(FriendlyName) \
1322 #include "mngstditflist.h"
1324 #undef MNGSTDITF_BEGIN_INTERFACE
1325 #undef MNGSTDITF_DEFINE_METH_IMPL
1326 #undef MNGSTDITF_END_INTERFACE
1328 #endif // FEATURE_COMINTEROP
1333 // Class definitions
1337 // Note these have to remain sorted by name:namespace pair (Assert will wack you if you don't)
1338 // The sorting is case-sensitive
1340 FCClassElement("AppDomain", "System", gAppDomainFuncs)
1341 FCClassElement("AppDomainManager", "System", gAppDomainManagerFuncs)
1342 FCClassElement("ArgIterator", "System", gVarArgFuncs)
1343 FCClassElement("Array", "System", gArrayFuncs)
1344 FCClassElement("ArrayWithOffset", "System.Runtime.InteropServices", gArrayWithOffsetFuncs)
1345 FCClassElement("AssemblyBuilder", "System.Reflection.Emit", gAssemblyBuilderFuncs)
1347 FCClassElement("AssemblyExtensions", "System.Reflection.Metadata", gAssemblyExtensionsFuncs)
1349 FCClassElement("AssemblyLoadContext", "System.Runtime.Loader", gAssemblyLoadContextFuncs)
1351 FCClassElement("AssemblyName", "System.Reflection", gAssemblyNameFuncs)
1352 FCClassElement("Assert", "System.Diagnostics", gDiagnosticsAssert)
1353 FCClassElement("BCLDebug", "System", gBCLDebugFuncs)
1354 FCClassElement("Buffer", "System", gBufferFuncs)
1355 FCClassElement("CLRConfig", "System", gClrConfig)
1356 FCClassElement("CompareInfo", "System.Globalization", gCompareInfoFuncs)
1357 FCClassElement("CompatibilitySwitch", "System.Runtime.Versioning", gCompatibilitySwitchFuncs)
1358 FCClassElement("CriticalHandle", "System.Runtime.InteropServices", gCriticalHandleFuncs)
1359 FCClassElement("Currency", "System", gCurrencyFuncs)
1360 FCClassElement("CustomAttribute", "System.Reflection", gCOMCustomAttributeFuncs)
1361 FCClassElement("CustomAttributeEncodedArgument", "System.Reflection", gCustomAttributeEncodedArgument)
1362 FCClassElement("DateMarshaler", "System.StubHelpers", gDateMarshalerFuncs)
1363 FCClassElement("DateTime", "System", gDateTimeFuncs)
1364 FCClassElement("Debugger", "System.Diagnostics", gDiagnosticsDebugger)
1365 FCClassElement("Decimal", "System", gDecimalFuncs)
1366 FCClassElement("DefaultBinder", "System", gCOMDefaultBinderFuncs)
1367 FCClassElement("Delegate", "System", gDelegateFuncs)
1368 FCClassElement("DependentHandle", "System.Runtime.CompilerServices", gDependentHandleFuncs)
1369 #if !defined(FEATURE_COREFX_GLOBALIZATION)
1370 FCClassElement("EncodingTable", "System.Globalization", gEncodingTableFuncs)
1371 #endif // !defined(FEATURE_COREFX_GLOBALIZATION)
1372 FCClassElement("Enum", "System", gEnumFuncs)
1373 FCClassElement("Environment", "System", gEnvironmentFuncs)
1374 #ifdef FEATURE_COMINTEROP
1375 FCClassElement("EventArgsMarshaler", "System.StubHelpers", gEventArgsMarshalerFuncs)
1376 #endif // FEATURE_COMINTEROP
1377 FCClassElement("Exception", "System", gExceptionFuncs)
1378 FCClassElement("FileLoadException", "System.IO", gFileLoadExceptionFuncs)
1379 FCClassElement("FormatterServices", "System.Runtime.Serialization", gSerializationFuncs)
1380 FCClassElement("GC", "System", gGCInterfaceFuncs)
1381 FCClassElement("GCHandle", "System.Runtime.InteropServices", gGCHandleFuncs)
1382 #ifdef FEATURE_COMINTEROP
1383 FCClassElement("IEnumerable", "System.Collections", gStdMngIEnumerableFuncs)
1384 FCClassElement("IEnumerator", "System.Collections", gStdMngIEnumeratorFuncs)
1385 FCClassElement("IExpando", "System.Runtime.InteropServices.Expando", gStdMngIExpandoFuncs)
1386 FCClassElement("IReflect", "System.Reflection", gStdMngIReflectFuncs)
1387 FCClassElement("InterfaceMarshaler", "System.StubHelpers", gInterfaceMarshalerFuncs)
1389 FCClassElement("Interlocked", "System.Threading", gInterlockedFuncs)
1390 FCClassElement("JitHelpers", "System.Runtime.CompilerServices", gJitHelpers)
1391 FCClassElement("LoaderAllocatorScout", "System.Reflection", gLoaderAllocatorFuncs)
1392 FCClassElement("Log", "System.Diagnostics", gDiagnosticsLog)
1393 FCClassElement("ManifestBasedResourceGroveler", "System.Resources", gManifestBasedResourceGrovelerFuncs)
1394 FCClassElement("Marshal", "System.Runtime.InteropServices", gInteropMarshalFuncs)
1395 FCClassElement("Math", "System", gMathFuncs)
1396 FCClassElement("MathF", "System", gMathFFuncs)
1397 #ifdef MDA_SUPPORTED
1398 FCClassElement("Mda", "System", gMda)
1400 FCClassElement("MemoryFailPoint", "System.Runtime", gMemoryFailPointFuncs)
1401 FCClassElement("MetadataImport", "System.Reflection", gMetaDataImport)
1402 FCClassElement("MissingMemberException", "System", gMissingMemberExceptionFuncs)
1403 #ifdef FEATURE_COMINTEROP
1404 FCClassElement("MngdHiddenLengthArrayMarshaler", "System.StubHelpers", gMngdHiddenLengthArrayMarshalerFuncs)
1405 #endif // FEATURE_COMINTEROP
1406 FCClassElement("MngdNativeArrayMarshaler", "System.StubHelpers", gMngdNativeArrayMarshalerFuncs)
1407 FCClassElement("MngdRefCustomMarshaler", "System.StubHelpers", gMngdRefCustomMarshalerFuncs)
1408 #ifdef FEATURE_COMINTEROP
1409 FCClassElement("MngdSafeArrayMarshaler", "System.StubHelpers", gMngdSafeArrayMarshalerFuncs)
1410 #endif // FEATURE_COMINTEROP
1411 FCClassElement("ModuleBuilder", "System.Reflection.Emit", gCOMModuleBuilderFuncs)
1412 FCClassElement("ModuleHandle", "System", gCOMModuleHandleFuncs)
1413 FCClassElement("Monitor", "System.Threading", gMonitorFuncs)
1414 FCClassElement("Number", "System", gNumberFuncs)
1415 #ifdef FEATURE_COMINTEROP
1416 FCClassElement("OAVariantLib", "Microsoft.Win32", gOAVariantFuncs)
1418 FCClassElement("Object", "System", gObjectFuncs)
1419 #ifdef FEATURE_COMINTEROP
1420 FCClassElement("ObjectMarshaler", "System.StubHelpers", gObjectMarshalerFuncs)
1422 FCClassElement("OverlappedData", "System.Threading", gOverlappedFuncs)
1423 FCClassElement("ParseNumbers", "System", gParseNumbersFuncs)
1426 FCClassElement("PunkSafeHandle", "System.Reflection.Emit", gSymWrapperCodePunkSafeHandleFuncs)
1427 FCClassElement("RegisteredWaitHandleSafe", "System.Threading", gRegisteredWaitHandleFuncs)
1428 #ifdef FEATURE_COMINTEROP
1429 #ifdef FEATURE_COMINTEROP_MANAGED_ACTIVATION
1430 FCClassElement("RegistrationServices", "System.Runtime.InteropServices", gRegistrationFuncs)
1431 #endif // FEATURE_COMINTEROP_MANAGED_ACTIVATION
1432 #endif // FEATURE_COMINTEROP
1434 FCClassElement("RtFieldInfo", "System.Reflection", gRuntimeFieldInfoFuncs)
1435 FCClassElement("RuntimeAssembly", "System.Reflection", gAssemblyFuncs)
1436 #ifdef FEATURE_COMINTEROP
1437 FCClassElement("RuntimeClass", "System.Runtime.InteropServices.WindowsRuntime", gRuntimeClassFuncs)
1438 #endif // FEATURE_COMINTEROP
1439 FCClassElement("RuntimeEnvironment", "System.Runtime.InteropServices", gRuntimeEnvironmentFuncs)
1440 FCClassElement("RuntimeFieldHandle", "System", gCOMFieldHandleNewFuncs)
1441 FCClassElement("RuntimeHelpers", "System.Runtime.CompilerServices", gCompilerFuncs)
1442 FCClassElement("RuntimeImports", "System.Runtime", gRuntimeImportsFuncs)
1443 FCClassElement("RuntimeMethodHandle", "System", gRuntimeMethodHandle)
1444 FCClassElement("RuntimeModule", "System.Reflection", gCOMModuleFuncs)
1445 FCClassElement("RuntimeThread", "Internal.Runtime.Augments", gRuntimeThreadFuncs)
1446 FCClassElement("RuntimeType", "System", gSystem_RuntimeType)
1447 FCClassElement("RuntimeTypeHandle", "System", gCOMTypeHandleFuncs)
1448 FCClassElement("SafeBuffer", "System.Runtime.InteropServices", gSafeBufferFuncs)
1449 FCClassElement("SafeHandle", "System.Runtime.InteropServices", gSafeHandleFuncs)
1450 FCClassElement("SafeTypeNameParserHandle", "System", gSafeTypeNameParserHandle)
1452 FCClassElement("Signature", "System", gSignatureNative)
1453 FCClassElement("StackTrace", "System.Diagnostics", gDiagnosticsStackTrace)
1454 FCClassElement("Stream", "System.IO", gStreamFuncs)
1455 FCClassElement("String", "System", gStringFuncs)
1456 FCClassElement("StringBuilder", "System.Text", gStringBufferFuncs)
1457 FCClassElement("StubHelpers", "System.StubHelpers", gStubHelperFuncs)
1458 FCClassElement("SynchronizationContext", "System.Threading", gContextSynchronizationFuncs)
1459 FCClassElement("Thread", "System.Threading", gThreadFuncs)
1460 FCClassElement("ThreadPool", "System.Threading", gThreadPoolFuncs)
1461 FCClassElement("TimerQueue", "System.Threading", gTimerFuncs)
1462 FCClassElement("Type", "System", gSystem_Type)
1463 FCClassElement("TypeBuilder", "System.Reflection.Emit", gCOMClassWriter)
1464 FCClassElement("TypeLoadException", "System", gTypeLoadExceptionFuncs)
1465 FCClassElement("TypeNameBuilder", "System.Reflection.Emit", gTypeNameBuilder)
1466 FCClassElement("TypeNameParser", "System", gTypeNameParser)
1467 FCClassElement("TypedReference", "System", gTypedReferenceFuncs)
1468 #ifdef FEATURE_COMINTEROP
1469 FCClassElement("UriMarshaler", "System.StubHelpers", gUriMarshalerFuncs)
1471 FCClassElement("Utf8String", "System", gUtf8String)
1472 FCClassElement("ValueClassMarshaler", "System.StubHelpers", gValueClassMarshalerFuncs)
1473 FCClassElement("ValueType", "System", gValueTypeFuncs)
1474 #ifdef FEATURE_COMINTEROP
1475 FCClassElement("Variant", "System", gVariantFuncs)
1477 FCClassElement("VersioningHelper", "System.Runtime.Versioning", gVersioningHelperFuncs)
1478 FCClassElement("WaitHandle", "System.Threading", gWaitHandleFuncs)
1479 FCClassElement("WeakReference", "System", gWeakReferenceFuncs)
1480 FCClassElement("WeakReference`1", "System", gWeakReferenceOfTFuncs)
1482 #ifdef FEATURE_COMINTEROP
1483 FCClassElement("WinRTTypeNameConverter", "System.StubHelpers", gWinRTTypeNameConverterFuncs)
1484 #endif // FEATURE_COMINTEROP
1486 #ifdef FEATURE_COMINTEROP
1487 FCClassElement("WindowsRuntimeBufferHelper", "System.Runtime.InteropServices.WindowsRuntime", gWindowsRuntimeBufferHelperFuncs)
1492 #if defined(FEATURE_EVENTSOURCE_XPLAT)
1493 FCClassElement("XplatEventLogger", "System.Diagnostics.Tracing", gEventLogger)
1494 #endif //defined(FEATURE_EVENTSOURCE_XPLAT)
1496 #undef FCFuncElement
1497 #undef FCFuncElementSig
1499 #undef FCIntrinsicSig
1500 #undef QCFuncElement
1503 #undef FCUnreferenced
1506 #undef FCClassElement