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)
93 FCFuncStart(gObjectFuncs)
94 FCIntrinsic("GetType", ObjectNative::GetClass, CORINFO_INTRINSIC_Object_GetType)
95 FCFuncElement("MemberwiseClone", ObjectNative::Clone)
98 FCFuncStart(gStringFuncs)
99 FCDynamic("FastAllocateString", CORINFO_INTRINSIC_Illegal, ECall::FastAllocateString)
100 FCDynamicSig(COR_CTOR_METHOD_NAME, &gsig_IM_ArrChar_RetVoid, CORINFO_INTRINSIC_Illegal, ECall::CtorCharArrayManaged)
101 FCDynamicSig(COR_CTOR_METHOD_NAME, &gsig_IM_ArrChar_Int_Int_RetVoid, CORINFO_INTRINSIC_Illegal, ECall::CtorCharArrayStartLengthManaged)
102 FCDynamicSig(COR_CTOR_METHOD_NAME, &gsig_IM_PtrChar_RetVoid, CORINFO_INTRINSIC_Illegal, ECall::CtorCharPtrManaged)
103 FCDynamicSig(COR_CTOR_METHOD_NAME, &gsig_IM_PtrChar_Int_Int_RetVoid, CORINFO_INTRINSIC_Illegal, ECall::CtorCharPtrStartLengthManaged)
104 FCDynamicSig(COR_CTOR_METHOD_NAME, &gsig_IM_Char_Int_RetVoid, CORINFO_INTRINSIC_Illegal, ECall::CtorCharCountManaged)
105 FCDynamicSig(COR_CTOR_METHOD_NAME, &gsig_IM_ReadOnlySpanOfChar_RetVoid, CORINFO_INTRINSIC_Illegal, ECall::CtorReadOnlySpanOfCharManaged)
106 FCFuncElementSig(COR_CTOR_METHOD_NAME, &gsig_IM_PtrSByt_RetVoid, COMString::StringInitCharPtr)
107 FCFuncElementSig(COR_CTOR_METHOD_NAME, &gsig_IM_PtrSByt_Int_Int_RetVoid, COMString::StringInitCharPtrPartial)
108 FCFuncElementSig(COR_CTOR_METHOD_NAME, &gsig_IM_PtrSByt_Int_Int_Encoding_RetVoid, COMString::StringInitSBytPtrPartialEx)
109 FCFuncElement("IsFastSort", COMString::IsFastSort)
110 FCFuncElement("nativeCompareOrdinalIgnoreCaseWC", COMString::FCCompareOrdinalIgnoreCaseWC)
111 FCIntrinsic("get_Length", COMString::Length, CORINFO_INTRINSIC_StringLength)
112 FCIntrinsic("get_Chars", COMString::GetCharAt, CORINFO_INTRINSIC_StringGetChar)
113 FCFuncElement("IsAscii", COMString::IsAscii)
114 FCFuncElement("CompareOrdinalHelper", COMString::CompareOrdinalEx)
115 #ifdef FEATURE_COMINTEROP
116 FCFuncElement("SetTrailByte", COMString::FCSetTrailByte)
117 FCFuncElement("TryGetTrailByte", COMString::FCTryGetTrailByte)
118 #endif // FEATURE_COMINTEROP
119 FCFuncElement("InternalMarvin32HashString", COMString::Marvin32HashString)
122 FCFuncStart(gStringBufferFuncs)
123 FCFuncElement("ReplaceBufferInternal", COMStringBuffer::ReplaceBufferInternal)
124 FCFuncElement("ReplaceBufferAnsiInternal", COMStringBuffer::ReplaceBufferAnsiInternal)
127 FCFuncStart(gValueTypeFuncs)
128 FCFuncElement("CanCompareBits", ValueTypeHelper::CanCompareBits)
129 FCFuncElement("FastEqualsCheck", ValueTypeHelper::FastEqualsCheck)
130 FCFuncElement("GetHashCode", ValueTypeHelper::GetHashCode)
131 FCFuncElement("GetHashCodeOfPtr", ValueTypeHelper::GetHashCodeOfPtr)
134 FCFuncStart(gDiagnosticsDebugger)
135 FCFuncElement("BreakInternal", DebugDebugger::Break)
136 FCFuncElement("LaunchInternal", DebugDebugger::Launch)
137 FCFuncElement("get_IsAttached", DebugDebugger::IsDebuggerAttached)
138 FCFuncElement("Log", DebugDebugger::Log)
139 FCFuncElement("IsLogging", DebugDebugger::IsLogging)
140 FCFuncElement("CustomNotification", DebugDebugger::CustomNotification)
143 FCFuncStart(gDiagnosticsStackTrace)
144 FCFuncElement("GetStackFramesInternal", DebugStackTrace::GetStackFramesInternal)
147 FCFuncStart(gDateTimeFuncs)
148 FCFuncElement("GetSystemTimeAsFileTime", SystemNative::__GetSystemTimeAsFileTime)
151 FCFuncStart(gEnvironmentFuncs)
152 FCFuncElement("get_TickCount", SystemNative::GetTickCount)
153 QCFuncElement("_Exit", SystemNative::Exit)
154 FCFuncElement("set_ExitCode", SystemNative::SetExitCode)
155 FCFuncElement("get_ExitCode", SystemNative::GetExitCode)
156 FCFuncElement("get_HasShutdownStarted", SystemNative::HasShutdownStarted)
157 QCFuncElement("GetProcessorCount", SystemNative::GetProcessorCount)
158 FCFuncElement("GetCommandLineArgsNative", SystemNative::GetCommandLineArgs)
159 FCFuncElement("get_CurrentProcessorNumber", SystemNative::GetCurrentProcessorNumber)
161 #if defined(FEATURE_COMINTEROP)
162 QCFuncElement("WinRTSupported", SystemNative::WinRTSupported)
163 #endif // FEATURE_COMINTEROP
164 FCFuncElementSig("FailFast", &gsig_SM_Str_RetVoid, SystemNative::FailFast)
165 FCFuncElementSig("FailFast", &gsig_SM_Str_Exception_RetVoid, SystemNative::FailFastWithException)
166 FCFuncElementSig("FailFast", &gsig_SM_Str_Exception_Str_RetVoid, SystemNative::FailFastWithExceptionAndSource)
169 FCFuncStart(gRuntimeEnvironmentFuncs)
170 FCFuncElement("GetModuleFileName", SystemNative::_GetModuleFileName)
173 FCFuncStart(gSerializationFuncs)
174 FCFuncElement("nativeGetUninitializedObject", ReflectionSerialization::GetUninitializedObject)
177 FCFuncStart(gExceptionFuncs)
178 FCFuncElement("IsImmutableAgileException", ExceptionNative::IsImmutableAgileException)
179 FCFuncElement("nIsTransient", ExceptionNative::IsTransient)
180 FCFuncElement("GetMethodFromStackTrace", SystemNative::GetMethodFromStackTrace)
181 QCFuncElement("GetMessageFromNativeResources", ExceptionNative::GetMessageFromNativeResources)
182 FCFuncElement("PrepareForForeignExceptionRaise", ExceptionNative::PrepareForForeignExceptionRaise)
183 FCFuncElement("CopyStackTrace", ExceptionNative::CopyStackTrace)
184 FCFuncElement("CopyDynamicMethods", ExceptionNative::CopyDynamicMethods)
185 FCFuncElement("GetStackTracesDeepCopy", ExceptionNative::GetStackTracesDeepCopy)
186 FCFuncElement("SaveStackTracesFromDeepCopy", ExceptionNative::SaveStackTracesFromDeepCopy)
189 FCFuncStart(gSafeHandleFuncs)
190 FCFuncElement("InternalDispose", SafeHandle::DisposeNative)
191 FCFuncElement("InternalFinalize", SafeHandle::Finalize)
192 FCFuncElement("SetHandleAsInvalid", SafeHandle::SetHandleAsInvalid)
193 FCFuncElement("DangerousAddRef", SafeHandle::DangerousAddRef)
194 FCFuncElement("DangerousRelease", SafeHandle::DangerousRelease)
197 FCFuncStart(gCriticalHandleFuncs)
198 FCFuncElement("FireCustomerDebugProbe", CriticalHandle::FireCustomerDebugProbe)
201 FCFuncStart(gTypedReferenceFuncs)
202 FCFuncElement("InternalToObject", ReflectionInvocation::TypedReferenceToObject)
203 FCFuncElement("InternalSetTypedReference", ReflectionInvocation::SetTypedReference)
204 FCFuncElement("InternalMakeTypedReference", ReflectionInvocation::MakeTypedReference)
207 FCFuncStart(gSystem_Type)
208 FCIntrinsic("GetTypeFromHandle", RuntimeTypeHandle::GetTypeFromHandle, CORINFO_INTRINSIC_GetTypeFromHandle)
209 FCFuncElement("GetTypeFromHandleUnsafe", RuntimeTypeHandle::GetRuntimeType)
210 FCIntrinsic("op_Equality", RuntimeTypeHandle::TypeEQ, CORINFO_INTRINSIC_TypeEQ)
211 FCIntrinsic("op_Inequality", RuntimeTypeHandle::TypeNEQ, CORINFO_INTRINSIC_TypeNEQ)
214 FCFuncStart(gSystem_RuntimeType)
215 FCFuncElement("GetGUID", ReflectionInvocation::GetGUID)
216 FCFuncElement("_CreateEnum", ReflectionInvocation::CreateEnum)
217 FCFuncElement("CanValueSpecialCast", ReflectionInvocation::CanValueSpecialCast)
218 FCFuncElement("AllocateValueType", ReflectionInvocation::AllocateValueType)
219 #if defined(FEATURE_COMINTEROP)
220 FCFuncElement("GetTypeFromCLSIDImpl", ReflectionInvocation::GetClassFromCLSID)
221 FCFuncElement("GetTypeFromProgIDImpl", ReflectionInvocation::GetClassFromProgID)
222 FCFuncElement("InvokeDispMethod", ReflectionInvocation::InvokeDispMethod)
223 #ifdef FEATURE_COMINTEROP_WINRT_MANAGED_ACTIVATION
224 FCFuncElement("IsTypeExportedToWindowsRuntime", RuntimeTypeHandle::IsTypeExportedToWindowsRuntime)
226 FCFuncElement("IsWindowsRuntimeObjectType", RuntimeTypeHandle::IsWindowsRuntimeObjectType)
227 #endif // defined(FEATURE_COMINTEROP)
230 FCFuncStart(gJitHelpers)
231 FCFuncElement("UnsafeSetArrayElement", JitHelpers::UnsafeSetArrayElement)
233 FCFuncElement("IsAddressInStack", ReflectionInvocation::IsAddressInStack)
237 FCFuncStart(gCOMTypeHandleFuncs)
238 FCFuncElement("CreateInstance", RuntimeTypeHandle::CreateInstance)
239 FCFuncElement("CreateCaInstance", RuntimeTypeHandle::CreateCaInstance)
240 FCFuncElement("CreateInstanceForAnotherGenericParameter", RuntimeTypeHandle::CreateInstanceForGenericType)
241 QCFuncElement("GetGCHandle", RuntimeTypeHandle::GetGCHandle)
243 FCFuncElement("IsInstanceOfType", RuntimeTypeHandle::IsInstanceOfType)
244 FCFuncElement("GetDeclaringMethod", RuntimeTypeHandle::GetDeclaringMethod)
245 FCFuncElement("GetDeclaringType", RuntimeTypeHandle::GetDeclaringType)
246 QCFuncElement("GetDefaultConstructor", RuntimeTypeHandle::GetDefaultConstructor)
247 QCFuncElement("MakePointer", RuntimeTypeHandle::MakePointer)
248 QCFuncElement("MakeByRef", RuntimeTypeHandle::MakeByRef)
249 QCFuncElement("MakeSZArray", RuntimeTypeHandle::MakeSZArray)
250 QCFuncElement("MakeArray", RuntimeTypeHandle::MakeArray)
251 QCFuncElement("IsCollectible", RuntimeTypeHandle::IsCollectible)
252 FCFuncElement("GetFirstIntroducedMethod", RuntimeTypeHandle::GetFirstIntroducedMethod)
253 FCFuncElement("GetNextIntroducedMethod", RuntimeTypeHandle::GetNextIntroducedMethod)
254 FCFuncElement("GetCorElementType", RuntimeTypeHandle::GetCorElementType)
255 FCFuncElement("GetAssembly", RuntimeTypeHandle::GetAssembly)
256 FCFuncElement("GetModule", RuntimeTypeHandle::GetModule)
257 FCFuncElement("GetBaseType", RuntimeTypeHandle::GetBaseType)
258 FCFuncElement("GetElementType", RuntimeTypeHandle::GetElementType)
259 FCFuncElement("GetArrayRank", RuntimeTypeHandle::GetArrayRank)
260 FCFuncElement("GetToken", RuntimeTypeHandle::GetToken)
261 FCFuncElement("_GetUtf8Name", RuntimeTypeHandle::GetUtf8Name)
262 FCFuncElement("GetMethodAt", RuntimeTypeHandle::GetMethodAt)
263 FCFuncElement("GetFields", RuntimeTypeHandle::GetFields)
264 FCFuncElement("GetInterfaces", RuntimeTypeHandle::GetInterfaces)
265 QCFuncElement("GetConstraints", RuntimeTypeHandle::GetConstraints)
266 FCFuncElement("GetAttributes", RuntimeTypeHandle::GetAttributes)
267 FCFuncElement("_GetMetadataImport", RuntimeTypeHandle::GetMetadataImport)
268 FCFuncElement("GetNumVirtuals", RuntimeTypeHandle::GetNumVirtuals)
269 QCFuncElement("VerifyInterfaceIsImplemented", RuntimeTypeHandle::VerifyInterfaceIsImplemented)
270 QCFuncElement("GetInterfaceMethodImplementation", RuntimeTypeHandle::GetInterfaceMethodImplementation)
271 FCFuncElement("IsComObject", RuntimeTypeHandle::IsComObject)
272 FCFuncElement("IsValueType", RuntimeTypeHandle::IsValueType)
273 FCFuncElement("IsInterface", RuntimeTypeHandle::IsInterface)
274 FCFuncElement("IsByRefLike", RuntimeTypeHandle::IsByRefLike)
275 QCFuncElement("_IsVisible", RuntimeTypeHandle::IsVisible)
276 QCFuncElement("ConstructName", RuntimeTypeHandle::ConstructName)
277 FCFuncElement("CanCastTo", RuntimeTypeHandle::CanCastTo)
278 QCFuncElement("GetTypeByName", RuntimeTypeHandle::GetTypeByName)
279 QCFuncElement("GetTypeByNameUsingCARules", RuntimeTypeHandle::GetTypeByNameUsingCARules)
280 QCFuncElement("GetInstantiation", RuntimeTypeHandle::GetInstantiation)
281 QCFuncElement("Instantiate", RuntimeTypeHandle::Instantiate)
282 QCFuncElement("GetGenericTypeDefinition", RuntimeTypeHandle::GetGenericTypeDefinition)
283 FCFuncElement("HasInstantiation", RuntimeTypeHandle::HasInstantiation)
284 FCFuncElement("GetGenericVariableIndex", RuntimeTypeHandle::GetGenericVariableIndex)
285 FCFuncElement("IsGenericVariable", RuntimeTypeHandle::IsGenericVariable)
286 FCFuncElement("IsGenericTypeDefinition", RuntimeTypeHandle::IsGenericTypeDefinition)
287 FCFuncElement("ContainsGenericVariables", RuntimeTypeHandle::ContainsGenericVariables)
288 FCFuncElement("SatisfiesConstraints", RuntimeTypeHandle::SatisfiesConstraints)
289 FCFuncElement("Allocate", RuntimeTypeHandle::Allocate) //for A.CI
290 FCFuncElement("CompareCanonicalHandles", RuntimeTypeHandle::CompareCanonicalHandles)
291 FCIntrinsic("GetValueInternal", RuntimeTypeHandle::GetValueInternal, CORINFO_INTRINSIC_RTH_GetValueInternal)
294 FCFuncStart(gMetaDataImport)
295 FCFuncElement("_GetDefaultValue", MetaDataImport::GetDefaultValue)
296 FCFuncElement("_GetName", MetaDataImport::GetName)
297 FCFuncElement("_GetUserString", MetaDataImport::GetUserString)
298 FCFuncElement("_GetScopeProps", MetaDataImport::GetScopeProps)
299 FCFuncElement("_GetClassLayout", MetaDataImport::GetClassLayout)
300 FCFuncElement("_GetSignatureFromToken", MetaDataImport::GetSignatureFromToken)
301 FCFuncElement("_GetNamespace", MetaDataImport::GetNamespace)
302 FCFuncElement("_GetEventProps", MetaDataImport::GetEventProps)
303 FCFuncElement("_GetFieldDefProps", MetaDataImport::GetFieldDefProps)
304 FCFuncElement("_GetPropertyProps", MetaDataImport::GetPropertyProps)
305 FCFuncElement("_GetParentToken", MetaDataImport::GetParentToken)
306 FCFuncElement("_GetParamDefProps", MetaDataImport::GetParamDefProps)
307 FCFuncElement("_GetGenericParamProps", MetaDataImport::GetGenericParamProps)
309 FCFuncElement("_Enum", MetaDataImport::Enum)
310 FCFuncElement("_GetMemberRefProps", MetaDataImport::GetMemberRefProps)
311 FCFuncElement("_GetCustomAttributeProps", MetaDataImport::GetCustomAttributeProps)
312 FCFuncElement("_GetFieldOffset", MetaDataImport::GetFieldOffset)
314 FCFuncElement("_GetSigOfFieldDef", MetaDataImport::GetSigOfFieldDef)
315 FCFuncElement("_GetSigOfMethodDef", MetaDataImport::GetSigOfMethodDef)
316 FCFuncElement("_GetFieldMarshal", MetaDataImport::GetFieldMarshal)
317 FCFuncElement("_GetPInvokeMap", MetaDataImport::GetPinvokeMap)
318 FCFuncElement("_IsValidToken", MetaDataImport::IsValidToken)
319 FCFuncElement("_GetMarshalAs", MetaDataImport::GetMarshalAs)
322 FCFuncStart(gSignatureNative)
323 FCFuncElement("GetSignature", SignatureNative::GetSignature)
324 FCFuncElement("GetCustomModifiers", SignatureNative::GetCustomModifiers)
325 FCFuncElement("CompareSig", SignatureNative::CompareSig)
328 FCFuncStart(gRuntimeMethodHandle)
329 QCFuncElement("ConstructInstantiation", RuntimeMethodHandle::ConstructInstantiation)
330 FCFuncElement("_GetCurrentMethod", RuntimeMethodHandle::GetCurrentMethod)
331 FCFuncElement("InvokeMethod", RuntimeMethodHandle::InvokeMethod)
332 QCFuncElement("GetFunctionPointer", RuntimeMethodHandle::GetFunctionPointer)
333 FCFuncElement("GetImplAttributes", RuntimeMethodHandle::GetImplAttributes)
334 FCFuncElement("GetAttributes", RuntimeMethodHandle::GetAttributes)
335 FCFuncElement("GetDeclaringType", RuntimeMethodHandle::GetDeclaringType)
336 FCFuncElement("GetSlot", RuntimeMethodHandle::GetSlot)
337 FCFuncElement("GetMethodDef", RuntimeMethodHandle::GetMethodDef)
338 FCFuncElement("GetName", RuntimeMethodHandle::GetName)
339 FCFuncElement("_GetUtf8Name", RuntimeMethodHandle::GetUtf8Name)
340 FCFuncElement("MatchesNameHash", RuntimeMethodHandle::MatchesNameHash)
341 QCFuncElement("GetMethodInstantiation", RuntimeMethodHandle::GetMethodInstantiation)
342 FCFuncElement("HasMethodInstantiation", RuntimeMethodHandle::HasMethodInstantiation)
343 FCFuncElement("IsGenericMethodDefinition", RuntimeMethodHandle::IsGenericMethodDefinition)
344 FCFuncElement("GetGenericParameterCount", RuntimeMethodHandle::GetGenericParameterCount)
345 FCFuncElement("IsTypicalMethodDefinition", RuntimeMethodHandle::IsTypicalMethodDefinition)
346 QCFuncElement("GetTypicalMethodDefinition", RuntimeMethodHandle::GetTypicalMethodDefinition)
347 QCFuncElement("StripMethodInstantiation", RuntimeMethodHandle::StripMethodInstantiation)
348 FCFuncElement("GetStubIfNeeded", RuntimeMethodHandle::GetStubIfNeeded)
349 FCFuncElement("GetMethodFromCanonical", RuntimeMethodHandle::GetMethodFromCanonical)
350 FCFuncElement("IsDynamicMethod", RuntimeMethodHandle::IsDynamicMethod)
351 FCFuncElement("GetMethodBody", RuntimeMethodHandle::GetMethodBody)
352 QCFuncElement("IsCAVisibleFromDecoratedType", RuntimeMethodHandle::IsCAVisibleFromDecoratedType)
353 FCFuncElement("IsConstructor", RuntimeMethodHandle::IsConstructor)
354 QCFuncElement("Destroy", RuntimeMethodHandle::Destroy)
355 FCFuncElement("GetResolver", RuntimeMethodHandle::GetResolver)
356 FCFuncElement("GetLoaderAllocator", RuntimeMethodHandle::GetLoaderAllocator)
357 FCFuncElement("GetSpecialSecurityFlags", ReflectionInvocation::GetSpecialSecurityFlags)
360 FCFuncStart(gCOMDefaultBinderFuncs)
361 FCFuncElement("CanConvertPrimitive", ReflectionBinder::DBCanConvertPrimitive)
362 FCFuncElement("CanConvertPrimitiveObjectToType", ReflectionBinder::DBCanConvertObjectPrimitive)
366 FCFuncStart(gCOMFieldHandleNewFuncs)
367 FCFuncElement("GetValue", RuntimeFieldHandle::GetValue)
368 FCFuncElement("SetValue", RuntimeFieldHandle::SetValue)
369 FCFuncElement("GetValueDirect", RuntimeFieldHandle::GetValueDirect)
370 FCFuncElement("SetValueDirect", RuntimeFieldHandle::SetValueDirect)
371 FCFuncElement("GetName", RuntimeFieldHandle::GetName)
372 FCFuncElement("_GetUtf8Name", RuntimeFieldHandle::GetUtf8Name)
373 FCFuncElement("MatchesNameHash", RuntimeFieldHandle::MatchesNameHash)
374 FCFuncElement("GetAttributes", RuntimeFieldHandle::GetAttributes)
375 FCFuncElement("GetApproxDeclaringType", RuntimeFieldHandle::GetApproxDeclaringType)
376 FCFuncElement("GetToken", RuntimeFieldHandle::GetToken)
377 FCFuncElement("GetStaticFieldForGenericType", RuntimeFieldHandle::GetStaticFieldForGenericType)
378 FCFuncElement("AcquiresContextFromThis", RuntimeFieldHandle::AcquiresContextFromThis)
382 FCFuncStart(gCOMModuleFuncs)
383 QCFuncElement("GetType", COMModule::GetType)
384 QCFuncElement("GetScopeName", COMModule::GetScopeName)
385 FCFuncElement("GetTypes", COMModule::GetTypes)
386 QCFuncElement("GetFullyQualifiedName", COMModule::GetFullyQualifiedName)
387 QCFuncElement("nIsTransientInternal", COMModule::IsTransient)
388 FCFuncElement("IsResource", COMModule::IsResource)
391 FCFuncStart(gCOMModuleBuilderFuncs)
392 FCFuncElement("nCreateISymWriterForDynamicModule", COMModule::nCreateISymWriterForDynamicModule)
393 QCFuncElement("GetStringConstant", COMModule::GetStringConstant)
394 QCFuncElement("GetTypeRef", COMModule::GetTypeRef)
395 QCFuncElement("GetTokenFromTypeSpec", COMModule::GetTokenFromTypeSpec)
396 QCFuncElement("GetMemberRef", COMModule::GetMemberRef)
397 QCFuncElement("GetMemberRefOfMethodInfo", COMModule::GetMemberRefOfMethodInfo)
398 QCFuncElement("GetMemberRefOfFieldInfo", COMModule::GetMemberRefOfFieldInfo)
399 QCFuncElement("GetMemberRefFromSignature", COMModule::GetMemberRefFromSignature)
400 QCFuncElement("GetArrayMethodToken", COMModule::GetArrayMethodToken)
401 QCFuncElement("SetFieldRVAContent", COMModule::SetFieldRVAContent)
404 FCFuncStart(gCOMModuleHandleFuncs)
405 FCFuncElement("GetToken", ModuleHandle::GetToken)
406 QCFuncElement("GetModuleType", ModuleHandle::GetModuleType)
407 FCFuncElement("GetDynamicMethod", ModuleHandle::GetDynamicMethod)
408 FCFuncElement("_GetMetadataImport", ModuleHandle::GetMetadataImport)
409 QCFuncElement("ResolveType", ModuleHandle::ResolveType)
410 QCFuncElement("ResolveMethod", ModuleHandle::ResolveMethod)
411 QCFuncElement("_ContainsPropertyMatchingHash", ModuleHandle::ContainsPropertyMatchingHash)
412 QCFuncElement("ResolveField", ModuleHandle::ResolveField)
413 QCFuncElement("GetPEKind", ModuleHandle::GetPEKind)
414 FCFuncElement("GetMDStreamVersion", ModuleHandle::GetMDStreamVersion)
417 FCFuncStart(gCustomAttributeEncodedArgument)
418 FCFuncElement("ParseAttributeArguments", Attribute::ParseAttributeArguments)
421 FCFuncStart(gCOMCustomAttributeFuncs)
422 FCFuncElement("_ParseAttributeUsageAttribute", COMCustomAttribute::ParseAttributeUsageAttribute)
423 FCFuncElement("_CreateCaObject", COMCustomAttribute::CreateCaObject)
424 FCFuncElement("_GetPropertyOrFieldData", COMCustomAttribute::GetPropertyOrFieldData)
427 FCFuncStart(gCOMClassWriter)
428 QCFuncElement("DefineGenericParam", COMDynamicWrite::DefineGenericParam)
429 QCFuncElement("DefineType", COMDynamicWrite::DefineType)
430 QCFuncElement("SetParentType", COMDynamicWrite::SetParentType)
431 QCFuncElement("AddInterfaceImpl", COMDynamicWrite::AddInterfaceImpl)
432 QCFuncElement("DefineMethod", COMDynamicWrite::DefineMethod)
433 QCFuncElement("DefineMethodSpec", COMDynamicWrite::DefineMethodSpec)
434 QCFuncElement("SetMethodIL", COMDynamicWrite::SetMethodIL)
435 QCFuncElement("TermCreateClass", COMDynamicWrite::TermCreateClass)
436 QCFuncElement("DefineField", COMDynamicWrite::DefineField)
437 QCFuncElement("DefineProperty", COMDynamicWrite::DefineProperty)
438 QCFuncElement("DefineEvent", COMDynamicWrite::DefineEvent)
439 QCFuncElement("DefineMethodSemantics", COMDynamicWrite::DefineMethodSemantics)
440 QCFuncElement("SetMethodImpl", COMDynamicWrite::SetMethodImpl)
441 QCFuncElement("DefineMethodImpl", COMDynamicWrite::DefineMethodImpl)
442 QCFuncElement("GetTokenFromSig", COMDynamicWrite::GetTokenFromSig)
443 QCFuncElement("SetFieldLayoutOffset", COMDynamicWrite::SetFieldLayoutOffset)
444 QCFuncElement("SetClassLayout", COMDynamicWrite::SetClassLayout)
445 QCFuncElement("SetParamInfo", COMDynamicWrite::SetParamInfo)
446 QCFuncElement("SetConstantValue", COMDynamicWrite::SetConstantValue)
447 QCFuncElement("DefineCustomAttribute", COMDynamicWrite::DefineCustomAttribute)
451 FCFuncStart(gCompatibilitySwitchFuncs)
452 FCFuncElement("GetValueInternalCall", CompatibilitySwitch::GetValue)
456 FCFuncStart(gAppDomainManagerFuncs)
457 QCFuncElement("GetEntryAssembly", AssemblyNative::GetEntryAssembly)
460 FCFuncStart(gAppDomainFuncs)
461 FCFuncElement("IsStringInterned", AppDomainNative::IsStringInterned)
464 QCFuncElement("nGetAppXFlags", AppDomainNative::GetAppXFlags)
466 FCFuncElement("nSetupFriendlyName", AppDomainNative::SetupFriendlyName)
467 FCFuncElement("nGetAssemblies", AppDomainNative::GetAssemblies)
468 FCFuncElement("nCreateContext", AppDomainNative::CreateContext)
469 FCFuncElement("GetId", AppDomainNative::GetId)
470 FCFuncElement("GetOrInternString", AppDomainNative::GetOrInternString)
471 QCFuncElement("nSetupBindingPaths", AppDomainNative::SetupBindingPaths)
472 QCFuncElement("nSetNativeDllSearchDirectories", AppDomainNative::SetNativeDllSearchDirectories)
473 FCFuncElement("IsFinalizingForUnload", AppDomainNative::IsFinalizingForUnload)
474 FCFuncElement("PublishAnonymouslyHostedDynamicMethodsAssembly", AppDomainNative::PublishAnonymouslyHostedDynamicMethodsAssembly)
475 #ifdef FEATURE_APPDOMAIN_RESOURCE_MONITORING
476 FCFuncElement("nEnableMonitoring", AppDomainNative::EnableMonitoring)
477 FCFuncElement("nMonitoringIsEnabled", AppDomainNative::MonitoringIsEnabled)
478 FCFuncElement("nGetTotalProcessorTime", AppDomainNative::GetTotalProcessorTime)
479 FCFuncElement("nGetTotalAllocatedMemorySize", AppDomainNative::GetTotalAllocatedMemorySize)
480 FCFuncElement("nGetLastSurvivedMemorySize", AppDomainNative::GetLastSurvivedMemorySize)
481 FCFuncElement("nGetLastSurvivedProcessMemorySize", AppDomainNative::GetLastSurvivedProcessMemorySize)
483 #endif //FEATURE_APPDOMAIN_RESOURCE_MONITORING
487 FCFuncStart(gUtf8String)
488 FCFuncElement("EqualsCaseSensitive", Utf8String::EqualsCaseSensitive)
489 QCFuncElement("EqualsCaseInsensitive", Utf8String::EqualsCaseInsensitive)
490 QCFuncElement("HashCaseInsensitive", Utf8String::HashCaseInsensitive)
493 FCFuncStart(gTypeNameBuilder)
494 QCFuncElement("CreateTypeNameBuilder", TypeNameBuilder::_CreateTypeNameBuilder)
495 QCFuncElement("ReleaseTypeNameBuilder", TypeNameBuilder::_ReleaseTypeNameBuilder)
496 QCFuncElement("OpenGenericArguments", TypeNameBuilder::_OpenGenericArguments)
497 QCFuncElement("CloseGenericArguments", TypeNameBuilder::_CloseGenericArguments)
498 QCFuncElement("OpenGenericArgument", TypeNameBuilder::_OpenGenericArgument)
499 QCFuncElement("CloseGenericArgument", TypeNameBuilder::_CloseGenericArgument)
500 QCFuncElement("AddName", TypeNameBuilder::_AddName)
501 QCFuncElement("AddPointer", TypeNameBuilder::_AddPointer)
502 QCFuncElement("AddByRef", TypeNameBuilder::_AddByRef)
503 QCFuncElement("AddSzArray", TypeNameBuilder::_AddSzArray)
504 QCFuncElement("AddArray", TypeNameBuilder::_AddArray)
505 QCFuncElement("AddAssemblySpec", TypeNameBuilder::_AddAssemblySpec)
506 QCFuncElement("ToString", TypeNameBuilder::_ToString)
507 QCFuncElement("Clear", TypeNameBuilder::_Clear)
511 FCFuncStart(gSafeTypeNameParserHandle)
512 QCFuncElement("_ReleaseTypeNameParser", TypeName::QReleaseTypeNameParser)
515 FCFuncStart(gTypeNameParser)
516 QCFuncElement("_CreateTypeNameParser", TypeName::QCreateTypeNameParser)
517 QCFuncElement("_GetNames", TypeName::QGetNames)
518 QCFuncElement("_GetTypeArguments", TypeName::QGetTypeArguments)
519 QCFuncElement("_GetModifiers", TypeName::QGetModifiers)
520 QCFuncElement("_GetAssemblyName", TypeName::QGetAssemblyName)
523 FCFuncStart(gManifestBasedResourceGrovelerFuncs)
524 QCFuncElement("GetNeutralResourcesLanguageAttribute", AssemblyNative::GetNeutralResourcesLanguageAttribute)
527 FCFuncStart(gAssemblyFuncs)
528 QCFuncElement("GetFullName", AssemblyNative::GetFullName)
529 QCFuncElement("GetLocation", AssemblyNative::GetLocation)
530 QCFuncElement("GetResource", AssemblyNative::GetResource)
531 QCFuncElement("GetCodeBase", AssemblyNative::GetCodeBase)
532 QCFuncElement("GetExecutingAssembly", AssemblyNative::GetExecutingAssembly)
533 QCFuncElement("GetFlags", AssemblyNative::GetFlags)
534 QCFuncElement("GetHashAlgorithm", AssemblyNative::GetHashAlgorithm)
535 QCFuncElement("GetLocale", AssemblyNative::GetLocale)
536 QCFuncElement("GetPublicKey", AssemblyNative::GetPublicKey)
537 QCFuncElement("GetSimpleName", AssemblyNative::GetSimpleName)
538 QCFuncElement("GetVersion", AssemblyNative::GetVersion)
539 FCFuncElement("FCallIsDynamic", AssemblyNative::IsDynamic)
540 FCFuncElement("nLoad", AssemblyNative::Load)
541 QCFuncElement("GetType", AssemblyNative::GetType)
542 QCFuncElement("GetForwardedType", AssemblyNative::GetForwardedType)
543 QCFuncElement("GetManifestResourceInfo", AssemblyNative::GetManifestResourceInfo)
544 QCFuncElement("GetModules", AssemblyNative::GetModules)
545 QCFuncElement("GetModule", AssemblyNative::GetModule)
546 FCFuncElement("GetReferencedAssemblies", AssemblyNative::GetReferencedAssemblies)
547 QCFuncElement("GetExportedTypes", AssemblyNative::GetExportedTypes)
548 FCFuncElement("GetManifestResourceNames", AssemblyNative::GetManifestResourceNames)
549 QCFuncElement("GetEntryPoint", AssemblyNative::GetEntryPoint)
550 QCFuncElement("GetImageRuntimeVersion", AssemblyNative::GetImageRuntimeVersion)
551 FCFuncElement("GetManifestModule", AssemblyHandle::GetManifestModule)
552 FCFuncElement("GetToken", AssemblyHandle::GetToken)
555 FCFuncStart(gAssemblyExtensionsFuncs)
556 QCFuncElement("InternalTryGetRawMetadata", AssemblyNative::InternalTryGetRawMetadata)
559 FCFuncStart(gAssemblyLoadContextFuncs)
560 QCFuncElement("InitializeAssemblyLoadContext", AssemblyNative::InitializeAssemblyLoadContext)
561 QCFuncElement("LoadFromPath", AssemblyNative::LoadFromPath)
562 QCFuncElement("InternalLoadUnmanagedDllFromPath", AssemblyNative::InternalLoadUnmanagedDllFromPath)
563 QCFuncElement("CanUseAppPathAssemblyLoadContextInCurrentDomain", AssemblyNative::CanUseAppPathAssemblyLoadContextInCurrentDomain)
564 QCFuncElement("LoadFromStream", AssemblyNative::LoadFromStream)
565 QCFuncElement("GetLoadContextForAssembly", AssemblyNative::GetLoadContextForAssembly)
566 #if defined(FEATURE_MULTICOREJIT)
567 QCFuncElement("InternalSetProfileRoot", MultiCoreJITNative::InternalSetProfileRoot)
568 QCFuncElement("InternalStartProfile", MultiCoreJITNative::InternalStartProfile)
569 #endif // defined(FEATURE_MULTICOREJIT)
572 FCFuncStart(gAssemblyNameFuncs)
573 FCFuncElement("nInit", AssemblyNameNative::Init)
574 FCFuncElement("nToString", AssemblyNameNative::ToString)
575 FCFuncElement("nGetPublicKeyToken", AssemblyNameNative::GetPublicKeyToken)
576 FCFuncElement("nGetFileInformation", AssemblyNameNative::GetFileInformation)
579 FCFuncStart(gLoaderAllocatorFuncs)
580 QCFuncElement("Destroy", LoaderAllocator::Destroy)
583 FCFuncStart(gAssemblyBuilderFuncs)
584 FCFuncElement("nCreateDynamicAssembly", AppDomainNative::CreateDynamicAssembly)
585 FCFuncElement("GetInMemoryAssemblyModule", AssemblyNative::GetInMemoryAssemblyModule)
590 FCFuncElement("MemberInfoCacheCreation", MdaManagedSupport::MemberInfoCacheCreation)
591 FCFuncElement("DateTimeInvalidLocalFormat", MdaManagedSupport::DateTimeInvalidLocalFormat)
592 FCFuncElement("IsStreamWriterBufferedDataLostEnabled", MdaManagedSupport::IsStreamWriterBufferedDataLostEnabled)
593 FCFuncElement("IsStreamWriterBufferedDataLostCaptureAllocatedCallStack", MdaManagedSupport::IsStreamWriterBufferedDataLostCaptureAllocatedCallStack)
594 FCFuncElement("ReportStreamWriterBufferedDataLost", MdaManagedSupport::ReportStreamWriterBufferedDataLost)
595 FCFuncElement("IsInvalidGCHandleCookieProbeEnabled", MdaManagedSupport::IsInvalidGCHandleCookieProbeEnabled)
596 FCFuncElement("FireInvalidGCHandleCookieProbe", MdaManagedSupport::FireInvalidGCHandleCookieProbe)
597 FCFuncElement("ReportErrorSafeHandleRelease", MdaManagedSupport::ReportErrorSafeHandleRelease)
599 #endif // MDA_SUPPORTED
601 FCFuncStart(gDelegateFuncs)
602 FCFuncElement("BindToMethodName", COMDelegate::BindToMethodName)
603 FCFuncElement("BindToMethodInfo", COMDelegate::BindToMethodInfo)
604 FCFuncElement("GetMulticastInvoke", COMDelegate::GetMulticastInvoke)
605 FCFuncElement("GetInvokeMethod", COMDelegate::GetInvokeMethod)
606 FCFuncElement("InternalAlloc", COMDelegate::InternalAlloc)
607 FCFuncElement("InternalAllocLike", COMDelegate::InternalAllocLike)
608 FCFuncElement("InternalEqualTypes", COMDelegate::InternalEqualTypes)
609 FCFuncElement("InternalEqualMethodHandles", COMDelegate::InternalEqualMethodHandles)
610 FCFuncElement("FindMethodHandle", COMDelegate::FindMethodHandle)
611 FCFuncElement("AdjustTarget", COMDelegate::AdjustTarget)
612 FCFuncElement("GetCallStub", COMDelegate::GetCallStub)
613 FCFuncElement("CompareUnmanagedFunctionPtrs", COMDelegate::CompareUnmanagedFunctionPtrs)
615 // The FCall mechanism knows how to wire multiple different constructor calls into a
616 // single entrypoint, without the following entry. But we need this entry to satisfy
617 // frame creation within the body:
618 FCFuncElement("DelegateConstruct", COMDelegate::DelegateConstruct)
621 FCFuncStart(gMathFuncs)
622 FCIntrinsicSig("Abs", &gsig_SM_Dbl_RetDbl, COMDouble::Abs, CORINFO_INTRINSIC_Abs)
623 FCIntrinsicSig("Abs", &gsig_SM_Flt_RetFlt, COMSingle::Abs, CORINFO_INTRINSIC_Abs)
624 FCIntrinsic("Acos", COMDouble::Acos, CORINFO_INTRINSIC_Acos)
625 FCIntrinsic("Acosh", COMDouble::Acosh, CORINFO_INTRINSIC_Acosh)
626 FCIntrinsic("Asin", COMDouble::Asin, CORINFO_INTRINSIC_Asin)
627 FCIntrinsic("Asinh", COMDouble::Asinh, CORINFO_INTRINSIC_Asinh)
628 FCIntrinsic("Atan", COMDouble::Atan, CORINFO_INTRINSIC_Atan)
629 FCIntrinsic("Atanh", COMDouble::Atanh, CORINFO_INTRINSIC_Atanh)
630 FCIntrinsic("Atan2", COMDouble::Atan2, CORINFO_INTRINSIC_Atan2)
631 FCIntrinsic("Cbrt", COMDouble::Cbrt, CORINFO_INTRINSIC_Cbrt)
632 FCIntrinsic("Ceiling", COMDouble::Ceil, CORINFO_INTRINSIC_Ceiling)
633 FCIntrinsic("Cos", COMDouble::Cos, CORINFO_INTRINSIC_Cos)
634 FCIntrinsic("Cosh", COMDouble::Cosh, CORINFO_INTRINSIC_Cosh)
635 FCIntrinsic("Exp", COMDouble::Exp, CORINFO_INTRINSIC_Exp)
636 FCIntrinsic("Floor", COMDouble::Floor, CORINFO_INTRINSIC_Floor)
637 FCFuncElement("FMod", COMDouble::FMod)
638 FCFuncElement("Log", COMDouble::Log)
639 FCIntrinsic("Log10", COMDouble::Log10, CORINFO_INTRINSIC_Log10)
640 FCFuncElement("ModF", COMDouble::ModF)
641 FCIntrinsic("Pow", COMDouble::Pow, CORINFO_INTRINSIC_Pow)
642 FCIntrinsic("Sin", COMDouble::Sin, CORINFO_INTRINSIC_Sin)
643 FCIntrinsic("Sinh", COMDouble::Sinh, CORINFO_INTRINSIC_Sinh)
644 FCIntrinsic("Sqrt", COMDouble::Sqrt, CORINFO_INTRINSIC_Sqrt)
645 FCIntrinsic("Tan", COMDouble::Tan, CORINFO_INTRINSIC_Tan)
646 FCIntrinsic("Tanh", COMDouble::Tanh, CORINFO_INTRINSIC_Tanh)
649 FCFuncStart(gMathFFuncs)
650 FCIntrinsic("Acos", COMSingle::Acos, CORINFO_INTRINSIC_Acos)
651 FCIntrinsic("Acosh", COMSingle::Acosh, CORINFO_INTRINSIC_Acosh)
652 FCIntrinsic("Asin", COMSingle::Asin, CORINFO_INTRINSIC_Asin)
653 FCIntrinsic("Asinh", COMSingle::Asinh, CORINFO_INTRINSIC_Asinh)
654 FCIntrinsic("Atan", COMSingle::Atan, CORINFO_INTRINSIC_Atan)
655 FCIntrinsic("Atanh", COMSingle::Atanh, CORINFO_INTRINSIC_Atanh)
656 FCIntrinsic("Atan2", COMSingle::Atan2, CORINFO_INTRINSIC_Atan2)
657 FCIntrinsic("Cbrt", COMSingle::Cbrt, CORINFO_INTRINSIC_Cbrt)
658 FCIntrinsic("Ceiling", COMSingle::Ceil, CORINFO_INTRINSIC_Ceiling)
659 FCIntrinsic("Cos", COMSingle::Cos, CORINFO_INTRINSIC_Cos)
660 FCIntrinsic("Cosh", COMSingle::Cosh, CORINFO_INTRINSIC_Cosh)
661 FCIntrinsic("Exp", COMSingle::Exp, CORINFO_INTRINSIC_Exp)
662 FCIntrinsic("Floor", COMSingle::Floor, CORINFO_INTRINSIC_Floor)
663 FCFuncElement("FMod", COMSingle::FMod)
664 FCFuncElement("Log", COMSingle::Log)
665 FCIntrinsic("Log10", COMSingle::Log10, CORINFO_INTRINSIC_Log10)
666 FCFuncElement("ModF", COMSingle::ModF)
667 FCIntrinsic("Pow", COMSingle::Pow, CORINFO_INTRINSIC_Pow)
668 FCIntrinsic("Sin", COMSingle::Sin, CORINFO_INTRINSIC_Sin)
669 FCIntrinsic("Sinh", COMSingle::Sinh, CORINFO_INTRINSIC_Sinh)
670 FCIntrinsic("Sqrt", COMSingle::Sqrt, CORINFO_INTRINSIC_Sqrt)
671 FCIntrinsic("Tan", COMSingle::Tan, CORINFO_INTRINSIC_Tan)
672 FCIntrinsic("Tanh", COMSingle::Tanh, CORINFO_INTRINSIC_Tanh)
675 FCFuncStart(gRuntimeThreadFuncs)
676 FCFuncElement("get_IsAlive", ThreadNative::IsAlive)
677 FCFuncElement("IsBackgroundNative", ThreadNative::IsBackground)
678 FCFuncElement("SetBackgroundNative", ThreadNative::SetBackground)
679 FCFuncElement("get_IsThreadPoolThread", ThreadNative::IsThreadpoolThread)
680 FCFuncElement("GetPriorityNative", ThreadNative::GetPriority)
681 FCFuncElement("SetPriorityNative", ThreadNative::SetPriority)
682 FCFuncElement("GetThreadStateNative", ThreadNative::GetThreadState)
683 #ifdef FEATURE_COMINTEROP_APARTMENT_SUPPORT
684 FCFuncElement("GetApartmentStateNative", ThreadNative::GetApartmentState)
685 FCFuncElement("SetApartmentStateNative", ThreadNative::SetApartmentState)
686 #endif // FEATURE_COMINTEROP_APARTMENT_SUPPORT
687 #ifdef FEATURE_COMINTEROP
688 FCFuncElement("DisableComObjectEagerCleanup", ThreadNative::DisableComObjectEagerCleanup)
689 #endif // FEATURE_COMINTEROP
690 FCFuncElement("InterruptInternal", ThreadNative::Interrupt)
691 FCFuncElement("JoinInternal", ThreadNative::Join)
692 QCFuncElement("GetOptimalMaxSpinWaitsPerSpinIterationInternal", ThreadNative::GetOptimalMaxSpinWaitsPerSpinIteration)
695 FCFuncStart(gThreadFuncs)
696 FCDynamic("InternalGetCurrentThread", CORINFO_INTRINSIC_Illegal, ECall::InternalGetCurrentThread)
697 FCFuncElement("StartInternal", ThreadNative::Start)
698 QCFuncElement("nativeInitCultureAccessors", ThreadNative::nativeInitCultureAccessors)
700 FCFuncElement("SleepInternal", ThreadNative::Sleep)
701 #define Sleep(a) Dont_Use_Sleep(a)
702 FCFuncElement("SetStart", ThreadNative::SetStart)
703 FCFuncElement("GetDomainInternal", ThreadNative::GetDomain)
704 FCFuncElement("GetFastDomainInternal", ThreadNative::FastGetDomain)
705 QCFuncElement("InformThreadNameChange", ThreadNative::InformThreadNameChange)
706 FCFuncElement("SpinWaitInternal", ThreadNative::SpinWait)
707 QCFuncElement("YieldInternal", ThreadNative::YieldThread)
708 FCIntrinsic("GetCurrentThreadNative", ThreadNative::GetCurrentThread, CORINFO_INTRINSIC_GetCurrentManagedThread)
709 FCIntrinsic("get_ManagedThreadId", ThreadNative::GetManagedThreadId, CORINFO_INTRINSIC_GetManagedThreadId)
710 FCFuncElement("InternalFinalize", ThreadNative::Finalize)
711 #ifdef FEATURE_COMINTEROP_APARTMENT_SUPPORT
712 FCFuncElement("StartupSetApartmentStateInternal", ThreadNative::StartupSetApartmentState)
713 #endif // FEATURE_COMINTEROP_APARTMENT_SUPPORT
716 FCFuncStart(gThreadPoolFuncs)
717 FCFuncElement("PostQueuedCompletionStatus", ThreadPoolNative::CorPostQueuedCompletionStatus)
718 FCFuncElement("GetAvailableThreadsNative", ThreadPoolNative::CorGetAvailableThreads)
719 FCFuncElement("SetMinThreadsNative", ThreadPoolNative::CorSetMinThreads)
720 FCFuncElement("GetMinThreadsNative", ThreadPoolNative::CorGetMinThreads)
721 FCFuncElement("RegisterWaitForSingleObjectNative", ThreadPoolNative::CorRegisterWaitForSingleObject)
722 FCFuncElement("BindIOCompletionCallbackNative", ThreadPoolNative::CorBindIoCompletionCallback)
723 FCFuncElement("SetMaxThreadsNative", ThreadPoolNative::CorSetMaxThreads)
724 FCFuncElement("GetMaxThreadsNative", ThreadPoolNative::CorGetMaxThreads)
725 FCFuncElement("NotifyWorkItemComplete", ThreadPoolNative::NotifyRequestComplete)
726 FCFuncElement("NotifyWorkItemProgressNative", ThreadPoolNative::NotifyRequestProgress)
727 QCFuncElement("InitializeVMTp", ThreadPoolNative::InitializeVMTp)
728 FCFuncElement("ReportThreadStatus", ThreadPoolNative::ReportThreadStatus)
729 QCFuncElement("RequestWorkerThread", ThreadPoolNative::RequestWorkerThread)
732 FCFuncStart(gTimerFuncs)
733 QCFuncElement("CreateAppDomainTimer", AppDomainTimerNative::CreateAppDomainTimer)
734 QCFuncElement("ChangeAppDomainTimer", AppDomainTimerNative::ChangeAppDomainTimer)
735 QCFuncElement("DeleteAppDomainTimer", AppDomainTimerNative::DeleteAppDomainTimer)
739 FCFuncStart(gRegisteredWaitHandleFuncs)
740 FCFuncElement("UnregisterWaitNative", ThreadPoolNative::CorUnregisterWait)
741 FCFuncElement("WaitHandleCleanupNative", ThreadPoolNative::CorWaitHandleCleanupNative)
744 FCFuncStart(gWaitHandleFuncs)
745 FCFuncElement("WaitOneNative", WaitHandleNative::CorWaitOneNative)
746 FCFuncElement("WaitMultiple", WaitHandleNative::CorWaitMultipleNative)
747 FCFuncElement("SignalAndWaitOne", WaitHandleNative::CorSignalAndWaitOneNative)
750 FCFuncStart(gNumberFuncs)
751 FCFuncElement("DoubleToNumber", COMNumber::DoubleToNumberFC)
752 FCFuncElement("NumberToDouble", COMNumber::NumberToDoubleFC)
753 FCFuncElement("NumberBufferToDecimal", COMNumber::NumberBufferToDecimal)
756 #ifdef FEATURE_COMINTEROP
757 FCFuncStart(gVariantFuncs)
758 FCFuncElement("SetFieldsObject", COMVariant::SetFieldsObject)
759 FCFuncElement("SetFieldsR4", COMVariant::SetFieldsR4)
760 FCFuncElement("SetFieldsR8", COMVariant::SetFieldsR8)
761 FCFuncElement("GetR4FromVar", COMVariant::GetR4FromVar)
762 FCFuncElement("GetR8FromVar", COMVariant::GetR8FromVar)
763 FCFuncElement("BoxEnum", COMVariant::BoxEnum)
765 #endif // FEATURE_COMINTEROP
767 #ifdef FEATURE_COMINTEROP
768 FCFuncStart(gOAVariantFuncs)
769 FCFuncElement("ChangeTypeEx", COMOAVariant::ChangeTypeEx)
771 #endif // FEATURE_COMINTEROP
773 FCFuncStart(gDecimalFuncs)
774 FCFuncElementSig(COR_CTOR_METHOD_NAME, &gsig_IM_Flt_RetVoid, COMDecimal::InitSingle)
775 FCFuncElementSig(COR_CTOR_METHOD_NAME, &gsig_IM_Dbl_RetVoid, COMDecimal::InitDouble)
776 FCFuncElement("FCallAddSub", COMDecimal::DoAddSubThrow)
777 FCFuncElement("FCallMultiply", COMDecimal::DoMultiplyThrow)
778 FCFuncElement("FCallDivide", COMDecimal::DoDivideThrow)
779 FCFuncElement("FCallCompare", COMDecimal::DoCompare)
780 FCFuncElement("FCallFloor", COMDecimal::DoFloor)
781 FCFuncElement("GetHashCode", COMDecimal::GetHashCode)
782 FCFuncElement("FCallRound", COMDecimal::DoRound)
783 FCFuncElement("FCallToCurrency", COMDecimal::DoToCurrency)
784 FCFuncElement("FCallToInt32", COMDecimal::ToInt32)
785 FCFuncElement("ToDouble", COMDecimal::ToDouble)
786 FCFuncElement("ToSingle", COMDecimal::ToSingle)
787 FCFuncElement("FCallTruncate", COMDecimal::DoTruncate)
790 FCFuncStart(gCurrencyFuncs)
791 FCFuncElement("FCallToDecimal", COMCurrency::DoToDecimal)
794 FCFuncStart(gClrConfig)
795 QCFuncElement("GetConfigBoolValue", ClrConfigNative::GetConfigBoolValue)
798 #if !defined(FEATURE_COREFX_GLOBALIZATION)
799 FCFuncStart(gCompareInfoFuncs)
800 QCFuncElement("InternalGetGlobalizedHashCode", COMNlsInfo::InternalGetGlobalizedHashCode)
803 FCFuncStart(gEncodingTableFuncs)
804 FCFuncElement("GetNumEncodingItems", COMNlsInfo::nativeGetNumEncodingItems)
805 FCFuncElement("GetEncodingData", COMNlsInfo::nativeGetEncodingTableDataPointer)
806 FCFuncElement("GetCodePageData", COMNlsInfo::nativeGetCodePageTableDataPointer)
808 #endif // !defined(FEATURE_COREFX_GLOBALIZATION)
810 #ifdef FEATURE_COREFX_GLOBALIZATION
811 FCFuncStart(gCompareInfoFuncs)
812 QCFuncElement("InternalHashSortKey", CoreFxGlobalization::HashSortKey)
816 FCFuncStart(gArrayFuncs)
817 FCFuncElement("get_Rank", ArrayNative::GetRank)
818 FCFuncElement("GetLowerBound", ArrayNative::GetLowerBound)
819 FCFuncElement("GetUpperBound", ArrayNative::GetUpperBound)
820 FCIntrinsicSig("GetLength", &gsig_IM_Int_RetInt, ArrayNative::GetLength, CORINFO_INTRINSIC_Array_GetDimLength)
821 FCFuncElement("get_Length", ArrayNative::GetLengthNoRank)
822 FCFuncElement("get_LongLength", ArrayNative::GetLongLengthNoRank)
823 FCFuncElement("GetDataPtrOffsetInternal", ArrayNative::GetDataPtrOffsetInternal)
824 FCFuncElement("Initialize", ArrayNative::Initialize)
825 FCFuncElement("Copy", ArrayNative::ArrayCopy)
826 FCFuncElement("Clear", ArrayNative::ArrayClear)
827 FCFuncElement("InternalCreate", ArrayNative::CreateInstance)
828 FCFuncElement("InternalGetReference", ArrayNative::GetReference)
829 FCFuncElement("InternalSetValue", ArrayNative::SetValue)
830 FCFuncElement("TrySZIndexOf", ArrayHelper::TrySZIndexOf)
831 FCFuncElement("TrySZLastIndexOf", ArrayHelper::TrySZLastIndexOf)
832 FCFuncElement("TrySZBinarySearch", ArrayHelper::TrySZBinarySearch)
833 FCFuncElement("TrySZSort", ArrayHelper::TrySZSort)
834 FCFuncElement("TrySZReverse", ArrayHelper::TrySZReverse)
837 FCFuncStart(gBufferFuncs)
838 FCFuncElement("BlockCopy", Buffer::BlockCopy)
839 FCFuncElement("_GetByte", Buffer::GetByte)
840 FCFuncElement("_SetByte", Buffer::SetByte)
841 FCFuncElement("IsPrimitiveTypeArray", Buffer::IsPrimitiveTypeArray)
842 FCFuncElement("_ByteLength", Buffer::ByteLength)
844 FCFuncElement("Memcpy", FCallMemcpy)
846 QCFuncElement("__Memmove", Buffer::MemMove)
849 FCFuncStart(gGCInterfaceFuncs)
850 FCFuncElement("GetGenerationWR", GCInterface::GetGenerationWR)
851 FCFuncElement("_RegisterForFullGCNotification", GCInterface::RegisterForFullGCNotification)
852 FCFuncElement("_CancelFullGCNotification", GCInterface::CancelFullGCNotification)
853 FCFuncElement("_WaitForFullGCApproach", GCInterface::WaitForFullGCApproach)
854 FCFuncElement("_WaitForFullGCComplete", GCInterface::WaitForFullGCComplete)
855 FCFuncElement("_CollectionCount", GCInterface::CollectionCount)
856 FCFuncElement("GetGCLatencyMode", GCInterface::GetGcLatencyMode)
857 FCFuncElement("SetGCLatencyMode", GCInterface::SetGcLatencyMode)
858 FCFuncElement("GetLOHCompactionMode", GCInterface::GetLOHCompactionMode)
859 FCFuncElement("SetLOHCompactionMode", GCInterface::SetLOHCompactionMode)
860 QCFuncElement("_StartNoGCRegion", GCInterface::StartNoGCRegion)
861 QCFuncElement("_EndNoGCRegion", GCInterface::EndNoGCRegion)
862 FCFuncElement("IsServerGC", SystemNative::IsServerGC)
863 QCFuncElement("_AddMemoryPressure", GCInterface::_AddMemoryPressure)
864 QCFuncElement("_RemoveMemoryPressure", GCInterface::_RemoveMemoryPressure)
865 FCFuncElement("GetGeneration", GCInterface::GetGeneration)
866 QCFuncElement("GetTotalMemory", GCInterface::GetTotalMemory)
867 QCFuncElement("_Collect", GCInterface::Collect)
868 FCFuncElement("GetMaxGeneration", GCInterface::GetMaxGeneration)
869 QCFuncElement("_WaitForPendingFinalizers", GCInterface::WaitForPendingFinalizers)
871 FCFuncElement("_SuppressFinalize", GCInterface::SuppressFinalize)
872 FCFuncElement("_ReRegisterForFinalize", GCInterface::ReRegisterForFinalize)
874 FCFuncElement("_GetAllocatedBytesForCurrentThread", GCInterface::GetAllocatedBytesForCurrentThread)
877 FCFuncStart(gMemoryFailPointFuncs)
878 FCFuncElement("GetMemorySettings", COMMemoryFailPoint::GetMemorySettings)
881 FCFuncStart(gInteropMarshalFuncs)
882 FCFuncElement("GetLastWin32Error", MarshalNative::GetLastWin32Error)
883 FCFuncElement("SetLastWin32Error", MarshalNative::SetLastWin32Error)
884 FCFuncElement("SizeOfHelper", MarshalNative::SizeOfClass)
885 FCFuncElement("GetSystemMaxDBCSCharSize", MarshalNative::GetSystemMaxDBCSCharSize)
886 FCFuncElement("PtrToStructureHelper", MarshalNative::PtrToStructureHelper)
887 FCFuncElement("DestroyStructure", MarshalNative::DestroyStructure)
888 FCFuncElement("UnsafeAddrOfPinnedArrayElement", MarshalNative::FCUnsafeAddrOfPinnedArrayElement)
889 FCFuncElement("GetExceptionCode", ExceptionNative::GetExceptionCode)
890 FCFuncElement("GetExceptionPointers", ExceptionNative::GetExceptionPointers)
891 QCFuncElement("GetHINSTANCE", COMModule::GetHINSTANCE)
893 FCFuncElement("OffsetOfHelper", MarshalNative::OffsetOfHelper)
895 QCFuncElement("InternalPrelink", MarshalNative::Prelink)
896 FCFuncElement("CopyToNative", MarshalNative::CopyToNative)
897 FCFuncElement("CopyToManaged", MarshalNative::CopyToManaged)
898 FCFuncElement("StructureToPtr", MarshalNative::StructureToPtr)
899 FCFuncElement("ThrowExceptionForHRInternal", MarshalNative::ThrowExceptionForHR)
900 FCFuncElement("GetExceptionForHRInternal", MarshalNative::GetExceptionForHR)
901 FCFuncElement("GetDelegateForFunctionPointerInternal", MarshalNative::GetDelegateForFunctionPointerInternal)
902 FCFuncElement("GetFunctionPointerForDelegateInternal", MarshalNative::GetFunctionPointerForDelegateInternal)
903 #ifdef FEATURE_COMINTEROP
904 FCFuncElement("GetHRForException", MarshalNative::GetHRForException)
905 FCFuncElement("GetHRForException_WinRT", MarshalNative::GetHRForException_WinRT)
906 FCFuncElement("GetRawIUnknownForComObjectNoAddRef", MarshalNative::GetRawIUnknownForComObjectNoAddRef)
907 FCFuncElement("IsComObject", MarshalNative::IsComObject)
908 FCFuncElement("GetObjectForIUnknown", MarshalNative::GetObjectForIUnknown)
909 FCFuncElement("GetUniqueObjectForIUnknown", MarshalNative::GetUniqueObjectForIUnknown)
910 FCFuncElement("AddRef", MarshalNative::AddRef)
911 FCFuncElement("GetNativeVariantForObject", MarshalNative::GetNativeVariantForObject)
912 FCFuncElement("GetObjectForNativeVariant", MarshalNative::GetObjectForNativeVariant)
913 FCFuncElement("InternalFinalReleaseComObject", MarshalNative::FinalReleaseComObject)
914 FCFuncElement("QueryInterface", MarshalNative::QueryInterface)
915 FCFuncElement("CreateAggregatedObject", MarshalNative::CreateAggregatedObject)
916 FCFuncElement("AreComObjectsAvailableForCleanup", MarshalNative::AreComObjectsAvailableForCleanup)
917 FCFuncElement("InternalCreateWrapperOfType", MarshalNative::InternalCreateWrapperOfType)
918 FCFuncElement("GetObjectsForNativeVariants", MarshalNative::GetObjectsForNativeVariants)
919 FCFuncElement("GetStartComSlot", MarshalNative::GetStartComSlot)
921 FCFuncElement("InitializeManagedWinRTFactoryObject", MarshalNative::InitializeManagedWinRTFactoryObject)
923 FCFuncElement("GetNativeActivationFactory", MarshalNative::GetNativeActivationFactory)
924 FCFuncElement("GetIUnknownForObjectNative", MarshalNative::GetIUnknownForObjectNative)
925 FCFuncElement("GetComInterfaceForObjectNative", MarshalNative::GetComInterfaceForObjectNative)
926 FCFuncElement("InternalReleaseComObject", MarshalNative::ReleaseComObject)
927 FCFuncElement("Release", MarshalNative::Release)
928 FCFuncElement("InitializeWrapperForWinRT", MarshalNative::InitializeWrapperForWinRT)
929 FCFuncElement("GetTypedObjectForIUnknown", MarshalNative::GetTypedObjectForIUnknown)
930 FCFuncElement("ChangeWrapperHandleStrength", MarshalNative::ChangeWrapperHandleStrength)
931 FCFuncElement("CleanupUnusedObjectsInCurrentContext", MarshalNative::CleanupUnusedObjectsInCurrentContext)
932 #endif // FEATURE_COMINTEROP
935 FCFuncStart(gArrayWithOffsetFuncs)
936 FCFuncElement("CalculateCount", MarshalNative::CalculateCount)
939 #ifdef FEATURE_COMINTEROP
944 #ifdef FEATURE_COMINTEROP_MANAGED_ACTIVATION
945 FCFuncStart(gRegistrationFuncs)
946 FCFuncElement("RegisterTypeForComClientsNative", RegisterTypeForComClientsNative)
947 FCFuncElement("RegisterTypeForComClientsExNative", RegisterTypeForComClientsExNative)
949 #endif // FEATURE_COMINTEROP_MANAGED_ACTIVATION
951 #endif // FEATURE_COMINTEROP
953 FCFuncStart(gTypeLoadExceptionFuncs)
954 QCFuncElement("GetTypeLoadExceptionMessage", GetTypeLoadExceptionMessage)
957 FCFuncStart(gFileLoadExceptionFuncs)
958 QCFuncElement("GetFileLoadExceptionMessage", GetFileLoadExceptionMessage)
959 QCFuncElement("GetMessageForHR", FileLoadException_GetMessageForHR)
962 FCFuncStart(gMissingMemberExceptionFuncs)
963 FCFuncElement("FormatSignature", MissingMemberException_FormatSignature)
966 FCFuncStart(gInterlockedFuncs)
967 FCIntrinsicSig("Exchange", &gsig_SM_RefInt_Int_RetInt, COMInterlocked::Exchange, CORINFO_INTRINSIC_InterlockedXchg32)
968 FCIntrinsicSig("Exchange", &gsig_SM_RefLong_Long_RetLong, COMInterlocked::Exchange64, CORINFO_INTRINSIC_InterlockedXchg64)
969 FCFuncElementSig("Exchange", &gsig_SM_RefDbl_Dbl_RetDbl, COMInterlocked::ExchangeDouble)
970 FCFuncElementSig("Exchange", &gsig_SM_RefFlt_Flt_RetFlt, COMInterlocked::ExchangeFloat)
971 FCFuncElementSig("Exchange", &gsig_SM_RefObj_Obj_RetObj, COMInterlocked::ExchangeObject)
972 FCFuncElementSig("Exchange", &gsig_SM_RefIntPtr_IntPtr_RetIntPtr, COMInterlocked::ExchangePointer)
973 FCIntrinsicSig("CompareExchange", &gsig_SM_RefInt_Int_Int_RetInt, COMInterlocked::CompareExchange, CORINFO_INTRINSIC_InterlockedCmpXchg32)
974 FCIntrinsicSig("CompareExchange", &gsig_SM_RefLong_Long_Long_RetLong, COMInterlocked::CompareExchange64, CORINFO_INTRINSIC_InterlockedCmpXchg64)
975 FCFuncElementSig("CompareExchange", &gsig_SM_RefDbl_Dbl_Dbl_RetDbl, COMInterlocked::CompareExchangeDouble)
976 FCFuncElementSig("CompareExchange", &gsig_SM_RefFlt_Flt_Flt_RetFlt, COMInterlocked::CompareExchangeFloat)
977 FCFuncElementSig("CompareExchange", &gsig_SM_RefObj_Obj_Obj_RetObj, COMInterlocked::CompareExchangeObject)
978 FCFuncElementSig("CompareExchange", &gsig_SM_RefInt_Int_Int_RefBool_RetInt, COMInterlocked::CompareExchangeReliableResult)
979 FCFuncElementSig("CompareExchange", &gsig_SM_RefIntPtr_IntPtr_IntPtr_RetIntPtr, COMInterlocked::CompareExchangePointer)
980 FCIntrinsicSig("ExchangeAdd", &gsig_SM_RefInt_Int_RetInt, COMInterlocked::ExchangeAdd32, CORINFO_INTRINSIC_InterlockedXAdd32)
981 FCIntrinsicSig("ExchangeAdd", &gsig_SM_RefLong_Long_RetLong, COMInterlocked::ExchangeAdd64, CORINFO_INTRINSIC_InterlockedXAdd64)
983 FCIntrinsic("MemoryBarrier", COMInterlocked::FCMemoryBarrier, CORINFO_INTRINSIC_MemoryBarrier)
984 QCFuncElement("_MemoryBarrierProcessWide", COMInterlocked::MemoryBarrierProcessWide)
987 FCFuncStart(gVarArgFuncs)
988 FCFuncElementSig(COR_CTOR_METHOD_NAME, &gsig_IM_IntPtr_PtrVoid_RetVoid, VarArgsNative::Init2)
989 FCFuncElementSig(COR_CTOR_METHOD_NAME, &gsig_IM_IntPtr_RetVoid, VarArgsNative::Init)
990 FCFuncElement("GetRemainingCount", VarArgsNative::GetRemainingCount)
991 FCFuncElement("_GetNextArgType", VarArgsNative::GetNextArgType)
992 FCFuncElement("FCallGetNextArg", VarArgsNative::DoGetNextArg)
993 FCFuncElement("InternalGetNextArg", VarArgsNative::GetNextArg2)
996 FCFuncStart(gMonitorFuncs)
997 FCFuncElement("Enter", JIT_MonEnter)
998 FCFuncElement("ReliableEnter", JIT_MonReliableEnter)
999 FCFuncElement("ReliableEnterTimeout", JIT_MonTryEnter)
1000 FCFuncElement("Exit", JIT_MonExit)
1001 FCFuncElement("ObjWait", ObjectNative::WaitTimeout)
1002 FCFuncElement("ObjPulse", ObjectNative::Pulse)
1003 FCFuncElement("ObjPulseAll", ObjectNative::PulseAll)
1004 FCFuncElement("IsEnteredNative", ObjectNative::IsLockHeld)
1007 FCFuncStart(gOverlappedFuncs)
1008 FCFuncElement("AllocateNativeOverlapped", AllocateNativeOverlapped)
1009 FCFuncElement("FreeNativeOverlapped", FreeNativeOverlapped)
1010 FCFuncElement("CheckVMForIOPacket", CheckVMForIOPacket)
1011 FCFuncElement("GetOverlappedFromNative", GetOverlappedFromNative)
1014 FCFuncStart(gCompilerFuncs)
1015 FCFuncElement("GetObjectValue", ObjectNative::GetObjectValue)
1016 FCIntrinsic("InitializeArray", ArrayNative::InitializeArray, CORINFO_INTRINSIC_InitializeArray)
1017 FCFuncElement("_RunClassConstructor", ReflectionInvocation::RunClassConstructor)
1018 FCFuncElement("_RunModuleConstructor", ReflectionInvocation::RunModuleConstructor)
1019 QCFuncElement("_CompileMethod", ReflectionInvocation::CompileMethod)
1020 FCFuncElement("ExecuteCodeWithGuaranteedCleanup", ReflectionInvocation::ExecuteCodeWithGuaranteedCleanup)
1021 FCFuncElement("GetHashCode", ObjectNative::GetHashCode)
1022 FCFuncElement("Equals", ObjectNative::Equals)
1023 FCFuncElement("EnsureSufficientExecutionStack", ReflectionInvocation::EnsureSufficientExecutionStack)
1024 FCFuncElement("TryEnsureSufficientExecutionStack", ReflectionInvocation::TryEnsureSufficientExecutionStack)
1027 FCFuncStart(gContextSynchronizationFuncs)
1028 FCFuncElement("WaitHelperNative", SynchronizationContextNative::WaitHelper)
1030 QCFuncElement("GetWinRTDispatcherForCurrentThread", SynchronizationContextNative::GetWinRTDispatcherForCurrentThread)
1034 FCFuncStart(gDateMarshalerFuncs)
1035 FCFuncElement("ConvertToNative", StubHelpers::DateMarshaler__ConvertToNative)
1036 FCFuncElement("ConvertToManaged", StubHelpers::DateMarshaler__ConvertToManaged)
1039 FCFuncStart(gValueClassMarshalerFuncs)
1040 FCFuncElement("ConvertToNative", StubHelpers::ValueClassMarshaler__ConvertToNative)
1041 FCFuncElement("ConvertToManaged", StubHelpers::ValueClassMarshaler__ConvertToManaged)
1042 FCFuncElement("ClearNative", StubHelpers::ValueClassMarshaler__ClearNative)
1045 FCFuncStart(gMngdNativeArrayMarshalerFuncs)
1046 FCFuncElement("CreateMarshaler", MngdNativeArrayMarshaler::CreateMarshaler)
1047 FCFuncElement("ConvertSpaceToNative", MngdNativeArrayMarshaler::ConvertSpaceToNative)
1048 FCFuncElement("ConvertContentsToNative", MngdNativeArrayMarshaler::ConvertContentsToNative)
1049 FCFuncElement("ConvertSpaceToManaged", MngdNativeArrayMarshaler::ConvertSpaceToManaged)
1050 FCFuncElement("ConvertContentsToManaged", MngdNativeArrayMarshaler::ConvertContentsToManaged)
1051 FCFuncElement("ClearNative", MngdNativeArrayMarshaler::ClearNative)
1052 FCFuncElement("ClearNativeContents", MngdNativeArrayMarshaler::ClearNativeContents)
1055 #ifdef FEATURE_COMINTEROP
1056 FCFuncStart(gObjectMarshalerFuncs)
1057 FCFuncElement("ConvertToNative", StubHelpers::ObjectMarshaler__ConvertToNative)
1058 FCFuncElement("ConvertToManaged", StubHelpers::ObjectMarshaler__ConvertToManaged)
1059 FCFuncElement("ClearNative", StubHelpers::ObjectMarshaler__ClearNative)
1062 FCFuncStart(gInterfaceMarshalerFuncs)
1063 FCFuncElement("ConvertToNative", StubHelpers::InterfaceMarshaler__ConvertToNative)
1064 FCFuncElement("ConvertToManaged", StubHelpers::InterfaceMarshaler__ConvertToManaged)
1065 QCFuncElement("ClearNative", StubHelpers::InterfaceMarshaler__ClearNative)
1066 FCFuncElement("ConvertToManagedWithoutUnboxing", StubHelpers::InterfaceMarshaler__ConvertToManagedWithoutUnboxing)
1069 FCFuncStart(gUriMarshalerFuncs)
1070 FCFuncElement("GetRawUriFromNative", StubHelpers::UriMarshaler__GetRawUriFromNative)
1071 FCFuncElement("CreateNativeUriInstanceHelper", StubHelpers::UriMarshaler__CreateNativeUriInstance)
1074 FCFuncStart(gEventArgsMarshalerFuncs)
1075 QCFuncElement("CreateNativeNCCEventArgsInstanceHelper", StubHelpers::EventArgsMarshaler__CreateNativeNCCEventArgsInstance)
1076 QCFuncElement("CreateNativePCEventArgsInstance", StubHelpers::EventArgsMarshaler__CreateNativePCEventArgsInstance)
1079 FCFuncStart(gMngdSafeArrayMarshalerFuncs)
1080 FCFuncElement("CreateMarshaler", MngdSafeArrayMarshaler::CreateMarshaler)
1081 FCFuncElement("ConvertSpaceToNative", MngdSafeArrayMarshaler::ConvertSpaceToNative)
1082 FCFuncElement("ConvertContentsToNative", MngdSafeArrayMarshaler::ConvertContentsToNative)
1083 FCFuncElement("ConvertSpaceToManaged", MngdSafeArrayMarshaler::ConvertSpaceToManaged)
1084 FCFuncElement("ConvertContentsToManaged", MngdSafeArrayMarshaler::ConvertContentsToManaged)
1085 FCFuncElement("ClearNative", MngdSafeArrayMarshaler::ClearNative)
1088 FCFuncStart(gMngdHiddenLengthArrayMarshalerFuncs)
1089 FCFuncElement("CreateMarshaler", MngdHiddenLengthArrayMarshaler::CreateMarshaler)
1090 FCFuncElement("ConvertSpaceToNative", MngdHiddenLengthArrayMarshaler::ConvertSpaceToNative)
1091 FCFuncElement("ConvertContentsToNative", MngdHiddenLengthArrayMarshaler::ConvertContentsToNative)
1092 FCFuncElement("ConvertSpaceToManaged", MngdHiddenLengthArrayMarshaler::ConvertSpaceToManaged)
1093 FCFuncElement("ConvertContentsToManaged", MngdHiddenLengthArrayMarshaler::ConvertContentsToManaged)
1094 FCFuncElement("ClearNativeContents", MngdHiddenLengthArrayMarshaler::ClearNativeContents)
1097 FCFuncStart(gWinRTTypeNameConverterFuncs)
1098 FCFuncElement("ConvertToWinRTTypeName", StubHelpers::WinRTTypeNameConverter__ConvertToWinRTTypeName)
1099 FCFuncElement("GetTypeFromWinRTTypeName", StubHelpers::WinRTTypeNameConverter__GetTypeFromWinRTTypeName)
1102 #endif // FEATURE_COMINTEROP
1104 FCFuncStart(gMngdRefCustomMarshalerFuncs)
1105 FCFuncElement("CreateMarshaler", MngdRefCustomMarshaler::CreateMarshaler)
1106 FCFuncElement("ConvertContentsToNative", MngdRefCustomMarshaler::ConvertContentsToNative)
1107 FCFuncElement("ConvertContentsToManaged", MngdRefCustomMarshaler::ConvertContentsToManaged)
1108 FCFuncElement("ClearNative", MngdRefCustomMarshaler::ClearNative)
1109 FCFuncElement("ClearManaged", MngdRefCustomMarshaler::ClearManaged)
1112 FCFuncStart(gStubHelperFuncs)
1113 FCFuncElement("IsQCall", StubHelpers::IsQCall)
1114 FCFuncElement("InitDeclaringType", StubHelpers::InitDeclaringType)
1115 FCIntrinsic("GetNDirectTarget", StubHelpers::GetNDirectTarget, CORINFO_INTRINSIC_StubHelpers_GetNDirectTarget)
1116 FCFuncElement("GetDelegateTarget", StubHelpers::GetDelegateTarget)
1117 FCFuncElement("SetLastError", StubHelpers::SetLastError)
1118 FCFuncElement("ClearLastError", StubHelpers::ClearLastError)
1119 FCFuncElement("ThrowInteropParamException", StubHelpers::ThrowInteropParamException)
1120 FCFuncElement("InternalGetHRExceptionObject", StubHelpers::GetHRExceptionObject)
1121 #ifdef FEATURE_COMINTEROP
1122 FCFuncElement("InternalGetCOMHRExceptionObject", StubHelpers::GetCOMHRExceptionObject)
1123 FCFuncElement("GetCOMIPFromRCW", StubHelpers::GetCOMIPFromRCW)
1124 FCFuncElement("GetCOMIPFromRCW_WinRT", StubHelpers::GetCOMIPFromRCW_WinRT)
1125 FCFuncElement("GetCOMIPFromRCW_WinRTSharedGeneric", StubHelpers::GetCOMIPFromRCW_WinRTSharedGeneric)
1126 FCFuncElement("GetCOMIPFromRCW_WinRTDelegate", StubHelpers::GetCOMIPFromRCW_WinRTDelegate)
1127 FCFuncElement("ShouldCallWinRTInterface", StubHelpers::ShouldCallWinRTInterface)
1128 FCFuncElement("GetTargetForAmbiguousVariantCall", StubHelpers::GetTargetForAmbiguousVariantCall)
1129 FCFuncElement("StubRegisterRCW", StubHelpers::StubRegisterRCW)
1130 FCFuncElement("StubUnregisterRCW", StubHelpers::StubUnregisterRCW)
1131 FCFuncElement("GetDelegateInvokeMethod", StubHelpers::GetDelegateInvokeMethod)
1132 FCFuncElement("GetWinRTFactoryObject", StubHelpers::GetWinRTFactoryObject)
1133 FCFuncElement("GetWinRTFactoryReturnValue", StubHelpers::GetWinRTFactoryReturnValue)
1134 FCFuncElement("GetOuterInspectable", StubHelpers::GetOuterInspectable)
1135 #ifdef MDA_SUPPORTED
1136 FCFuncElement("TriggerExceptionSwallowedMDA", StubHelpers::TriggerExceptionSwallowedMDA)
1138 #endif // FEATURE_COMINTEROP
1139 #ifdef MDA_SUPPORTED
1140 FCFuncElement("CheckCollectedDelegateMDA", StubHelpers::CheckCollectedDelegateMDA)
1141 #endif // MDA_SUPPORTED
1142 #ifdef PROFILING_SUPPORTED
1143 FCFuncElement("ProfilerBeginTransitionCallback", StubHelpers::ProfilerBeginTransitionCallback)
1144 FCFuncElement("ProfilerEndTransitionCallback", StubHelpers::ProfilerEndTransitionCallback)
1146 FCFuncElement("CreateCustomMarshalerHelper", StubHelpers::CreateCustomMarshalerHelper)
1147 FCFuncElement("DecimalCanonicalizeInternal", StubHelpers::DecimalCanonicalizeInternal)
1148 FCFuncElement("FmtClassUpdateNativeInternal", StubHelpers::FmtClassUpdateNativeInternal)
1149 FCFuncElement("FmtClassUpdateCLRInternal", StubHelpers::FmtClassUpdateCLRInternal)
1150 FCFuncElement("LayoutDestroyNativeInternal", StubHelpers::LayoutDestroyNativeInternal)
1151 FCFuncElement("AllocateInternal", StubHelpers::AllocateInternal)
1152 FCFuncElement("strlen", StubHelpers::AnsiStrlen)
1153 FCFuncElement("MarshalToUnmanagedVaListInternal", StubHelpers::MarshalToUnmanagedVaListInternal)
1154 FCFuncElement("MarshalToManagedVaListInternal", StubHelpers::MarshalToManagedVaListInternal)
1155 FCFuncElement("CalcVaListSize", StubHelpers::CalcVaListSize)
1156 FCFuncElement("ValidateObject", StubHelpers::ValidateObject)
1157 FCFuncElement("ValidateByref", StubHelpers::ValidateByref)
1158 FCFuncElement("LogPinnedArgument", StubHelpers::LogPinnedArgument)
1159 FCIntrinsic("GetStubContext", StubHelpers::GetStubContext, CORINFO_INTRINSIC_StubHelpers_GetStubContext)
1161 FCIntrinsic("GetStubContextAddr", StubHelpers::GetStubContextAddr, CORINFO_INTRINSIC_StubHelpers_GetStubContextAddr)
1163 #ifdef MDA_SUPPORTED
1164 FCFuncElement("TriggerGCForMDA", StubHelpers::TriggerGCForMDA)
1165 #endif // MDA_SUPPORTED
1166 #ifdef FEATURE_ARRAYSTUB_AS_IL
1167 FCFuncElement("ArrayTypeCheck", StubHelpers::ArrayTypeCheck)
1168 #endif //FEATURE_ARRAYSTUB_AS_IL
1169 #ifdef FEATURE_MULTICASTSTUB_AS_IL
1170 FCFuncElement("MulticastDebuggerTraceHelper", StubHelpers::MulticastDebuggerTraceHelper)
1171 #endif //FEATURE_MULTICASTSTUB_AS_IL
1174 FCFuncStart(gGCHandleFuncs)
1175 FCFuncElement("InternalAlloc", MarshalNative::GCHandleInternalAlloc)
1176 FCFuncElement("InternalFree", MarshalNative::GCHandleInternalFree)
1177 FCFuncElement("InternalGet", MarshalNative::GCHandleInternalGet)
1178 FCFuncElement("InternalSet", MarshalNative::GCHandleInternalSet)
1179 FCFuncElement("InternalCompareExchange", MarshalNative::GCHandleInternalCompareExchange)
1180 FCFuncElement("InternalAddrOfPinnedObject", MarshalNative::GCHandleInternalAddrOfPinnedObject)
1184 FCFuncStart(gStreamFuncs)
1185 FCFuncElement("HasOverriddenBeginEndRead", StreamNative::HasOverriddenBeginEndRead)
1186 FCFuncElement("HasOverriddenBeginEndWrite", StreamNative::HasOverriddenBeginEndWrite)
1190 #if defined(FEATURE_EVENTSOURCE_XPLAT)
1191 FCFuncStart(gEventLogger)
1192 QCFuncElement("IsEventSourceLoggingEnabled", XplatEventSourceLogger::IsEventSourceLoggingEnabled)
1193 QCFuncElement("LogEventSource", XplatEventSourceLogger::LogEventSource)
1195 #endif // defined(FEATURE_EVENTSOURCE_XPLAT)
1197 #ifdef FEATURE_PERFTRACING
1198 FCFuncStart(gEventPipeInternalFuncs)
1199 QCFuncElement("Enable", EventPipeInternal::Enable)
1200 QCFuncElement("Disable", EventPipeInternal::Disable)
1201 QCFuncElement("CreateProvider", EventPipeInternal::CreateProvider)
1202 QCFuncElement("DefineEvent", EventPipeInternal::DefineEvent)
1203 QCFuncElement("DeleteProvider", EventPipeInternal::DeleteProvider)
1204 QCFuncElement("EventActivityIdControl", EventPipeInternal::EventActivityIdControl)
1205 QCFuncElement("WriteEvent", EventPipeInternal::WriteEvent)
1206 QCFuncElement("WriteEventData", EventPipeInternal::WriteEventData)
1208 #endif // FEATURE_PERFTRACING
1210 #ifdef FEATURE_COMINTEROP
1211 FCFuncStart(gRuntimeClassFuncs)
1212 FCFuncElement("GetRedirectedGetHashCodeMD", ComObject::GetRedirectedGetHashCodeMD)
1213 FCFuncElement("RedirectGetHashCode", ComObject::RedirectGetHashCode)
1214 FCFuncElement("GetRedirectedToStringMD", ComObject::GetRedirectedToStringMD)
1215 FCFuncElement("RedirectToString", ComObject::RedirectToString)
1216 FCFuncElement("GetRedirectedEqualsMD", ComObject::GetRedirectedEqualsMD)
1217 FCFuncElement("RedirectEquals", ComObject::RedirectEquals)
1219 #endif // ifdef FEATURE_COMINTEROP
1221 FCFuncStart(gRuntimeImportsFuncs)
1222 QCFuncElement("RhZeroMemory", MemoryNative::Clear)
1223 FCFuncElement("RhBulkMoveWithWriteBarrier", MemoryNative::BulkMoveWithWriteBarrier)
1226 FCFuncStart(gWeakReferenceFuncs)
1227 FCFuncElement("Create", WeakReferenceNative::Create)
1228 FCFuncElement("Finalize", WeakReferenceNative::Finalize)
1229 FCFuncElement("get_Target", WeakReferenceNative::GetTarget)
1230 FCFuncElement("set_Target", WeakReferenceNative::SetTarget)
1231 FCFuncElement("get_IsAlive", WeakReferenceNative::IsAlive)
1232 FCFuncElement("IsTrackResurrection", WeakReferenceNative::IsTrackResurrection)
1235 FCFuncStart(gWeakReferenceOfTFuncs)
1236 FCFuncElement("Create", WeakReferenceOfTNative::Create)
1237 FCFuncElement("Finalize", WeakReferenceOfTNative::Finalize)
1238 FCFuncElement("get_Target", WeakReferenceOfTNative::GetTarget)
1239 FCFuncElement("set_Target", WeakReferenceOfTNative::SetTarget)
1240 FCFuncElement("IsTrackResurrection", WeakReferenceOfTNative::IsTrackResurrection)
1243 #ifdef FEATURE_COMINTEROP
1246 // ECall helpers for the standard managed interfaces.
1249 #define MNGSTDITF_BEGIN_INTERFACE(FriendlyName, strMngItfName, strUCOMMngItfName, strCustomMarshalerName, strCustomMarshalerCookie, strManagedViewName, NativeItfIID, bCanCastOnNativeItfQI) \
1250 FCFuncStart(g##FriendlyName##Funcs)
1252 #define MNGSTDITF_DEFINE_METH_IMPL(FriendlyName, FCallMethName, MethName, MethSig, FcallDecl) \
1253 FCUnreferenced FCFuncElementSig(#MethName, MethSig, FriendlyName::FCallMethName)
1255 #define MNGSTDITF_END_INTERFACE(FriendlyName) \
1258 #include "mngstditflist.h"
1260 #undef MNGSTDITF_BEGIN_INTERFACE
1261 #undef MNGSTDITF_DEFINE_METH_IMPL
1262 #undef MNGSTDITF_END_INTERFACE
1264 #endif // FEATURE_COMINTEROP
1269 // Class definitions
1273 // Note these have to remain sorted by name:namespace pair (Assert will wack you if you don't)
1274 // The sorting is case-sensitive
1276 FCClassElement("AppDomain", "System", gAppDomainFuncs)
1277 FCClassElement("AppDomainManager", "System", gAppDomainManagerFuncs)
1278 FCClassElement("ArgIterator", "System", gVarArgFuncs)
1279 FCClassElement("Array", "System", gArrayFuncs)
1280 FCClassElement("ArrayWithOffset", "System.Runtime.InteropServices", gArrayWithOffsetFuncs)
1281 FCClassElement("AssemblyBuilder", "System.Reflection.Emit", gAssemblyBuilderFuncs)
1283 FCClassElement("AssemblyExtensions", "System.Reflection.Metadata", gAssemblyExtensionsFuncs)
1285 FCClassElement("AssemblyLoadContext", "System.Runtime.Loader", gAssemblyLoadContextFuncs)
1287 FCClassElement("AssemblyName", "System.Reflection", gAssemblyNameFuncs)
1288 FCClassElement("Buffer", "System", gBufferFuncs)
1289 FCClassElement("CLRConfig", "System", gClrConfig)
1290 FCClassElement("CompareInfo", "System.Globalization", gCompareInfoFuncs)
1291 FCClassElement("CompatibilitySwitch", "System.Runtime.Versioning", gCompatibilitySwitchFuncs)
1292 FCClassElement("CriticalHandle", "System.Runtime.InteropServices", gCriticalHandleFuncs)
1293 FCClassElement("Currency", "System", gCurrencyFuncs)
1294 FCClassElement("CustomAttribute", "System.Reflection", gCOMCustomAttributeFuncs)
1295 FCClassElement("CustomAttributeEncodedArgument", "System.Reflection", gCustomAttributeEncodedArgument)
1296 FCClassElement("DateMarshaler", "System.StubHelpers", gDateMarshalerFuncs)
1297 FCClassElement("DateTime", "System", gDateTimeFuncs)
1298 FCClassElement("Debugger", "System.Diagnostics", gDiagnosticsDebugger)
1299 FCClassElement("Decimal", "System", gDecimalFuncs)
1300 FCClassElement("DefaultBinder", "System", gCOMDefaultBinderFuncs)
1301 FCClassElement("Delegate", "System", gDelegateFuncs)
1302 FCClassElement("DependentHandle", "System.Runtime.CompilerServices", gDependentHandleFuncs)
1303 #if !defined(FEATURE_COREFX_GLOBALIZATION)
1304 FCClassElement("EncodingTable", "System.Globalization", gEncodingTableFuncs)
1305 #endif // !defined(FEATURE_COREFX_GLOBALIZATION)
1306 FCClassElement("Enum", "System", gEnumFuncs)
1307 FCClassElement("Environment", "System", gEnvironmentFuncs)
1308 #ifdef FEATURE_COMINTEROP
1309 FCClassElement("EventArgsMarshaler", "System.StubHelpers", gEventArgsMarshalerFuncs)
1310 #endif // FEATURE_COMINTEROP
1311 #if defined(FEATURE_PERFTRACING)
1312 FCClassElement("EventPipeInternal", "System.Diagnostics.Tracing", gEventPipeInternalFuncs)
1313 #endif // FEATURE_PERFTRACING
1314 FCClassElement("Exception", "System", gExceptionFuncs)
1315 FCClassElement("FileLoadException", "System.IO", gFileLoadExceptionFuncs)
1316 FCClassElement("FormatterServices", "System.Runtime.Serialization", gSerializationFuncs)
1317 FCClassElement("GC", "System", gGCInterfaceFuncs)
1318 FCClassElement("GCHandle", "System.Runtime.InteropServices", gGCHandleFuncs)
1319 #ifdef FEATURE_COMINTEROP
1320 FCClassElement("IEnumerable", "System.Collections", gStdMngIEnumerableFuncs)
1321 FCClassElement("IEnumerator", "System.Collections", gStdMngIEnumeratorFuncs)
1322 FCClassElement("IExpando", "System.Runtime.InteropServices.Expando", gStdMngIExpandoFuncs)
1323 FCClassElement("IReflect", "System.Reflection", gStdMngIReflectFuncs)
1324 FCClassElement("InterfaceMarshaler", "System.StubHelpers", gInterfaceMarshalerFuncs)
1326 FCClassElement("Interlocked", "System.Threading", gInterlockedFuncs)
1327 FCClassElement("JitHelpers", "System.Runtime.CompilerServices", gJitHelpers)
1328 FCClassElement("LoaderAllocatorScout", "System.Reflection", gLoaderAllocatorFuncs)
1329 FCClassElement("ManifestBasedResourceGroveler", "System.Resources", gManifestBasedResourceGrovelerFuncs)
1330 FCClassElement("Marshal", "System.Runtime.InteropServices", gInteropMarshalFuncs)
1331 FCClassElement("Math", "System", gMathFuncs)
1332 FCClassElement("MathF", "System", gMathFFuncs)
1333 #ifdef MDA_SUPPORTED
1334 FCClassElement("Mda", "System", gMda)
1336 FCClassElement("MemoryFailPoint", "System.Runtime", gMemoryFailPointFuncs)
1337 FCClassElement("MetadataImport", "System.Reflection", gMetaDataImport)
1338 FCClassElement("MissingMemberException", "System", gMissingMemberExceptionFuncs)
1339 #ifdef FEATURE_COMINTEROP
1340 FCClassElement("MngdHiddenLengthArrayMarshaler", "System.StubHelpers", gMngdHiddenLengthArrayMarshalerFuncs)
1341 #endif // FEATURE_COMINTEROP
1342 FCClassElement("MngdNativeArrayMarshaler", "System.StubHelpers", gMngdNativeArrayMarshalerFuncs)
1343 FCClassElement("MngdRefCustomMarshaler", "System.StubHelpers", gMngdRefCustomMarshalerFuncs)
1344 #ifdef FEATURE_COMINTEROP
1345 FCClassElement("MngdSafeArrayMarshaler", "System.StubHelpers", gMngdSafeArrayMarshalerFuncs)
1346 #endif // FEATURE_COMINTEROP
1347 FCClassElement("ModuleBuilder", "System.Reflection.Emit", gCOMModuleBuilderFuncs)
1348 FCClassElement("ModuleHandle", "System", gCOMModuleHandleFuncs)
1349 FCClassElement("Monitor", "System.Threading", gMonitorFuncs)
1350 FCClassElement("Number", "System", gNumberFuncs)
1351 #ifdef FEATURE_COMINTEROP
1352 FCClassElement("OAVariantLib", "Microsoft.Win32", gOAVariantFuncs)
1354 FCClassElement("Object", "System", gObjectFuncs)
1355 #ifdef FEATURE_COMINTEROP
1356 FCClassElement("ObjectMarshaler", "System.StubHelpers", gObjectMarshalerFuncs)
1358 FCClassElement("OverlappedData", "System.Threading", gOverlappedFuncs)
1361 FCClassElement("PunkSafeHandle", "System.Reflection.Emit", gSymWrapperCodePunkSafeHandleFuncs)
1362 FCClassElement("RegisteredWaitHandleSafe", "System.Threading", gRegisteredWaitHandleFuncs)
1363 #ifdef FEATURE_COMINTEROP
1364 #ifdef FEATURE_COMINTEROP_MANAGED_ACTIVATION
1365 FCClassElement("RegistrationServices", "System.Runtime.InteropServices", gRegistrationFuncs)
1366 #endif // FEATURE_COMINTEROP_MANAGED_ACTIVATION
1367 #endif // FEATURE_COMINTEROP
1369 FCClassElement("RuntimeAssembly", "System.Reflection", gAssemblyFuncs)
1370 #ifdef FEATURE_COMINTEROP
1371 FCClassElement("RuntimeClass", "System.Runtime.InteropServices.WindowsRuntime", gRuntimeClassFuncs)
1372 #endif // FEATURE_COMINTEROP
1373 FCClassElement("RuntimeEnvironment", "System.Runtime.InteropServices", gRuntimeEnvironmentFuncs)
1374 FCClassElement("RuntimeFieldHandle", "System", gCOMFieldHandleNewFuncs)
1375 FCClassElement("RuntimeHelpers", "System.Runtime.CompilerServices", gCompilerFuncs)
1376 FCClassElement("RuntimeImports", "System.Runtime", gRuntimeImportsFuncs)
1377 FCClassElement("RuntimeMethodHandle", "System", gRuntimeMethodHandle)
1378 FCClassElement("RuntimeModule", "System.Reflection", gCOMModuleFuncs)
1379 FCClassElement("RuntimeThread", "Internal.Runtime.Augments", gRuntimeThreadFuncs)
1380 FCClassElement("RuntimeType", "System", gSystem_RuntimeType)
1381 FCClassElement("RuntimeTypeHandle", "System", gCOMTypeHandleFuncs)
1382 FCClassElement("SafeHandle", "System.Runtime.InteropServices", gSafeHandleFuncs)
1383 FCClassElement("SafeTypeNameParserHandle", "System", gSafeTypeNameParserHandle)
1385 FCClassElement("Signature", "System", gSignatureNative)
1386 FCClassElement("StackTrace", "System.Diagnostics", gDiagnosticsStackTrace)
1387 FCClassElement("Stream", "System.IO", gStreamFuncs)
1388 FCClassElement("String", "System", gStringFuncs)
1389 FCClassElement("StringBuilder", "System.Text", gStringBufferFuncs)
1390 FCClassElement("StubHelpers", "System.StubHelpers", gStubHelperFuncs)
1391 FCClassElement("SynchronizationContext", "System.Threading", gContextSynchronizationFuncs)
1392 FCClassElement("Thread", "System.Threading", gThreadFuncs)
1393 FCClassElement("ThreadPool", "System.Threading", gThreadPoolFuncs)
1394 FCClassElement("TimerQueue", "System.Threading", gTimerFuncs)
1395 FCClassElement("Type", "System", gSystem_Type)
1396 FCClassElement("TypeBuilder", "System.Reflection.Emit", gCOMClassWriter)
1397 FCClassElement("TypeLoadException", "System", gTypeLoadExceptionFuncs)
1398 FCClassElement("TypeNameBuilder", "System.Reflection.Emit", gTypeNameBuilder)
1399 FCClassElement("TypeNameParser", "System", gTypeNameParser)
1400 FCClassElement("TypedReference", "System", gTypedReferenceFuncs)
1401 #ifdef FEATURE_COMINTEROP
1402 FCClassElement("UriMarshaler", "System.StubHelpers", gUriMarshalerFuncs)
1404 FCClassElement("Utf8String", "System", gUtf8String)
1405 FCClassElement("ValueClassMarshaler", "System.StubHelpers", gValueClassMarshalerFuncs)
1406 FCClassElement("ValueType", "System", gValueTypeFuncs)
1407 #ifdef FEATURE_COMINTEROP
1408 FCClassElement("Variant", "System", gVariantFuncs)
1410 FCClassElement("WaitHandle", "System.Threading", gWaitHandleFuncs)
1411 FCClassElement("WeakReference", "System", gWeakReferenceFuncs)
1412 FCClassElement("WeakReference`1", "System", gWeakReferenceOfTFuncs)
1414 #ifdef FEATURE_COMINTEROP
1415 FCClassElement("WinRTTypeNameConverter", "System.StubHelpers", gWinRTTypeNameConverterFuncs)
1416 #endif // FEATURE_COMINTEROP
1419 #if defined(FEATURE_EVENTSOURCE_XPLAT)
1420 FCClassElement("XplatEventLogger", "System.Diagnostics.Tracing", gEventLogger)
1421 #endif //defined(FEATURE_EVENTSOURCE_XPLAT)
1423 #undef FCFuncElement
1424 #undef FCFuncElementSig
1426 #undef FCIntrinsicSig
1427 #undef QCFuncElement
1430 #undef FCUnreferenced
1433 #undef FCClassElement