diff options
Diffstat (limited to 'src/mscorlib/src/System/Runtime/ProfileOptimization.cs')
-rw-r--r-- | src/mscorlib/src/System/Runtime/ProfileOptimization.cs | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/mscorlib/src/System/Runtime/ProfileOptimization.cs b/src/mscorlib/src/System/Runtime/ProfileOptimization.cs new file mode 100644 index 0000000000..c877d2106d --- /dev/null +++ b/src/mscorlib/src/System/Runtime/ProfileOptimization.cs @@ -0,0 +1,54 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +//////////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////////// +// +// This class defines entry point for multi-core JIT API +// +// +namespace System.Runtime { + + using System; + + using System.Reflection; + + using System.Security; + using System.Security.Permissions; + + using System.Runtime; + using System.Runtime.InteropServices; + using System.Runtime.Versioning; + using System.Runtime.CompilerServices; + +#if FEATURE_MULTICOREJIT + + public static class ProfileOptimization + { + [DllImport(JitHelpers.QCall, CharSet = CharSet.Unicode)] + [SecurityCritical] + [SuppressUnmanagedCodeSecurity] + internal static extern void InternalSetProfileRoot(string directoryPath); + + [DllImport(JitHelpers.QCall, CharSet = CharSet.Unicode)] + [SecurityCritical] + [SuppressUnmanagedCodeSecurity] + internal static extern void InternalStartProfile(string profile, IntPtr ptrNativeAssemblyLoadContext); + + [SecurityCritical] + public static void SetProfileRoot(string directoryPath) + { + InternalSetProfileRoot(directoryPath); + } + + [SecurityCritical] + public static void StartProfile(string profile) + { + InternalStartProfile(profile, IntPtr.Zero); + } + } + +#endif +} + |