Merge pull request #24232 from janvorli/fix-large-version-bubble-2
authorJan Vorlicek <janvorli@microsoft.com>
Thu, 25 Apr 2019 18:19:50 +0000 (20:19 +0200)
committerGitHub <noreply@github.com>
Thu, 25 Apr 2019 18:19:50 +0000 (20:19 +0200)
Fix crossgen with large version bubble enabled

125 files changed:
src/System.Private.CoreLib/shared/Interop/Windows/Advapi32/Interop.ActivityControl.cs
src/System.Private.CoreLib/shared/Interop/Windows/Advapi32/Interop.EVENT_INFO_CLASS.cs
src/System.Private.CoreLib/shared/Interop/Windows/Advapi32/Interop.EtwEnableCallback.cs
src/System.Private.CoreLib/shared/Interop/Windows/Advapi32/Interop.EventActivityIdControl.cs
src/System.Private.CoreLib/shared/Interop/Windows/Advapi32/Interop.EventRegister.cs
src/System.Private.CoreLib/shared/Interop/Windows/Advapi32/Interop.EventSetInformation.cs
src/System.Private.CoreLib/shared/Interop/Windows/Advapi32/Interop.EventTraceGuidsEx.cs
src/System.Private.CoreLib/shared/Interop/Windows/Advapi32/Interop.EventUnregister.cs
src/System.Private.CoreLib/shared/Interop/Windows/Advapi32/Interop.EventWriteString.cs
src/System.Private.CoreLib/shared/Interop/Windows/Advapi32/Interop.EventWriteTransfer.cs
src/System.Private.CoreLib/shared/Interop/Windows/Kernel32/Interop.FILE_TIME.cs [new file with mode: 0644]
src/System.Private.CoreLib/shared/Interop/Windows/Kernel32/Interop.GET_FILEEX_INFO_LEVELS.cs [new file with mode: 0644]
src/System.Private.CoreLib/shared/Interop/Windows/Kernel32/Interop.GetFileAttributesEx.cs
src/System.Private.CoreLib/shared/Interop/Windows/Kernel32/Interop.WIN32_FILE_ATTRIBUTE_DATA.cs [new file with mode: 0644]
src/System.Private.CoreLib/shared/Interop/Windows/Kernel32/Interop.WIN32_FIND_DATA.cs [new file with mode: 0644]
src/System.Private.CoreLib/shared/System.Private.CoreLib.Shared.projitems
src/System.Private.CoreLib/shared/System/DateTime.Win32.cs
src/System.Private.CoreLib/shared/System/DateTime.WinRT.cs
src/System.Private.CoreLib/shared/System/Diagnostics/Contracts/Contracts.cs
src/System.Private.CoreLib/shared/System/GCMemoryInfo.cs
src/System.Private.CoreLib/shared/System/IO/StreamReader.cs
src/System.Private.CoreLib/shared/System/IO/StreamWriter.cs
src/System.Private.CoreLib/shared/System/Runtime/InteropServices/ArrayWithOffset.cs
src/System.Private.CoreLib/shared/System/Runtime/InteropServices/BStrWrapper.cs
src/System.Private.CoreLib/shared/System/Runtime/InteropServices/ComEventsHelpers.NoCom.cs
src/System.Private.CoreLib/shared/System/Runtime/InteropServices/CriticalHandle.cs
src/System.Private.CoreLib/shared/System/Runtime/InteropServices/CurrencyWrapper.cs
src/System.Private.CoreLib/shared/System/Runtime/InteropServices/DispatchWrapper.cs
src/System.Private.CoreLib/shared/System/Runtime/InteropServices/ErrorWrapper.cs
src/System.Private.CoreLib/shared/System/Runtime/InteropServices/HandleRef.cs
src/System.Private.CoreLib/shared/System/Runtime/InteropServices/ICustomAdapter.cs
src/System.Private.CoreLib/shared/System/Runtime/InteropServices/ICustomFactory.cs
src/System.Private.CoreLib/shared/System/Runtime/InteropServices/ICustomQueryInterface.cs
src/System.Private.CoreLib/shared/System/Runtime/InteropServices/SafeBuffer.cs
src/System.Private.CoreLib/shared/System/Runtime/InteropServices/UnknownWrapper.cs
src/System.Private.CoreLib/shared/System/Runtime/InteropServices/VariantWrapper.cs
src/System.Private.CoreLib/shared/System/Text/Unicode/Utf8Utility.Validation.cs
src/System.Private.CoreLib/shared/System/WinRTFolderPaths.cs
src/System.Private.CoreLib/src/System/DateTime.Windows.CoreCLR.cs
src/debug/daccess/dacdbiimpl.cpp
src/debug/daccess/dacdbiimplstackwalk.cpp
src/debug/daccess/inspect.cpp
src/debug/daccess/request.cpp
src/debug/ee/debugger.cpp
src/gc/env/gcenv.ee.h
src/gc/gc.cpp
src/gc/gcenv.ee.standalone.inl
src/gc/gcimpl.h
src/gc/gcinterface.ee.h
src/gc/gcinterface.h
src/gc/gcload.cpp
src/gc/sample/gcenv.ee.cpp
src/inc/corprof.idl
src/inc/profilepriv.inl
src/jit/hwintrinsicxarch.cpp
src/pal/prebuilt/idl/corprof_i.cpp
src/pal/prebuilt/inc/corprof.h
src/vm/amd64/asmconstants.h
src/vm/appdomain.cpp
src/vm/appdomain.hpp
src/vm/appdomain.inl
src/vm/arm/asmconstants.h
src/vm/assembly.cpp
src/vm/assembly.hpp
src/vm/assemblyname.cpp
src/vm/assemblynative.cpp
src/vm/ceeload.cpp
src/vm/ceeload.h
src/vm/ceeload.inl
src/vm/ceemain.cpp
src/vm/class.cpp
src/vm/class.h
src/vm/classcompat.cpp
src/vm/classcompat.h
src/vm/clsload.cpp
src/vm/clsload.hpp
src/vm/codeman.cpp
src/vm/codeman.h
src/vm/debugdebugger.cpp
src/vm/domainfile.cpp
src/vm/eehash.h
src/vm/eehash.inl
src/vm/eventpipe.cpp
src/vm/eventpipe.h
src/vm/eventpipeconfiguration.cpp
src/vm/eventpipeconfiguration.h
src/vm/eventpipeprovider.cpp
src/vm/eventpipeprovider.h
src/vm/eventtrace.cpp
src/vm/exceptionhandling.cpp
src/vm/field.h
src/vm/gcenv.ee.cpp
src/vm/gcenv.ee.h
src/vm/i386/excepx86.cpp
src/vm/jithelpers.cpp
src/vm/jitinterface.h
src/vm/loaderallocator.cpp
src/vm/methodtable.cpp
src/vm/methodtable.h
src/vm/methodtable.inl
src/vm/methodtablebuilder.cpp
src/vm/methodtablebuilder.h
src/vm/multicorejit.cpp
src/vm/pefile.cpp
src/vm/profilingenumerators.cpp
src/vm/proftoeeinterfaceimpl.cpp
src/vm/proftoeeinterfaceimpl.h
src/vm/proftoeeinterfaceimpl.inl
src/vm/reflectioninvocation.cpp
src/vm/runtimehandles.cpp
src/vm/sampleprofiler.cpp
src/vm/sampleprofiler.h
src/vm/stackingallocator.cpp
src/vm/stackingallocator.h
src/vm/stringliteralmap.cpp
src/vm/threads.cpp
src/vm/threads.h
src/vm/threadstatics.h
src/vm/zapsig.cpp
tests/CoreFX/CoreFX.issues.json
tests/issues.targets
tests/src/Interop/NativeLibraryResolveCallback/CallbackStressTest.cs [new file with mode: 0644]
tests/src/Interop/NativeLibraryResolveCallback/CallbackStressTest.csproj [new file with mode: 0644]
tests/src/Interop/NativeLibraryResolveCallback/CallbackTests.csproj
tests/src/JIT/Methodical/ELEMENT_TYPE_IU/_il_dbgu_fld.ilproj

index 34df748..670ac61 100644 (file)
@@ -2,9 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
-using System;
-using System.Runtime.InteropServices;
-
+#nullable enable
 internal partial class Interop
 {
     internal partial class Advapi32
index a122002..0b007d1 100644 (file)
@@ -2,9 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
-using System;
-using System.Runtime.InteropServices;
-
+#nullable enable
 internal partial class Interop
 {
     internal partial class Advapi32
index 6bb1575..560b3ba 100644 (file)
@@ -2,6 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 using System;
 using System.Runtime.InteropServices;
 
index 886ff37..f041822 100644 (file)
@@ -2,6 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 using System;
 using System.Runtime.InteropServices;
 
index f5d245e..436d8b7 100644 (file)
@@ -2,6 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 using System;
 using System.Runtime.InteropServices;
 
index 381cb66..919a868 100644 (file)
@@ -2,7 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
-using System;
+#nullable enable
 using System.Runtime.InteropServices;
 
 internal partial class Interop
index c5f6f3b..6576110 100644 (file)
@@ -2,7 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
-using System;
+#nullable enable
 using System.Runtime.InteropServices;
 
 internal partial class Interop
index f387b3a..79f9e3a 100644 (file)
@@ -2,7 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
-using System;
+#nullable enable
 using System.Runtime.InteropServices;
 
 internal partial class Interop
index a00a2f3..6e4fdae 100644 (file)
@@ -2,7 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
-using System;
+#nullable enable
 using System.Runtime.InteropServices;
 
 internal partial class Interop
index 2d3f45e..2821fff 100644 (file)
@@ -2,6 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 using System;
 using System.Runtime.InteropServices;
 #if ES_BUILD_STANDALONE
diff --git a/src/System.Private.CoreLib/shared/Interop/Windows/Kernel32/Interop.FILE_TIME.cs b/src/System.Private.CoreLib/shared/Interop/Windows/Kernel32/Interop.FILE_TIME.cs
new file mode 100644 (file)
index 0000000..d3b055e
--- /dev/null
@@ -0,0 +1,27 @@
+// 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.
+
+using System;
+
+internal partial class Interop
+{
+    internal partial class Kernel32
+    {
+        internal struct FILE_TIME
+        {
+            internal uint dwLowDateTime;
+            internal uint dwHighDateTime;
+
+            internal FILE_TIME(long fileTime)
+            {
+                dwLowDateTime = (uint)fileTime;
+                dwHighDateTime = (uint)(fileTime >> 32);
+            }
+
+            internal long ToTicks() => ((long)dwHighDateTime << 32) + dwLowDateTime;
+            internal DateTime ToDateTimeUtc() => DateTime.FromFileTimeUtc(ToTicks());
+            internal DateTimeOffset ToDateTimeOffset() => DateTimeOffset.FromFileTime(ToTicks());
+        }
+    }
+}
diff --git a/src/System.Private.CoreLib/shared/Interop/Windows/Kernel32/Interop.GET_FILEEX_INFO_LEVELS.cs b/src/System.Private.CoreLib/shared/Interop/Windows/Kernel32/Interop.GET_FILEEX_INFO_LEVELS.cs
new file mode 100644 (file)
index 0000000..76e43f6
--- /dev/null
@@ -0,0 +1,15 @@
+// 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.
+
+internal partial class Interop
+{
+    internal partial class Kernel32
+    {
+        internal enum GET_FILEEX_INFO_LEVELS : uint
+        {
+            GetFileExInfoStandard = 0x0u,
+            GetFileExMaxInfoLevel = 0x1u,
+        }
+    }
+}
index 6244049..b833e8b 100644 (file)
@@ -25,73 +25,5 @@ internal partial class Interop
             Debug.Assert(nameWithExtendedPrefix != null, "null not expected when non-null is passed"); // TODO-NULLABLE: https://github.com/dotnet/roslyn/issues/26761
             return GetFileAttributesExPrivate(nameWithExtendedPrefix, fileInfoLevel, ref lpFileInformation);
         }
-
-        internal enum GET_FILEEX_INFO_LEVELS : uint
-        {
-            GetFileExInfoStandard = 0x0u,
-            GetFileExMaxInfoLevel = 0x1u,
-        }
-
-        internal struct WIN32_FILE_ATTRIBUTE_DATA
-        {
-            internal int dwFileAttributes;
-            internal uint ftCreationTimeLow;
-            internal uint ftCreationTimeHigh;
-            internal uint ftLastAccessTimeLow;
-            internal uint ftLastAccessTimeHigh;
-            internal uint ftLastWriteTimeLow;
-            internal uint ftLastWriteTimeHigh;
-            internal uint fileSizeHigh;
-            internal uint fileSizeLow;
-
-            internal void PopulateFrom(ref WIN32_FIND_DATA findData)
-            {
-                // Copy the information to data
-                dwFileAttributes = (int)findData.dwFileAttributes;
-                ftCreationTimeLow = findData.ftCreationTime.dwLowDateTime;
-                ftCreationTimeHigh = findData.ftCreationTime.dwHighDateTime;
-                ftLastAccessTimeLow = findData.ftLastAccessTime.dwLowDateTime;
-                ftLastAccessTimeHigh = findData.ftLastAccessTime.dwHighDateTime;
-                ftLastWriteTimeLow = findData.ftLastWriteTime.dwLowDateTime;
-                ftLastWriteTimeHigh = findData.ftLastWriteTime.dwHighDateTime;
-                fileSizeHigh = findData.nFileSizeHigh;
-                fileSizeLow = findData.nFileSizeLow;
-            }
-        }
-
-        [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
-        [BestFitMapping(false)]
-        internal unsafe struct WIN32_FIND_DATA
-        {
-            internal uint dwFileAttributes;
-            internal FILE_TIME ftCreationTime;
-            internal FILE_TIME ftLastAccessTime;
-            internal FILE_TIME ftLastWriteTime;
-            internal uint nFileSizeHigh;
-            internal uint nFileSizeLow;
-            internal uint dwReserved0;
-            internal uint dwReserved1;
-            [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 260)]
-            internal string? cFileName;
-            [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 14)]
-            internal string? cAlternateFileName;
-        }
-
-        internal struct FILE_TIME
-        {
-            internal uint dwLowDateTime;
-            internal uint dwHighDateTime;
-
-            internal FILE_TIME(long fileTime)
-            {
-                dwLowDateTime = (uint)fileTime;
-                dwHighDateTime = (uint)(fileTime >> 32);
-            }
-
-            internal long ToTicks()
-            {
-                return ((long)dwHighDateTime << 32) + dwLowDateTime;
-            }
-        }
     }
 }
diff --git a/src/System.Private.CoreLib/shared/Interop/Windows/Kernel32/Interop.WIN32_FILE_ATTRIBUTE_DATA.cs b/src/System.Private.CoreLib/shared/Interop/Windows/Kernel32/Interop.WIN32_FILE_ATTRIBUTE_DATA.cs
new file mode 100644 (file)
index 0000000..971b311
--- /dev/null
@@ -0,0 +1,29 @@
+// 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.
+
+internal partial class Interop
+{
+    internal partial class Kernel32
+    {
+        internal struct WIN32_FILE_ATTRIBUTE_DATA
+        {
+            internal int dwFileAttributes;
+            internal FILE_TIME ftCreationTime;
+            internal FILE_TIME ftLastAccessTime;
+            internal FILE_TIME ftLastWriteTime;
+            internal uint nFileSizeHigh;
+            internal uint nFileSizeLow;
+
+            internal void PopulateFrom(ref WIN32_FIND_DATA findData)
+            {
+                dwFileAttributes = (int)findData.dwFileAttributes;
+                ftCreationTime = findData.ftCreationTime;
+                ftLastAccessTime = findData.ftLastAccessTime;
+                ftLastWriteTime = findData.ftLastWriteTime;
+                nFileSizeHigh = findData.nFileSizeHigh;
+                nFileSizeLow = findData.nFileSizeLow;
+            }
+        }
+    }
+}
diff --git a/src/System.Private.CoreLib/shared/Interop/Windows/Kernel32/Interop.WIN32_FIND_DATA.cs b/src/System.Private.CoreLib/shared/Interop/Windows/Kernel32/Interop.WIN32_FIND_DATA.cs
new file mode 100644 (file)
index 0000000..c8d319d
--- /dev/null
@@ -0,0 +1,32 @@
+// 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.
+
+using System;
+using System.Runtime.InteropServices;
+
+internal partial class Interop
+{
+    internal partial class Kernel32
+    {
+        [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
+        internal unsafe struct WIN32_FIND_DATA
+        {
+            internal uint dwFileAttributes;
+            internal FILE_TIME ftCreationTime;
+            internal FILE_TIME ftLastAccessTime;
+            internal FILE_TIME ftLastWriteTime;
+            internal uint nFileSizeHigh;
+            internal uint nFileSizeLow;
+            internal uint dwReserved0;
+            internal uint dwReserved1;
+            private fixed char _cFileName[MAX_PATH];
+            private fixed char _cAlternateFileName[14];
+
+            internal ReadOnlySpan<char> cFileName
+            {
+                get { fixed (char* c = _cFileName) return new ReadOnlySpan<char>(c, MAX_PATH); }
+            }
+        }
+    }
+}
index e51a210..7e1cb0d 100644 (file)
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.ExpandEnvironmentStrings.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.FileAttributes.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.FILE_INFO_BY_HANDLE_CLASS.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.FILE_TIME.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.FileTimeToSystemTime.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.FileTypes.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.FindClose.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.FindFirstFileEx.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.FlushFileBuffers.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.GET_FILEEX_INFO_LEVELS.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.GetComputerName.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.GetCPInfo.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.GetCurrentProcessId.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.VirtualAlloc.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.VirtualFree.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.VirtualQuery.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.WIN32_FILE_ATTRIBUTE_DATA.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.WIN32_FIND_DATA.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.WideCharToMultiByte.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Kernel32\Interop.WriteFile_SafeHandle_NativeOverlapped.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Interop\Windows\Normaliz\Interop.Idna.cs" />
index d742c89..940d092 100644 (file)
@@ -2,9 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-
+#nullable enable
 namespace System
 {
     public readonly partial struct DateTime
index 30a9a61..c084435 100644 (file)
@@ -2,6 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 using System.Runtime.CompilerServices;
 using System.Runtime.InteropServices;
 
index b9e4958..26cdc7f 100644 (file)
@@ -17,6 +17,7 @@
 ===========================================================*/
 #define DEBUG // The behavior of this contract library should be consistent regardless of build type.
 
+#nullable enable
 using System.Collections.Generic;
 using System.Reflection;
 
@@ -180,7 +181,7 @@ namespace System.Diagnostics.Contracts
         private string _category;
         private string _setting;
         private bool _enabled;
-        private string _value;
+        private string? _value;
 
         public ContractOptionAttribute(string category, string setting, bool enabled)
         {
@@ -211,7 +212,7 @@ namespace System.Diagnostics.Contracts
             get { return _enabled; }
         }
 
-        public string Value
+        public string? Value
         {
             get { return _value; }
         }
@@ -264,7 +265,7 @@ namespace System.Diagnostics.Contracts
         [Pure]
         [Conditional("DEBUG")]
         [Conditional("CONTRACTS_FULL")]
-        public static void Assume(bool condition, string userMessage)
+        public static void Assume(bool condition, string? userMessage)
         {
             if (!condition)
             {
@@ -297,7 +298,7 @@ namespace System.Diagnostics.Contracts
         [Pure]
         [Conditional("DEBUG")]
         [Conditional("CONTRACTS_FULL")]
-        public static void Assert(bool condition, string userMessage)
+        public static void Assert(bool condition, string? userMessage)
         {
             if (!condition)
                 ReportFailure(ContractFailureKind.Assert, userMessage, null, null);
@@ -335,7 +336,7 @@ namespace System.Diagnostics.Contracts
         /// </remarks>
         [Pure]
         [Conditional("CONTRACTS_FULL")]
-        public static void Requires(bool condition, string userMessage)
+        public static void Requires(bool condition, string? userMessage)
         {
             AssertMustUseRewriter(ContractFailureKind.Precondition, "Requires");
         }
@@ -366,7 +367,7 @@ namespace System.Diagnostics.Contracts
         /// Use this form when you want to throw a particular exception.
         /// </remarks>
         [Pure]
-        public static void Requires<TException>(bool condition, string userMessage) where TException : Exception
+        public static void Requires<TException>(bool condition, string? userMessage) where TException : Exception
         {
             AssertMustUseRewriter(ContractFailureKind.Precondition, "Requires<TException>");
         }
@@ -403,7 +404,7 @@ namespace System.Diagnostics.Contracts
         /// </remarks>
         [Pure]
         [Conditional("CONTRACTS_FULL")]
-        public static void Ensures(bool condition, string userMessage)
+        public static void Ensures(bool condition, string? userMessage)
         {
             AssertMustUseRewriter(ContractFailureKind.Postcondition, "Ensures");
         }
@@ -438,7 +439,7 @@ namespace System.Diagnostics.Contracts
         /// </remarks>
         [Pure]
         [Conditional("CONTRACTS_FULL")]
-        public static void EnsuresOnThrow<TException>(bool condition, string userMessage) where TException : Exception
+        public static void EnsuresOnThrow<TException>(bool condition, string? userMessage) where TException : Exception
         {
             AssertMustUseRewriter(ContractFailureKind.PostconditionOnException, "EnsuresOnThrow");
         }
@@ -454,7 +455,7 @@ namespace System.Diagnostics.Contracts
         /// This method can only be used within the argument to the <seealso cref="Ensures(bool)"/> contract.
         /// </remarks>
         [Pure]
-        public static T Result<T>() { return default; }
+        public static T Result<T>() { return default!; }
 
         /// <summary>
         /// Represents the final (output) value of an out parameter when returning from a method.
@@ -466,7 +467,7 @@ namespace System.Diagnostics.Contracts
         /// This method can only be used within the argument to the <seealso cref="Ensures(bool)"/> contract.
         /// </remarks>
         [Pure]
-        public static T ValueAtReturn<T>(out T value) { value = default; return value; }
+        public static T ValueAtReturn<T>(out T value) { value = default!; return value; }
 
         /// <summary>
         /// Represents the value of <paramref name="value"/> as it was at the start of the method or property.
@@ -478,7 +479,7 @@ namespace System.Diagnostics.Contracts
         /// This method can only be used within the argument to the <seealso cref="Ensures(bool)"/> contract.
         /// </remarks>
         [Pure]
-        public static T OldValue<T>(T value) { return default; }
+        public static T OldValue<T>(T value) { return default!; }
 
         #endregion Old, Result, and Out Parameters
 
@@ -514,7 +515,7 @@ namespace System.Diagnostics.Contracts
         /// </remarks>
         [Pure]
         [Conditional("CONTRACTS_FULL")]
-        public static void Invariant(bool condition, string userMessage)
+        public static void Invariant(bool condition, string? userMessage)
         {
             AssertMustUseRewriter(ContractFailureKind.Invariant, "Invariant");
         }
@@ -651,10 +652,10 @@ namespace System.Diagnostics.Contracts
             // find the first non-mscorlib assembly.
             Assembly thisAssembly = typeof(Contract).Assembly;  // In case we refactor mscorlib, use Contract class instead of Object.
             StackTrace stack = new StackTrace();
-            Assembly probablyNotRewritten = null;
+            Assembly? probablyNotRewritten = null;
             for (int i = 0; i < stack.FrameCount; i++)
             {
-                Assembly caller = stack.GetFrame(i).GetMethod()?.DeclaringType.Assembly;
+                Assembly? caller = stack.GetFrame(i)!.GetMethod()?.DeclaringType.Assembly;
                 if (caller != null && caller != thisAssembly)
                 {
                     probablyNotRewritten = caller;
@@ -664,7 +665,7 @@ namespace System.Diagnostics.Contracts
 
             if (probablyNotRewritten == null)
                 probablyNotRewritten = thisAssembly;
-            string simpleName = probablyNotRewritten.GetName().Name;
+            string? simpleName = probablyNotRewritten.GetName().Name;
             System.Runtime.CompilerServices.ContractHelper.TriggerFailure(kind, SR.Format(SR.MustUseCCRewrite, contractKind, simpleName), null, null, null);
         }
 
@@ -679,7 +680,7 @@ namespace System.Diagnostics.Contracts
         /// System.Runtime.CompilerServices.ContractHelper.TriggerFailure.
         /// </summary>
         [System.Diagnostics.DebuggerNonUserCode]
-        private static void ReportFailure(ContractFailureKind failureKind, string userMessage, string conditionText, Exception innerException)
+        private static void ReportFailure(ContractFailureKind failureKind, string? userMessage, string? conditionText, Exception? innerException)
         {
             if (failureKind < ContractFailureKind.Precondition || failureKind > ContractFailureKind.Assume)
                 throw new ArgumentException(SR.Format(SR.Arg_EnumIllegalVal, failureKind), nameof(failureKind));
index 72c2aca..ea1cd3c 100644 (file)
@@ -2,6 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 namespace System
 {
     public readonly struct GCMemoryInfo
index 9d836c0..61accbf 100644 (file)
@@ -135,17 +135,25 @@ namespace System.IO
         {
         }
 
-        public StreamReader(Stream stream, Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize, bool leaveOpen)
+        public StreamReader(Stream stream, Encoding? encoding = null, bool detectEncodingFromByteOrderMarks = true, int bufferSize = -1, bool leaveOpen = false)
         {
-            if (stream == null || encoding == null)
+            if (stream == null)
             {
-                throw new ArgumentNullException(stream == null ? nameof(stream) : nameof(encoding));
+                throw new ArgumentNullException(nameof(stream));
+            }
+            if (encoding == null)
+            {
+                encoding = Encoding.UTF8;
             }
             if (!stream.CanRead)
             {
                 throw new ArgumentException(SR.Argument_StreamNotReadable);
             }
-            if (bufferSize <= 0)
+            if (bufferSize == -1)
+            {
+                bufferSize = DefaultBufferSize;
+            }
+            else if (bufferSize <= 0)
             {
                 throw new ArgumentOutOfRangeException(nameof(bufferSize), SR.ArgumentOutOfRange_NeedPosNum);
             }
index 3a99919..856dd27 100644 (file)
@@ -90,18 +90,26 @@ namespace System.IO
         {
         }
 
-        public StreamWriter(Stream stream, Encoding encoding, int bufferSize, bool leaveOpen)
+        public StreamWriter(Stream stream, Encoding? encoding = null, int bufferSize = -1, bool leaveOpen = false)
             : base(null) // Ask for CurrentCulture all the time
         {
-            if (stream == null || encoding == null)
+            if (stream == null)
             {
-                throw new ArgumentNullException(stream == null ? nameof(stream) : nameof(encoding));
+                throw new ArgumentNullException(nameof(stream));
+            }
+            if (encoding == null)
+            {
+                encoding = UTF8NoBOM;
             }
             if (!stream.CanWrite)
             {
                 throw new ArgumentException(SR.Argument_StreamNotWritable);
             }
-            if (bufferSize <= 0)
+            if (bufferSize == -1)
+            {
+                bufferSize = DefaultBufferSize;
+            }
+            else if (bufferSize <= 0)
             {
                 throw new ArgumentOutOfRangeException(nameof(bufferSize), SR.ArgumentOutOfRange_NeedPosNum);
             }
index 5341143..7e3e9a9 100644 (file)
@@ -2,8 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
-using System.Runtime.CompilerServices;
-
+#nullable enable
 #if BIT64
 using nuint = System.UInt64;
 #else
@@ -14,14 +13,14 @@ namespace System.Runtime.InteropServices
 {
     public struct ArrayWithOffset
     {
-        private object m_array;
+        private object? m_array;
         private int m_offset;
         private int m_count;
 
         // From MAX_SIZE_FOR_INTEROP in mlinfo.h
         private const int MaxSizeForInterop = 0x7ffffff0;
 
-        public ArrayWithOffset(object array, int offset)
+        public ArrayWithOffset(object? array, int offset)
         {
             int totalSize = 0;
             if (array != null)
@@ -50,13 +49,13 @@ namespace System.Runtime.InteropServices
             m_count = totalSize - offset;
         }
 
-        public object GetArray() => m_array;
+        public object? GetArray() => m_array;
 
         public int GetOffset() => m_offset;
 
         public override int GetHashCode() => m_count + m_offset;
 
-        public override bool Equals(object obj)
+        public override bool Equals(object? obj)
         {
             return obj is ArrayWithOffset && Equals((ArrayWithOffset)obj);
         }
index f6eee34..02e6710 100644 (file)
@@ -2,6 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 namespace System.Runtime.InteropServices
 {
     // Wrapper that is converted to a variant with VT_BSTR.
index 7b29d6f..27ed5da 100644 (file)
@@ -2,6 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 using System.Runtime.InteropServices.ComTypes;
 
 namespace System.Runtime.InteropServices
index 95d8260..7ea8a23 100644 (file)
@@ -2,24 +2,25 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 namespace System.Runtime.InteropServices
 {
     // Wrapper that is converted to a variant with VT_CURRENCY.
     public sealed class CurrencyWrapper
     {
-        public CurrencyWrapper(Decimal obj)
+        public CurrencyWrapper(decimal obj)
         {
             WrappedObject = obj;
         }
 
-        public CurrencyWrapper(Object obj)
+        public CurrencyWrapper(object obj)
         {
-            if (!(obj is Decimal))
+            if (!(obj is decimal))
                 throw new ArgumentException(SR.Arg_MustBeDecimal, nameof(obj));
 
-            WrappedObject = (Decimal)obj;
+            WrappedObject = (decimal)obj;
         }
 
-        public Decimal WrappedObject { get; }
+        public decimal WrappedObject { get; }
     }
 }
index afdcb7b..1378347 100644 (file)
@@ -2,12 +2,13 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 namespace System.Runtime.InteropServices
 {
     // Wrapper that is converted to a variant with VT_DISPATCH
     public sealed class DispatchWrapper
     {
-        public DispatchWrapper(Object obj)
+        public DispatchWrapper(object? obj)
         {
             if (obj != null)
             {
@@ -21,6 +22,6 @@ namespace System.Runtime.InteropServices
             }
         }
 
-        public object WrappedObject { get; }
+        public object? WrappedObject { get; }
     }
 }
index d25f023..a68d6a3 100644 (file)
@@ -2,6 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 namespace System.Runtime.InteropServices
 {
     // Wrapper that is converted to a variant with VT_ERROR.
index c81a701..8ba7c41 100644 (file)
@@ -2,23 +2,24 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 namespace System.Runtime.InteropServices
 {
     public readonly struct HandleRef
     {
         // ! Do not add or rearrange fields as the EE depends on this layout.
         //------------------------------------------------------------------
-        private readonly object _wrapper;
+        private readonly object? _wrapper;
         private readonly IntPtr _handle;
         //------------------------------------------------------------------
 
-        public HandleRef(object wrapper, IntPtr handle)
+        public HandleRef(object? wrapper, IntPtr handle)
         {
             _wrapper = wrapper;
             _handle = handle;
         }
 
-        public object Wrapper
+        public object? Wrapper
         {
             get
             {
index 6dd90e2..7a7a235 100644 (file)
@@ -2,6 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 namespace System.Runtime.InteropServices
 {
     // This the base interface that custom adapters can chose to implement when they want to expose the underlying object.
index 799db6a..41d4f68 100644 (file)
@@ -2,6 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 namespace System.Runtime.InteropServices
 {
     public interface ICustomFactory
index a91fd7f..439fea4 100644 (file)
@@ -2,6 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 namespace System.Runtime.InteropServices
 {
     // This the interface that be implemented by class that want to customize the behavior of QueryInterface.
index 562bd71..41b1bad 100644 (file)
@@ -65,8 +65,7 @@
 // static variable (perhaps using Interlocked.CompareExchange).  Of course,
 // assignments in a static class constructor are under a lock implicitly.
 
-using System;
-using System.Diagnostics;
+#nullable enable
 using System.Runtime.CompilerServices;
 using Internal.Runtime.CompilerServices;
 using Microsoft.Win32.SafeHandles;
index 9d1599a..22dca1c 100644 (file)
@@ -2,16 +2,17 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 namespace System.Runtime.InteropServices
 {
     // Wrapper that is converted to a variant with VT_UNKNOWN.
     public sealed class UnknownWrapper
     {
-        public UnknownWrapper(Object obj)
+        public UnknownWrapper(object? obj)
         {
             WrappedObject = obj;
         }
 
-        public Object WrappedObject { get; }
+        public object? WrappedObject { get; }
     }
 }
index 3d75da1..f93a163 100644 (file)
@@ -2,16 +2,17 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 namespace System.Runtime.InteropServices
 {
     // Wrapper that is converted to a variant with VT_BYREF | VT_VARIANT.
     public sealed class VariantWrapper
     {
-        public VariantWrapper(Object obj)
+        public VariantWrapper(object? obj)
         {
             WrappedObject = obj;
         }
 
-        public Object WrappedObject { get; }
+        public object? WrappedObject { get; }
     }
 }
index b36dbb0..c7ef9a9 100644 (file)
@@ -390,16 +390,16 @@ namespace System.Text.Unicode
                         // Can't extract this check into its own helper method because JITter produces suboptimal
                         // assembly, even with aggressive inlining.
 
-                        // Code below becomes 5 instructions: test, jz, add, test, jz
+                        // Code below becomes 5 instructions: test, jz, lea, test, jz
 
-                        if (((thisDWord & 0x0000_200Fu) == 0) || (((thisDWord -= 0x0000_200Du) & 0x0000_200Fu) == 0))
+                        if (((thisDWord & 0x0000_200Fu) == 0) || (((thisDWord - 0x0000_200Du) & 0x0000_200Fu) == 0))
                         {
                             goto Error; // overlong or surrogate
                         }
                     }
                     else
                     {
-                        if (((thisDWord & 0x0F20_0000u) == 0) || (((thisDWord -= 0x0D20_0000u) & 0x0F20_0000u) == 0))
+                        if (((thisDWord & 0x0F20_0000u) == 0) || (((thisDWord - 0x0D20_0000u) & 0x0F20_0000u) == 0))
                         {
                             goto Error; // overlong or surrogate
                         }
index 3ba177a..c76f8af 100644 (file)
@@ -2,6 +2,7 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 using Windows.Foundation.Metadata;
 using Windows.Storage;
 using System.IO;
@@ -124,13 +125,13 @@ namespace System
             switch (folder)
             {
                 case SpecialFolder.ApplicationData:
-                    return ApplicationData.Current.RoamingFolder?.Path;
+                    return ApplicationData.Current.RoamingFolder?.Path ?? string.Empty;
                 case SpecialFolder.LocalApplicationData:
-                    return ApplicationData.Current.LocalFolder?.Path;
+                    return ApplicationData.Current.LocalFolder?.Path ?? string.Empty;
                 case SpecialFolder.System:
                     return SystemDirectory;
                 case SpecialFolder.Windows:
-                    return Path.GetDirectoryName(SystemDirectory);
+                    return Path.GetDirectoryName(SystemDirectory)!; // TODO-NULLABLE: https://github.com/dotnet/roslyn/issues/26761
                 default:
                     return string.Empty;
             }
index 5597c13..e2a85e8 100644 (file)
@@ -2,8 +2,8 @@
 // The .NET Foundation licenses this file to you under the MIT license.
 // See the LICENSE file in the project root for more information.
 
+#nullable enable
 using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
 
 namespace System
 {
index 4f878cc..4d97298 100644 (file)
@@ -1589,7 +1589,7 @@ void DacDbiInterfaceImpl::GetStaticsBases(TypeHandle thExact,
     Module * pModuleForStatics = pMT->GetModuleForStatics();
     if (pModuleForStatics != NULL)
     {
-        PTR_DomainLocalModule pLocalModule = pModuleForStatics->GetDomainLocalModule(pAppDomain);
+        PTR_DomainLocalModule pLocalModule = pModuleForStatics->GetDomainLocalModule();
         if (pLocalModule != NULL)
         {
             *ppGCStaticsBase = pLocalModule->GetGCStaticsBasePointer(pMT);
@@ -2532,7 +2532,7 @@ void DacDbiInterfaceImpl::GetClassTypeInfo(TypeHandle                      typeH
     pTypeInfo->ClassTypeData.vmModule.SetDacTargetPtr(PTR_HOST_TO_TADDR(pModule));
     if (pAppDomain)
     {
-        pTypeInfo->ClassTypeData.vmDomainFile.SetDacTargetPtr(PTR_HOST_TO_TADDR(pModule->GetDomainFile(pAppDomain)));
+        pTypeInfo->ClassTypeData.vmDomainFile.SetDacTargetPtr(PTR_HOST_TO_TADDR(pModule->GetDomainFile()));
     }
     else
     {
@@ -2619,7 +2619,7 @@ void DacDbiInterfaceImpl::TypeHandleToBasicTypeInfo(TypeHandle
             pTypeInfo->vmModule.SetDacTargetPtr(PTR_HOST_TO_TADDR(pModule)); 
             if (pAppDomain)
             {
-                pTypeInfo->vmDomainFile.SetDacTargetPtr(PTR_HOST_TO_TADDR(pModule->GetDomainFile(pAppDomain)));
+                pTypeInfo->vmDomainFile.SetDacTargetPtr(PTR_HOST_TO_TADDR(pModule->GetDomainFile()));
             }
             else
             {
@@ -3281,7 +3281,7 @@ CORDB_ADDRESS DacDbiInterfaceImpl::GetCollectibleTypeStaticAddress(VMPTR_FieldDe
     //
     // Get the address
     //
-    PTR_VOID base = pFieldDesc->GetBaseInDomain(pAppDomain);
+    PTR_VOID base = pFieldDesc->GetBase();
     if (base == PTR_NULL)
     {
         return PTR_HOST_TO_TADDR(NULL);
@@ -3368,7 +3368,7 @@ void DacDbiInterfaceImpl::GetSimpleType(VMPTR_AppDomain    vmAppDomain,
  
         if (pAppDomain)
         {
-            pVmDomainFile->SetHostPtr(pModule->GetDomainFile(pAppDomain));
+            pVmDomainFile->SetHostPtr(pModule->GetDomainFile());
             if (pVmDomainFile->IsNull())
                 ThrowHR(CORDBG_E_TARGET_INCONSISTENT);
         }
@@ -3449,7 +3449,7 @@ void DacDbiInterfaceImpl::GetStackFramesFromException(VMPTR_Object vmObject, Dac
 
             _ASSERTE(pDomain != NULL);
 
-            pDomainFile = pModule->FindDomainFile(pDomain);
+            pDomainFile = pModule->GetDomainFile();
             _ASSERTE(pDomainFile != NULL);
 
             currentFrame.vmAppDomain.SetHostPtr(pDomain);
@@ -3963,7 +3963,7 @@ void DacDbiInterfaceImpl::ResolveTypeReference(const TypeRefData * pTypeRefInfo,
 
         AppDomain * pAppDomain = pDomainFile->GetAppDomain();
 
-        pTargetRefInfo->vmDomainFile.SetDacTargetPtr(PTR_HOST_TO_TADDR(pTargetModule->GetDomainFile(pAppDomain)));
+        pTargetRefInfo->vmDomainFile.SetDacTargetPtr(PTR_HOST_TO_TADDR(pTargetModule->GetDomainFile()));
         pTargetRefInfo->typeToken = targetTypeDef;
     }
     else
@@ -4386,7 +4386,7 @@ VMPTR_DomainAssembly DacDbiInterfaceImpl::ResolveAssembly(
     Assembly * pAssembly = pModule->LookupAssemblyRef(tkAssemblyRef);
     if (pAssembly != NULL)
     {
-        DomainAssembly * pDomainAssembly = pAssembly->FindDomainAssembly(pAppDomain);
+        DomainAssembly * pDomainAssembly = pAssembly->GetDomainAssembly();
         vmDomainAssembly.SetHostPtr(pDomainAssembly);
     }
     return vmDomainAssembly;
@@ -6806,7 +6806,7 @@ bool DacDbiInterfaceImpl::GetAppDomainForObject(CORDB_ADDRESS addr, OUT VMPTR_Ap
     {
         pAppDomain->SetDacTargetPtr(PTR_HOST_TO_TADDR(baseDomain->AsAppDomain()));
         pModule->SetDacTargetPtr(PTR_HOST_TO_TADDR(module));
-        pDomainFile->SetDacTargetPtr(PTR_HOST_TO_TADDR(module->GetDomainFile(baseDomain->AsAppDomain())));
+        pDomainFile->SetDacTargetPtr(PTR_HOST_TO_TADDR(module->GetDomainFile()));
     }
     else
     {
index 83e3e38..e8c2174 100644 (file)
@@ -515,7 +515,7 @@ void DacDbiInterfaceImpl::EnumerateInternalFrames(VMPTR_Thread
 #endif // FEATURE_COMINTEROP
 
             Module *     pModule = (pMD ? pMD->GetModule() : NULL);
-            DomainFile * pDomainFile = (pModule ? pModule->GetDomainFile(pAppDomain) : NULL);
+            DomainFile * pDomainFile = (pModule ? pModule->GetDomainFile() : NULL);
 
             if (frameData.stubFrame.frameType == STUBFRAME_FUNC_EVAL)
             {
@@ -714,7 +714,7 @@ void DacDbiInterfaceImpl::InitFrameData(StackFrameIterator *   pIter,
         DomainFile *pDomainFile = NULL;
         EX_TRY_ALLOW_DATATARGET_MISSING_MEMORY
         {
-            pDomainFile = (pModule ? pModule->GetDomainFile(pAppDomain) : NULL);
+            pDomainFile = (pModule ? pModule->GetDomainFile() : NULL);
             _ASSERTE(pDomainFile != NULL);
         }
         EX_END_CATCH_ALLOW_DATATARGET_MISSING_MEMORY
index bbd724f..5eb9b11 100644 (file)
@@ -1437,7 +1437,7 @@ ClrDataValue::NewFromFieldDesc(ClrDataAccess* dac,
     {
         baseAddr = TO_CDADDR
             (PTR_TO_TADDR(fieldDesc->GetStaticAddressHandle
-             (fieldDesc->GetBaseInDomain(appDomain))));
+             (fieldDesc->GetBase())));
     }
     else
     {
index 2365fdf..dff24c8 100644 (file)
@@ -2316,9 +2316,8 @@ ClrDataAccess::GetAppDomainData(CLRDATA_ADDRESS addr, struct DacpAppDomainData *
         if (pBaseDomain->IsAppDomain())
         {
             AppDomain * pAppDomain = pBaseDomain->AsAppDomain();
-            appdomainData->DomainLocalBlock = appdomainData->AppDomainPtr +
-                offsetof(AppDomain, m_sDomainLocalBlock);
-            appdomainData->pDomainLocalModules = PTR_CDADDR(pAppDomain->m_sDomainLocalBlock.m_pModuleSlots);
+            appdomainData->DomainLocalBlock = 0;
+            appdomainData->pDomainLocalModules = 0;
 
             appdomainData->dwId = DefaultADID;
             appdomainData->appDomainStage = (DacpAppDomainDataStage)pAppDomain->m_Stage.Load();
@@ -3197,7 +3196,7 @@ ClrDataAccess::GetDomainLocalModuleDataFromModule(CLRDATA_ADDRESS addr, struct D
     SOSDacEnter();
 
     Module* pModule = PTR_Module(TO_TADDR(addr));
-    DomainLocalModule* pLocalModule = PTR_DomainLocalModule(pModule->GetDomainLocalModule(NULL));
+    DomainLocalModule* pLocalModule = PTR_DomainLocalModule(pModule->GetDomainLocalModule());
     if (!pLocalModule)
     {
         hr = E_INVALIDARG;
@@ -3217,36 +3216,10 @@ ClrDataAccess::GetDomainLocalModuleDataFromModule(CLRDATA_ADDRESS addr, struct D
 HRESULT
 ClrDataAccess::GetDomainLocalModuleDataFromAppDomain(CLRDATA_ADDRESS appDomainAddr, int moduleID, struct DacpDomainLocalModuleData *pLocalModuleData)
 {
-    if (appDomainAddr == 0 || moduleID < 0 || pLocalModuleData == NULL)
-        return E_INVALIDARG;
-
-    SOSDacEnter();
-
-    pLocalModuleData->appDomainAddr = appDomainAddr;
-    pLocalModuleData->ModuleID = moduleID;
-
-    AppDomain *pAppDomain = PTR_AppDomain(TO_TADDR(appDomainAddr));
-    ModuleIndex index = Module::IDToIndex(moduleID);
-    DomainLocalModule* pLocalModule = pAppDomain->GetDomainLocalBlock()->GetModuleSlot(index);
-    if (!pLocalModule)
-    {
-        hr = E_INVALIDARG;
-    }
-    else
-    {
-        pLocalModuleData->pGCStaticDataStart    = TO_CDADDR(PTR_TO_TADDR(pLocalModule->GetPrecomputedGCStaticsBasePointer()));
-        pLocalModuleData->pNonGCStaticDataStart = TO_CDADDR(pLocalModule->GetPrecomputedNonGCStaticsBasePointer());
-        pLocalModuleData->pDynamicClassTable    = PTR_CDADDR(pLocalModule->m_pDynamicClassTable.Load());
-        pLocalModuleData->pClassData            = (TADDR) (PTR_HOST_MEMBER_TADDR(DomainLocalModule, pLocalModule, m_pDataBlob));
-    }
-
-    SOSDacLeave();
-    return hr;
+    // CoreCLR does not support multi-appdomain shared assembly loading. Thus, a non-pointer sized moduleID cannot exist.
+    return E_INVALIDARG;
 }
 
-
-
-
 HRESULT
 ClrDataAccess::GetThreadLocalModuleData(CLRDATA_ADDRESS thread, unsigned int index, struct DacpThreadLocalModuleData *pLocalModuleData)
 {
index f2d2f06..e8e8de9 100644 (file)
@@ -5335,7 +5335,7 @@ DebuggerModule* Debugger::LookupOrCreateModule(Module* pModule, AppDomain *pAppD
         HRESULT hr = S_OK;
         EX_TRY
         {
-            DomainFile * pDomainFile = pModule->FindDomainFile(pAppDomain);
+            DomainFile * pDomainFile = pModule->GetDomainFile();
             SIMPLIFYING_ASSUMPTION(pDomainFile != NULL);
             dmod = AddDebuggerModule(pDomainFile); // throws
         }
@@ -9592,7 +9592,7 @@ void Debugger::LoadModule(Module* pRuntimeModule,
             _ASSERTE(pManifestModule->IsManifest());
             _ASSERTE(pManifestModule->GetAssembly() == pRuntimeModule->GetAssembly());
 
-            DomainFile * pManifestDomainFile = pManifestModule->GetDomainFile(pAppDomain);
+            DomainFile * pManifestDomainFile = pManifestModule->GetDomainFile();
 
             DebuggerLockHolder dbgLockHolder(this);
 
@@ -9741,7 +9741,7 @@ void Debugger::LoadModuleFinished(Module * pRuntimeModule, AppDomain * pAppDomai
 #ifdef _DEBUG
     {
         // This notification is called once the module is loaded
-        DomainFile * pDomainFile = pRuntimeModule->FindDomainFile(pAppDomain);
+        DomainFile * pDomainFile = pRuntimeModule->GetDomainFile();
         _ASSERTE((pDomainFile != NULL) && (pDomainFile->GetLoadLevel() >= FILE_LOADED));
     }
 #endif // _DEBUG
@@ -10202,7 +10202,7 @@ BOOL Debugger::SendSystemClassLoadUnloadEvent(mdTypeDef classMetadataToken,
         // triggers too early in the loading process. FindDomainFile will not become
         // non-NULL until the module is fully loaded into the domain which is what we
         // want.
-        if (classModule->FindDomainFile(pAppDomain) != NULL )
+        if (classModule->GetDomainFile() != NULL )
         {
             // Find the Left Side module that this class belongs in.
             DebuggerModule* pModule = LookupOrCreateModule(classModule, pAppDomain);
index c91eadb..b9918ec 100644 (file)
@@ -63,7 +63,7 @@ public:
     static void DiagUpdateGenerationBounds();
     static void DiagGCEnd(size_t index, int gen, int reason, bool fConcurrent);
     static void DiagWalkFReachableObjects(void* gcContext);
-    static void DiagWalkSurvivors(void* gcContext);
+    static void DiagWalkSurvivors(void* gcContext, bool fCompacting);
     static void DiagWalkLOHSurvivors(void* gcContext);
     static void DiagWalkBGCSurvivors(void* gcContext);
     static void StompWriteBarrier(WriteBarrierParameters* args);
index 9e0356b..bcffca0 100644 (file)
@@ -23060,7 +23060,7 @@ void gc_heap::plan_phase (int condemned_gen_number)
         assert (generation_allocation_segment (consing_gen) ==
                 ephemeral_heap_segment);
 
-        GCToEEInterface::DiagWalkSurvivors(__this);
+        GCToEEInterface::DiagWalkSurvivors(__this, true);
 
         relocate_phase (condemned_gen_number, first_condemned_address);
         compact_phase (condemned_gen_number, first_condemned_address,
@@ -23270,7 +23270,7 @@ void gc_heap::plan_phase (int condemned_gen_number)
             fix_older_allocation_area (older_gen);
         }
 
-        GCToEEInterface::DiagWalkSurvivors(__this);
+        GCToEEInterface::DiagWalkSurvivors(__this, false);
 
         gen0_big_free_spaces = 0;
         make_free_lists (condemned_gen_number);
@@ -37212,6 +37212,23 @@ void GCHeap::DiagWalkObject (Object* obj, walk_fn fn, void* context)
     }
 }
 
+void GCHeap::DiagWalkObject2 (Object* obj, walk_fn2 fn, void* context)
+{
+    uint8_t* o = (uint8_t*)obj;
+    if (o)
+    {
+        go_through_object_cl (method_table (o), o, size(o), oo,
+                                    {
+                                        if (*oo)
+                                        {
+                                            if (!fn (obj, oo, context))
+                                                return;
+                                        }
+                                    }
+            );
+    }
+}
+
 void GCHeap::DiagWalkSurvivorsWithType (void* gc_context, record_surv_fn fn, void* diag_context, walk_surv_type type)
 {
     gc_heap* hp = (gc_heap*)gc_context;
index b5c2c76..7a9b8b1 100644 (file)
@@ -155,10 +155,10 @@ inline void GCToEEInterface::DiagWalkFReachableObjects(void* gcContext)
     g_theGCToCLR->DiagWalkFReachableObjects(gcContext);
 }
 
-inline void GCToEEInterface::DiagWalkSurvivors(void* gcContext)
+inline void GCToEEInterface::DiagWalkSurvivors(void* gcContext, bool fCompacting)
 {
     assert(g_theGCToCLR != nullptr);
-    g_theGCToCLR->DiagWalkSurvivors(gcContext);
+    g_theGCToCLR->DiagWalkSurvivors(gcContext, fCompacting);
 }
 
 inline void GCToEEInterface::DiagWalkLOHSurvivors(void* gcContext)
index dffe2f1..bdf3a5c 100644 (file)
@@ -210,6 +210,7 @@ public:
     bool ShouldRestartFinalizerWatchDog();
 
     void DiagWalkObject (Object* obj, walk_fn fn, void* context);
+    void DiagWalkObject2 (Object* obj, walk_fn2 fn, void* context);
     void SetFinalizeRunOnShutdown(bool value);
 
 public:        // FIX 
index 4ce9203..4d12ae9 100644 (file)
@@ -296,7 +296,7 @@ public:
     // gives the diagnostics code a chance to run. This includes LOH if we are 
     // compacting LOH.
     virtual
-    void DiagWalkSurvivors(void* gcContext) = 0;
+    void DiagWalkSurvivors(void* gcContext, bool fCompacting) = 0;
 
     // During a full GC after we discover what objects to survive on LOH,
     // gives the diagnostics code a chance to run.
index 4c2a2fb..e6c2ccb 100644 (file)
@@ -444,6 +444,7 @@ typedef enum
 } GCHeapType;
 
 typedef bool (* walk_fn)(Object*, void*);
+typedef bool (* walk_fn2)(Object*, uint8_t**, void*);
 typedef void (* gen_walk_fn)(void* context, int generation, uint8_t* range_start, uint8_t* range_end, uint8_t* range_reserved);
 typedef void (* record_surv_fn)(uint8_t* begin, uint8_t* end, ptrdiff_t reloc, void* context, bool compacting_p, bool bgc_p);
 typedef void (* fq_walk_fn)(bool, void*);
@@ -829,6 +830,9 @@ public:
     // Walks an object, invoking a callback on each member.
     virtual void DiagWalkObject(Object* obj, walk_fn fn, void* context) = 0;
 
+    // Walks an object, invoking a callback on each member.
+    virtual void DiagWalkObject2(Object* obj, walk_fn2 fn, void* context) = 0;
+
     // Walk the heap object by object.
     virtual void DiagWalkHeap(walk_fn fn, void* context, int gen_number, bool walk_large_object_heap_p) = 0;
     
index f6977ca..358237a 100644 (file)
@@ -99,16 +99,12 @@ GC_Initialize(
         SVR::PopulateDacVars(gcDacVars);
     }
     else
+#endif
     {
         g_gc_heap_type = GC_HEAP_WKS;
         heap = WKS::CreateGCHeap();
         WKS::PopulateDacVars(gcDacVars);
     }
-#else
-    g_gc_heap_type = GC_HEAP_WKS;
-    heap = WKS::CreateGCHeap();
-    WKS::PopulateDacVars(gcDacVars);
-#endif
 
     PopulateHandleTableDacVars(gcDacVars);
     if (heap == nullptr)
index abf6e09..973b7f4 100644 (file)
@@ -253,7 +253,7 @@ void GCToEEInterface::DiagWalkFReachableObjects(void* gcContext)
 {
 }
 
-void GCToEEInterface::DiagWalkSurvivors(void* gcContext)
+void GCToEEInterface::DiagWalkSurvivors(void* gcContext, bool fCompacting)
 {
 }
 
index 1062248..25a6201 100644 (file)
@@ -629,11 +629,15 @@ typedef enum
 
     COR_PRF_HIGH_BASIC_GC                           = 0x00000010,
 
+    // Enables the MovedReferences/MovedReferences2 callback for compacting GCs only.
+    COR_PRF_HIGH_MONITOR_GC_MOVED_OBJECTS           = 0x00000020,
+
     COR_PRF_HIGH_REQUIRE_PROFILE_IMAGE              = 0,
 
     COR_PRF_HIGH_ALLOWABLE_AFTER_ATTACH             = COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED | 
                                                       COR_PRF_HIGH_MONITOR_DYNAMIC_FUNCTION_UNLOADS | 
-                                                      COR_PRF_HIGH_BASIC_GC,
+                                                      COR_PRF_HIGH_BASIC_GC |
+                                                      COR_PRF_HIGH_MONITOR_GC_MOVED_OBJECTS,
 
     // MONITOR_IMMUTABLE represents all flags that may only be set during initialization.
     // Trying to change any of these flags elsewhere will result in a
@@ -3915,6 +3919,18 @@ interface ICorProfilerInfo9 : ICorProfilerInfo8
     HRESULT GetCodeInfo4(UINT_PTR pNativeCodeStartAddress, ULONG32 cCodeInfos, ULONG32* pcCodeInfos, COR_PRF_CODE_INFO codeInfos[]);
 }
 
+[
+    object,
+    uuid(2F1B5152-C869-40C9-AA5F-3ABE026BD720),
+    pointer_default(unique),
+    local
+]
+interface ICorProfilerInfo10 : ICorProfilerInfo9
+{
+    // Given an ObjectID, fetches all its object references and offsets (if any).
+    HRESULT GetObjectReferences(ObjectID objectId, ULONG32 cNumReferences, ULONG32 *pcNumReferences, ObjectID references[], SIZE_T offsets[]);
+}
+
 /*
 * This interface lets you iterate over methods in the runtime.
 */
index 095c9f9..413090f 100644 (file)
@@ -741,6 +741,20 @@ inline BOOL CORProfilerTrackBasicGC()
          ((&g_profControlBlock)->dwEventMaskHigh & COR_PRF_HIGH_BASIC_GC));
 }
 
+inline BOOL CORProfilerTrackGCMovedObjects()
+{
+    CONTRACTL 
+    {
+        NOTHROW;
+        GC_NOTRIGGER;
+        CANNOT_TAKE_LOCK;
+    }
+    CONTRACTL_END;
+
+    return (CORProfilerPresent() &&
+         ((&g_profControlBlock)->dwEventMaskHigh & COR_PRF_HIGH_MONITOR_GC_MOVED_OBJECTS));
+}
+
 #if defined(PROFILING_SUPPORTED) && !defined(CROSSGEN_COMPILE)
 
 #if defined(FEATURE_PROFAPI_ATTACH_DETACH)
index 8da12e5..4d78fde 100644 (file)
@@ -846,8 +846,11 @@ GenTree* Compiler::impHWIntrinsic(NamedIntrinsic        intrinsic,
         var_types               argType = TYP_UNKNOWN;
 
         assert(numArgs >= 0);
-        assert(HWIntrinsicInfo::lookupIns(intrinsic, baseType) != INS_invalid);
-        assert(simdSize == 32 || simdSize == 16);
+        if ((HWIntrinsicInfo::lookupIns(intrinsic, baseType) == INS_invalid) || ((simdSize != 32) && (simdSize != 16)))
+        {
+            assert(!"Unexpected HW Intrinsic");
+            return nullptr;
+        }
 
         GenTreeHWIntrinsic* retNode = nullptr;
         GenTree*            op1     = nullptr;
index 065be3d..d1f0722 100644 (file)
@@ -125,7 +125,10 @@ MIDL_DEFINE_GUID(IID, IID_ICorProfilerInfo7,0x9AEECC0D,0x63E0,0x4187,0x8C,0x00,0
 MIDL_DEFINE_GUID(IID, IID_ICorProfilerInfo8,0xC5AC80A6,0x782E,0x4716,0x80,0x44,0x39,0x59,0x8C,0x60,0xCF,0xBF);
 
 
-MIDL_DEFINE_GUID(IID, IID_ICorProfilerInfo9,0X008170DB,0XF8CC,0X4796,0X9A,0X51,0XDC,0X8A,0XA0,0XB4,0X70,0x12);
+MIDL_DEFINE_GUID(IID, IID_ICorProfilerInfo9,0x008170DB,0xF8CC,0x4796,0x9A,0x51,0xDC,0x8A,0xA0,0xB4,0x70,0x12);
+
+
+MIDL_DEFINE_GUID(IID, IID_ICorProfilerInfo10,0x2F1B5152,0xC869,0x40C9,0xAA,0x5F,0x3A,0xBE,0x02,0x6B,0xD7,0x20);
 
 
 MIDL_DEFINE_GUID(IID, IID_ICorProfilerMethodEnum,0xFCCEE788,0x0088,0x454B,0xA8,0x11,0xC9,0x9F,0x29,0x8D,0x19,0x42);
index c7839dd..f5f8413 100644 (file)
@@ -6,7 +6,7 @@
  /* File created by MIDL compiler version 8.01.0622 */
 /* at Mon Jan 18 19:14:07 2038
  */
-/* Compiler settings for D:/git/coreclr-profattach/src/inc/corprof.idl:
+/* Compiler settings for D:/coreclr/src/inc/corprof.idl:
     Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 8.01.0622 
     protocol : dce , ms_ext, c_ext, robust
     error checks: allocation ref bounds_check enum stub_data 
 #define __ICorProfilerCallback_FWD_DEFINED__
 typedef interface ICorProfilerCallback ICorProfilerCallback;
 
-#endif  /* __ICorProfilerCallback_FWD_DEFINED__ */
+#endif         /* __ICorProfilerCallback_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerCallback2_FWD_DEFINED__
 #define __ICorProfilerCallback2_FWD_DEFINED__
 typedef interface ICorProfilerCallback2 ICorProfilerCallback2;
 
-#endif  /* __ICorProfilerCallback2_FWD_DEFINED__ */
+#endif         /* __ICorProfilerCallback2_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerCallback3_FWD_DEFINED__
 #define __ICorProfilerCallback3_FWD_DEFINED__
 typedef interface ICorProfilerCallback3 ICorProfilerCallback3;
 
-#endif  /* __ICorProfilerCallback3_FWD_DEFINED__ */
+#endif         /* __ICorProfilerCallback3_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerCallback4_FWD_DEFINED__
 #define __ICorProfilerCallback4_FWD_DEFINED__
 typedef interface ICorProfilerCallback4 ICorProfilerCallback4;
 
-#endif  /* __ICorProfilerCallback4_FWD_DEFINED__ */
+#endif         /* __ICorProfilerCallback4_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerCallback5_FWD_DEFINED__
 #define __ICorProfilerCallback5_FWD_DEFINED__
 typedef interface ICorProfilerCallback5 ICorProfilerCallback5;
 
-#endif  /* __ICorProfilerCallback5_FWD_DEFINED__ */
+#endif         /* __ICorProfilerCallback5_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerCallback6_FWD_DEFINED__
 #define __ICorProfilerCallback6_FWD_DEFINED__
 typedef interface ICorProfilerCallback6 ICorProfilerCallback6;
 
-#endif  /* __ICorProfilerCallback6_FWD_DEFINED__ */
+#endif         /* __ICorProfilerCallback6_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerCallback7_FWD_DEFINED__
 #define __ICorProfilerCallback7_FWD_DEFINED__
 typedef interface ICorProfilerCallback7 ICorProfilerCallback7;
 
-#endif  /* __ICorProfilerCallback7_FWD_DEFINED__ */
+#endif         /* __ICorProfilerCallback7_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerCallback8_FWD_DEFINED__
 #define __ICorProfilerCallback8_FWD_DEFINED__
 typedef interface ICorProfilerCallback8 ICorProfilerCallback8;
 
-#endif  /* __ICorProfilerCallback8_FWD_DEFINED__ */
+#endif         /* __ICorProfilerCallback8_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerCallback9_FWD_DEFINED__
 #define __ICorProfilerCallback9_FWD_DEFINED__
 typedef interface ICorProfilerCallback9 ICorProfilerCallback9;
 
-#endif  /* __ICorProfilerCallback9_FWD_DEFINED__ */
+#endif         /* __ICorProfilerCallback9_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo_FWD_DEFINED__
 #define __ICorProfilerInfo_FWD_DEFINED__
 typedef interface ICorProfilerInfo ICorProfilerInfo;
 
-#endif  /* __ICorProfilerInfo_FWD_DEFINED__ */
+#endif         /* __ICorProfilerInfo_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo2_FWD_DEFINED__
 #define __ICorProfilerInfo2_FWD_DEFINED__
 typedef interface ICorProfilerInfo2 ICorProfilerInfo2;
 
-#endif  /* __ICorProfilerInfo2_FWD_DEFINED__ */
+#endif         /* __ICorProfilerInfo2_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo3_FWD_DEFINED__
 #define __ICorProfilerInfo3_FWD_DEFINED__
 typedef interface ICorProfilerInfo3 ICorProfilerInfo3;
 
-#endif  /* __ICorProfilerInfo3_FWD_DEFINED__ */
+#endif         /* __ICorProfilerInfo3_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerObjectEnum_FWD_DEFINED__
 #define __ICorProfilerObjectEnum_FWD_DEFINED__
 typedef interface ICorProfilerObjectEnum ICorProfilerObjectEnum;
 
-#endif  /* __ICorProfilerObjectEnum_FWD_DEFINED__ */
+#endif         /* __ICorProfilerObjectEnum_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerFunctionEnum_FWD_DEFINED__
 #define __ICorProfilerFunctionEnum_FWD_DEFINED__
 typedef interface ICorProfilerFunctionEnum ICorProfilerFunctionEnum;
 
-#endif  /* __ICorProfilerFunctionEnum_FWD_DEFINED__ */
+#endif         /* __ICorProfilerFunctionEnum_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerModuleEnum_FWD_DEFINED__
 #define __ICorProfilerModuleEnum_FWD_DEFINED__
 typedef interface ICorProfilerModuleEnum ICorProfilerModuleEnum;
 
-#endif  /* __ICorProfilerModuleEnum_FWD_DEFINED__ */
+#endif         /* __ICorProfilerModuleEnum_FWD_DEFINED__ */
 
 
 #ifndef __IMethodMalloc_FWD_DEFINED__
 #define __IMethodMalloc_FWD_DEFINED__
 typedef interface IMethodMalloc IMethodMalloc;
 
-#endif  /* __IMethodMalloc_FWD_DEFINED__ */
+#endif         /* __IMethodMalloc_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerFunctionControl_FWD_DEFINED__
 #define __ICorProfilerFunctionControl_FWD_DEFINED__
 typedef interface ICorProfilerFunctionControl ICorProfilerFunctionControl;
 
-#endif  /* __ICorProfilerFunctionControl_FWD_DEFINED__ */
+#endif         /* __ICorProfilerFunctionControl_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo4_FWD_DEFINED__
 #define __ICorProfilerInfo4_FWD_DEFINED__
 typedef interface ICorProfilerInfo4 ICorProfilerInfo4;
 
-#endif  /* __ICorProfilerInfo4_FWD_DEFINED__ */
+#endif         /* __ICorProfilerInfo4_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo5_FWD_DEFINED__
 #define __ICorProfilerInfo5_FWD_DEFINED__
 typedef interface ICorProfilerInfo5 ICorProfilerInfo5;
 
-#endif  /* __ICorProfilerInfo5_FWD_DEFINED__ */
+#endif         /* __ICorProfilerInfo5_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo6_FWD_DEFINED__
 #define __ICorProfilerInfo6_FWD_DEFINED__
 typedef interface ICorProfilerInfo6 ICorProfilerInfo6;
 
-#endif  /* __ICorProfilerInfo6_FWD_DEFINED__ */
+#endif         /* __ICorProfilerInfo6_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo7_FWD_DEFINED__
 #define __ICorProfilerInfo7_FWD_DEFINED__
 typedef interface ICorProfilerInfo7 ICorProfilerInfo7;
 
-#endif  /* __ICorProfilerInfo7_FWD_DEFINED__ */
+#endif         /* __ICorProfilerInfo7_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo8_FWD_DEFINED__
 #define __ICorProfilerInfo8_FWD_DEFINED__
 typedef interface ICorProfilerInfo8 ICorProfilerInfo8;
 
-#endif  /* __ICorProfilerInfo8_FWD_DEFINED__ */
+#endif         /* __ICorProfilerInfo8_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo9_FWD_DEFINED__
@@ -206,32 +206,32 @@ typedef interface ICorProfilerInfo9 ICorProfilerInfo9;
 #endif         /* __ICorProfilerInfo9_FWD_DEFINED__ */
 
 
+#ifndef __ICorProfilerInfo10_FWD_DEFINED__
+#define __ICorProfilerInfo10_FWD_DEFINED__
+typedef interface ICorProfilerInfo10 ICorProfilerInfo10;
+
+#endif         /* __ICorProfilerInfo10_FWD_DEFINED__ */
+
+
 #ifndef __ICorProfilerMethodEnum_FWD_DEFINED__
 #define __ICorProfilerMethodEnum_FWD_DEFINED__
 typedef interface ICorProfilerMethodEnum ICorProfilerMethodEnum;
 
-#endif  /* __ICorProfilerMethodEnum_FWD_DEFINED__ */
+#endif         /* __ICorProfilerMethodEnum_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerThreadEnum_FWD_DEFINED__
 #define __ICorProfilerThreadEnum_FWD_DEFINED__
 typedef interface ICorProfilerThreadEnum ICorProfilerThreadEnum;
 
-#endif  /* __ICorProfilerThreadEnum_FWD_DEFINED__ */
+#endif         /* __ICorProfilerThreadEnum_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerAssemblyReferenceProvider_FWD_DEFINED__
 #define __ICorProfilerAssemblyReferenceProvider_FWD_DEFINED__
 typedef interface ICorProfilerAssemblyReferenceProvider ICorProfilerAssemblyReferenceProvider;
 
-#endif  /* __ICorProfilerAssemblyReferenceProvider_FWD_DEFINED__ */
-
-
-#ifndef __ICLRProfiling_FWD_DEFINED__
-#define __ICLRProfiling_FWD_DEFINED__
-typedef interface ICLRProfiling ICLRProfiling;
-
-#endif  /* __ICLRProfiling_FWD_DEFINED__ */
+#endif         /* __ICorProfilerAssemblyReferenceProvider_FWD_DEFINED__ */
 
 
 #ifndef __ICLRProfiling_FWD_DEFINED__
@@ -273,7 +273,7 @@ typedef /* [public][public][public][public] */ struct __MIDL___MIDL_itf_corprof_
     DWORD dwOSPlatformId;
     DWORD dwOSMajorVersion;
     DWORD dwOSMinorVersion;
-    }   OSINFO;
+    }  OSINFO;
 
 typedef /* [public][public][public] */ struct __MIDL___MIDL_itf_corprof_0000_0000_0002
     {
@@ -287,7 +287,7 @@ typedef /* [public][public][public] */ struct __MIDL___MIDL_itf_corprof_0000_000
     ULONG ulProcessor;
     OSINFO *rOS;
     ULONG ulOS;
-    }   ASSEMBLYMETADATA;
+    }  ASSEMBLYMETADATA;
 
 #endif
 typedef const BYTE *LPCBYTE;
@@ -307,7 +307,7 @@ typedef struct _COR_IL_MAP
     ULONG32 oldOffset;
     ULONG32 newOffset;
     BOOL fAccurate;
-    }   COR_IL_MAP;
+    }  COR_IL_MAP;
 
 #endif //_COR_IL_MAP
 #ifndef _COR_DEBUG_IL_TO_NATIVE_MAP_
@@ -315,17 +315,17 @@ typedef struct _COR_IL_MAP
 typedef 
 enum CorDebugIlToNativeMappingTypes
     {
-        NO_MAPPING  = -1,
-        PROLOG  = -2,
-        EPILOG  = -3
-    }   CorDebugIlToNativeMappingTypes;
+        NO_MAPPING     = -1,
+        PROLOG = -2,
+        EPILOG = -3
+    }  CorDebugIlToNativeMappingTypes;
 
 typedef struct COR_DEBUG_IL_TO_NATIVE_MAP
     {
     ULONG32 ilOffset;
     ULONG32 nativeStartOffset;
     ULONG32 nativeEndOffset;
-    }   COR_DEBUG_IL_TO_NATIVE_MAP;
+    }  COR_DEBUG_IL_TO_NATIVE_MAP;
 
 #endif // _COR_DEBUG_IL_TO_NATIVE_MAP_
 #ifndef _COR_FIELD_OFFSET_
@@ -334,7 +334,7 @@ typedef struct _COR_FIELD_OFFSET
     {
     mdFieldDef ridOfField;
     ULONG ulOffset;
-    }   COR_FIELD_OFFSET;
+    }  COR_FIELD_OFFSET;
 
 #endif // _COR_FIELD_OFFSET_
 typedef UINT_PTR ProcessID;
@@ -365,7 +365,7 @@ typedef /* [public][public][public][public][public][public][public][public][publ
     {
     FunctionID functionID;
     UINT_PTR clientID;
-    }   FunctionIDOrClientID;
+    }  FunctionIDOrClientID;
 
 typedef UINT_PTR __stdcall __stdcall FunctionIDMapper( 
     FunctionID funcId,
@@ -379,10 +379,10 @@ typedef UINT_PTR __stdcall __stdcall FunctionIDMapper2(
 typedef 
 enum _COR_PRF_SNAPSHOT_INFO
     {
-        COR_PRF_SNAPSHOT_DEFAULT    = 0,
-        COR_PRF_SNAPSHOT_REGISTER_CONTEXT   = 0x1,
-        COR_PRF_SNAPSHOT_X86_OPTIMIZED  = 0x2
-    }   COR_PRF_SNAPSHOT_INFO;
+        COR_PRF_SNAPSHOT_DEFAULT       = 0,
+        COR_PRF_SNAPSHOT_REGISTER_CONTEXT      = 0x1,
+        COR_PRF_SNAPSHOT_X86_OPTIMIZED = 0x2
+    }  COR_PRF_SNAPSHOT_INFO;
 
 typedef UINT_PTR COR_PRF_FRAME_INFO;
 
@@ -390,36 +390,36 @@ typedef struct _COR_PRF_FUNCTION_ARGUMENT_RANGE
     {
     UINT_PTR startAddress;
     ULONG length;
-    }   COR_PRF_FUNCTION_ARGUMENT_RANGE;
+    }  COR_PRF_FUNCTION_ARGUMENT_RANGE;
 
 typedef struct _COR_PRF_FUNCTION_ARGUMENT_INFO
     {
     ULONG numRanges;
     ULONG totalArgumentSize;
     COR_PRF_FUNCTION_ARGUMENT_RANGE ranges[ 1 ];
-    }   COR_PRF_FUNCTION_ARGUMENT_INFO;
+    }  COR_PRF_FUNCTION_ARGUMENT_INFO;
 
 typedef struct _COR_PRF_CODE_INFO
     {
     UINT_PTR startAddress;
     SIZE_T size;
-    }   COR_PRF_CODE_INFO;
+    }  COR_PRF_CODE_INFO;
 
 typedef /* [public][public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0000_0004
     {
-        COR_PRF_FIELD_NOT_A_STATIC  = 0,
-        COR_PRF_FIELD_APP_DOMAIN_STATIC = 0x1,
-        COR_PRF_FIELD_THREAD_STATIC = 0x2,
-        COR_PRF_FIELD_CONTEXT_STATIC    = 0x4,
-        COR_PRF_FIELD_RVA_STATIC    = 0x8
-    }   COR_PRF_STATIC_TYPE;
+        COR_PRF_FIELD_NOT_A_STATIC     = 0,
+        COR_PRF_FIELD_APP_DOMAIN_STATIC        = 0x1,
+        COR_PRF_FIELD_THREAD_STATIC    = 0x2,
+        COR_PRF_FIELD_CONTEXT_STATIC   = 0x4,
+        COR_PRF_FIELD_RVA_STATIC       = 0x8
+    }  COR_PRF_STATIC_TYPE;
 
 typedef struct _COR_PRF_FUNCTION
     {
     FunctionID functionId;
     ReJITID reJitId;
-    }   COR_PRF_FUNCTION;
+    }  COR_PRF_FUNCTION;
 
 typedef struct _COR_PRF_ASSEMBLY_REFERENCE_INFO
     {
@@ -430,58 +430,58 @@ typedef struct _COR_PRF_ASSEMBLY_REFERENCE_INFO
     void *pbHashValue;
     ULONG cbHashValue;
     DWORD dwAssemblyRefFlags;
-    }   COR_PRF_ASSEMBLY_REFERENCE_INFO;
+    }  COR_PRF_ASSEMBLY_REFERENCE_INFO;
 
 typedef struct _COR_PRF_METHOD
     {
     ModuleID moduleId;
     mdMethodDef methodId;
-    }   COR_PRF_METHOD;
+    }  COR_PRF_METHOD;
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionEnter(
+typedef void FunctionEnter( 
     FunctionID funcID);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionLeave(
+typedef void FunctionLeave( 
     FunctionID funcID);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionTailcall(
+typedef void FunctionTailcall( 
     FunctionID funcID);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionEnter2(
+typedef void FunctionEnter2( 
     FunctionID funcId,
     UINT_PTR clientData,
     COR_PRF_FRAME_INFO func,
     COR_PRF_FUNCTION_ARGUMENT_INFO *argumentInfo);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionLeave2(
+typedef void FunctionLeave2( 
     FunctionID funcId,
     UINT_PTR clientData,
     COR_PRF_FRAME_INFO func,
     COR_PRF_FUNCTION_ARGUMENT_RANGE *retvalRange);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionTailcall2(
+typedef void FunctionTailcall2( 
     FunctionID funcId,
     UINT_PTR clientData,
     COR_PRF_FRAME_INFO func);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionEnter3(
+typedef void FunctionEnter3( 
     FunctionIDOrClientID functionIDOrClientID);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionLeave3(
+typedef void FunctionLeave3( 
     FunctionIDOrClientID functionIDOrClientID);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionTailcall3(
+typedef void FunctionTailcall3( 
     FunctionIDOrClientID functionIDOrClientID);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionEnter3WithInfo(
+typedef void FunctionEnter3WithInfo( 
     FunctionIDOrClientID functionIDOrClientID,
     COR_PRF_ELT_INFO eltInfo);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionLeave3WithInfo(
+typedef void FunctionLeave3WithInfo( 
     FunctionIDOrClientID functionIDOrClientID,
     COR_PRF_ELT_INFO eltInfo);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionTailcall3WithInfo(
+typedef void FunctionTailcall3WithInfo( 
     FunctionIDOrClientID functionIDOrClientID,
     COR_PRF_ELT_INFO eltInfo);
 
@@ -496,45 +496,45 @@ typedef HRESULT __stdcall __stdcall StackSnapshotCallback(
 typedef /* [public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0000_0005
     {
-        COR_PRF_MONITOR_NONE    = 0,
-        COR_PRF_MONITOR_FUNCTION_UNLOADS    = 0x1,
-        COR_PRF_MONITOR_CLASS_LOADS = 0x2,
-        COR_PRF_MONITOR_MODULE_LOADS    = 0x4,
-        COR_PRF_MONITOR_ASSEMBLY_LOADS  = 0x8,
-        COR_PRF_MONITOR_APPDOMAIN_LOADS = 0x10,
-        COR_PRF_MONITOR_JIT_COMPILATION = 0x20,
-        COR_PRF_MONITOR_EXCEPTIONS  = 0x40,
-        COR_PRF_MONITOR_GC  = 0x80,
-        COR_PRF_MONITOR_OBJECT_ALLOCATED    = 0x100,
-        COR_PRF_MONITOR_THREADS = 0x200,
-        COR_PRF_MONITOR_REMOTING    = 0x400,
-        COR_PRF_MONITOR_CODE_TRANSITIONS    = 0x800,
-        COR_PRF_MONITOR_ENTERLEAVE  = 0x1000,
-        COR_PRF_MONITOR_CCW = 0x2000,
-        COR_PRF_MONITOR_REMOTING_COOKIE = ( 0x4000 | COR_PRF_MONITOR_REMOTING ) ,
-        COR_PRF_MONITOR_REMOTING_ASYNC  = ( 0x8000 | COR_PRF_MONITOR_REMOTING ) ,
-        COR_PRF_MONITOR_SUSPENDS    = 0x10000,
-        COR_PRF_MONITOR_CACHE_SEARCHES  = 0x20000,
-        COR_PRF_ENABLE_REJIT    = 0x40000,
-        COR_PRF_ENABLE_INPROC_DEBUGGING = 0x80000,
-        COR_PRF_ENABLE_JIT_MAPS = 0x100000,
-        COR_PRF_DISABLE_INLINING    = 0x200000,
-        COR_PRF_DISABLE_OPTIMIZATIONS   = 0x400000,
-        COR_PRF_ENABLE_OBJECT_ALLOCATED = 0x800000,
-        COR_PRF_MONITOR_CLR_EXCEPTIONS  = 0x1000000,
-        COR_PRF_MONITOR_ALL = 0x107ffff,
-        COR_PRF_ENABLE_FUNCTION_ARGS    = 0x2000000,
-        COR_PRF_ENABLE_FUNCTION_RETVAL  = 0x4000000,
-        COR_PRF_ENABLE_FRAME_INFO   = 0x8000000,
-        COR_PRF_ENABLE_STACK_SNAPSHOT   = 0x10000000,
-        COR_PRF_USE_PROFILE_IMAGES  = 0x20000000,
-        COR_PRF_DISABLE_TRANSPARENCY_CHECKS_UNDER_FULL_TRUST    = 0x40000000,
-        COR_PRF_DISABLE_ALL_NGEN_IMAGES = 0x80000000,
-        COR_PRF_ALL = 0x8fffffff,
-        COR_PRF_REQUIRE_PROFILE_IMAGE   = ( ( COR_PRF_USE_PROFILE_IMAGES | COR_PRF_MONITOR_CODE_TRANSITIONS )  | COR_PRF_MONITOR_ENTERLEAVE ) ,
-        COR_PRF_ALLOWABLE_AFTER_ATTACH  = ( ( ( ( ( ( ( ( ( ( COR_PRF_MONITOR_THREADS | COR_PRF_MONITOR_MODULE_LOADS )  | COR_PRF_MONITOR_ASSEMBLY_LOADS )  | COR_PRF_MONITOR_APPDOMAIN_LOADS )  | COR_PRF_ENABLE_STACK_SNAPSHOT )  | COR_PRF_MONITOR_GC )  | COR_PRF_MONITOR_SUSPENDS )  | COR_PRF_MONITOR_CLASS_LOADS )  | COR_PRF_MONITOR_EXCEPTIONS )  | COR_PRF_MONITOR_JIT_COMPILATION )  | COR_PRF_ENABLE_REJIT ) ,
-        COR_PRF_MONITOR_IMMUTABLE   = ( ( ( ( ( ( ( ( ( ( ( ( ( ( COR_PRF_MONITOR_CODE_TRANSITIONS | COR_PRF_MONITOR_REMOTING )  | COR_PRF_MONITOR_REMOTING_COOKIE )  | COR_PRF_MONITOR_REMOTING_ASYNC )  | COR_PRF_ENABLE_INPROC_DEBUGGING )  | COR_PRF_ENABLE_JIT_MAPS )  | COR_PRF_DISABLE_OPTIMIZATIONS )  | COR_PRF_DISABLE_INLINING )  | COR_PRF_ENABLE_OBJECT_ALLOCATED )  | COR_PRF_ENABLE_FUNCTION_ARGS )  | COR_PRF_ENABLE_FUNCTION_RETVAL )  | COR_PRF_ENABLE_FRAME_INFO )  | COR_PRF_USE_PROFILE_IMAGES )  | COR_PRF_DISABLE_TRANSPARENCY_CHECKS_UNDER_FULL_TRUST )  | COR_PRF_DISABLE_ALL_NGEN_IMAGES ) 
-    }   COR_PRF_MONITOR;
+        COR_PRF_MONITOR_NONE   = 0,
+        COR_PRF_MONITOR_FUNCTION_UNLOADS       = 0x1,
+        COR_PRF_MONITOR_CLASS_LOADS    = 0x2,
+        COR_PRF_MONITOR_MODULE_LOADS   = 0x4,
+        COR_PRF_MONITOR_ASSEMBLY_LOADS = 0x8,
+        COR_PRF_MONITOR_APPDOMAIN_LOADS        = 0x10,
+        COR_PRF_MONITOR_JIT_COMPILATION        = 0x20,
+        COR_PRF_MONITOR_EXCEPTIONS     = 0x40,
+        COR_PRF_MONITOR_GC     = 0x80,
+        COR_PRF_MONITOR_OBJECT_ALLOCATED       = 0x100,
+        COR_PRF_MONITOR_THREADS        = 0x200,
+        COR_PRF_MONITOR_REMOTING       = 0x400,
+        COR_PRF_MONITOR_CODE_TRANSITIONS       = 0x800,
+        COR_PRF_MONITOR_ENTERLEAVE     = 0x1000,
+        COR_PRF_MONITOR_CCW    = 0x2000,
+        COR_PRF_MONITOR_REMOTING_COOKIE        = ( 0x4000 | COR_PRF_MONITOR_REMOTING ) ,
+        COR_PRF_MONITOR_REMOTING_ASYNC = ( 0x8000 | COR_PRF_MONITOR_REMOTING ) ,
+        COR_PRF_MONITOR_SUSPENDS       = 0x10000,
+        COR_PRF_MONITOR_CACHE_SEARCHES = 0x20000,
+        COR_PRF_ENABLE_REJIT   = 0x40000,
+        COR_PRF_ENABLE_INPROC_DEBUGGING        = 0x80000,
+        COR_PRF_ENABLE_JIT_MAPS        = 0x100000,
+        COR_PRF_DISABLE_INLINING       = 0x200000,
+        COR_PRF_DISABLE_OPTIMIZATIONS  = 0x400000,
+        COR_PRF_ENABLE_OBJECT_ALLOCATED        = 0x800000,
+        COR_PRF_MONITOR_CLR_EXCEPTIONS = 0x1000000,
+        COR_PRF_MONITOR_ALL    = 0x107ffff,
+        COR_PRF_ENABLE_FUNCTION_ARGS   = 0x2000000,
+        COR_PRF_ENABLE_FUNCTION_RETVAL = 0x4000000,
+        COR_PRF_ENABLE_FRAME_INFO      = 0x8000000,
+        COR_PRF_ENABLE_STACK_SNAPSHOT  = 0x10000000,
+        COR_PRF_USE_PROFILE_IMAGES     = 0x20000000,
+        COR_PRF_DISABLE_TRANSPARENCY_CHECKS_UNDER_FULL_TRUST   = 0x40000000,
+        COR_PRF_DISABLE_ALL_NGEN_IMAGES        = 0x80000000,
+        COR_PRF_ALL    = 0x8fffffff,
+        COR_PRF_REQUIRE_PROFILE_IMAGE  = ( ( COR_PRF_USE_PROFILE_IMAGES | COR_PRF_MONITOR_CODE_TRANSITIONS )  | COR_PRF_MONITOR_ENTERLEAVE ) ,
+        COR_PRF_ALLOWABLE_AFTER_ATTACH = ( ( ( ( ( ( ( ( ( ( COR_PRF_MONITOR_THREADS | COR_PRF_MONITOR_MODULE_LOADS )  | COR_PRF_MONITOR_ASSEMBLY_LOADS )  | COR_PRF_MONITOR_APPDOMAIN_LOADS )  | COR_PRF_ENABLE_STACK_SNAPSHOT )  | COR_PRF_MONITOR_GC )  | COR_PRF_MONITOR_SUSPENDS )  | COR_PRF_MONITOR_CLASS_LOADS )  | COR_PRF_MONITOR_EXCEPTIONS )  | COR_PRF_MONITOR_JIT_COMPILATION )  | COR_PRF_ENABLE_REJIT ) ,
+        COR_PRF_MONITOR_IMMUTABLE      = ( ( ( ( ( ( ( ( ( ( ( ( ( ( COR_PRF_MONITOR_CODE_TRANSITIONS | COR_PRF_MONITOR_REMOTING )  | COR_PRF_MONITOR_REMOTING_COOKIE )  | COR_PRF_MONITOR_REMOTING_ASYNC )  | COR_PRF_ENABLE_INPROC_DEBUGGING )  | COR_PRF_ENABLE_JIT_MAPS )  | COR_PRF_DISABLE_OPTIMIZATIONS )  | COR_PRF_DISABLE_INLINING )  | COR_PRF_ENABLE_OBJECT_ALLOCATED )  | COR_PRF_ENABLE_FUNCTION_ARGS )  | COR_PRF_ENABLE_FUNCTION_RETVAL )  | COR_PRF_ENABLE_FRAME_INFO )  | COR_PRF_USE_PROFILE_IMAGES )  | COR_PRF_DISABLE_TRANSPARENCY_CHECKS_UNDER_FULL_TRUST )  | COR_PRF_DISABLE_ALL_NGEN_IMAGES ) 
+    }  COR_PRF_MONITOR;
 
 typedef /* [public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0000_0006
@@ -544,53 +544,54 @@ enum __MIDL___MIDL_itf_corprof_0000_0000_0006
         COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED = 0x2,
         COR_PRF_HIGH_MONITOR_DYNAMIC_FUNCTION_UNLOADS  = 0x4,
         COR_PRF_HIGH_DISABLE_TIERED_COMPILATION        = 0x8,
-        COR_PRF_HIGH_BASIC_GC = 0x10,
+        COR_PRF_HIGH_BASIC_GC  = 0x10,
+        COR_PRF_HIGH_MONITOR_GC_MOVED_OBJECTS  = 0x20,
         COR_PRF_HIGH_REQUIRE_PROFILE_IMAGE     = 0,
-        COR_PRF_HIGH_ALLOWABLE_AFTER_ATTACH    = ( COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED | COR_PRF_HIGH_MONITOR_DYNAMIC_FUNCTION_UNLOADS | COR_PRF_HIGH_BASIC_GC) ,
+        COR_PRF_HIGH_ALLOWABLE_AFTER_ATTACH    = ( ( ( COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED | COR_PRF_HIGH_MONITOR_DYNAMIC_FUNCTION_UNLOADS )  | COR_PRF_HIGH_BASIC_GC )  | COR_PRF_HIGH_MONITOR_GC_MOVED_OBJECTS ) ,
         COR_PRF_HIGH_MONITOR_IMMUTABLE = COR_PRF_HIGH_DISABLE_TIERED_COMPILATION
     }  COR_PRF_HIGH_MONITOR;
 
 typedef /* [public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0000_0007
     {
-        PROFILER_PARENT_UNKNOWN = 0xfffffffd,
-        PROFILER_GLOBAL_CLASS   = 0xfffffffe,
-        PROFILER_GLOBAL_MODULE  = 0xffffffff
-    }   COR_PRF_MISC;
+        PROFILER_PARENT_UNKNOWN        = 0xfffffffd,
+        PROFILER_GLOBAL_CLASS  = 0xfffffffe,
+        PROFILER_GLOBAL_MODULE = 0xffffffff
+    }  COR_PRF_MISC;
 
 typedef /* [public][public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0000_0008
     {
-        COR_PRF_CACHED_FUNCTION_FOUND   = 0,
-        COR_PRF_CACHED_FUNCTION_NOT_FOUND   = ( COR_PRF_CACHED_FUNCTION_FOUND + 1 ) 
-    }   COR_PRF_JIT_CACHE;
+        COR_PRF_CACHED_FUNCTION_FOUND  = 0,
+        COR_PRF_CACHED_FUNCTION_NOT_FOUND      = ( COR_PRF_CACHED_FUNCTION_FOUND + 1 ) 
+    }  COR_PRF_JIT_CACHE;
 
 typedef /* [public][public][public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0000_0009
     {
-        COR_PRF_TRANSITION_CALL = 0,
-        COR_PRF_TRANSITION_RETURN   = ( COR_PRF_TRANSITION_CALL + 1 ) 
-    }   COR_PRF_TRANSITION_REASON;
+        COR_PRF_TRANSITION_CALL        = 0,
+        COR_PRF_TRANSITION_RETURN      = ( COR_PRF_TRANSITION_CALL + 1 ) 
+    }  COR_PRF_TRANSITION_REASON;
 
 typedef /* [public][public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0000_0010
     {
-        COR_PRF_SUSPEND_OTHER   = 0,
-        COR_PRF_SUSPEND_FOR_GC  = 1,
-        COR_PRF_SUSPEND_FOR_APPDOMAIN_SHUTDOWN  = 2,
-        COR_PRF_SUSPEND_FOR_CODE_PITCHING   = 3,
-        COR_PRF_SUSPEND_FOR_SHUTDOWN    = 4,
-        COR_PRF_SUSPEND_FOR_INPROC_DEBUGGER = 6,
-        COR_PRF_SUSPEND_FOR_GC_PREP = 7,
-        COR_PRF_SUSPEND_FOR_REJIT   = 8
-    }   COR_PRF_SUSPEND_REASON;
+        COR_PRF_SUSPEND_OTHER  = 0,
+        COR_PRF_SUSPEND_FOR_GC = 1,
+        COR_PRF_SUSPEND_FOR_APPDOMAIN_SHUTDOWN = 2,
+        COR_PRF_SUSPEND_FOR_CODE_PITCHING      = 3,
+        COR_PRF_SUSPEND_FOR_SHUTDOWN   = 4,
+        COR_PRF_SUSPEND_FOR_INPROC_DEBUGGER    = 6,
+        COR_PRF_SUSPEND_FOR_GC_PREP    = 7,
+        COR_PRF_SUSPEND_FOR_REJIT      = 8
+    }  COR_PRF_SUSPEND_REASON;
 
 typedef /* [public][public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0000_0011
     {
-        COR_PRF_DESKTOP_CLR = 0x1,
-        COR_PRF_CORE_CLR    = 0x2
-    }   COR_PRF_RUNTIME_TYPE;
+        COR_PRF_DESKTOP_CLR    = 0x1,
+        COR_PRF_CORE_CLR       = 0x2
+    }  COR_PRF_RUNTIME_TYPE;
 
 
 
@@ -861,7 +862,7 @@ EXTERN_C const IID IID_ICorProfilerCallback;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerCallbackVtbl
     {
@@ -1191,232 +1192,232 @@ EXTERN_C const IID IID_ICorProfilerCallback;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerCallback_QueryInterface(This,riid,ppvObject)    \
+#define ICorProfilerCallback_QueryInterface(This,riid,ppvObject)       \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerCallback_AddRef(This)   \
+#define ICorProfilerCallback_AddRef(This)      \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerCallback_Release(This)  \
+#define ICorProfilerCallback_Release(This)     \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerCallback_Initialize(This,pICorProfilerInfoUnk)  \
+#define ICorProfilerCallback_Initialize(This,pICorProfilerInfoUnk)     \
     ( (This)->lpVtbl -> Initialize(This,pICorProfilerInfoUnk) ) 
 
-#define ICorProfilerCallback_Shutdown(This) \
+#define ICorProfilerCallback_Shutdown(This)    \
     ( (This)->lpVtbl -> Shutdown(This) ) 
 
-#define ICorProfilerCallback_AppDomainCreationStarted(This,appDomainId) \
+#define ICorProfilerCallback_AppDomainCreationStarted(This,appDomainId)        \
     ( (This)->lpVtbl -> AppDomainCreationStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback_AppDomainCreationFinished(This,appDomainId,hrStatus)   \
+#define ICorProfilerCallback_AppDomainCreationFinished(This,appDomainId,hrStatus)      \
     ( (This)->lpVtbl -> AppDomainCreationFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback_AppDomainShutdownStarted(This,appDomainId) \
+#define ICorProfilerCallback_AppDomainShutdownStarted(This,appDomainId)        \
     ( (This)->lpVtbl -> AppDomainShutdownStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback_AppDomainShutdownFinished(This,appDomainId,hrStatus)   \
+#define ICorProfilerCallback_AppDomainShutdownFinished(This,appDomainId,hrStatus)      \
     ( (This)->lpVtbl -> AppDomainShutdownFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback_AssemblyLoadStarted(This,assemblyId)   \
+#define ICorProfilerCallback_AssemblyLoadStarted(This,assemblyId)      \
     ( (This)->lpVtbl -> AssemblyLoadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback_AssemblyLoadFinished(This,assemblyId,hrStatus) \
+#define ICorProfilerCallback_AssemblyLoadFinished(This,assemblyId,hrStatus)    \
     ( (This)->lpVtbl -> AssemblyLoadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback_AssemblyUnloadStarted(This,assemblyId) \
+#define ICorProfilerCallback_AssemblyUnloadStarted(This,assemblyId)    \
     ( (This)->lpVtbl -> AssemblyUnloadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback_AssemblyUnloadFinished(This,assemblyId,hrStatus)   \
+#define ICorProfilerCallback_AssemblyUnloadFinished(This,assemblyId,hrStatus)  \
     ( (This)->lpVtbl -> AssemblyUnloadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback_ModuleLoadStarted(This,moduleId)   \
+#define ICorProfilerCallback_ModuleLoadStarted(This,moduleId)  \
     ( (This)->lpVtbl -> ModuleLoadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback_ModuleLoadFinished(This,moduleId,hrStatus) \
+#define ICorProfilerCallback_ModuleLoadFinished(This,moduleId,hrStatus)        \
     ( (This)->lpVtbl -> ModuleLoadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback_ModuleUnloadStarted(This,moduleId) \
+#define ICorProfilerCallback_ModuleUnloadStarted(This,moduleId)        \
     ( (This)->lpVtbl -> ModuleUnloadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback_ModuleUnloadFinished(This,moduleId,hrStatus)   \
+#define ICorProfilerCallback_ModuleUnloadFinished(This,moduleId,hrStatus)      \
     ( (This)->lpVtbl -> ModuleUnloadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback_ModuleAttachedToAssembly(This,moduleId,AssemblyId) \
+#define ICorProfilerCallback_ModuleAttachedToAssembly(This,moduleId,AssemblyId)        \
     ( (This)->lpVtbl -> ModuleAttachedToAssembly(This,moduleId,AssemblyId) ) 
 
-#define ICorProfilerCallback_ClassLoadStarted(This,classId) \
+#define ICorProfilerCallback_ClassLoadStarted(This,classId)    \
     ( (This)->lpVtbl -> ClassLoadStarted(This,classId) ) 
 
-#define ICorProfilerCallback_ClassLoadFinished(This,classId,hrStatus)   \
+#define ICorProfilerCallback_ClassLoadFinished(This,classId,hrStatus)  \
     ( (This)->lpVtbl -> ClassLoadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback_ClassUnloadStarted(This,classId)   \
+#define ICorProfilerCallback_ClassUnloadStarted(This,classId)  \
     ( (This)->lpVtbl -> ClassUnloadStarted(This,classId) ) 
 
-#define ICorProfilerCallback_ClassUnloadFinished(This,classId,hrStatus) \
+#define ICorProfilerCallback_ClassUnloadFinished(This,classId,hrStatus)        \
     ( (This)->lpVtbl -> ClassUnloadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback_FunctionUnloadStarted(This,functionId) \
+#define ICorProfilerCallback_FunctionUnloadStarted(This,functionId)    \
     ( (This)->lpVtbl -> FunctionUnloadStarted(This,functionId) ) 
 
-#define ICorProfilerCallback_JITCompilationStarted(This,functionId,fIsSafeToBlock)  \
+#define ICorProfilerCallback_JITCompilationStarted(This,functionId,fIsSafeToBlock)     \
     ( (This)->lpVtbl -> JITCompilationStarted(This,functionId,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)    \
+#define ICorProfilerCallback_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)   \
     ( (This)->lpVtbl -> JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)    \
+#define ICorProfilerCallback_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)       \
     ( (This)->lpVtbl -> JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction) ) 
 
-#define ICorProfilerCallback_JITCachedFunctionSearchFinished(This,functionId,result)    \
+#define ICorProfilerCallback_JITCachedFunctionSearchFinished(This,functionId,result)   \
     ( (This)->lpVtbl -> JITCachedFunctionSearchFinished(This,functionId,result) ) 
 
-#define ICorProfilerCallback_JITFunctionPitched(This,functionId)    \
+#define ICorProfilerCallback_JITFunctionPitched(This,functionId)       \
     ( (This)->lpVtbl -> JITFunctionPitched(This,functionId) ) 
 
-#define ICorProfilerCallback_JITInlining(This,callerId,calleeId,pfShouldInline) \
+#define ICorProfilerCallback_JITInlining(This,callerId,calleeId,pfShouldInline)        \
     ( (This)->lpVtbl -> JITInlining(This,callerId,calleeId,pfShouldInline) ) 
 
-#define ICorProfilerCallback_ThreadCreated(This,threadId)   \
+#define ICorProfilerCallback_ThreadCreated(This,threadId)      \
     ( (This)->lpVtbl -> ThreadCreated(This,threadId) ) 
 
-#define ICorProfilerCallback_ThreadDestroyed(This,threadId) \
+#define ICorProfilerCallback_ThreadDestroyed(This,threadId)    \
     ( (This)->lpVtbl -> ThreadDestroyed(This,threadId) ) 
 
-#define ICorProfilerCallback_ThreadAssignedToOSThread(This,managedThreadId,osThreadId)  \
+#define ICorProfilerCallback_ThreadAssignedToOSThread(This,managedThreadId,osThreadId) \
     ( (This)->lpVtbl -> ThreadAssignedToOSThread(This,managedThreadId,osThreadId) ) 
 
-#define ICorProfilerCallback_RemotingClientInvocationStarted(This)  \
+#define ICorProfilerCallback_RemotingClientInvocationStarted(This)     \
     ( (This)->lpVtbl -> RemotingClientInvocationStarted(This) ) 
 
-#define ICorProfilerCallback_RemotingClientSendingMessage(This,pCookie,fIsAsync)    \
+#define ICorProfilerCallback_RemotingClientSendingMessage(This,pCookie,fIsAsync)       \
     ( (This)->lpVtbl -> RemotingClientSendingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback_RemotingClientReceivingReply(This,pCookie,fIsAsync)    \
+#define ICorProfilerCallback_RemotingClientReceivingReply(This,pCookie,fIsAsync)       \
     ( (This)->lpVtbl -> RemotingClientReceivingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback_RemotingClientInvocationFinished(This) \
+#define ICorProfilerCallback_RemotingClientInvocationFinished(This)    \
     ( (This)->lpVtbl -> RemotingClientInvocationFinished(This) ) 
 
-#define ICorProfilerCallback_RemotingServerReceivingMessage(This,pCookie,fIsAsync)  \
+#define ICorProfilerCallback_RemotingServerReceivingMessage(This,pCookie,fIsAsync)     \
     ( (This)->lpVtbl -> RemotingServerReceivingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback_RemotingServerInvocationStarted(This)  \
+#define ICorProfilerCallback_RemotingServerInvocationStarted(This)     \
     ( (This)->lpVtbl -> RemotingServerInvocationStarted(This) ) 
 
-#define ICorProfilerCallback_RemotingServerInvocationReturned(This) \
+#define ICorProfilerCallback_RemotingServerInvocationReturned(This)    \
     ( (This)->lpVtbl -> RemotingServerInvocationReturned(This) ) 
 
-#define ICorProfilerCallback_RemotingServerSendingReply(This,pCookie,fIsAsync)  \
+#define ICorProfilerCallback_RemotingServerSendingReply(This,pCookie,fIsAsync) \
     ( (This)->lpVtbl -> RemotingServerSendingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback_UnmanagedToManagedTransition(This,functionId,reason)   \
+#define ICorProfilerCallback_UnmanagedToManagedTransition(This,functionId,reason)      \
     ( (This)->lpVtbl -> UnmanagedToManagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback_ManagedToUnmanagedTransition(This,functionId,reason)   \
+#define ICorProfilerCallback_ManagedToUnmanagedTransition(This,functionId,reason)      \
     ( (This)->lpVtbl -> ManagedToUnmanagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback_RuntimeSuspendStarted(This,suspendReason)  \
+#define ICorProfilerCallback_RuntimeSuspendStarted(This,suspendReason) \
     ( (This)->lpVtbl -> RuntimeSuspendStarted(This,suspendReason) ) 
 
-#define ICorProfilerCallback_RuntimeSuspendFinished(This)   \
+#define ICorProfilerCallback_RuntimeSuspendFinished(This)      \
     ( (This)->lpVtbl -> RuntimeSuspendFinished(This) ) 
 
-#define ICorProfilerCallback_RuntimeSuspendAborted(This)    \
+#define ICorProfilerCallback_RuntimeSuspendAborted(This)       \
     ( (This)->lpVtbl -> RuntimeSuspendAborted(This) ) 
 
-#define ICorProfilerCallback_RuntimeResumeStarted(This) \
+#define ICorProfilerCallback_RuntimeResumeStarted(This)        \
     ( (This)->lpVtbl -> RuntimeResumeStarted(This) ) 
 
-#define ICorProfilerCallback_RuntimeResumeFinished(This)    \
+#define ICorProfilerCallback_RuntimeResumeFinished(This)       \
     ( (This)->lpVtbl -> RuntimeResumeFinished(This) ) 
 
-#define ICorProfilerCallback_RuntimeThreadSuspended(This,threadId)  \
+#define ICorProfilerCallback_RuntimeThreadSuspended(This,threadId)     \
     ( (This)->lpVtbl -> RuntimeThreadSuspended(This,threadId) ) 
 
-#define ICorProfilerCallback_RuntimeThreadResumed(This,threadId)    \
+#define ICorProfilerCallback_RuntimeThreadResumed(This,threadId)       \
     ( (This)->lpVtbl -> RuntimeThreadResumed(This,threadId) ) 
 
-#define ICorProfilerCallback_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)    \
+#define ICorProfilerCallback_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)       \
     ( (This)->lpVtbl -> MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback_ObjectAllocated(This,objectId,classId) \
+#define ICorProfilerCallback_ObjectAllocated(This,objectId,classId)    \
     ( (This)->lpVtbl -> ObjectAllocated(This,objectId,classId) ) 
 
-#define ICorProfilerCallback_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)    \
+#define ICorProfilerCallback_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)       \
     ( (This)->lpVtbl -> ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects) ) 
 
-#define ICorProfilerCallback_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds)   \
+#define ICorProfilerCallback_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds)  \
     ( (This)->lpVtbl -> ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) ) 
 
-#define ICorProfilerCallback_RootReferences(This,cRootRefs,rootRefIds)  \
+#define ICorProfilerCallback_RootReferences(This,cRootRefs,rootRefIds) \
     ( (This)->lpVtbl -> RootReferences(This,cRootRefs,rootRefIds) ) 
 
-#define ICorProfilerCallback_ExceptionThrown(This,thrownObjectId)   \
+#define ICorProfilerCallback_ExceptionThrown(This,thrownObjectId)      \
     ( (This)->lpVtbl -> ExceptionThrown(This,thrownObjectId) ) 
 
-#define ICorProfilerCallback_ExceptionSearchFunctionEnter(This,functionId)  \
+#define ICorProfilerCallback_ExceptionSearchFunctionEnter(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionSearchFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback_ExceptionSearchFunctionLeave(This) \
+#define ICorProfilerCallback_ExceptionSearchFunctionLeave(This)        \
     ( (This)->lpVtbl -> ExceptionSearchFunctionLeave(This) ) 
 
-#define ICorProfilerCallback_ExceptionSearchFilterEnter(This,functionId)    \
+#define ICorProfilerCallback_ExceptionSearchFilterEnter(This,functionId)       \
     ( (This)->lpVtbl -> ExceptionSearchFilterEnter(This,functionId) ) 
 
-#define ICorProfilerCallback_ExceptionSearchFilterLeave(This)   \
+#define ICorProfilerCallback_ExceptionSearchFilterLeave(This)  \
     ( (This)->lpVtbl -> ExceptionSearchFilterLeave(This) ) 
 
-#define ICorProfilerCallback_ExceptionSearchCatcherFound(This,functionId)   \
+#define ICorProfilerCallback_ExceptionSearchCatcherFound(This,functionId)      \
     ( (This)->lpVtbl -> ExceptionSearchCatcherFound(This,functionId) ) 
 
-#define ICorProfilerCallback_ExceptionOSHandlerEnter(This,__unused) \
+#define ICorProfilerCallback_ExceptionOSHandlerEnter(This,__unused)    \
     ( (This)->lpVtbl -> ExceptionOSHandlerEnter(This,__unused) ) 
 
-#define ICorProfilerCallback_ExceptionOSHandlerLeave(This,__unused) \
+#define ICorProfilerCallback_ExceptionOSHandlerLeave(This,__unused)    \
     ( (This)->lpVtbl -> ExceptionOSHandlerLeave(This,__unused) ) 
 
-#define ICorProfilerCallback_ExceptionUnwindFunctionEnter(This,functionId)  \
+#define ICorProfilerCallback_ExceptionUnwindFunctionEnter(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback_ExceptionUnwindFunctionLeave(This) \
+#define ICorProfilerCallback_ExceptionUnwindFunctionLeave(This)        \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionLeave(This) ) 
 
-#define ICorProfilerCallback_ExceptionUnwindFinallyEnter(This,functionId)   \
+#define ICorProfilerCallback_ExceptionUnwindFinallyEnter(This,functionId)      \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyEnter(This,functionId) ) 
 
-#define ICorProfilerCallback_ExceptionUnwindFinallyLeave(This)  \
+#define ICorProfilerCallback_ExceptionUnwindFinallyLeave(This) \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyLeave(This) ) 
 
-#define ICorProfilerCallback_ExceptionCatcherEnter(This,functionId,objectId)    \
+#define ICorProfilerCallback_ExceptionCatcherEnter(This,functionId,objectId)   \
     ( (This)->lpVtbl -> ExceptionCatcherEnter(This,functionId,objectId) ) 
 
-#define ICorProfilerCallback_ExceptionCatcherLeave(This)    \
+#define ICorProfilerCallback_ExceptionCatcherLeave(This)       \
     ( (This)->lpVtbl -> ExceptionCatcherLeave(This) ) 
 
-#define ICorProfilerCallback_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots) \
+#define ICorProfilerCallback_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)        \
     ( (This)->lpVtbl -> COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots) ) 
 
-#define ICorProfilerCallback_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable)  \
+#define ICorProfilerCallback_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable)     \
     ( (This)->lpVtbl -> COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) ) 
 
-#define ICorProfilerCallback_ExceptionCLRCatcherFound(This) \
+#define ICorProfilerCallback_ExceptionCLRCatcherFound(This)    \
     ( (This)->lpVtbl -> ExceptionCLRCatcherFound(This) ) 
 
-#define ICorProfilerCallback_ExceptionCLRCatcherExecute(This)   \
+#define ICorProfilerCallback_ExceptionCLRCatcherExecute(This)  \
     ( (This)->lpVtbl -> ExceptionCLRCatcherExecute(This) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerCallback_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerCallback_INTERFACE_DEFINED__ */
 
 
 /* interface __MIDL_itf_corprof_0000_0001 */
@@ -1425,35 +1426,35 @@ EXTERN_C const IID IID_ICorProfilerCallback;
 typedef /* [public][public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0001_0001
     {
-        COR_PRF_GC_ROOT_STACK   = 1,
-        COR_PRF_GC_ROOT_FINALIZER   = 2,
-        COR_PRF_GC_ROOT_HANDLE  = 3,
-        COR_PRF_GC_ROOT_OTHER   = 0
-    }   COR_PRF_GC_ROOT_KIND;
+        COR_PRF_GC_ROOT_STACK  = 1,
+        COR_PRF_GC_ROOT_FINALIZER      = 2,
+        COR_PRF_GC_ROOT_HANDLE = 3,
+        COR_PRF_GC_ROOT_OTHER  = 0
+    }  COR_PRF_GC_ROOT_KIND;
 
 typedef /* [public][public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0001_0002
     {
-        COR_PRF_GC_ROOT_PINNING = 0x1,
-        COR_PRF_GC_ROOT_WEAKREF = 0x2,
-        COR_PRF_GC_ROOT_INTERIOR    = 0x4,
-        COR_PRF_GC_ROOT_REFCOUNTED  = 0x8
-    }   COR_PRF_GC_ROOT_FLAGS;
+        COR_PRF_GC_ROOT_PINNING        = 0x1,
+        COR_PRF_GC_ROOT_WEAKREF        = 0x2,
+        COR_PRF_GC_ROOT_INTERIOR       = 0x4,
+        COR_PRF_GC_ROOT_REFCOUNTED     = 0x8
+    }  COR_PRF_GC_ROOT_FLAGS;
 
 typedef /* [public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0001_0003
     {
-        COR_PRF_FINALIZER_CRITICAL  = 0x1
-    }   COR_PRF_FINALIZER_FLAGS;
+        COR_PRF_FINALIZER_CRITICAL     = 0x1
+    }  COR_PRF_FINALIZER_FLAGS;
 
 typedef /* [public][public][public][public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0001_0004
     {
-        COR_PRF_GC_GEN_0    = 0,
-        COR_PRF_GC_GEN_1    = 1,
-        COR_PRF_GC_GEN_2    = 2,
-        COR_PRF_GC_LARGE_OBJECT_HEAP    = 3
-    }   COR_PRF_GC_GENERATION;
+        COR_PRF_GC_GEN_0       = 0,
+        COR_PRF_GC_GEN_1       = 1,
+        COR_PRF_GC_GEN_2       = 2,
+        COR_PRF_GC_LARGE_OBJECT_HEAP   = 3
+    }  COR_PRF_GC_GENERATION;
 
 typedef struct COR_PRF_GC_GENERATION_RANGE
     {
@@ -1461,16 +1462,16 @@ typedef struct COR_PRF_GC_GENERATION_RANGE
     ObjectID rangeStart;
     UINT_PTR rangeLength;
     UINT_PTR rangeLengthReserved;
-    }   COR_PRF_GC_GENERATION_RANGE;
+    }  COR_PRF_GC_GENERATION_RANGE;
 
 typedef /* [public][public][public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0001_0005
     {
-        COR_PRF_CLAUSE_NONE = 0,
-        COR_PRF_CLAUSE_FILTER   = 1,
-        COR_PRF_CLAUSE_CATCH    = 2,
-        COR_PRF_CLAUSE_FINALLY  = 3
-    }   COR_PRF_CLAUSE_TYPE;
+        COR_PRF_CLAUSE_NONE    = 0,
+        COR_PRF_CLAUSE_FILTER  = 1,
+        COR_PRF_CLAUSE_CATCH   = 2,
+        COR_PRF_CLAUSE_FINALLY = 3
+    }  COR_PRF_CLAUSE_TYPE;
 
 typedef struct COR_PRF_EX_CLAUSE_INFO
     {
@@ -1478,26 +1479,26 @@ typedef struct COR_PRF_EX_CLAUSE_INFO
     UINT_PTR programCounter;
     UINT_PTR framePointer;
     UINT_PTR shadowStackPointer;
-    }   COR_PRF_EX_CLAUSE_INFO;
+    }  COR_PRF_EX_CLAUSE_INFO;
 
 typedef /* [public][public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0001_0006
     {
-        COR_PRF_GC_INDUCED  = 1,
-        COR_PRF_GC_OTHER    = 0
-    }   COR_PRF_GC_REASON;
+        COR_PRF_GC_INDUCED     = 1,
+        COR_PRF_GC_OTHER       = 0
+    }  COR_PRF_GC_REASON;
 
 typedef /* [public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0001_0007
     {
-        COR_PRF_MODULE_DISK = 0x1,
-        COR_PRF_MODULE_NGEN = 0x2,
-        COR_PRF_MODULE_DYNAMIC  = 0x4,
-        COR_PRF_MODULE_COLLECTIBLE  = 0x8,
-        COR_PRF_MODULE_RESOURCE = 0x10,
-        COR_PRF_MODULE_FLAT_LAYOUT  = 0x20,
-        COR_PRF_MODULE_WINDOWS_RUNTIME  = 0x40
-    }   COR_PRF_MODULE_FLAGS;
+        COR_PRF_MODULE_DISK    = 0x1,
+        COR_PRF_MODULE_NGEN    = 0x2,
+        COR_PRF_MODULE_DYNAMIC = 0x4,
+        COR_PRF_MODULE_COLLECTIBLE     = 0x8,
+        COR_PRF_MODULE_RESOURCE        = 0x10,
+        COR_PRF_MODULE_FLAT_LAYOUT     = 0x20,
+        COR_PRF_MODULE_WINDOWS_RUNTIME = 0x40
+    }  COR_PRF_MODULE_FLAGS;
 
 
 
@@ -1558,7 +1559,7 @@ EXTERN_C const IID IID_ICorProfilerCallback2;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerCallback2Vtbl
     {
@@ -1932,257 +1933,257 @@ EXTERN_C const IID IID_ICorProfilerCallback2;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerCallback2_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerCallback2_QueryInterface(This,riid,ppvObject)      \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerCallback2_AddRef(This)  \
+#define ICorProfilerCallback2_AddRef(This)     \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerCallback2_Release(This) \
+#define ICorProfilerCallback2_Release(This)    \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerCallback2_Initialize(This,pICorProfilerInfoUnk) \
+#define ICorProfilerCallback2_Initialize(This,pICorProfilerInfoUnk)    \
     ( (This)->lpVtbl -> Initialize(This,pICorProfilerInfoUnk) ) 
 
-#define ICorProfilerCallback2_Shutdown(This)    \
+#define ICorProfilerCallback2_Shutdown(This)   \
     ( (This)->lpVtbl -> Shutdown(This) ) 
 
-#define ICorProfilerCallback2_AppDomainCreationStarted(This,appDomainId)    \
+#define ICorProfilerCallback2_AppDomainCreationStarted(This,appDomainId)       \
     ( (This)->lpVtbl -> AppDomainCreationStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback2_AppDomainCreationFinished(This,appDomainId,hrStatus)  \
+#define ICorProfilerCallback2_AppDomainCreationFinished(This,appDomainId,hrStatus)     \
     ( (This)->lpVtbl -> AppDomainCreationFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback2_AppDomainShutdownStarted(This,appDomainId)    \
+#define ICorProfilerCallback2_AppDomainShutdownStarted(This,appDomainId)       \
     ( (This)->lpVtbl -> AppDomainShutdownStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback2_AppDomainShutdownFinished(This,appDomainId,hrStatus)  \
+#define ICorProfilerCallback2_AppDomainShutdownFinished(This,appDomainId,hrStatus)     \
     ( (This)->lpVtbl -> AppDomainShutdownFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback2_AssemblyLoadStarted(This,assemblyId)  \
+#define ICorProfilerCallback2_AssemblyLoadStarted(This,assemblyId)     \
     ( (This)->lpVtbl -> AssemblyLoadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback2_AssemblyLoadFinished(This,assemblyId,hrStatus)    \
+#define ICorProfilerCallback2_AssemblyLoadFinished(This,assemblyId,hrStatus)   \
     ( (This)->lpVtbl -> AssemblyLoadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback2_AssemblyUnloadStarted(This,assemblyId)    \
+#define ICorProfilerCallback2_AssemblyUnloadStarted(This,assemblyId)   \
     ( (This)->lpVtbl -> AssemblyUnloadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback2_AssemblyUnloadFinished(This,assemblyId,hrStatus)  \
+#define ICorProfilerCallback2_AssemblyUnloadFinished(This,assemblyId,hrStatus) \
     ( (This)->lpVtbl -> AssemblyUnloadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback2_ModuleLoadStarted(This,moduleId)  \
+#define ICorProfilerCallback2_ModuleLoadStarted(This,moduleId) \
     ( (This)->lpVtbl -> ModuleLoadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback2_ModuleLoadFinished(This,moduleId,hrStatus)    \
+#define ICorProfilerCallback2_ModuleLoadFinished(This,moduleId,hrStatus)       \
     ( (This)->lpVtbl -> ModuleLoadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback2_ModuleUnloadStarted(This,moduleId)    \
+#define ICorProfilerCallback2_ModuleUnloadStarted(This,moduleId)       \
     ( (This)->lpVtbl -> ModuleUnloadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback2_ModuleUnloadFinished(This,moduleId,hrStatus)  \
+#define ICorProfilerCallback2_ModuleUnloadFinished(This,moduleId,hrStatus)     \
     ( (This)->lpVtbl -> ModuleUnloadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback2_ModuleAttachedToAssembly(This,moduleId,AssemblyId)    \
+#define ICorProfilerCallback2_ModuleAttachedToAssembly(This,moduleId,AssemblyId)       \
     ( (This)->lpVtbl -> ModuleAttachedToAssembly(This,moduleId,AssemblyId) ) 
 
-#define ICorProfilerCallback2_ClassLoadStarted(This,classId)    \
+#define ICorProfilerCallback2_ClassLoadStarted(This,classId)   \
     ( (This)->lpVtbl -> ClassLoadStarted(This,classId) ) 
 
-#define ICorProfilerCallback2_ClassLoadFinished(This,classId,hrStatus)  \
+#define ICorProfilerCallback2_ClassLoadFinished(This,classId,hrStatus) \
     ( (This)->lpVtbl -> ClassLoadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback2_ClassUnloadStarted(This,classId)  \
+#define ICorProfilerCallback2_ClassUnloadStarted(This,classId) \
     ( (This)->lpVtbl -> ClassUnloadStarted(This,classId) ) 
 
-#define ICorProfilerCallback2_ClassUnloadFinished(This,classId,hrStatus)    \
+#define ICorProfilerCallback2_ClassUnloadFinished(This,classId,hrStatus)       \
     ( (This)->lpVtbl -> ClassUnloadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback2_FunctionUnloadStarted(This,functionId)    \
+#define ICorProfilerCallback2_FunctionUnloadStarted(This,functionId)   \
     ( (This)->lpVtbl -> FunctionUnloadStarted(This,functionId) ) 
 
-#define ICorProfilerCallback2_JITCompilationStarted(This,functionId,fIsSafeToBlock) \
+#define ICorProfilerCallback2_JITCompilationStarted(This,functionId,fIsSafeToBlock)    \
     ( (This)->lpVtbl -> JITCompilationStarted(This,functionId,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback2_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)   \
+#define ICorProfilerCallback2_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)  \
     ( (This)->lpVtbl -> JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback2_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)   \
+#define ICorProfilerCallback2_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)      \
     ( (This)->lpVtbl -> JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction) ) 
 
-#define ICorProfilerCallback2_JITCachedFunctionSearchFinished(This,functionId,result)   \
+#define ICorProfilerCallback2_JITCachedFunctionSearchFinished(This,functionId,result)  \
     ( (This)->lpVtbl -> JITCachedFunctionSearchFinished(This,functionId,result) ) 
 
-#define ICorProfilerCallback2_JITFunctionPitched(This,functionId)   \
+#define ICorProfilerCallback2_JITFunctionPitched(This,functionId)      \
     ( (This)->lpVtbl -> JITFunctionPitched(This,functionId) ) 
 
-#define ICorProfilerCallback2_JITInlining(This,callerId,calleeId,pfShouldInline)    \
+#define ICorProfilerCallback2_JITInlining(This,callerId,calleeId,pfShouldInline)       \
     ( (This)->lpVtbl -> JITInlining(This,callerId,calleeId,pfShouldInline) ) 
 
-#define ICorProfilerCallback2_ThreadCreated(This,threadId)  \
+#define ICorProfilerCallback2_ThreadCreated(This,threadId)     \
     ( (This)->lpVtbl -> ThreadCreated(This,threadId) ) 
 
-#define ICorProfilerCallback2_ThreadDestroyed(This,threadId)    \
+#define ICorProfilerCallback2_ThreadDestroyed(This,threadId)   \
     ( (This)->lpVtbl -> ThreadDestroyed(This,threadId) ) 
 
-#define ICorProfilerCallback2_ThreadAssignedToOSThread(This,managedThreadId,osThreadId) \
+#define ICorProfilerCallback2_ThreadAssignedToOSThread(This,managedThreadId,osThreadId)        \
     ( (This)->lpVtbl -> ThreadAssignedToOSThread(This,managedThreadId,osThreadId) ) 
 
-#define ICorProfilerCallback2_RemotingClientInvocationStarted(This) \
+#define ICorProfilerCallback2_RemotingClientInvocationStarted(This)    \
     ( (This)->lpVtbl -> RemotingClientInvocationStarted(This) ) 
 
-#define ICorProfilerCallback2_RemotingClientSendingMessage(This,pCookie,fIsAsync)   \
+#define ICorProfilerCallback2_RemotingClientSendingMessage(This,pCookie,fIsAsync)      \
     ( (This)->lpVtbl -> RemotingClientSendingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback2_RemotingClientReceivingReply(This,pCookie,fIsAsync)   \
+#define ICorProfilerCallback2_RemotingClientReceivingReply(This,pCookie,fIsAsync)      \
     ( (This)->lpVtbl -> RemotingClientReceivingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback2_RemotingClientInvocationFinished(This)    \
+#define ICorProfilerCallback2_RemotingClientInvocationFinished(This)   \
     ( (This)->lpVtbl -> RemotingClientInvocationFinished(This) ) 
 
-#define ICorProfilerCallback2_RemotingServerReceivingMessage(This,pCookie,fIsAsync) \
+#define ICorProfilerCallback2_RemotingServerReceivingMessage(This,pCookie,fIsAsync)    \
     ( (This)->lpVtbl -> RemotingServerReceivingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback2_RemotingServerInvocationStarted(This) \
+#define ICorProfilerCallback2_RemotingServerInvocationStarted(This)    \
     ( (This)->lpVtbl -> RemotingServerInvocationStarted(This) ) 
 
-#define ICorProfilerCallback2_RemotingServerInvocationReturned(This)    \
+#define ICorProfilerCallback2_RemotingServerInvocationReturned(This)   \
     ( (This)->lpVtbl -> RemotingServerInvocationReturned(This) ) 
 
-#define ICorProfilerCallback2_RemotingServerSendingReply(This,pCookie,fIsAsync) \
+#define ICorProfilerCallback2_RemotingServerSendingReply(This,pCookie,fIsAsync)        \
     ( (This)->lpVtbl -> RemotingServerSendingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback2_UnmanagedToManagedTransition(This,functionId,reason)  \
+#define ICorProfilerCallback2_UnmanagedToManagedTransition(This,functionId,reason)     \
     ( (This)->lpVtbl -> UnmanagedToManagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback2_ManagedToUnmanagedTransition(This,functionId,reason)  \
+#define ICorProfilerCallback2_ManagedToUnmanagedTransition(This,functionId,reason)     \
     ( (This)->lpVtbl -> ManagedToUnmanagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback2_RuntimeSuspendStarted(This,suspendReason) \
+#define ICorProfilerCallback2_RuntimeSuspendStarted(This,suspendReason)        \
     ( (This)->lpVtbl -> RuntimeSuspendStarted(This,suspendReason) ) 
 
-#define ICorProfilerCallback2_RuntimeSuspendFinished(This)  \
+#define ICorProfilerCallback2_RuntimeSuspendFinished(This)     \
     ( (This)->lpVtbl -> RuntimeSuspendFinished(This) ) 
 
-#define ICorProfilerCallback2_RuntimeSuspendAborted(This)   \
+#define ICorProfilerCallback2_RuntimeSuspendAborted(This)      \
     ( (This)->lpVtbl -> RuntimeSuspendAborted(This) ) 
 
-#define ICorProfilerCallback2_RuntimeResumeStarted(This)    \
+#define ICorProfilerCallback2_RuntimeResumeStarted(This)       \
     ( (This)->lpVtbl -> RuntimeResumeStarted(This) ) 
 
-#define ICorProfilerCallback2_RuntimeResumeFinished(This)   \
+#define ICorProfilerCallback2_RuntimeResumeFinished(This)      \
     ( (This)->lpVtbl -> RuntimeResumeFinished(This) ) 
 
-#define ICorProfilerCallback2_RuntimeThreadSuspended(This,threadId) \
+#define ICorProfilerCallback2_RuntimeThreadSuspended(This,threadId)    \
     ( (This)->lpVtbl -> RuntimeThreadSuspended(This,threadId) ) 
 
-#define ICorProfilerCallback2_RuntimeThreadResumed(This,threadId)   \
+#define ICorProfilerCallback2_RuntimeThreadResumed(This,threadId)      \
     ( (This)->lpVtbl -> RuntimeThreadResumed(This,threadId) ) 
 
-#define ICorProfilerCallback2_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)   \
+#define ICorProfilerCallback2_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)      \
     ( (This)->lpVtbl -> MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback2_ObjectAllocated(This,objectId,classId)    \
+#define ICorProfilerCallback2_ObjectAllocated(This,objectId,classId)   \
     ( (This)->lpVtbl -> ObjectAllocated(This,objectId,classId) ) 
 
-#define ICorProfilerCallback2_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)   \
+#define ICorProfilerCallback2_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)      \
     ( (This)->lpVtbl -> ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects) ) 
 
-#define ICorProfilerCallback2_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds)  \
+#define ICorProfilerCallback2_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) \
     ( (This)->lpVtbl -> ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) ) 
 
-#define ICorProfilerCallback2_RootReferences(This,cRootRefs,rootRefIds) \
+#define ICorProfilerCallback2_RootReferences(This,cRootRefs,rootRefIds)        \
     ( (This)->lpVtbl -> RootReferences(This,cRootRefs,rootRefIds) ) 
 
-#define ICorProfilerCallback2_ExceptionThrown(This,thrownObjectId)  \
+#define ICorProfilerCallback2_ExceptionThrown(This,thrownObjectId)     \
     ( (This)->lpVtbl -> ExceptionThrown(This,thrownObjectId) ) 
 
-#define ICorProfilerCallback2_ExceptionSearchFunctionEnter(This,functionId) \
+#define ICorProfilerCallback2_ExceptionSearchFunctionEnter(This,functionId)    \
     ( (This)->lpVtbl -> ExceptionSearchFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback2_ExceptionSearchFunctionLeave(This)    \
+#define ICorProfilerCallback2_ExceptionSearchFunctionLeave(This)       \
     ( (This)->lpVtbl -> ExceptionSearchFunctionLeave(This) ) 
 
-#define ICorProfilerCallback2_ExceptionSearchFilterEnter(This,functionId)   \
+#define ICorProfilerCallback2_ExceptionSearchFilterEnter(This,functionId)      \
     ( (This)->lpVtbl -> ExceptionSearchFilterEnter(This,functionId) ) 
 
-#define ICorProfilerCallback2_ExceptionSearchFilterLeave(This)  \
+#define ICorProfilerCallback2_ExceptionSearchFilterLeave(This) \
     ( (This)->lpVtbl -> ExceptionSearchFilterLeave(This) ) 
 
-#define ICorProfilerCallback2_ExceptionSearchCatcherFound(This,functionId)  \
+#define ICorProfilerCallback2_ExceptionSearchCatcherFound(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionSearchCatcherFound(This,functionId) ) 
 
-#define ICorProfilerCallback2_ExceptionOSHandlerEnter(This,__unused)    \
+#define ICorProfilerCallback2_ExceptionOSHandlerEnter(This,__unused)   \
     ( (This)->lpVtbl -> ExceptionOSHandlerEnter(This,__unused) ) 
 
-#define ICorProfilerCallback2_ExceptionOSHandlerLeave(This,__unused)    \
+#define ICorProfilerCallback2_ExceptionOSHandlerLeave(This,__unused)   \
     ( (This)->lpVtbl -> ExceptionOSHandlerLeave(This,__unused) ) 
 
-#define ICorProfilerCallback2_ExceptionUnwindFunctionEnter(This,functionId) \
+#define ICorProfilerCallback2_ExceptionUnwindFunctionEnter(This,functionId)    \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback2_ExceptionUnwindFunctionLeave(This)    \
+#define ICorProfilerCallback2_ExceptionUnwindFunctionLeave(This)       \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionLeave(This) ) 
 
-#define ICorProfilerCallback2_ExceptionUnwindFinallyEnter(This,functionId)  \
+#define ICorProfilerCallback2_ExceptionUnwindFinallyEnter(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyEnter(This,functionId) ) 
 
-#define ICorProfilerCallback2_ExceptionUnwindFinallyLeave(This) \
+#define ICorProfilerCallback2_ExceptionUnwindFinallyLeave(This)        \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyLeave(This) ) 
 
-#define ICorProfilerCallback2_ExceptionCatcherEnter(This,functionId,objectId)   \
+#define ICorProfilerCallback2_ExceptionCatcherEnter(This,functionId,objectId)  \
     ( (This)->lpVtbl -> ExceptionCatcherEnter(This,functionId,objectId) ) 
 
-#define ICorProfilerCallback2_ExceptionCatcherLeave(This)   \
+#define ICorProfilerCallback2_ExceptionCatcherLeave(This)      \
     ( (This)->lpVtbl -> ExceptionCatcherLeave(This) ) 
 
-#define ICorProfilerCallback2_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)    \
+#define ICorProfilerCallback2_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)       \
     ( (This)->lpVtbl -> COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots) ) 
 
-#define ICorProfilerCallback2_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) \
+#define ICorProfilerCallback2_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable)    \
     ( (This)->lpVtbl -> COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) ) 
 
-#define ICorProfilerCallback2_ExceptionCLRCatcherFound(This)    \
+#define ICorProfilerCallback2_ExceptionCLRCatcherFound(This)   \
     ( (This)->lpVtbl -> ExceptionCLRCatcherFound(This) ) 
 
-#define ICorProfilerCallback2_ExceptionCLRCatcherExecute(This)  \
+#define ICorProfilerCallback2_ExceptionCLRCatcherExecute(This) \
     ( (This)->lpVtbl -> ExceptionCLRCatcherExecute(This) ) 
 
 
-#define ICorProfilerCallback2_ThreadNameChanged(This,threadId,cchName,name) \
+#define ICorProfilerCallback2_ThreadNameChanged(This,threadId,cchName,name)    \
     ( (This)->lpVtbl -> ThreadNameChanged(This,threadId,cchName,name) ) 
 
-#define ICorProfilerCallback2_GarbageCollectionStarted(This,cGenerations,generationCollected,reason)    \
+#define ICorProfilerCallback2_GarbageCollectionStarted(This,cGenerations,generationCollected,reason)   \
     ( (This)->lpVtbl -> GarbageCollectionStarted(This,cGenerations,generationCollected,reason) ) 
 
-#define ICorProfilerCallback2_SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)    \
+#define ICorProfilerCallback2_SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)       \
     ( (This)->lpVtbl -> SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback2_GarbageCollectionFinished(This)   \
+#define ICorProfilerCallback2_GarbageCollectionFinished(This)  \
     ( (This)->lpVtbl -> GarbageCollectionFinished(This) ) 
 
-#define ICorProfilerCallback2_FinalizeableObjectQueued(This,finalizerFlags,objectID)    \
+#define ICorProfilerCallback2_FinalizeableObjectQueued(This,finalizerFlags,objectID)   \
     ( (This)->lpVtbl -> FinalizeableObjectQueued(This,finalizerFlags,objectID) ) 
 
-#define ICorProfilerCallback2_RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds)    \
+#define ICorProfilerCallback2_RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds)   \
     ( (This)->lpVtbl -> RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds) ) 
 
-#define ICorProfilerCallback2_HandleCreated(This,handleId,initialObjectId)  \
+#define ICorProfilerCallback2_HandleCreated(This,handleId,initialObjectId)     \
     ( (This)->lpVtbl -> HandleCreated(This,handleId,initialObjectId) ) 
 
-#define ICorProfilerCallback2_HandleDestroyed(This,handleId)    \
+#define ICorProfilerCallback2_HandleDestroyed(This,handleId)   \
     ( (This)->lpVtbl -> HandleDestroyed(This,handleId) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerCallback2_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerCallback2_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerCallback3_INTERFACE_DEFINED__
@@ -2212,7 +2213,7 @@ EXTERN_C const IID IID_ICorProfilerCallback3;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerCallback3Vtbl
     {
@@ -2598,267 +2599,267 @@ EXTERN_C const IID IID_ICorProfilerCallback3;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerCallback3_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerCallback3_QueryInterface(This,riid,ppvObject)      \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerCallback3_AddRef(This)  \
+#define ICorProfilerCallback3_AddRef(This)     \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerCallback3_Release(This) \
+#define ICorProfilerCallback3_Release(This)    \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerCallback3_Initialize(This,pICorProfilerInfoUnk) \
+#define ICorProfilerCallback3_Initialize(This,pICorProfilerInfoUnk)    \
     ( (This)->lpVtbl -> Initialize(This,pICorProfilerInfoUnk) ) 
 
-#define ICorProfilerCallback3_Shutdown(This)    \
+#define ICorProfilerCallback3_Shutdown(This)   \
     ( (This)->lpVtbl -> Shutdown(This) ) 
 
-#define ICorProfilerCallback3_AppDomainCreationStarted(This,appDomainId)    \
+#define ICorProfilerCallback3_AppDomainCreationStarted(This,appDomainId)       \
     ( (This)->lpVtbl -> AppDomainCreationStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback3_AppDomainCreationFinished(This,appDomainId,hrStatus)  \
+#define ICorProfilerCallback3_AppDomainCreationFinished(This,appDomainId,hrStatus)     \
     ( (This)->lpVtbl -> AppDomainCreationFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback3_AppDomainShutdownStarted(This,appDomainId)    \
+#define ICorProfilerCallback3_AppDomainShutdownStarted(This,appDomainId)       \
     ( (This)->lpVtbl -> AppDomainShutdownStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback3_AppDomainShutdownFinished(This,appDomainId,hrStatus)  \
+#define ICorProfilerCallback3_AppDomainShutdownFinished(This,appDomainId,hrStatus)     \
     ( (This)->lpVtbl -> AppDomainShutdownFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback3_AssemblyLoadStarted(This,assemblyId)  \
+#define ICorProfilerCallback3_AssemblyLoadStarted(This,assemblyId)     \
     ( (This)->lpVtbl -> AssemblyLoadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback3_AssemblyLoadFinished(This,assemblyId,hrStatus)    \
+#define ICorProfilerCallback3_AssemblyLoadFinished(This,assemblyId,hrStatus)   \
     ( (This)->lpVtbl -> AssemblyLoadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback3_AssemblyUnloadStarted(This,assemblyId)    \
+#define ICorProfilerCallback3_AssemblyUnloadStarted(This,assemblyId)   \
     ( (This)->lpVtbl -> AssemblyUnloadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback3_AssemblyUnloadFinished(This,assemblyId,hrStatus)  \
+#define ICorProfilerCallback3_AssemblyUnloadFinished(This,assemblyId,hrStatus) \
     ( (This)->lpVtbl -> AssemblyUnloadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback3_ModuleLoadStarted(This,moduleId)  \
+#define ICorProfilerCallback3_ModuleLoadStarted(This,moduleId) \
     ( (This)->lpVtbl -> ModuleLoadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback3_ModuleLoadFinished(This,moduleId,hrStatus)    \
+#define ICorProfilerCallback3_ModuleLoadFinished(This,moduleId,hrStatus)       \
     ( (This)->lpVtbl -> ModuleLoadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback3_ModuleUnloadStarted(This,moduleId)    \
+#define ICorProfilerCallback3_ModuleUnloadStarted(This,moduleId)       \
     ( (This)->lpVtbl -> ModuleUnloadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback3_ModuleUnloadFinished(This,moduleId,hrStatus)  \
+#define ICorProfilerCallback3_ModuleUnloadFinished(This,moduleId,hrStatus)     \
     ( (This)->lpVtbl -> ModuleUnloadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback3_ModuleAttachedToAssembly(This,moduleId,AssemblyId)    \
+#define ICorProfilerCallback3_ModuleAttachedToAssembly(This,moduleId,AssemblyId)       \
     ( (This)->lpVtbl -> ModuleAttachedToAssembly(This,moduleId,AssemblyId) ) 
 
-#define ICorProfilerCallback3_ClassLoadStarted(This,classId)    \
+#define ICorProfilerCallback3_ClassLoadStarted(This,classId)   \
     ( (This)->lpVtbl -> ClassLoadStarted(This,classId) ) 
 
-#define ICorProfilerCallback3_ClassLoadFinished(This,classId,hrStatus)  \
+#define ICorProfilerCallback3_ClassLoadFinished(This,classId,hrStatus) \
     ( (This)->lpVtbl -> ClassLoadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback3_ClassUnloadStarted(This,classId)  \
+#define ICorProfilerCallback3_ClassUnloadStarted(This,classId) \
     ( (This)->lpVtbl -> ClassUnloadStarted(This,classId) ) 
 
-#define ICorProfilerCallback3_ClassUnloadFinished(This,classId,hrStatus)    \
+#define ICorProfilerCallback3_ClassUnloadFinished(This,classId,hrStatus)       \
     ( (This)->lpVtbl -> ClassUnloadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback3_FunctionUnloadStarted(This,functionId)    \
+#define ICorProfilerCallback3_FunctionUnloadStarted(This,functionId)   \
     ( (This)->lpVtbl -> FunctionUnloadStarted(This,functionId) ) 
 
-#define ICorProfilerCallback3_JITCompilationStarted(This,functionId,fIsSafeToBlock) \
+#define ICorProfilerCallback3_JITCompilationStarted(This,functionId,fIsSafeToBlock)    \
     ( (This)->lpVtbl -> JITCompilationStarted(This,functionId,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback3_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)   \
+#define ICorProfilerCallback3_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)  \
     ( (This)->lpVtbl -> JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback3_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)   \
+#define ICorProfilerCallback3_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)      \
     ( (This)->lpVtbl -> JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction) ) 
 
-#define ICorProfilerCallback3_JITCachedFunctionSearchFinished(This,functionId,result)   \
+#define ICorProfilerCallback3_JITCachedFunctionSearchFinished(This,functionId,result)  \
     ( (This)->lpVtbl -> JITCachedFunctionSearchFinished(This,functionId,result) ) 
 
-#define ICorProfilerCallback3_JITFunctionPitched(This,functionId)   \
+#define ICorProfilerCallback3_JITFunctionPitched(This,functionId)      \
     ( (This)->lpVtbl -> JITFunctionPitched(This,functionId) ) 
 
-#define ICorProfilerCallback3_JITInlining(This,callerId,calleeId,pfShouldInline)    \
+#define ICorProfilerCallback3_JITInlining(This,callerId,calleeId,pfShouldInline)       \
     ( (This)->lpVtbl -> JITInlining(This,callerId,calleeId,pfShouldInline) ) 
 
-#define ICorProfilerCallback3_ThreadCreated(This,threadId)  \
+#define ICorProfilerCallback3_ThreadCreated(This,threadId)     \
     ( (This)->lpVtbl -> ThreadCreated(This,threadId) ) 
 
-#define ICorProfilerCallback3_ThreadDestroyed(This,threadId)    \
+#define ICorProfilerCallback3_ThreadDestroyed(This,threadId)   \
     ( (This)->lpVtbl -> ThreadDestroyed(This,threadId) ) 
 
-#define ICorProfilerCallback3_ThreadAssignedToOSThread(This,managedThreadId,osThreadId) \
+#define ICorProfilerCallback3_ThreadAssignedToOSThread(This,managedThreadId,osThreadId)        \
     ( (This)->lpVtbl -> ThreadAssignedToOSThread(This,managedThreadId,osThreadId) ) 
 
-#define ICorProfilerCallback3_RemotingClientInvocationStarted(This) \
+#define ICorProfilerCallback3_RemotingClientInvocationStarted(This)    \
     ( (This)->lpVtbl -> RemotingClientInvocationStarted(This) ) 
 
-#define ICorProfilerCallback3_RemotingClientSendingMessage(This,pCookie,fIsAsync)   \
+#define ICorProfilerCallback3_RemotingClientSendingMessage(This,pCookie,fIsAsync)      \
     ( (This)->lpVtbl -> RemotingClientSendingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback3_RemotingClientReceivingReply(This,pCookie,fIsAsync)   \
+#define ICorProfilerCallback3_RemotingClientReceivingReply(This,pCookie,fIsAsync)      \
     ( (This)->lpVtbl -> RemotingClientReceivingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback3_RemotingClientInvocationFinished(This)    \
+#define ICorProfilerCallback3_RemotingClientInvocationFinished(This)   \
     ( (This)->lpVtbl -> RemotingClientInvocationFinished(This) ) 
 
-#define ICorProfilerCallback3_RemotingServerReceivingMessage(This,pCookie,fIsAsync) \
+#define ICorProfilerCallback3_RemotingServerReceivingMessage(This,pCookie,fIsAsync)    \
     ( (This)->lpVtbl -> RemotingServerReceivingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback3_RemotingServerInvocationStarted(This) \
+#define ICorProfilerCallback3_RemotingServerInvocationStarted(This)    \
     ( (This)->lpVtbl -> RemotingServerInvocationStarted(This) ) 
 
-#define ICorProfilerCallback3_RemotingServerInvocationReturned(This)    \
+#define ICorProfilerCallback3_RemotingServerInvocationReturned(This)   \
     ( (This)->lpVtbl -> RemotingServerInvocationReturned(This) ) 
 
-#define ICorProfilerCallback3_RemotingServerSendingReply(This,pCookie,fIsAsync) \
+#define ICorProfilerCallback3_RemotingServerSendingReply(This,pCookie,fIsAsync)        \
     ( (This)->lpVtbl -> RemotingServerSendingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback3_UnmanagedToManagedTransition(This,functionId,reason)  \
+#define ICorProfilerCallback3_UnmanagedToManagedTransition(This,functionId,reason)     \
     ( (This)->lpVtbl -> UnmanagedToManagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback3_ManagedToUnmanagedTransition(This,functionId,reason)  \
+#define ICorProfilerCallback3_ManagedToUnmanagedTransition(This,functionId,reason)     \
     ( (This)->lpVtbl -> ManagedToUnmanagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback3_RuntimeSuspendStarted(This,suspendReason) \
+#define ICorProfilerCallback3_RuntimeSuspendStarted(This,suspendReason)        \
     ( (This)->lpVtbl -> RuntimeSuspendStarted(This,suspendReason) ) 
 
-#define ICorProfilerCallback3_RuntimeSuspendFinished(This)  \
+#define ICorProfilerCallback3_RuntimeSuspendFinished(This)     \
     ( (This)->lpVtbl -> RuntimeSuspendFinished(This) ) 
 
-#define ICorProfilerCallback3_RuntimeSuspendAborted(This)   \
+#define ICorProfilerCallback3_RuntimeSuspendAborted(This)      \
     ( (This)->lpVtbl -> RuntimeSuspendAborted(This) ) 
 
-#define ICorProfilerCallback3_RuntimeResumeStarted(This)    \
+#define ICorProfilerCallback3_RuntimeResumeStarted(This)       \
     ( (This)->lpVtbl -> RuntimeResumeStarted(This) ) 
 
-#define ICorProfilerCallback3_RuntimeResumeFinished(This)   \
+#define ICorProfilerCallback3_RuntimeResumeFinished(This)      \
     ( (This)->lpVtbl -> RuntimeResumeFinished(This) ) 
 
-#define ICorProfilerCallback3_RuntimeThreadSuspended(This,threadId) \
+#define ICorProfilerCallback3_RuntimeThreadSuspended(This,threadId)    \
     ( (This)->lpVtbl -> RuntimeThreadSuspended(This,threadId) ) 
 
-#define ICorProfilerCallback3_RuntimeThreadResumed(This,threadId)   \
+#define ICorProfilerCallback3_RuntimeThreadResumed(This,threadId)      \
     ( (This)->lpVtbl -> RuntimeThreadResumed(This,threadId) ) 
 
-#define ICorProfilerCallback3_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)   \
+#define ICorProfilerCallback3_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)      \
     ( (This)->lpVtbl -> MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback3_ObjectAllocated(This,objectId,classId)    \
+#define ICorProfilerCallback3_ObjectAllocated(This,objectId,classId)   \
     ( (This)->lpVtbl -> ObjectAllocated(This,objectId,classId) ) 
 
-#define ICorProfilerCallback3_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)   \
+#define ICorProfilerCallback3_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)      \
     ( (This)->lpVtbl -> ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects) ) 
 
-#define ICorProfilerCallback3_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds)  \
+#define ICorProfilerCallback3_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) \
     ( (This)->lpVtbl -> ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) ) 
 
-#define ICorProfilerCallback3_RootReferences(This,cRootRefs,rootRefIds) \
+#define ICorProfilerCallback3_RootReferences(This,cRootRefs,rootRefIds)        \
     ( (This)->lpVtbl -> RootReferences(This,cRootRefs,rootRefIds) ) 
 
-#define ICorProfilerCallback3_ExceptionThrown(This,thrownObjectId)  \
+#define ICorProfilerCallback3_ExceptionThrown(This,thrownObjectId)     \
     ( (This)->lpVtbl -> ExceptionThrown(This,thrownObjectId) ) 
 
-#define ICorProfilerCallback3_ExceptionSearchFunctionEnter(This,functionId) \
+#define ICorProfilerCallback3_ExceptionSearchFunctionEnter(This,functionId)    \
     ( (This)->lpVtbl -> ExceptionSearchFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback3_ExceptionSearchFunctionLeave(This)    \
+#define ICorProfilerCallback3_ExceptionSearchFunctionLeave(This)       \
     ( (This)->lpVtbl -> ExceptionSearchFunctionLeave(This) ) 
 
-#define ICorProfilerCallback3_ExceptionSearchFilterEnter(This,functionId)   \
+#define ICorProfilerCallback3_ExceptionSearchFilterEnter(This,functionId)      \
     ( (This)->lpVtbl -> ExceptionSearchFilterEnter(This,functionId) ) 
 
-#define ICorProfilerCallback3_ExceptionSearchFilterLeave(This)  \
+#define ICorProfilerCallback3_ExceptionSearchFilterLeave(This) \
     ( (This)->lpVtbl -> ExceptionSearchFilterLeave(This) ) 
 
-#define ICorProfilerCallback3_ExceptionSearchCatcherFound(This,functionId)  \
+#define ICorProfilerCallback3_ExceptionSearchCatcherFound(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionSearchCatcherFound(This,functionId) ) 
 
-#define ICorProfilerCallback3_ExceptionOSHandlerEnter(This,__unused)    \
+#define ICorProfilerCallback3_ExceptionOSHandlerEnter(This,__unused)   \
     ( (This)->lpVtbl -> ExceptionOSHandlerEnter(This,__unused) ) 
 
-#define ICorProfilerCallback3_ExceptionOSHandlerLeave(This,__unused)    \
+#define ICorProfilerCallback3_ExceptionOSHandlerLeave(This,__unused)   \
     ( (This)->lpVtbl -> ExceptionOSHandlerLeave(This,__unused) ) 
 
-#define ICorProfilerCallback3_ExceptionUnwindFunctionEnter(This,functionId) \
+#define ICorProfilerCallback3_ExceptionUnwindFunctionEnter(This,functionId)    \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback3_ExceptionUnwindFunctionLeave(This)    \
+#define ICorProfilerCallback3_ExceptionUnwindFunctionLeave(This)       \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionLeave(This) ) 
 
-#define ICorProfilerCallback3_ExceptionUnwindFinallyEnter(This,functionId)  \
+#define ICorProfilerCallback3_ExceptionUnwindFinallyEnter(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyEnter(This,functionId) ) 
 
-#define ICorProfilerCallback3_ExceptionUnwindFinallyLeave(This) \
+#define ICorProfilerCallback3_ExceptionUnwindFinallyLeave(This)        \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyLeave(This) ) 
 
-#define ICorProfilerCallback3_ExceptionCatcherEnter(This,functionId,objectId)   \
+#define ICorProfilerCallback3_ExceptionCatcherEnter(This,functionId,objectId)  \
     ( (This)->lpVtbl -> ExceptionCatcherEnter(This,functionId,objectId) ) 
 
-#define ICorProfilerCallback3_ExceptionCatcherLeave(This)   \
+#define ICorProfilerCallback3_ExceptionCatcherLeave(This)      \
     ( (This)->lpVtbl -> ExceptionCatcherLeave(This) ) 
 
-#define ICorProfilerCallback3_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)    \
+#define ICorProfilerCallback3_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)       \
     ( (This)->lpVtbl -> COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots) ) 
 
-#define ICorProfilerCallback3_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) \
+#define ICorProfilerCallback3_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable)    \
     ( (This)->lpVtbl -> COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) ) 
 
-#define ICorProfilerCallback3_ExceptionCLRCatcherFound(This)    \
+#define ICorProfilerCallback3_ExceptionCLRCatcherFound(This)   \
     ( (This)->lpVtbl -> ExceptionCLRCatcherFound(This) ) 
 
-#define ICorProfilerCallback3_ExceptionCLRCatcherExecute(This)  \
+#define ICorProfilerCallback3_ExceptionCLRCatcherExecute(This) \
     ( (This)->lpVtbl -> ExceptionCLRCatcherExecute(This) ) 
 
 
-#define ICorProfilerCallback3_ThreadNameChanged(This,threadId,cchName,name) \
+#define ICorProfilerCallback3_ThreadNameChanged(This,threadId,cchName,name)    \
     ( (This)->lpVtbl -> ThreadNameChanged(This,threadId,cchName,name) ) 
 
-#define ICorProfilerCallback3_GarbageCollectionStarted(This,cGenerations,generationCollected,reason)    \
+#define ICorProfilerCallback3_GarbageCollectionStarted(This,cGenerations,generationCollected,reason)   \
     ( (This)->lpVtbl -> GarbageCollectionStarted(This,cGenerations,generationCollected,reason) ) 
 
-#define ICorProfilerCallback3_SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)    \
+#define ICorProfilerCallback3_SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)       \
     ( (This)->lpVtbl -> SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback3_GarbageCollectionFinished(This)   \
+#define ICorProfilerCallback3_GarbageCollectionFinished(This)  \
     ( (This)->lpVtbl -> GarbageCollectionFinished(This) ) 
 
-#define ICorProfilerCallback3_FinalizeableObjectQueued(This,finalizerFlags,objectID)    \
+#define ICorProfilerCallback3_FinalizeableObjectQueued(This,finalizerFlags,objectID)   \
     ( (This)->lpVtbl -> FinalizeableObjectQueued(This,finalizerFlags,objectID) ) 
 
-#define ICorProfilerCallback3_RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds)    \
+#define ICorProfilerCallback3_RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds)   \
     ( (This)->lpVtbl -> RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds) ) 
 
-#define ICorProfilerCallback3_HandleCreated(This,handleId,initialObjectId)  \
+#define ICorProfilerCallback3_HandleCreated(This,handleId,initialObjectId)     \
     ( (This)->lpVtbl -> HandleCreated(This,handleId,initialObjectId) ) 
 
-#define ICorProfilerCallback3_HandleDestroyed(This,handleId)    \
+#define ICorProfilerCallback3_HandleDestroyed(This,handleId)   \
     ( (This)->lpVtbl -> HandleDestroyed(This,handleId) ) 
 
 
-#define ICorProfilerCallback3_InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData)   \
+#define ICorProfilerCallback3_InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData)  \
     ( (This)->lpVtbl -> InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData) ) 
 
-#define ICorProfilerCallback3_ProfilerAttachComplete(This)  \
+#define ICorProfilerCallback3_ProfilerAttachComplete(This)     \
     ( (This)->lpVtbl -> ProfilerAttachComplete(This) ) 
 
-#define ICorProfilerCallback3_ProfilerDetachSucceeded(This) \
+#define ICorProfilerCallback3_ProfilerDetachSucceeded(This)    \
     ( (This)->lpVtbl -> ProfilerDetachSucceeded(This) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerCallback3_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerCallback3_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerCallback4_INTERFACE_DEFINED__
@@ -2912,7 +2913,7 @@ EXTERN_C const IID IID_ICorProfilerCallback4;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerCallback4Vtbl
     {
@@ -3337,286 +3338,286 @@ EXTERN_C const IID IID_ICorProfilerCallback4;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerCallback4_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerCallback4_QueryInterface(This,riid,ppvObject)      \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerCallback4_AddRef(This)  \
+#define ICorProfilerCallback4_AddRef(This)     \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerCallback4_Release(This) \
+#define ICorProfilerCallback4_Release(This)    \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerCallback4_Initialize(This,pICorProfilerInfoUnk) \
+#define ICorProfilerCallback4_Initialize(This,pICorProfilerInfoUnk)    \
     ( (This)->lpVtbl -> Initialize(This,pICorProfilerInfoUnk) ) 
 
-#define ICorProfilerCallback4_Shutdown(This)    \
+#define ICorProfilerCallback4_Shutdown(This)   \
     ( (This)->lpVtbl -> Shutdown(This) ) 
 
-#define ICorProfilerCallback4_AppDomainCreationStarted(This,appDomainId)    \
+#define ICorProfilerCallback4_AppDomainCreationStarted(This,appDomainId)       \
     ( (This)->lpVtbl -> AppDomainCreationStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback4_AppDomainCreationFinished(This,appDomainId,hrStatus)  \
+#define ICorProfilerCallback4_AppDomainCreationFinished(This,appDomainId,hrStatus)     \
     ( (This)->lpVtbl -> AppDomainCreationFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback4_AppDomainShutdownStarted(This,appDomainId)    \
+#define ICorProfilerCallback4_AppDomainShutdownStarted(This,appDomainId)       \
     ( (This)->lpVtbl -> AppDomainShutdownStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback4_AppDomainShutdownFinished(This,appDomainId,hrStatus)  \
+#define ICorProfilerCallback4_AppDomainShutdownFinished(This,appDomainId,hrStatus)     \
     ( (This)->lpVtbl -> AppDomainShutdownFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback4_AssemblyLoadStarted(This,assemblyId)  \
+#define ICorProfilerCallback4_AssemblyLoadStarted(This,assemblyId)     \
     ( (This)->lpVtbl -> AssemblyLoadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback4_AssemblyLoadFinished(This,assemblyId,hrStatus)    \
+#define ICorProfilerCallback4_AssemblyLoadFinished(This,assemblyId,hrStatus)   \
     ( (This)->lpVtbl -> AssemblyLoadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback4_AssemblyUnloadStarted(This,assemblyId)    \
+#define ICorProfilerCallback4_AssemblyUnloadStarted(This,assemblyId)   \
     ( (This)->lpVtbl -> AssemblyUnloadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback4_AssemblyUnloadFinished(This,assemblyId,hrStatus)  \
+#define ICorProfilerCallback4_AssemblyUnloadFinished(This,assemblyId,hrStatus) \
     ( (This)->lpVtbl -> AssemblyUnloadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback4_ModuleLoadStarted(This,moduleId)  \
+#define ICorProfilerCallback4_ModuleLoadStarted(This,moduleId) \
     ( (This)->lpVtbl -> ModuleLoadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback4_ModuleLoadFinished(This,moduleId,hrStatus)    \
+#define ICorProfilerCallback4_ModuleLoadFinished(This,moduleId,hrStatus)       \
     ( (This)->lpVtbl -> ModuleLoadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback4_ModuleUnloadStarted(This,moduleId)    \
+#define ICorProfilerCallback4_ModuleUnloadStarted(This,moduleId)       \
     ( (This)->lpVtbl -> ModuleUnloadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback4_ModuleUnloadFinished(This,moduleId,hrStatus)  \
+#define ICorProfilerCallback4_ModuleUnloadFinished(This,moduleId,hrStatus)     \
     ( (This)->lpVtbl -> ModuleUnloadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback4_ModuleAttachedToAssembly(This,moduleId,AssemblyId)    \
+#define ICorProfilerCallback4_ModuleAttachedToAssembly(This,moduleId,AssemblyId)       \
     ( (This)->lpVtbl -> ModuleAttachedToAssembly(This,moduleId,AssemblyId) ) 
 
-#define ICorProfilerCallback4_ClassLoadStarted(This,classId)    \
+#define ICorProfilerCallback4_ClassLoadStarted(This,classId)   \
     ( (This)->lpVtbl -> ClassLoadStarted(This,classId) ) 
 
-#define ICorProfilerCallback4_ClassLoadFinished(This,classId,hrStatus)  \
+#define ICorProfilerCallback4_ClassLoadFinished(This,classId,hrStatus) \
     ( (This)->lpVtbl -> ClassLoadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback4_ClassUnloadStarted(This,classId)  \
+#define ICorProfilerCallback4_ClassUnloadStarted(This,classId) \
     ( (This)->lpVtbl -> ClassUnloadStarted(This,classId) ) 
 
-#define ICorProfilerCallback4_ClassUnloadFinished(This,classId,hrStatus)    \
+#define ICorProfilerCallback4_ClassUnloadFinished(This,classId,hrStatus)       \
     ( (This)->lpVtbl -> ClassUnloadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback4_FunctionUnloadStarted(This,functionId)    \
+#define ICorProfilerCallback4_FunctionUnloadStarted(This,functionId)   \
     ( (This)->lpVtbl -> FunctionUnloadStarted(This,functionId) ) 
 
-#define ICorProfilerCallback4_JITCompilationStarted(This,functionId,fIsSafeToBlock) \
+#define ICorProfilerCallback4_JITCompilationStarted(This,functionId,fIsSafeToBlock)    \
     ( (This)->lpVtbl -> JITCompilationStarted(This,functionId,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback4_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)   \
+#define ICorProfilerCallback4_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)  \
     ( (This)->lpVtbl -> JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback4_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)   \
+#define ICorProfilerCallback4_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)      \
     ( (This)->lpVtbl -> JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction) ) 
 
-#define ICorProfilerCallback4_JITCachedFunctionSearchFinished(This,functionId,result)   \
+#define ICorProfilerCallback4_JITCachedFunctionSearchFinished(This,functionId,result)  \
     ( (This)->lpVtbl -> JITCachedFunctionSearchFinished(This,functionId,result) ) 
 
-#define ICorProfilerCallback4_JITFunctionPitched(This,functionId)   \
+#define ICorProfilerCallback4_JITFunctionPitched(This,functionId)      \
     ( (This)->lpVtbl -> JITFunctionPitched(This,functionId) ) 
 
-#define ICorProfilerCallback4_JITInlining(This,callerId,calleeId,pfShouldInline)    \
+#define ICorProfilerCallback4_JITInlining(This,callerId,calleeId,pfShouldInline)       \
     ( (This)->lpVtbl -> JITInlining(This,callerId,calleeId,pfShouldInline) ) 
 
-#define ICorProfilerCallback4_ThreadCreated(This,threadId)  \
+#define ICorProfilerCallback4_ThreadCreated(This,threadId)     \
     ( (This)->lpVtbl -> ThreadCreated(This,threadId) ) 
 
-#define ICorProfilerCallback4_ThreadDestroyed(This,threadId)    \
+#define ICorProfilerCallback4_ThreadDestroyed(This,threadId)   \
     ( (This)->lpVtbl -> ThreadDestroyed(This,threadId) ) 
 
-#define ICorProfilerCallback4_ThreadAssignedToOSThread(This,managedThreadId,osThreadId) \
+#define ICorProfilerCallback4_ThreadAssignedToOSThread(This,managedThreadId,osThreadId)        \
     ( (This)->lpVtbl -> ThreadAssignedToOSThread(This,managedThreadId,osThreadId) ) 
 
-#define ICorProfilerCallback4_RemotingClientInvocationStarted(This) \
+#define ICorProfilerCallback4_RemotingClientInvocationStarted(This)    \
     ( (This)->lpVtbl -> RemotingClientInvocationStarted(This) ) 
 
-#define ICorProfilerCallback4_RemotingClientSendingMessage(This,pCookie,fIsAsync)   \
+#define ICorProfilerCallback4_RemotingClientSendingMessage(This,pCookie,fIsAsync)      \
     ( (This)->lpVtbl -> RemotingClientSendingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback4_RemotingClientReceivingReply(This,pCookie,fIsAsync)   \
+#define ICorProfilerCallback4_RemotingClientReceivingReply(This,pCookie,fIsAsync)      \
     ( (This)->lpVtbl -> RemotingClientReceivingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback4_RemotingClientInvocationFinished(This)    \
+#define ICorProfilerCallback4_RemotingClientInvocationFinished(This)   \
     ( (This)->lpVtbl -> RemotingClientInvocationFinished(This) ) 
 
-#define ICorProfilerCallback4_RemotingServerReceivingMessage(This,pCookie,fIsAsync) \
+#define ICorProfilerCallback4_RemotingServerReceivingMessage(This,pCookie,fIsAsync)    \
     ( (This)->lpVtbl -> RemotingServerReceivingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback4_RemotingServerInvocationStarted(This) \
+#define ICorProfilerCallback4_RemotingServerInvocationStarted(This)    \
     ( (This)->lpVtbl -> RemotingServerInvocationStarted(This) ) 
 
-#define ICorProfilerCallback4_RemotingServerInvocationReturned(This)    \
+#define ICorProfilerCallback4_RemotingServerInvocationReturned(This)   \
     ( (This)->lpVtbl -> RemotingServerInvocationReturned(This) ) 
 
-#define ICorProfilerCallback4_RemotingServerSendingReply(This,pCookie,fIsAsync) \
+#define ICorProfilerCallback4_RemotingServerSendingReply(This,pCookie,fIsAsync)        \
     ( (This)->lpVtbl -> RemotingServerSendingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback4_UnmanagedToManagedTransition(This,functionId,reason)  \
+#define ICorProfilerCallback4_UnmanagedToManagedTransition(This,functionId,reason)     \
     ( (This)->lpVtbl -> UnmanagedToManagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback4_ManagedToUnmanagedTransition(This,functionId,reason)  \
+#define ICorProfilerCallback4_ManagedToUnmanagedTransition(This,functionId,reason)     \
     ( (This)->lpVtbl -> ManagedToUnmanagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback4_RuntimeSuspendStarted(This,suspendReason) \
+#define ICorProfilerCallback4_RuntimeSuspendStarted(This,suspendReason)        \
     ( (This)->lpVtbl -> RuntimeSuspendStarted(This,suspendReason) ) 
 
-#define ICorProfilerCallback4_RuntimeSuspendFinished(This)  \
+#define ICorProfilerCallback4_RuntimeSuspendFinished(This)     \
     ( (This)->lpVtbl -> RuntimeSuspendFinished(This) ) 
 
-#define ICorProfilerCallback4_RuntimeSuspendAborted(This)   \
+#define ICorProfilerCallback4_RuntimeSuspendAborted(This)      \
     ( (This)->lpVtbl -> RuntimeSuspendAborted(This) ) 
 
-#define ICorProfilerCallback4_RuntimeResumeStarted(This)    \
+#define ICorProfilerCallback4_RuntimeResumeStarted(This)       \
     ( (This)->lpVtbl -> RuntimeResumeStarted(This) ) 
 
-#define ICorProfilerCallback4_RuntimeResumeFinished(This)   \
+#define ICorProfilerCallback4_RuntimeResumeFinished(This)      \
     ( (This)->lpVtbl -> RuntimeResumeFinished(This) ) 
 
-#define ICorProfilerCallback4_RuntimeThreadSuspended(This,threadId) \
+#define ICorProfilerCallback4_RuntimeThreadSuspended(This,threadId)    \
     ( (This)->lpVtbl -> RuntimeThreadSuspended(This,threadId) ) 
 
-#define ICorProfilerCallback4_RuntimeThreadResumed(This,threadId)   \
+#define ICorProfilerCallback4_RuntimeThreadResumed(This,threadId)      \
     ( (This)->lpVtbl -> RuntimeThreadResumed(This,threadId) ) 
 
-#define ICorProfilerCallback4_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)   \
+#define ICorProfilerCallback4_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)      \
     ( (This)->lpVtbl -> MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback4_ObjectAllocated(This,objectId,classId)    \
+#define ICorProfilerCallback4_ObjectAllocated(This,objectId,classId)   \
     ( (This)->lpVtbl -> ObjectAllocated(This,objectId,classId) ) 
 
-#define ICorProfilerCallback4_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)   \
+#define ICorProfilerCallback4_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)      \
     ( (This)->lpVtbl -> ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects) ) 
 
-#define ICorProfilerCallback4_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds)  \
+#define ICorProfilerCallback4_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) \
     ( (This)->lpVtbl -> ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) ) 
 
-#define ICorProfilerCallback4_RootReferences(This,cRootRefs,rootRefIds) \
+#define ICorProfilerCallback4_RootReferences(This,cRootRefs,rootRefIds)        \
     ( (This)->lpVtbl -> RootReferences(This,cRootRefs,rootRefIds) ) 
 
-#define ICorProfilerCallback4_ExceptionThrown(This,thrownObjectId)  \
+#define ICorProfilerCallback4_ExceptionThrown(This,thrownObjectId)     \
     ( (This)->lpVtbl -> ExceptionThrown(This,thrownObjectId) ) 
 
-#define ICorProfilerCallback4_ExceptionSearchFunctionEnter(This,functionId) \
+#define ICorProfilerCallback4_ExceptionSearchFunctionEnter(This,functionId)    \
     ( (This)->lpVtbl -> ExceptionSearchFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback4_ExceptionSearchFunctionLeave(This)    \
+#define ICorProfilerCallback4_ExceptionSearchFunctionLeave(This)       \
     ( (This)->lpVtbl -> ExceptionSearchFunctionLeave(This) ) 
 
-#define ICorProfilerCallback4_ExceptionSearchFilterEnter(This,functionId)   \
+#define ICorProfilerCallback4_ExceptionSearchFilterEnter(This,functionId)      \
     ( (This)->lpVtbl -> ExceptionSearchFilterEnter(This,functionId) ) 
 
-#define ICorProfilerCallback4_ExceptionSearchFilterLeave(This)  \
+#define ICorProfilerCallback4_ExceptionSearchFilterLeave(This) \
     ( (This)->lpVtbl -> ExceptionSearchFilterLeave(This) ) 
 
-#define ICorProfilerCallback4_ExceptionSearchCatcherFound(This,functionId)  \
+#define ICorProfilerCallback4_ExceptionSearchCatcherFound(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionSearchCatcherFound(This,functionId) ) 
 
-#define ICorProfilerCallback4_ExceptionOSHandlerEnter(This,__unused)    \
+#define ICorProfilerCallback4_ExceptionOSHandlerEnter(This,__unused)   \
     ( (This)->lpVtbl -> ExceptionOSHandlerEnter(This,__unused) ) 
 
-#define ICorProfilerCallback4_ExceptionOSHandlerLeave(This,__unused)    \
+#define ICorProfilerCallback4_ExceptionOSHandlerLeave(This,__unused)   \
     ( (This)->lpVtbl -> ExceptionOSHandlerLeave(This,__unused) ) 
 
-#define ICorProfilerCallback4_ExceptionUnwindFunctionEnter(This,functionId) \
+#define ICorProfilerCallback4_ExceptionUnwindFunctionEnter(This,functionId)    \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback4_ExceptionUnwindFunctionLeave(This)    \
+#define ICorProfilerCallback4_ExceptionUnwindFunctionLeave(This)       \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionLeave(This) ) 
 
-#define ICorProfilerCallback4_ExceptionUnwindFinallyEnter(This,functionId)  \
+#define ICorProfilerCallback4_ExceptionUnwindFinallyEnter(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyEnter(This,functionId) ) 
 
-#define ICorProfilerCallback4_ExceptionUnwindFinallyLeave(This) \
+#define ICorProfilerCallback4_ExceptionUnwindFinallyLeave(This)        \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyLeave(This) ) 
 
-#define ICorProfilerCallback4_ExceptionCatcherEnter(This,functionId,objectId)   \
+#define ICorProfilerCallback4_ExceptionCatcherEnter(This,functionId,objectId)  \
     ( (This)->lpVtbl -> ExceptionCatcherEnter(This,functionId,objectId) ) 
 
-#define ICorProfilerCallback4_ExceptionCatcherLeave(This)   \
+#define ICorProfilerCallback4_ExceptionCatcherLeave(This)      \
     ( (This)->lpVtbl -> ExceptionCatcherLeave(This) ) 
 
-#define ICorProfilerCallback4_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)    \
+#define ICorProfilerCallback4_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)       \
     ( (This)->lpVtbl -> COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots) ) 
 
-#define ICorProfilerCallback4_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) \
+#define ICorProfilerCallback4_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable)    \
     ( (This)->lpVtbl -> COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) ) 
 
-#define ICorProfilerCallback4_ExceptionCLRCatcherFound(This)    \
+#define ICorProfilerCallback4_ExceptionCLRCatcherFound(This)   \
     ( (This)->lpVtbl -> ExceptionCLRCatcherFound(This) ) 
 
-#define ICorProfilerCallback4_ExceptionCLRCatcherExecute(This)  \
+#define ICorProfilerCallback4_ExceptionCLRCatcherExecute(This) \
     ( (This)->lpVtbl -> ExceptionCLRCatcherExecute(This) ) 
 
 
-#define ICorProfilerCallback4_ThreadNameChanged(This,threadId,cchName,name) \
+#define ICorProfilerCallback4_ThreadNameChanged(This,threadId,cchName,name)    \
     ( (This)->lpVtbl -> ThreadNameChanged(This,threadId,cchName,name) ) 
 
-#define ICorProfilerCallback4_GarbageCollectionStarted(This,cGenerations,generationCollected,reason)    \
+#define ICorProfilerCallback4_GarbageCollectionStarted(This,cGenerations,generationCollected,reason)   \
     ( (This)->lpVtbl -> GarbageCollectionStarted(This,cGenerations,generationCollected,reason) ) 
 
-#define ICorProfilerCallback4_SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)    \
+#define ICorProfilerCallback4_SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)       \
     ( (This)->lpVtbl -> SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback4_GarbageCollectionFinished(This)   \
+#define ICorProfilerCallback4_GarbageCollectionFinished(This)  \
     ( (This)->lpVtbl -> GarbageCollectionFinished(This) ) 
 
-#define ICorProfilerCallback4_FinalizeableObjectQueued(This,finalizerFlags,objectID)    \
+#define ICorProfilerCallback4_FinalizeableObjectQueued(This,finalizerFlags,objectID)   \
     ( (This)->lpVtbl -> FinalizeableObjectQueued(This,finalizerFlags,objectID) ) 
 
-#define ICorProfilerCallback4_RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds)    \
+#define ICorProfilerCallback4_RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds)   \
     ( (This)->lpVtbl -> RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds) ) 
 
-#define ICorProfilerCallback4_HandleCreated(This,handleId,initialObjectId)  \
+#define ICorProfilerCallback4_HandleCreated(This,handleId,initialObjectId)     \
     ( (This)->lpVtbl -> HandleCreated(This,handleId,initialObjectId) ) 
 
-#define ICorProfilerCallback4_HandleDestroyed(This,handleId)    \
+#define ICorProfilerCallback4_HandleDestroyed(This,handleId)   \
     ( (This)->lpVtbl -> HandleDestroyed(This,handleId) ) 
 
 
-#define ICorProfilerCallback4_InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData)   \
+#define ICorProfilerCallback4_InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData)  \
     ( (This)->lpVtbl -> InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData) ) 
 
-#define ICorProfilerCallback4_ProfilerAttachComplete(This)  \
+#define ICorProfilerCallback4_ProfilerAttachComplete(This)     \
     ( (This)->lpVtbl -> ProfilerAttachComplete(This) ) 
 
-#define ICorProfilerCallback4_ProfilerDetachSucceeded(This) \
+#define ICorProfilerCallback4_ProfilerDetachSucceeded(This)    \
     ( (This)->lpVtbl -> ProfilerDetachSucceeded(This) ) 
 
 
-#define ICorProfilerCallback4_ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock)   \
+#define ICorProfilerCallback4_ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock)  \
     ( (This)->lpVtbl -> ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback4_GetReJITParameters(This,moduleId,methodId,pFunctionControl)   \
+#define ICorProfilerCallback4_GetReJITParameters(This,moduleId,methodId,pFunctionControl)      \
     ( (This)->lpVtbl -> GetReJITParameters(This,moduleId,methodId,pFunctionControl) ) 
 
-#define ICorProfilerCallback4_ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock) \
+#define ICorProfilerCallback4_ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock)        \
     ( (This)->lpVtbl -> ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback4_ReJITError(This,moduleId,methodId,functionId,hrStatus)    \
+#define ICorProfilerCallback4_ReJITError(This,moduleId,methodId,functionId,hrStatus)   \
     ( (This)->lpVtbl -> ReJITError(This,moduleId,methodId,functionId,hrStatus) ) 
 
-#define ICorProfilerCallback4_MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)  \
+#define ICorProfilerCallback4_MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)     \
     ( (This)->lpVtbl -> MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback4_SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)   \
+#define ICorProfilerCallback4_SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)      \
     ( (This)->lpVtbl -> SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerCallback4_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerCallback4_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerCallback5_INTERFACE_DEFINED__
@@ -3643,7 +3644,7 @@ EXTERN_C const IID IID_ICorProfilerCallback5;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerCallback5Vtbl
     {
@@ -4075,290 +4076,290 @@ EXTERN_C const IID IID_ICorProfilerCallback5;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerCallback5_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerCallback5_QueryInterface(This,riid,ppvObject)      \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerCallback5_AddRef(This)  \
+#define ICorProfilerCallback5_AddRef(This)     \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerCallback5_Release(This) \
+#define ICorProfilerCallback5_Release(This)    \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerCallback5_Initialize(This,pICorProfilerInfoUnk) \
+#define ICorProfilerCallback5_Initialize(This,pICorProfilerInfoUnk)    \
     ( (This)->lpVtbl -> Initialize(This,pICorProfilerInfoUnk) ) 
 
-#define ICorProfilerCallback5_Shutdown(This)    \
+#define ICorProfilerCallback5_Shutdown(This)   \
     ( (This)->lpVtbl -> Shutdown(This) ) 
 
-#define ICorProfilerCallback5_AppDomainCreationStarted(This,appDomainId)    \
+#define ICorProfilerCallback5_AppDomainCreationStarted(This,appDomainId)       \
     ( (This)->lpVtbl -> AppDomainCreationStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback5_AppDomainCreationFinished(This,appDomainId,hrStatus)  \
+#define ICorProfilerCallback5_AppDomainCreationFinished(This,appDomainId,hrStatus)     \
     ( (This)->lpVtbl -> AppDomainCreationFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback5_AppDomainShutdownStarted(This,appDomainId)    \
+#define ICorProfilerCallback5_AppDomainShutdownStarted(This,appDomainId)       \
     ( (This)->lpVtbl -> AppDomainShutdownStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback5_AppDomainShutdownFinished(This,appDomainId,hrStatus)  \
+#define ICorProfilerCallback5_AppDomainShutdownFinished(This,appDomainId,hrStatus)     \
     ( (This)->lpVtbl -> AppDomainShutdownFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback5_AssemblyLoadStarted(This,assemblyId)  \
+#define ICorProfilerCallback5_AssemblyLoadStarted(This,assemblyId)     \
     ( (This)->lpVtbl -> AssemblyLoadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback5_AssemblyLoadFinished(This,assemblyId,hrStatus)    \
+#define ICorProfilerCallback5_AssemblyLoadFinished(This,assemblyId,hrStatus)   \
     ( (This)->lpVtbl -> AssemblyLoadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback5_AssemblyUnloadStarted(This,assemblyId)    \
+#define ICorProfilerCallback5_AssemblyUnloadStarted(This,assemblyId)   \
     ( (This)->lpVtbl -> AssemblyUnloadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback5_AssemblyUnloadFinished(This,assemblyId,hrStatus)  \
+#define ICorProfilerCallback5_AssemblyUnloadFinished(This,assemblyId,hrStatus) \
     ( (This)->lpVtbl -> AssemblyUnloadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback5_ModuleLoadStarted(This,moduleId)  \
+#define ICorProfilerCallback5_ModuleLoadStarted(This,moduleId) \
     ( (This)->lpVtbl -> ModuleLoadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback5_ModuleLoadFinished(This,moduleId,hrStatus)    \
+#define ICorProfilerCallback5_ModuleLoadFinished(This,moduleId,hrStatus)       \
     ( (This)->lpVtbl -> ModuleLoadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback5_ModuleUnloadStarted(This,moduleId)    \
+#define ICorProfilerCallback5_ModuleUnloadStarted(This,moduleId)       \
     ( (This)->lpVtbl -> ModuleUnloadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback5_ModuleUnloadFinished(This,moduleId,hrStatus)  \
+#define ICorProfilerCallback5_ModuleUnloadFinished(This,moduleId,hrStatus)     \
     ( (This)->lpVtbl -> ModuleUnloadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback5_ModuleAttachedToAssembly(This,moduleId,AssemblyId)    \
+#define ICorProfilerCallback5_ModuleAttachedToAssembly(This,moduleId,AssemblyId)       \
     ( (This)->lpVtbl -> ModuleAttachedToAssembly(This,moduleId,AssemblyId) ) 
 
-#define ICorProfilerCallback5_ClassLoadStarted(This,classId)    \
+#define ICorProfilerCallback5_ClassLoadStarted(This,classId)   \
     ( (This)->lpVtbl -> ClassLoadStarted(This,classId) ) 
 
-#define ICorProfilerCallback5_ClassLoadFinished(This,classId,hrStatus)  \
+#define ICorProfilerCallback5_ClassLoadFinished(This,classId,hrStatus) \
     ( (This)->lpVtbl -> ClassLoadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback5_ClassUnloadStarted(This,classId)  \
+#define ICorProfilerCallback5_ClassUnloadStarted(This,classId) \
     ( (This)->lpVtbl -> ClassUnloadStarted(This,classId) ) 
 
-#define ICorProfilerCallback5_ClassUnloadFinished(This,classId,hrStatus)    \
+#define ICorProfilerCallback5_ClassUnloadFinished(This,classId,hrStatus)       \
     ( (This)->lpVtbl -> ClassUnloadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback5_FunctionUnloadStarted(This,functionId)    \
+#define ICorProfilerCallback5_FunctionUnloadStarted(This,functionId)   \
     ( (This)->lpVtbl -> FunctionUnloadStarted(This,functionId) ) 
 
-#define ICorProfilerCallback5_JITCompilationStarted(This,functionId,fIsSafeToBlock) \
+#define ICorProfilerCallback5_JITCompilationStarted(This,functionId,fIsSafeToBlock)    \
     ( (This)->lpVtbl -> JITCompilationStarted(This,functionId,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback5_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)   \
+#define ICorProfilerCallback5_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)  \
     ( (This)->lpVtbl -> JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback5_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)   \
+#define ICorProfilerCallback5_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)      \
     ( (This)->lpVtbl -> JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction) ) 
 
-#define ICorProfilerCallback5_JITCachedFunctionSearchFinished(This,functionId,result)   \
+#define ICorProfilerCallback5_JITCachedFunctionSearchFinished(This,functionId,result)  \
     ( (This)->lpVtbl -> JITCachedFunctionSearchFinished(This,functionId,result) ) 
 
-#define ICorProfilerCallback5_JITFunctionPitched(This,functionId)   \
+#define ICorProfilerCallback5_JITFunctionPitched(This,functionId)      \
     ( (This)->lpVtbl -> JITFunctionPitched(This,functionId) ) 
 
-#define ICorProfilerCallback5_JITInlining(This,callerId,calleeId,pfShouldInline)    \
+#define ICorProfilerCallback5_JITInlining(This,callerId,calleeId,pfShouldInline)       \
     ( (This)->lpVtbl -> JITInlining(This,callerId,calleeId,pfShouldInline) ) 
 
-#define ICorProfilerCallback5_ThreadCreated(This,threadId)  \
+#define ICorProfilerCallback5_ThreadCreated(This,threadId)     \
     ( (This)->lpVtbl -> ThreadCreated(This,threadId) ) 
 
-#define ICorProfilerCallback5_ThreadDestroyed(This,threadId)    \
+#define ICorProfilerCallback5_ThreadDestroyed(This,threadId)   \
     ( (This)->lpVtbl -> ThreadDestroyed(This,threadId) ) 
 
-#define ICorProfilerCallback5_ThreadAssignedToOSThread(This,managedThreadId,osThreadId) \
+#define ICorProfilerCallback5_ThreadAssignedToOSThread(This,managedThreadId,osThreadId)        \
     ( (This)->lpVtbl -> ThreadAssignedToOSThread(This,managedThreadId,osThreadId) ) 
 
-#define ICorProfilerCallback5_RemotingClientInvocationStarted(This) \
+#define ICorProfilerCallback5_RemotingClientInvocationStarted(This)    \
     ( (This)->lpVtbl -> RemotingClientInvocationStarted(This) ) 
 
-#define ICorProfilerCallback5_RemotingClientSendingMessage(This,pCookie,fIsAsync)   \
+#define ICorProfilerCallback5_RemotingClientSendingMessage(This,pCookie,fIsAsync)      \
     ( (This)->lpVtbl -> RemotingClientSendingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback5_RemotingClientReceivingReply(This,pCookie,fIsAsync)   \
+#define ICorProfilerCallback5_RemotingClientReceivingReply(This,pCookie,fIsAsync)      \
     ( (This)->lpVtbl -> RemotingClientReceivingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback5_RemotingClientInvocationFinished(This)    \
+#define ICorProfilerCallback5_RemotingClientInvocationFinished(This)   \
     ( (This)->lpVtbl -> RemotingClientInvocationFinished(This) ) 
 
-#define ICorProfilerCallback5_RemotingServerReceivingMessage(This,pCookie,fIsAsync) \
+#define ICorProfilerCallback5_RemotingServerReceivingMessage(This,pCookie,fIsAsync)    \
     ( (This)->lpVtbl -> RemotingServerReceivingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback5_RemotingServerInvocationStarted(This) \
+#define ICorProfilerCallback5_RemotingServerInvocationStarted(This)    \
     ( (This)->lpVtbl -> RemotingServerInvocationStarted(This) ) 
 
-#define ICorProfilerCallback5_RemotingServerInvocationReturned(This)    \
+#define ICorProfilerCallback5_RemotingServerInvocationReturned(This)   \
     ( (This)->lpVtbl -> RemotingServerInvocationReturned(This) ) 
 
-#define ICorProfilerCallback5_RemotingServerSendingReply(This,pCookie,fIsAsync) \
+#define ICorProfilerCallback5_RemotingServerSendingReply(This,pCookie,fIsAsync)        \
     ( (This)->lpVtbl -> RemotingServerSendingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback5_UnmanagedToManagedTransition(This,functionId,reason)  \
+#define ICorProfilerCallback5_UnmanagedToManagedTransition(This,functionId,reason)     \
     ( (This)->lpVtbl -> UnmanagedToManagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback5_ManagedToUnmanagedTransition(This,functionId,reason)  \
+#define ICorProfilerCallback5_ManagedToUnmanagedTransition(This,functionId,reason)     \
     ( (This)->lpVtbl -> ManagedToUnmanagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback5_RuntimeSuspendStarted(This,suspendReason) \
+#define ICorProfilerCallback5_RuntimeSuspendStarted(This,suspendReason)        \
     ( (This)->lpVtbl -> RuntimeSuspendStarted(This,suspendReason) ) 
 
-#define ICorProfilerCallback5_RuntimeSuspendFinished(This)  \
+#define ICorProfilerCallback5_RuntimeSuspendFinished(This)     \
     ( (This)->lpVtbl -> RuntimeSuspendFinished(This) ) 
 
-#define ICorProfilerCallback5_RuntimeSuspendAborted(This)   \
+#define ICorProfilerCallback5_RuntimeSuspendAborted(This)      \
     ( (This)->lpVtbl -> RuntimeSuspendAborted(This) ) 
 
-#define ICorProfilerCallback5_RuntimeResumeStarted(This)    \
+#define ICorProfilerCallback5_RuntimeResumeStarted(This)       \
     ( (This)->lpVtbl -> RuntimeResumeStarted(This) ) 
 
-#define ICorProfilerCallback5_RuntimeResumeFinished(This)   \
+#define ICorProfilerCallback5_RuntimeResumeFinished(This)      \
     ( (This)->lpVtbl -> RuntimeResumeFinished(This) ) 
 
-#define ICorProfilerCallback5_RuntimeThreadSuspended(This,threadId) \
+#define ICorProfilerCallback5_RuntimeThreadSuspended(This,threadId)    \
     ( (This)->lpVtbl -> RuntimeThreadSuspended(This,threadId) ) 
 
-#define ICorProfilerCallback5_RuntimeThreadResumed(This,threadId)   \
+#define ICorProfilerCallback5_RuntimeThreadResumed(This,threadId)      \
     ( (This)->lpVtbl -> RuntimeThreadResumed(This,threadId) ) 
 
-#define ICorProfilerCallback5_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)   \
+#define ICorProfilerCallback5_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)      \
     ( (This)->lpVtbl -> MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback5_ObjectAllocated(This,objectId,classId)    \
+#define ICorProfilerCallback5_ObjectAllocated(This,objectId,classId)   \
     ( (This)->lpVtbl -> ObjectAllocated(This,objectId,classId) ) 
 
-#define ICorProfilerCallback5_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)   \
+#define ICorProfilerCallback5_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)      \
     ( (This)->lpVtbl -> ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects) ) 
 
-#define ICorProfilerCallback5_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds)  \
+#define ICorProfilerCallback5_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) \
     ( (This)->lpVtbl -> ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) ) 
 
-#define ICorProfilerCallback5_RootReferences(This,cRootRefs,rootRefIds) \
+#define ICorProfilerCallback5_RootReferences(This,cRootRefs,rootRefIds)        \
     ( (This)->lpVtbl -> RootReferences(This,cRootRefs,rootRefIds) ) 
 
-#define ICorProfilerCallback5_ExceptionThrown(This,thrownObjectId)  \
+#define ICorProfilerCallback5_ExceptionThrown(This,thrownObjectId)     \
     ( (This)->lpVtbl -> ExceptionThrown(This,thrownObjectId) ) 
 
-#define ICorProfilerCallback5_ExceptionSearchFunctionEnter(This,functionId) \
+#define ICorProfilerCallback5_ExceptionSearchFunctionEnter(This,functionId)    \
     ( (This)->lpVtbl -> ExceptionSearchFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback5_ExceptionSearchFunctionLeave(This)    \
+#define ICorProfilerCallback5_ExceptionSearchFunctionLeave(This)       \
     ( (This)->lpVtbl -> ExceptionSearchFunctionLeave(This) ) 
 
-#define ICorProfilerCallback5_ExceptionSearchFilterEnter(This,functionId)   \
+#define ICorProfilerCallback5_ExceptionSearchFilterEnter(This,functionId)      \
     ( (This)->lpVtbl -> ExceptionSearchFilterEnter(This,functionId) ) 
 
-#define ICorProfilerCallback5_ExceptionSearchFilterLeave(This)  \
+#define ICorProfilerCallback5_ExceptionSearchFilterLeave(This) \
     ( (This)->lpVtbl -> ExceptionSearchFilterLeave(This) ) 
 
-#define ICorProfilerCallback5_ExceptionSearchCatcherFound(This,functionId)  \
+#define ICorProfilerCallback5_ExceptionSearchCatcherFound(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionSearchCatcherFound(This,functionId) ) 
 
-#define ICorProfilerCallback5_ExceptionOSHandlerEnter(This,__unused)    \
+#define ICorProfilerCallback5_ExceptionOSHandlerEnter(This,__unused)   \
     ( (This)->lpVtbl -> ExceptionOSHandlerEnter(This,__unused) ) 
 
-#define ICorProfilerCallback5_ExceptionOSHandlerLeave(This,__unused)    \
+#define ICorProfilerCallback5_ExceptionOSHandlerLeave(This,__unused)   \
     ( (This)->lpVtbl -> ExceptionOSHandlerLeave(This,__unused) ) 
 
-#define ICorProfilerCallback5_ExceptionUnwindFunctionEnter(This,functionId) \
+#define ICorProfilerCallback5_ExceptionUnwindFunctionEnter(This,functionId)    \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback5_ExceptionUnwindFunctionLeave(This)    \
+#define ICorProfilerCallback5_ExceptionUnwindFunctionLeave(This)       \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionLeave(This) ) 
 
-#define ICorProfilerCallback5_ExceptionUnwindFinallyEnter(This,functionId)  \
+#define ICorProfilerCallback5_ExceptionUnwindFinallyEnter(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyEnter(This,functionId) ) 
 
-#define ICorProfilerCallback5_ExceptionUnwindFinallyLeave(This) \
+#define ICorProfilerCallback5_ExceptionUnwindFinallyLeave(This)        \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyLeave(This) ) 
 
-#define ICorProfilerCallback5_ExceptionCatcherEnter(This,functionId,objectId)   \
+#define ICorProfilerCallback5_ExceptionCatcherEnter(This,functionId,objectId)  \
     ( (This)->lpVtbl -> ExceptionCatcherEnter(This,functionId,objectId) ) 
 
-#define ICorProfilerCallback5_ExceptionCatcherLeave(This)   \
+#define ICorProfilerCallback5_ExceptionCatcherLeave(This)      \
     ( (This)->lpVtbl -> ExceptionCatcherLeave(This) ) 
 
-#define ICorProfilerCallback5_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)    \
+#define ICorProfilerCallback5_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)       \
     ( (This)->lpVtbl -> COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots) ) 
 
-#define ICorProfilerCallback5_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) \
+#define ICorProfilerCallback5_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable)    \
     ( (This)->lpVtbl -> COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) ) 
 
-#define ICorProfilerCallback5_ExceptionCLRCatcherFound(This)    \
+#define ICorProfilerCallback5_ExceptionCLRCatcherFound(This)   \
     ( (This)->lpVtbl -> ExceptionCLRCatcherFound(This) ) 
 
-#define ICorProfilerCallback5_ExceptionCLRCatcherExecute(This)  \
+#define ICorProfilerCallback5_ExceptionCLRCatcherExecute(This) \
     ( (This)->lpVtbl -> ExceptionCLRCatcherExecute(This) ) 
 
 
-#define ICorProfilerCallback5_ThreadNameChanged(This,threadId,cchName,name) \
+#define ICorProfilerCallback5_ThreadNameChanged(This,threadId,cchName,name)    \
     ( (This)->lpVtbl -> ThreadNameChanged(This,threadId,cchName,name) ) 
 
-#define ICorProfilerCallback5_GarbageCollectionStarted(This,cGenerations,generationCollected,reason)    \
+#define ICorProfilerCallback5_GarbageCollectionStarted(This,cGenerations,generationCollected,reason)   \
     ( (This)->lpVtbl -> GarbageCollectionStarted(This,cGenerations,generationCollected,reason) ) 
 
-#define ICorProfilerCallback5_SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)    \
+#define ICorProfilerCallback5_SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)       \
     ( (This)->lpVtbl -> SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback5_GarbageCollectionFinished(This)   \
+#define ICorProfilerCallback5_GarbageCollectionFinished(This)  \
     ( (This)->lpVtbl -> GarbageCollectionFinished(This) ) 
 
-#define ICorProfilerCallback5_FinalizeableObjectQueued(This,finalizerFlags,objectID)    \
+#define ICorProfilerCallback5_FinalizeableObjectQueued(This,finalizerFlags,objectID)   \
     ( (This)->lpVtbl -> FinalizeableObjectQueued(This,finalizerFlags,objectID) ) 
 
-#define ICorProfilerCallback5_RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds)    \
+#define ICorProfilerCallback5_RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds)   \
     ( (This)->lpVtbl -> RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds) ) 
 
-#define ICorProfilerCallback5_HandleCreated(This,handleId,initialObjectId)  \
+#define ICorProfilerCallback5_HandleCreated(This,handleId,initialObjectId)     \
     ( (This)->lpVtbl -> HandleCreated(This,handleId,initialObjectId) ) 
 
-#define ICorProfilerCallback5_HandleDestroyed(This,handleId)    \
+#define ICorProfilerCallback5_HandleDestroyed(This,handleId)   \
     ( (This)->lpVtbl -> HandleDestroyed(This,handleId) ) 
 
 
-#define ICorProfilerCallback5_InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData)   \
+#define ICorProfilerCallback5_InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData)  \
     ( (This)->lpVtbl -> InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData) ) 
 
-#define ICorProfilerCallback5_ProfilerAttachComplete(This)  \
+#define ICorProfilerCallback5_ProfilerAttachComplete(This)     \
     ( (This)->lpVtbl -> ProfilerAttachComplete(This) ) 
 
-#define ICorProfilerCallback5_ProfilerDetachSucceeded(This) \
+#define ICorProfilerCallback5_ProfilerDetachSucceeded(This)    \
     ( (This)->lpVtbl -> ProfilerDetachSucceeded(This) ) 
 
 
-#define ICorProfilerCallback5_ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock)   \
+#define ICorProfilerCallback5_ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock)  \
     ( (This)->lpVtbl -> ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback5_GetReJITParameters(This,moduleId,methodId,pFunctionControl)   \
+#define ICorProfilerCallback5_GetReJITParameters(This,moduleId,methodId,pFunctionControl)      \
     ( (This)->lpVtbl -> GetReJITParameters(This,moduleId,methodId,pFunctionControl) ) 
 
-#define ICorProfilerCallback5_ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock) \
+#define ICorProfilerCallback5_ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock)        \
     ( (This)->lpVtbl -> ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback5_ReJITError(This,moduleId,methodId,functionId,hrStatus)    \
+#define ICorProfilerCallback5_ReJITError(This,moduleId,methodId,functionId,hrStatus)   \
     ( (This)->lpVtbl -> ReJITError(This,moduleId,methodId,functionId,hrStatus) ) 
 
-#define ICorProfilerCallback5_MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)  \
+#define ICorProfilerCallback5_MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)     \
     ( (This)->lpVtbl -> MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback5_SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)   \
+#define ICorProfilerCallback5_SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)      \
     ( (This)->lpVtbl -> SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength) ) 
 
 
-#define ICorProfilerCallback5_ConditionalWeakTableElementReferences(This,cRootRefs,keyRefIds,valueRefIds,rootIds)   \
+#define ICorProfilerCallback5_ConditionalWeakTableElementReferences(This,cRootRefs,keyRefIds,valueRefIds,rootIds)      \
     ( (This)->lpVtbl -> ConditionalWeakTableElementReferences(This,cRootRefs,keyRefIds,valueRefIds,rootIds) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerCallback5_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerCallback5_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerCallback6_INTERFACE_DEFINED__
@@ -4383,7 +4384,7 @@ EXTERN_C const IID IID_ICorProfilerCallback6;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerCallback6Vtbl
     {
@@ -4820,294 +4821,294 @@ EXTERN_C const IID IID_ICorProfilerCallback6;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerCallback6_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerCallback6_QueryInterface(This,riid,ppvObject)      \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerCallback6_AddRef(This)  \
+#define ICorProfilerCallback6_AddRef(This)     \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerCallback6_Release(This) \
+#define ICorProfilerCallback6_Release(This)    \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerCallback6_Initialize(This,pICorProfilerInfoUnk) \
+#define ICorProfilerCallback6_Initialize(This,pICorProfilerInfoUnk)    \
     ( (This)->lpVtbl -> Initialize(This,pICorProfilerInfoUnk) ) 
 
-#define ICorProfilerCallback6_Shutdown(This)    \
+#define ICorProfilerCallback6_Shutdown(This)   \
     ( (This)->lpVtbl -> Shutdown(This) ) 
 
-#define ICorProfilerCallback6_AppDomainCreationStarted(This,appDomainId)    \
+#define ICorProfilerCallback6_AppDomainCreationStarted(This,appDomainId)       \
     ( (This)->lpVtbl -> AppDomainCreationStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback6_AppDomainCreationFinished(This,appDomainId,hrStatus)  \
+#define ICorProfilerCallback6_AppDomainCreationFinished(This,appDomainId,hrStatus)     \
     ( (This)->lpVtbl -> AppDomainCreationFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback6_AppDomainShutdownStarted(This,appDomainId)    \
+#define ICorProfilerCallback6_AppDomainShutdownStarted(This,appDomainId)       \
     ( (This)->lpVtbl -> AppDomainShutdownStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback6_AppDomainShutdownFinished(This,appDomainId,hrStatus)  \
+#define ICorProfilerCallback6_AppDomainShutdownFinished(This,appDomainId,hrStatus)     \
     ( (This)->lpVtbl -> AppDomainShutdownFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback6_AssemblyLoadStarted(This,assemblyId)  \
+#define ICorProfilerCallback6_AssemblyLoadStarted(This,assemblyId)     \
     ( (This)->lpVtbl -> AssemblyLoadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback6_AssemblyLoadFinished(This,assemblyId,hrStatus)    \
+#define ICorProfilerCallback6_AssemblyLoadFinished(This,assemblyId,hrStatus)   \
     ( (This)->lpVtbl -> AssemblyLoadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback6_AssemblyUnloadStarted(This,assemblyId)    \
+#define ICorProfilerCallback6_AssemblyUnloadStarted(This,assemblyId)   \
     ( (This)->lpVtbl -> AssemblyUnloadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback6_AssemblyUnloadFinished(This,assemblyId,hrStatus)  \
+#define ICorProfilerCallback6_AssemblyUnloadFinished(This,assemblyId,hrStatus) \
     ( (This)->lpVtbl -> AssemblyUnloadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback6_ModuleLoadStarted(This,moduleId)  \
+#define ICorProfilerCallback6_ModuleLoadStarted(This,moduleId) \
     ( (This)->lpVtbl -> ModuleLoadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback6_ModuleLoadFinished(This,moduleId,hrStatus)    \
+#define ICorProfilerCallback6_ModuleLoadFinished(This,moduleId,hrStatus)       \
     ( (This)->lpVtbl -> ModuleLoadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback6_ModuleUnloadStarted(This,moduleId)    \
+#define ICorProfilerCallback6_ModuleUnloadStarted(This,moduleId)       \
     ( (This)->lpVtbl -> ModuleUnloadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback6_ModuleUnloadFinished(This,moduleId,hrStatus)  \
+#define ICorProfilerCallback6_ModuleUnloadFinished(This,moduleId,hrStatus)     \
     ( (This)->lpVtbl -> ModuleUnloadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback6_ModuleAttachedToAssembly(This,moduleId,AssemblyId)    \
+#define ICorProfilerCallback6_ModuleAttachedToAssembly(This,moduleId,AssemblyId)       \
     ( (This)->lpVtbl -> ModuleAttachedToAssembly(This,moduleId,AssemblyId) ) 
 
-#define ICorProfilerCallback6_ClassLoadStarted(This,classId)    \
+#define ICorProfilerCallback6_ClassLoadStarted(This,classId)   \
     ( (This)->lpVtbl -> ClassLoadStarted(This,classId) ) 
 
-#define ICorProfilerCallback6_ClassLoadFinished(This,classId,hrStatus)  \
+#define ICorProfilerCallback6_ClassLoadFinished(This,classId,hrStatus) \
     ( (This)->lpVtbl -> ClassLoadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback6_ClassUnloadStarted(This,classId)  \
+#define ICorProfilerCallback6_ClassUnloadStarted(This,classId) \
     ( (This)->lpVtbl -> ClassUnloadStarted(This,classId) ) 
 
-#define ICorProfilerCallback6_ClassUnloadFinished(This,classId,hrStatus)    \
+#define ICorProfilerCallback6_ClassUnloadFinished(This,classId,hrStatus)       \
     ( (This)->lpVtbl -> ClassUnloadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback6_FunctionUnloadStarted(This,functionId)    \
+#define ICorProfilerCallback6_FunctionUnloadStarted(This,functionId)   \
     ( (This)->lpVtbl -> FunctionUnloadStarted(This,functionId) ) 
 
-#define ICorProfilerCallback6_JITCompilationStarted(This,functionId,fIsSafeToBlock) \
+#define ICorProfilerCallback6_JITCompilationStarted(This,functionId,fIsSafeToBlock)    \
     ( (This)->lpVtbl -> JITCompilationStarted(This,functionId,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback6_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)   \
+#define ICorProfilerCallback6_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)  \
     ( (This)->lpVtbl -> JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback6_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)   \
+#define ICorProfilerCallback6_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)      \
     ( (This)->lpVtbl -> JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction) ) 
 
-#define ICorProfilerCallback6_JITCachedFunctionSearchFinished(This,functionId,result)   \
+#define ICorProfilerCallback6_JITCachedFunctionSearchFinished(This,functionId,result)  \
     ( (This)->lpVtbl -> JITCachedFunctionSearchFinished(This,functionId,result) ) 
 
-#define ICorProfilerCallback6_JITFunctionPitched(This,functionId)   \
+#define ICorProfilerCallback6_JITFunctionPitched(This,functionId)      \
     ( (This)->lpVtbl -> JITFunctionPitched(This,functionId) ) 
 
-#define ICorProfilerCallback6_JITInlining(This,callerId,calleeId,pfShouldInline)    \
+#define ICorProfilerCallback6_JITInlining(This,callerId,calleeId,pfShouldInline)       \
     ( (This)->lpVtbl -> JITInlining(This,callerId,calleeId,pfShouldInline) ) 
 
-#define ICorProfilerCallback6_ThreadCreated(This,threadId)  \
+#define ICorProfilerCallback6_ThreadCreated(This,threadId)     \
     ( (This)->lpVtbl -> ThreadCreated(This,threadId) ) 
 
-#define ICorProfilerCallback6_ThreadDestroyed(This,threadId)    \
+#define ICorProfilerCallback6_ThreadDestroyed(This,threadId)   \
     ( (This)->lpVtbl -> ThreadDestroyed(This,threadId) ) 
 
-#define ICorProfilerCallback6_ThreadAssignedToOSThread(This,managedThreadId,osThreadId) \
+#define ICorProfilerCallback6_ThreadAssignedToOSThread(This,managedThreadId,osThreadId)        \
     ( (This)->lpVtbl -> ThreadAssignedToOSThread(This,managedThreadId,osThreadId) ) 
 
-#define ICorProfilerCallback6_RemotingClientInvocationStarted(This) \
+#define ICorProfilerCallback6_RemotingClientInvocationStarted(This)    \
     ( (This)->lpVtbl -> RemotingClientInvocationStarted(This) ) 
 
-#define ICorProfilerCallback6_RemotingClientSendingMessage(This,pCookie,fIsAsync)   \
+#define ICorProfilerCallback6_RemotingClientSendingMessage(This,pCookie,fIsAsync)      \
     ( (This)->lpVtbl -> RemotingClientSendingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback6_RemotingClientReceivingReply(This,pCookie,fIsAsync)   \
+#define ICorProfilerCallback6_RemotingClientReceivingReply(This,pCookie,fIsAsync)      \
     ( (This)->lpVtbl -> RemotingClientReceivingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback6_RemotingClientInvocationFinished(This)    \
+#define ICorProfilerCallback6_RemotingClientInvocationFinished(This)   \
     ( (This)->lpVtbl -> RemotingClientInvocationFinished(This) ) 
 
-#define ICorProfilerCallback6_RemotingServerReceivingMessage(This,pCookie,fIsAsync) \
+#define ICorProfilerCallback6_RemotingServerReceivingMessage(This,pCookie,fIsAsync)    \
     ( (This)->lpVtbl -> RemotingServerReceivingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback6_RemotingServerInvocationStarted(This) \
+#define ICorProfilerCallback6_RemotingServerInvocationStarted(This)    \
     ( (This)->lpVtbl -> RemotingServerInvocationStarted(This) ) 
 
-#define ICorProfilerCallback6_RemotingServerInvocationReturned(This)    \
+#define ICorProfilerCallback6_RemotingServerInvocationReturned(This)   \
     ( (This)->lpVtbl -> RemotingServerInvocationReturned(This) ) 
 
-#define ICorProfilerCallback6_RemotingServerSendingReply(This,pCookie,fIsAsync) \
+#define ICorProfilerCallback6_RemotingServerSendingReply(This,pCookie,fIsAsync)        \
     ( (This)->lpVtbl -> RemotingServerSendingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback6_UnmanagedToManagedTransition(This,functionId,reason)  \
+#define ICorProfilerCallback6_UnmanagedToManagedTransition(This,functionId,reason)     \
     ( (This)->lpVtbl -> UnmanagedToManagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback6_ManagedToUnmanagedTransition(This,functionId,reason)  \
+#define ICorProfilerCallback6_ManagedToUnmanagedTransition(This,functionId,reason)     \
     ( (This)->lpVtbl -> ManagedToUnmanagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback6_RuntimeSuspendStarted(This,suspendReason) \
+#define ICorProfilerCallback6_RuntimeSuspendStarted(This,suspendReason)        \
     ( (This)->lpVtbl -> RuntimeSuspendStarted(This,suspendReason) ) 
 
-#define ICorProfilerCallback6_RuntimeSuspendFinished(This)  \
+#define ICorProfilerCallback6_RuntimeSuspendFinished(This)     \
     ( (This)->lpVtbl -> RuntimeSuspendFinished(This) ) 
 
-#define ICorProfilerCallback6_RuntimeSuspendAborted(This)   \
+#define ICorProfilerCallback6_RuntimeSuspendAborted(This)      \
     ( (This)->lpVtbl -> RuntimeSuspendAborted(This) ) 
 
-#define ICorProfilerCallback6_RuntimeResumeStarted(This)    \
+#define ICorProfilerCallback6_RuntimeResumeStarted(This)       \
     ( (This)->lpVtbl -> RuntimeResumeStarted(This) ) 
 
-#define ICorProfilerCallback6_RuntimeResumeFinished(This)   \
+#define ICorProfilerCallback6_RuntimeResumeFinished(This)      \
     ( (This)->lpVtbl -> RuntimeResumeFinished(This) ) 
 
-#define ICorProfilerCallback6_RuntimeThreadSuspended(This,threadId) \
+#define ICorProfilerCallback6_RuntimeThreadSuspended(This,threadId)    \
     ( (This)->lpVtbl -> RuntimeThreadSuspended(This,threadId) ) 
 
-#define ICorProfilerCallback6_RuntimeThreadResumed(This,threadId)   \
+#define ICorProfilerCallback6_RuntimeThreadResumed(This,threadId)      \
     ( (This)->lpVtbl -> RuntimeThreadResumed(This,threadId) ) 
 
-#define ICorProfilerCallback6_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)   \
+#define ICorProfilerCallback6_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)      \
     ( (This)->lpVtbl -> MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback6_ObjectAllocated(This,objectId,classId)    \
+#define ICorProfilerCallback6_ObjectAllocated(This,objectId,classId)   \
     ( (This)->lpVtbl -> ObjectAllocated(This,objectId,classId) ) 
 
-#define ICorProfilerCallback6_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)   \
+#define ICorProfilerCallback6_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)      \
     ( (This)->lpVtbl -> ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects) ) 
 
-#define ICorProfilerCallback6_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds)  \
+#define ICorProfilerCallback6_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) \
     ( (This)->lpVtbl -> ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) ) 
 
-#define ICorProfilerCallback6_RootReferences(This,cRootRefs,rootRefIds) \
+#define ICorProfilerCallback6_RootReferences(This,cRootRefs,rootRefIds)        \
     ( (This)->lpVtbl -> RootReferences(This,cRootRefs,rootRefIds) ) 
 
-#define ICorProfilerCallback6_ExceptionThrown(This,thrownObjectId)  \
+#define ICorProfilerCallback6_ExceptionThrown(This,thrownObjectId)     \
     ( (This)->lpVtbl -> ExceptionThrown(This,thrownObjectId) ) 
 
-#define ICorProfilerCallback6_ExceptionSearchFunctionEnter(This,functionId) \
+#define ICorProfilerCallback6_ExceptionSearchFunctionEnter(This,functionId)    \
     ( (This)->lpVtbl -> ExceptionSearchFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback6_ExceptionSearchFunctionLeave(This)    \
+#define ICorProfilerCallback6_ExceptionSearchFunctionLeave(This)       \
     ( (This)->lpVtbl -> ExceptionSearchFunctionLeave(This) ) 
 
-#define ICorProfilerCallback6_ExceptionSearchFilterEnter(This,functionId)   \
+#define ICorProfilerCallback6_ExceptionSearchFilterEnter(This,functionId)      \
     ( (This)->lpVtbl -> ExceptionSearchFilterEnter(This,functionId) ) 
 
-#define ICorProfilerCallback6_ExceptionSearchFilterLeave(This)  \
+#define ICorProfilerCallback6_ExceptionSearchFilterLeave(This) \
     ( (This)->lpVtbl -> ExceptionSearchFilterLeave(This) ) 
 
-#define ICorProfilerCallback6_ExceptionSearchCatcherFound(This,functionId)  \
+#define ICorProfilerCallback6_ExceptionSearchCatcherFound(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionSearchCatcherFound(This,functionId) ) 
 
-#define ICorProfilerCallback6_ExceptionOSHandlerEnter(This,__unused)    \
+#define ICorProfilerCallback6_ExceptionOSHandlerEnter(This,__unused)   \
     ( (This)->lpVtbl -> ExceptionOSHandlerEnter(This,__unused) ) 
 
-#define ICorProfilerCallback6_ExceptionOSHandlerLeave(This,__unused)    \
+#define ICorProfilerCallback6_ExceptionOSHandlerLeave(This,__unused)   \
     ( (This)->lpVtbl -> ExceptionOSHandlerLeave(This,__unused) ) 
 
-#define ICorProfilerCallback6_ExceptionUnwindFunctionEnter(This,functionId) \
+#define ICorProfilerCallback6_ExceptionUnwindFunctionEnter(This,functionId)    \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback6_ExceptionUnwindFunctionLeave(This)    \
+#define ICorProfilerCallback6_ExceptionUnwindFunctionLeave(This)       \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionLeave(This) ) 
 
-#define ICorProfilerCallback6_ExceptionUnwindFinallyEnter(This,functionId)  \
+#define ICorProfilerCallback6_ExceptionUnwindFinallyEnter(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyEnter(This,functionId) ) 
 
-#define ICorProfilerCallback6_ExceptionUnwindFinallyLeave(This) \
+#define ICorProfilerCallback6_ExceptionUnwindFinallyLeave(This)        \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyLeave(This) ) 
 
-#define ICorProfilerCallback6_ExceptionCatcherEnter(This,functionId,objectId)   \
+#define ICorProfilerCallback6_ExceptionCatcherEnter(This,functionId,objectId)  \
     ( (This)->lpVtbl -> ExceptionCatcherEnter(This,functionId,objectId) ) 
 
-#define ICorProfilerCallback6_ExceptionCatcherLeave(This)   \
+#define ICorProfilerCallback6_ExceptionCatcherLeave(This)      \
     ( (This)->lpVtbl -> ExceptionCatcherLeave(This) ) 
 
-#define ICorProfilerCallback6_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)    \
+#define ICorProfilerCallback6_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)       \
     ( (This)->lpVtbl -> COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots) ) 
 
-#define ICorProfilerCallback6_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) \
+#define ICorProfilerCallback6_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable)    \
     ( (This)->lpVtbl -> COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) ) 
 
-#define ICorProfilerCallback6_ExceptionCLRCatcherFound(This)    \
+#define ICorProfilerCallback6_ExceptionCLRCatcherFound(This)   \
     ( (This)->lpVtbl -> ExceptionCLRCatcherFound(This) ) 
 
-#define ICorProfilerCallback6_ExceptionCLRCatcherExecute(This)  \
+#define ICorProfilerCallback6_ExceptionCLRCatcherExecute(This) \
     ( (This)->lpVtbl -> ExceptionCLRCatcherExecute(This) ) 
 
 
-#define ICorProfilerCallback6_ThreadNameChanged(This,threadId,cchName,name) \
+#define ICorProfilerCallback6_ThreadNameChanged(This,threadId,cchName,name)    \
     ( (This)->lpVtbl -> ThreadNameChanged(This,threadId,cchName,name) ) 
 
-#define ICorProfilerCallback6_GarbageCollectionStarted(This,cGenerations,generationCollected,reason)    \
+#define ICorProfilerCallback6_GarbageCollectionStarted(This,cGenerations,generationCollected,reason)   \
     ( (This)->lpVtbl -> GarbageCollectionStarted(This,cGenerations,generationCollected,reason) ) 
 
-#define ICorProfilerCallback6_SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)    \
+#define ICorProfilerCallback6_SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)       \
     ( (This)->lpVtbl -> SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback6_GarbageCollectionFinished(This)   \
+#define ICorProfilerCallback6_GarbageCollectionFinished(This)  \
     ( (This)->lpVtbl -> GarbageCollectionFinished(This) ) 
 
-#define ICorProfilerCallback6_FinalizeableObjectQueued(This,finalizerFlags,objectID)    \
+#define ICorProfilerCallback6_FinalizeableObjectQueued(This,finalizerFlags,objectID)   \
     ( (This)->lpVtbl -> FinalizeableObjectQueued(This,finalizerFlags,objectID) ) 
 
-#define ICorProfilerCallback6_RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds)    \
+#define ICorProfilerCallback6_RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds)   \
     ( (This)->lpVtbl -> RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds) ) 
 
-#define ICorProfilerCallback6_HandleCreated(This,handleId,initialObjectId)  \
+#define ICorProfilerCallback6_HandleCreated(This,handleId,initialObjectId)     \
     ( (This)->lpVtbl -> HandleCreated(This,handleId,initialObjectId) ) 
 
-#define ICorProfilerCallback6_HandleDestroyed(This,handleId)    \
+#define ICorProfilerCallback6_HandleDestroyed(This,handleId)   \
     ( (This)->lpVtbl -> HandleDestroyed(This,handleId) ) 
 
 
-#define ICorProfilerCallback6_InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData)   \
+#define ICorProfilerCallback6_InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData)  \
     ( (This)->lpVtbl -> InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData) ) 
 
-#define ICorProfilerCallback6_ProfilerAttachComplete(This)  \
+#define ICorProfilerCallback6_ProfilerAttachComplete(This)     \
     ( (This)->lpVtbl -> ProfilerAttachComplete(This) ) 
 
-#define ICorProfilerCallback6_ProfilerDetachSucceeded(This) \
+#define ICorProfilerCallback6_ProfilerDetachSucceeded(This)    \
     ( (This)->lpVtbl -> ProfilerDetachSucceeded(This) ) 
 
 
-#define ICorProfilerCallback6_ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock)   \
+#define ICorProfilerCallback6_ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock)  \
     ( (This)->lpVtbl -> ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback6_GetReJITParameters(This,moduleId,methodId,pFunctionControl)   \
+#define ICorProfilerCallback6_GetReJITParameters(This,moduleId,methodId,pFunctionControl)      \
     ( (This)->lpVtbl -> GetReJITParameters(This,moduleId,methodId,pFunctionControl) ) 
 
-#define ICorProfilerCallback6_ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock) \
+#define ICorProfilerCallback6_ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock)        \
     ( (This)->lpVtbl -> ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback6_ReJITError(This,moduleId,methodId,functionId,hrStatus)    \
+#define ICorProfilerCallback6_ReJITError(This,moduleId,methodId,functionId,hrStatus)   \
     ( (This)->lpVtbl -> ReJITError(This,moduleId,methodId,functionId,hrStatus) ) 
 
-#define ICorProfilerCallback6_MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)  \
+#define ICorProfilerCallback6_MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)     \
     ( (This)->lpVtbl -> MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback6_SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)   \
+#define ICorProfilerCallback6_SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)      \
     ( (This)->lpVtbl -> SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength) ) 
 
 
-#define ICorProfilerCallback6_ConditionalWeakTableElementReferences(This,cRootRefs,keyRefIds,valueRefIds,rootIds)   \
+#define ICorProfilerCallback6_ConditionalWeakTableElementReferences(This,cRootRefs,keyRefIds,valueRefIds,rootIds)      \
     ( (This)->lpVtbl -> ConditionalWeakTableElementReferences(This,cRootRefs,keyRefIds,valueRefIds,rootIds) ) 
 
 
-#define ICorProfilerCallback6_GetAssemblyReferences(This,wszAssemblyPath,pAsmRefProvider)   \
+#define ICorProfilerCallback6_GetAssemblyReferences(This,wszAssemblyPath,pAsmRefProvider)      \
     ( (This)->lpVtbl -> GetAssemblyReferences(This,wszAssemblyPath,pAsmRefProvider) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerCallback6_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerCallback6_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerCallback7_INTERFACE_DEFINED__
@@ -5131,7 +5132,7 @@ EXTERN_C const IID IID_ICorProfilerCallback7;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerCallback7Vtbl
     {
@@ -5572,298 +5573,298 @@ EXTERN_C const IID IID_ICorProfilerCallback7;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerCallback7_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerCallback7_QueryInterface(This,riid,ppvObject)      \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerCallback7_AddRef(This)  \
+#define ICorProfilerCallback7_AddRef(This)     \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerCallback7_Release(This) \
+#define ICorProfilerCallback7_Release(This)    \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerCallback7_Initialize(This,pICorProfilerInfoUnk) \
+#define ICorProfilerCallback7_Initialize(This,pICorProfilerInfoUnk)    \
     ( (This)->lpVtbl -> Initialize(This,pICorProfilerInfoUnk) ) 
 
-#define ICorProfilerCallback7_Shutdown(This)    \
+#define ICorProfilerCallback7_Shutdown(This)   \
     ( (This)->lpVtbl -> Shutdown(This) ) 
 
-#define ICorProfilerCallback7_AppDomainCreationStarted(This,appDomainId)    \
+#define ICorProfilerCallback7_AppDomainCreationStarted(This,appDomainId)       \
     ( (This)->lpVtbl -> AppDomainCreationStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback7_AppDomainCreationFinished(This,appDomainId,hrStatus)  \
+#define ICorProfilerCallback7_AppDomainCreationFinished(This,appDomainId,hrStatus)     \
     ( (This)->lpVtbl -> AppDomainCreationFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback7_AppDomainShutdownStarted(This,appDomainId)    \
+#define ICorProfilerCallback7_AppDomainShutdownStarted(This,appDomainId)       \
     ( (This)->lpVtbl -> AppDomainShutdownStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback7_AppDomainShutdownFinished(This,appDomainId,hrStatus)  \
+#define ICorProfilerCallback7_AppDomainShutdownFinished(This,appDomainId,hrStatus)     \
     ( (This)->lpVtbl -> AppDomainShutdownFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback7_AssemblyLoadStarted(This,assemblyId)  \
+#define ICorProfilerCallback7_AssemblyLoadStarted(This,assemblyId)     \
     ( (This)->lpVtbl -> AssemblyLoadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback7_AssemblyLoadFinished(This,assemblyId,hrStatus)    \
+#define ICorProfilerCallback7_AssemblyLoadFinished(This,assemblyId,hrStatus)   \
     ( (This)->lpVtbl -> AssemblyLoadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback7_AssemblyUnloadStarted(This,assemblyId)    \
+#define ICorProfilerCallback7_AssemblyUnloadStarted(This,assemblyId)   \
     ( (This)->lpVtbl -> AssemblyUnloadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback7_AssemblyUnloadFinished(This,assemblyId,hrStatus)  \
+#define ICorProfilerCallback7_AssemblyUnloadFinished(This,assemblyId,hrStatus) \
     ( (This)->lpVtbl -> AssemblyUnloadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback7_ModuleLoadStarted(This,moduleId)  \
+#define ICorProfilerCallback7_ModuleLoadStarted(This,moduleId) \
     ( (This)->lpVtbl -> ModuleLoadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback7_ModuleLoadFinished(This,moduleId,hrStatus)    \
+#define ICorProfilerCallback7_ModuleLoadFinished(This,moduleId,hrStatus)       \
     ( (This)->lpVtbl -> ModuleLoadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback7_ModuleUnloadStarted(This,moduleId)    \
+#define ICorProfilerCallback7_ModuleUnloadStarted(This,moduleId)       \
     ( (This)->lpVtbl -> ModuleUnloadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback7_ModuleUnloadFinished(This,moduleId,hrStatus)  \
+#define ICorProfilerCallback7_ModuleUnloadFinished(This,moduleId,hrStatus)     \
     ( (This)->lpVtbl -> ModuleUnloadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback7_ModuleAttachedToAssembly(This,moduleId,AssemblyId)    \
+#define ICorProfilerCallback7_ModuleAttachedToAssembly(This,moduleId,AssemblyId)       \
     ( (This)->lpVtbl -> ModuleAttachedToAssembly(This,moduleId,AssemblyId) ) 
 
-#define ICorProfilerCallback7_ClassLoadStarted(This,classId)    \
+#define ICorProfilerCallback7_ClassLoadStarted(This,classId)   \
     ( (This)->lpVtbl -> ClassLoadStarted(This,classId) ) 
 
-#define ICorProfilerCallback7_ClassLoadFinished(This,classId,hrStatus)  \
+#define ICorProfilerCallback7_ClassLoadFinished(This,classId,hrStatus) \
     ( (This)->lpVtbl -> ClassLoadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback7_ClassUnloadStarted(This,classId)  \
+#define ICorProfilerCallback7_ClassUnloadStarted(This,classId) \
     ( (This)->lpVtbl -> ClassUnloadStarted(This,classId) ) 
 
-#define ICorProfilerCallback7_ClassUnloadFinished(This,classId,hrStatus)    \
+#define ICorProfilerCallback7_ClassUnloadFinished(This,classId,hrStatus)       \
     ( (This)->lpVtbl -> ClassUnloadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback7_FunctionUnloadStarted(This,functionId)    \
+#define ICorProfilerCallback7_FunctionUnloadStarted(This,functionId)   \
     ( (This)->lpVtbl -> FunctionUnloadStarted(This,functionId) ) 
 
-#define ICorProfilerCallback7_JITCompilationStarted(This,functionId,fIsSafeToBlock) \
+#define ICorProfilerCallback7_JITCompilationStarted(This,functionId,fIsSafeToBlock)    \
     ( (This)->lpVtbl -> JITCompilationStarted(This,functionId,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback7_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)   \
+#define ICorProfilerCallback7_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)  \
     ( (This)->lpVtbl -> JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback7_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)   \
+#define ICorProfilerCallback7_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)      \
     ( (This)->lpVtbl -> JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction) ) 
 
-#define ICorProfilerCallback7_JITCachedFunctionSearchFinished(This,functionId,result)   \
+#define ICorProfilerCallback7_JITCachedFunctionSearchFinished(This,functionId,result)  \
     ( (This)->lpVtbl -> JITCachedFunctionSearchFinished(This,functionId,result) ) 
 
-#define ICorProfilerCallback7_JITFunctionPitched(This,functionId)   \
+#define ICorProfilerCallback7_JITFunctionPitched(This,functionId)      \
     ( (This)->lpVtbl -> JITFunctionPitched(This,functionId) ) 
 
-#define ICorProfilerCallback7_JITInlining(This,callerId,calleeId,pfShouldInline)    \
+#define ICorProfilerCallback7_JITInlining(This,callerId,calleeId,pfShouldInline)       \
     ( (This)->lpVtbl -> JITInlining(This,callerId,calleeId,pfShouldInline) ) 
 
-#define ICorProfilerCallback7_ThreadCreated(This,threadId)  \
+#define ICorProfilerCallback7_ThreadCreated(This,threadId)     \
     ( (This)->lpVtbl -> ThreadCreated(This,threadId) ) 
 
-#define ICorProfilerCallback7_ThreadDestroyed(This,threadId)    \
+#define ICorProfilerCallback7_ThreadDestroyed(This,threadId)   \
     ( (This)->lpVtbl -> ThreadDestroyed(This,threadId) ) 
 
-#define ICorProfilerCallback7_ThreadAssignedToOSThread(This,managedThreadId,osThreadId) \
+#define ICorProfilerCallback7_ThreadAssignedToOSThread(This,managedThreadId,osThreadId)        \
     ( (This)->lpVtbl -> ThreadAssignedToOSThread(This,managedThreadId,osThreadId) ) 
 
-#define ICorProfilerCallback7_RemotingClientInvocationStarted(This) \
+#define ICorProfilerCallback7_RemotingClientInvocationStarted(This)    \
     ( (This)->lpVtbl -> RemotingClientInvocationStarted(This) ) 
 
-#define ICorProfilerCallback7_RemotingClientSendingMessage(This,pCookie,fIsAsync)   \
+#define ICorProfilerCallback7_RemotingClientSendingMessage(This,pCookie,fIsAsync)      \
     ( (This)->lpVtbl -> RemotingClientSendingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback7_RemotingClientReceivingReply(This,pCookie,fIsAsync)   \
+#define ICorProfilerCallback7_RemotingClientReceivingReply(This,pCookie,fIsAsync)      \
     ( (This)->lpVtbl -> RemotingClientReceivingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback7_RemotingClientInvocationFinished(This)    \
+#define ICorProfilerCallback7_RemotingClientInvocationFinished(This)   \
     ( (This)->lpVtbl -> RemotingClientInvocationFinished(This) ) 
 
-#define ICorProfilerCallback7_RemotingServerReceivingMessage(This,pCookie,fIsAsync) \
+#define ICorProfilerCallback7_RemotingServerReceivingMessage(This,pCookie,fIsAsync)    \
     ( (This)->lpVtbl -> RemotingServerReceivingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback7_RemotingServerInvocationStarted(This) \
+#define ICorProfilerCallback7_RemotingServerInvocationStarted(This)    \
     ( (This)->lpVtbl -> RemotingServerInvocationStarted(This) ) 
 
-#define ICorProfilerCallback7_RemotingServerInvocationReturned(This)    \
+#define ICorProfilerCallback7_RemotingServerInvocationReturned(This)   \
     ( (This)->lpVtbl -> RemotingServerInvocationReturned(This) ) 
 
-#define ICorProfilerCallback7_RemotingServerSendingReply(This,pCookie,fIsAsync) \
+#define ICorProfilerCallback7_RemotingServerSendingReply(This,pCookie,fIsAsync)        \
     ( (This)->lpVtbl -> RemotingServerSendingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback7_UnmanagedToManagedTransition(This,functionId,reason)  \
+#define ICorProfilerCallback7_UnmanagedToManagedTransition(This,functionId,reason)     \
     ( (This)->lpVtbl -> UnmanagedToManagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback7_ManagedToUnmanagedTransition(This,functionId,reason)  \
+#define ICorProfilerCallback7_ManagedToUnmanagedTransition(This,functionId,reason)     \
     ( (This)->lpVtbl -> ManagedToUnmanagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback7_RuntimeSuspendStarted(This,suspendReason) \
+#define ICorProfilerCallback7_RuntimeSuspendStarted(This,suspendReason)        \
     ( (This)->lpVtbl -> RuntimeSuspendStarted(This,suspendReason) ) 
 
-#define ICorProfilerCallback7_RuntimeSuspendFinished(This)  \
+#define ICorProfilerCallback7_RuntimeSuspendFinished(This)     \
     ( (This)->lpVtbl -> RuntimeSuspendFinished(This) ) 
 
-#define ICorProfilerCallback7_RuntimeSuspendAborted(This)   \
+#define ICorProfilerCallback7_RuntimeSuspendAborted(This)      \
     ( (This)->lpVtbl -> RuntimeSuspendAborted(This) ) 
 
-#define ICorProfilerCallback7_RuntimeResumeStarted(This)    \
+#define ICorProfilerCallback7_RuntimeResumeStarted(This)       \
     ( (This)->lpVtbl -> RuntimeResumeStarted(This) ) 
 
-#define ICorProfilerCallback7_RuntimeResumeFinished(This)   \
+#define ICorProfilerCallback7_RuntimeResumeFinished(This)      \
     ( (This)->lpVtbl -> RuntimeResumeFinished(This) ) 
 
-#define ICorProfilerCallback7_RuntimeThreadSuspended(This,threadId) \
+#define ICorProfilerCallback7_RuntimeThreadSuspended(This,threadId)    \
     ( (This)->lpVtbl -> RuntimeThreadSuspended(This,threadId) ) 
 
-#define ICorProfilerCallback7_RuntimeThreadResumed(This,threadId)   \
+#define ICorProfilerCallback7_RuntimeThreadResumed(This,threadId)      \
     ( (This)->lpVtbl -> RuntimeThreadResumed(This,threadId) ) 
 
-#define ICorProfilerCallback7_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)   \
+#define ICorProfilerCallback7_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)      \
     ( (This)->lpVtbl -> MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback7_ObjectAllocated(This,objectId,classId)    \
+#define ICorProfilerCallback7_ObjectAllocated(This,objectId,classId)   \
     ( (This)->lpVtbl -> ObjectAllocated(This,objectId,classId) ) 
 
-#define ICorProfilerCallback7_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)   \
+#define ICorProfilerCallback7_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)      \
     ( (This)->lpVtbl -> ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects) ) 
 
-#define ICorProfilerCallback7_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds)  \
+#define ICorProfilerCallback7_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) \
     ( (This)->lpVtbl -> ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) ) 
 
-#define ICorProfilerCallback7_RootReferences(This,cRootRefs,rootRefIds) \
+#define ICorProfilerCallback7_RootReferences(This,cRootRefs,rootRefIds)        \
     ( (This)->lpVtbl -> RootReferences(This,cRootRefs,rootRefIds) ) 
 
-#define ICorProfilerCallback7_ExceptionThrown(This,thrownObjectId)  \
+#define ICorProfilerCallback7_ExceptionThrown(This,thrownObjectId)     \
     ( (This)->lpVtbl -> ExceptionThrown(This,thrownObjectId) ) 
 
-#define ICorProfilerCallback7_ExceptionSearchFunctionEnter(This,functionId) \
+#define ICorProfilerCallback7_ExceptionSearchFunctionEnter(This,functionId)    \
     ( (This)->lpVtbl -> ExceptionSearchFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback7_ExceptionSearchFunctionLeave(This)    \
+#define ICorProfilerCallback7_ExceptionSearchFunctionLeave(This)       \
     ( (This)->lpVtbl -> ExceptionSearchFunctionLeave(This) ) 
 
-#define ICorProfilerCallback7_ExceptionSearchFilterEnter(This,functionId)   \
+#define ICorProfilerCallback7_ExceptionSearchFilterEnter(This,functionId)      \
     ( (This)->lpVtbl -> ExceptionSearchFilterEnter(This,functionId) ) 
 
-#define ICorProfilerCallback7_ExceptionSearchFilterLeave(This)  \
+#define ICorProfilerCallback7_ExceptionSearchFilterLeave(This) \
     ( (This)->lpVtbl -> ExceptionSearchFilterLeave(This) ) 
 
-#define ICorProfilerCallback7_ExceptionSearchCatcherFound(This,functionId)  \
+#define ICorProfilerCallback7_ExceptionSearchCatcherFound(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionSearchCatcherFound(This,functionId) ) 
 
-#define ICorProfilerCallback7_ExceptionOSHandlerEnter(This,__unused)    \
+#define ICorProfilerCallback7_ExceptionOSHandlerEnter(This,__unused)   \
     ( (This)->lpVtbl -> ExceptionOSHandlerEnter(This,__unused) ) 
 
-#define ICorProfilerCallback7_ExceptionOSHandlerLeave(This,__unused)    \
+#define ICorProfilerCallback7_ExceptionOSHandlerLeave(This,__unused)   \
     ( (This)->lpVtbl -> ExceptionOSHandlerLeave(This,__unused) ) 
 
-#define ICorProfilerCallback7_ExceptionUnwindFunctionEnter(This,functionId) \
+#define ICorProfilerCallback7_ExceptionUnwindFunctionEnter(This,functionId)    \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback7_ExceptionUnwindFunctionLeave(This)    \
+#define ICorProfilerCallback7_ExceptionUnwindFunctionLeave(This)       \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionLeave(This) ) 
 
-#define ICorProfilerCallback7_ExceptionUnwindFinallyEnter(This,functionId)  \
+#define ICorProfilerCallback7_ExceptionUnwindFinallyEnter(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyEnter(This,functionId) ) 
 
-#define ICorProfilerCallback7_ExceptionUnwindFinallyLeave(This) \
+#define ICorProfilerCallback7_ExceptionUnwindFinallyLeave(This)        \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyLeave(This) ) 
 
-#define ICorProfilerCallback7_ExceptionCatcherEnter(This,functionId,objectId)   \
+#define ICorProfilerCallback7_ExceptionCatcherEnter(This,functionId,objectId)  \
     ( (This)->lpVtbl -> ExceptionCatcherEnter(This,functionId,objectId) ) 
 
-#define ICorProfilerCallback7_ExceptionCatcherLeave(This)   \
+#define ICorProfilerCallback7_ExceptionCatcherLeave(This)      \
     ( (This)->lpVtbl -> ExceptionCatcherLeave(This) ) 
 
-#define ICorProfilerCallback7_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)    \
+#define ICorProfilerCallback7_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)       \
     ( (This)->lpVtbl -> COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots) ) 
 
-#define ICorProfilerCallback7_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) \
+#define ICorProfilerCallback7_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable)    \
     ( (This)->lpVtbl -> COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) ) 
 
-#define ICorProfilerCallback7_ExceptionCLRCatcherFound(This)    \
+#define ICorProfilerCallback7_ExceptionCLRCatcherFound(This)   \
     ( (This)->lpVtbl -> ExceptionCLRCatcherFound(This) ) 
 
-#define ICorProfilerCallback7_ExceptionCLRCatcherExecute(This)  \
+#define ICorProfilerCallback7_ExceptionCLRCatcherExecute(This) \
     ( (This)->lpVtbl -> ExceptionCLRCatcherExecute(This) ) 
 
 
-#define ICorProfilerCallback7_ThreadNameChanged(This,threadId,cchName,name) \
+#define ICorProfilerCallback7_ThreadNameChanged(This,threadId,cchName,name)    \
     ( (This)->lpVtbl -> ThreadNameChanged(This,threadId,cchName,name) ) 
 
-#define ICorProfilerCallback7_GarbageCollectionStarted(This,cGenerations,generationCollected,reason)    \
+#define ICorProfilerCallback7_GarbageCollectionStarted(This,cGenerations,generationCollected,reason)   \
     ( (This)->lpVtbl -> GarbageCollectionStarted(This,cGenerations,generationCollected,reason) ) 
 
-#define ICorProfilerCallback7_SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)    \
+#define ICorProfilerCallback7_SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)       \
     ( (This)->lpVtbl -> SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback7_GarbageCollectionFinished(This)   \
+#define ICorProfilerCallback7_GarbageCollectionFinished(This)  \
     ( (This)->lpVtbl -> GarbageCollectionFinished(This) ) 
 
-#define ICorProfilerCallback7_FinalizeableObjectQueued(This,finalizerFlags,objectID)    \
+#define ICorProfilerCallback7_FinalizeableObjectQueued(This,finalizerFlags,objectID)   \
     ( (This)->lpVtbl -> FinalizeableObjectQueued(This,finalizerFlags,objectID) ) 
 
-#define ICorProfilerCallback7_RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds)    \
+#define ICorProfilerCallback7_RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds)   \
     ( (This)->lpVtbl -> RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds) ) 
 
-#define ICorProfilerCallback7_HandleCreated(This,handleId,initialObjectId)  \
+#define ICorProfilerCallback7_HandleCreated(This,handleId,initialObjectId)     \
     ( (This)->lpVtbl -> HandleCreated(This,handleId,initialObjectId) ) 
 
-#define ICorProfilerCallback7_HandleDestroyed(This,handleId)    \
+#define ICorProfilerCallback7_HandleDestroyed(This,handleId)   \
     ( (This)->lpVtbl -> HandleDestroyed(This,handleId) ) 
 
 
-#define ICorProfilerCallback7_InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData)   \
+#define ICorProfilerCallback7_InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData)  \
     ( (This)->lpVtbl -> InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData) ) 
 
-#define ICorProfilerCallback7_ProfilerAttachComplete(This)  \
+#define ICorProfilerCallback7_ProfilerAttachComplete(This)     \
     ( (This)->lpVtbl -> ProfilerAttachComplete(This) ) 
 
-#define ICorProfilerCallback7_ProfilerDetachSucceeded(This) \
+#define ICorProfilerCallback7_ProfilerDetachSucceeded(This)    \
     ( (This)->lpVtbl -> ProfilerDetachSucceeded(This) ) 
 
 
-#define ICorProfilerCallback7_ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock)   \
+#define ICorProfilerCallback7_ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock)  \
     ( (This)->lpVtbl -> ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback7_GetReJITParameters(This,moduleId,methodId,pFunctionControl)   \
+#define ICorProfilerCallback7_GetReJITParameters(This,moduleId,methodId,pFunctionControl)      \
     ( (This)->lpVtbl -> GetReJITParameters(This,moduleId,methodId,pFunctionControl) ) 
 
-#define ICorProfilerCallback7_ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock) \
+#define ICorProfilerCallback7_ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock)        \
     ( (This)->lpVtbl -> ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback7_ReJITError(This,moduleId,methodId,functionId,hrStatus)    \
+#define ICorProfilerCallback7_ReJITError(This,moduleId,methodId,functionId,hrStatus)   \
     ( (This)->lpVtbl -> ReJITError(This,moduleId,methodId,functionId,hrStatus) ) 
 
-#define ICorProfilerCallback7_MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)  \
+#define ICorProfilerCallback7_MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)     \
     ( (This)->lpVtbl -> MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback7_SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)   \
+#define ICorProfilerCallback7_SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)      \
     ( (This)->lpVtbl -> SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength) ) 
 
 
-#define ICorProfilerCallback7_ConditionalWeakTableElementReferences(This,cRootRefs,keyRefIds,valueRefIds,rootIds)   \
+#define ICorProfilerCallback7_ConditionalWeakTableElementReferences(This,cRootRefs,keyRefIds,valueRefIds,rootIds)      \
     ( (This)->lpVtbl -> ConditionalWeakTableElementReferences(This,cRootRefs,keyRefIds,valueRefIds,rootIds) ) 
 
 
-#define ICorProfilerCallback7_GetAssemblyReferences(This,wszAssemblyPath,pAsmRefProvider)   \
+#define ICorProfilerCallback7_GetAssemblyReferences(This,wszAssemblyPath,pAsmRefProvider)      \
     ( (This)->lpVtbl -> GetAssemblyReferences(This,wszAssemblyPath,pAsmRefProvider) ) 
 
 
-#define ICorProfilerCallback7_ModuleInMemorySymbolsUpdated(This,moduleId)   \
+#define ICorProfilerCallback7_ModuleInMemorySymbolsUpdated(This,moduleId)      \
     ( (This)->lpVtbl -> ModuleInMemorySymbolsUpdated(This,moduleId) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerCallback7_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerCallback7_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerCallback8_INTERFACE_DEFINED__
@@ -5895,7 +5896,7 @@ EXTERN_C const IID IID_ICorProfilerCallback8;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerCallback8Vtbl
     {
@@ -6349,305 +6350,305 @@ EXTERN_C const IID IID_ICorProfilerCallback8;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerCallback8_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerCallback8_QueryInterface(This,riid,ppvObject)      \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerCallback8_AddRef(This)  \
+#define ICorProfilerCallback8_AddRef(This)     \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerCallback8_Release(This) \
+#define ICorProfilerCallback8_Release(This)    \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerCallback8_Initialize(This,pICorProfilerInfoUnk) \
+#define ICorProfilerCallback8_Initialize(This,pICorProfilerInfoUnk)    \
     ( (This)->lpVtbl -> Initialize(This,pICorProfilerInfoUnk) ) 
 
-#define ICorProfilerCallback8_Shutdown(This)    \
+#define ICorProfilerCallback8_Shutdown(This)   \
     ( (This)->lpVtbl -> Shutdown(This) ) 
 
-#define ICorProfilerCallback8_AppDomainCreationStarted(This,appDomainId)    \
+#define ICorProfilerCallback8_AppDomainCreationStarted(This,appDomainId)       \
     ( (This)->lpVtbl -> AppDomainCreationStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback8_AppDomainCreationFinished(This,appDomainId,hrStatus)  \
+#define ICorProfilerCallback8_AppDomainCreationFinished(This,appDomainId,hrStatus)     \
     ( (This)->lpVtbl -> AppDomainCreationFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback8_AppDomainShutdownStarted(This,appDomainId)    \
+#define ICorProfilerCallback8_AppDomainShutdownStarted(This,appDomainId)       \
     ( (This)->lpVtbl -> AppDomainShutdownStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback8_AppDomainShutdownFinished(This,appDomainId,hrStatus)  \
+#define ICorProfilerCallback8_AppDomainShutdownFinished(This,appDomainId,hrStatus)     \
     ( (This)->lpVtbl -> AppDomainShutdownFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback8_AssemblyLoadStarted(This,assemblyId)  \
+#define ICorProfilerCallback8_AssemblyLoadStarted(This,assemblyId)     \
     ( (This)->lpVtbl -> AssemblyLoadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback8_AssemblyLoadFinished(This,assemblyId,hrStatus)    \
+#define ICorProfilerCallback8_AssemblyLoadFinished(This,assemblyId,hrStatus)   \
     ( (This)->lpVtbl -> AssemblyLoadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback8_AssemblyUnloadStarted(This,assemblyId)    \
+#define ICorProfilerCallback8_AssemblyUnloadStarted(This,assemblyId)   \
     ( (This)->lpVtbl -> AssemblyUnloadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback8_AssemblyUnloadFinished(This,assemblyId,hrStatus)  \
+#define ICorProfilerCallback8_AssemblyUnloadFinished(This,assemblyId,hrStatus) \
     ( (This)->lpVtbl -> AssemblyUnloadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback8_ModuleLoadStarted(This,moduleId)  \
+#define ICorProfilerCallback8_ModuleLoadStarted(This,moduleId) \
     ( (This)->lpVtbl -> ModuleLoadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback8_ModuleLoadFinished(This,moduleId,hrStatus)    \
+#define ICorProfilerCallback8_ModuleLoadFinished(This,moduleId,hrStatus)       \
     ( (This)->lpVtbl -> ModuleLoadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback8_ModuleUnloadStarted(This,moduleId)    \
+#define ICorProfilerCallback8_ModuleUnloadStarted(This,moduleId)       \
     ( (This)->lpVtbl -> ModuleUnloadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback8_ModuleUnloadFinished(This,moduleId,hrStatus)  \
+#define ICorProfilerCallback8_ModuleUnloadFinished(This,moduleId,hrStatus)     \
     ( (This)->lpVtbl -> ModuleUnloadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback8_ModuleAttachedToAssembly(This,moduleId,AssemblyId)    \
+#define ICorProfilerCallback8_ModuleAttachedToAssembly(This,moduleId,AssemblyId)       \
     ( (This)->lpVtbl -> ModuleAttachedToAssembly(This,moduleId,AssemblyId) ) 
 
-#define ICorProfilerCallback8_ClassLoadStarted(This,classId)    \
+#define ICorProfilerCallback8_ClassLoadStarted(This,classId)   \
     ( (This)->lpVtbl -> ClassLoadStarted(This,classId) ) 
 
-#define ICorProfilerCallback8_ClassLoadFinished(This,classId,hrStatus)  \
+#define ICorProfilerCallback8_ClassLoadFinished(This,classId,hrStatus) \
     ( (This)->lpVtbl -> ClassLoadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback8_ClassUnloadStarted(This,classId)  \
+#define ICorProfilerCallback8_ClassUnloadStarted(This,classId) \
     ( (This)->lpVtbl -> ClassUnloadStarted(This,classId) ) 
 
-#define ICorProfilerCallback8_ClassUnloadFinished(This,classId,hrStatus)    \
+#define ICorProfilerCallback8_ClassUnloadFinished(This,classId,hrStatus)       \
     ( (This)->lpVtbl -> ClassUnloadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback8_FunctionUnloadStarted(This,functionId)    \
+#define ICorProfilerCallback8_FunctionUnloadStarted(This,functionId)   \
     ( (This)->lpVtbl -> FunctionUnloadStarted(This,functionId) ) 
 
-#define ICorProfilerCallback8_JITCompilationStarted(This,functionId,fIsSafeToBlock) \
+#define ICorProfilerCallback8_JITCompilationStarted(This,functionId,fIsSafeToBlock)    \
     ( (This)->lpVtbl -> JITCompilationStarted(This,functionId,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback8_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)   \
+#define ICorProfilerCallback8_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)  \
     ( (This)->lpVtbl -> JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback8_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)   \
+#define ICorProfilerCallback8_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)      \
     ( (This)->lpVtbl -> JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction) ) 
 
-#define ICorProfilerCallback8_JITCachedFunctionSearchFinished(This,functionId,result)   \
+#define ICorProfilerCallback8_JITCachedFunctionSearchFinished(This,functionId,result)  \
     ( (This)->lpVtbl -> JITCachedFunctionSearchFinished(This,functionId,result) ) 
 
-#define ICorProfilerCallback8_JITFunctionPitched(This,functionId)   \
+#define ICorProfilerCallback8_JITFunctionPitched(This,functionId)      \
     ( (This)->lpVtbl -> JITFunctionPitched(This,functionId) ) 
 
-#define ICorProfilerCallback8_JITInlining(This,callerId,calleeId,pfShouldInline)    \
+#define ICorProfilerCallback8_JITInlining(This,callerId,calleeId,pfShouldInline)       \
     ( (This)->lpVtbl -> JITInlining(This,callerId,calleeId,pfShouldInline) ) 
 
-#define ICorProfilerCallback8_ThreadCreated(This,threadId)  \
+#define ICorProfilerCallback8_ThreadCreated(This,threadId)     \
     ( (This)->lpVtbl -> ThreadCreated(This,threadId) ) 
 
-#define ICorProfilerCallback8_ThreadDestroyed(This,threadId)    \
+#define ICorProfilerCallback8_ThreadDestroyed(This,threadId)   \
     ( (This)->lpVtbl -> ThreadDestroyed(This,threadId) ) 
 
-#define ICorProfilerCallback8_ThreadAssignedToOSThread(This,managedThreadId,osThreadId) \
+#define ICorProfilerCallback8_ThreadAssignedToOSThread(This,managedThreadId,osThreadId)        \
     ( (This)->lpVtbl -> ThreadAssignedToOSThread(This,managedThreadId,osThreadId) ) 
 
-#define ICorProfilerCallback8_RemotingClientInvocationStarted(This) \
+#define ICorProfilerCallback8_RemotingClientInvocationStarted(This)    \
     ( (This)->lpVtbl -> RemotingClientInvocationStarted(This) ) 
 
-#define ICorProfilerCallback8_RemotingClientSendingMessage(This,pCookie,fIsAsync)   \
+#define ICorProfilerCallback8_RemotingClientSendingMessage(This,pCookie,fIsAsync)      \
     ( (This)->lpVtbl -> RemotingClientSendingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback8_RemotingClientReceivingReply(This,pCookie,fIsAsync)   \
+#define ICorProfilerCallback8_RemotingClientReceivingReply(This,pCookie,fIsAsync)      \
     ( (This)->lpVtbl -> RemotingClientReceivingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback8_RemotingClientInvocationFinished(This)    \
+#define ICorProfilerCallback8_RemotingClientInvocationFinished(This)   \
     ( (This)->lpVtbl -> RemotingClientInvocationFinished(This) ) 
 
-#define ICorProfilerCallback8_RemotingServerReceivingMessage(This,pCookie,fIsAsync) \
+#define ICorProfilerCallback8_RemotingServerReceivingMessage(This,pCookie,fIsAsync)    \
     ( (This)->lpVtbl -> RemotingServerReceivingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback8_RemotingServerInvocationStarted(This) \
+#define ICorProfilerCallback8_RemotingServerInvocationStarted(This)    \
     ( (This)->lpVtbl -> RemotingServerInvocationStarted(This) ) 
 
-#define ICorProfilerCallback8_RemotingServerInvocationReturned(This)    \
+#define ICorProfilerCallback8_RemotingServerInvocationReturned(This)   \
     ( (This)->lpVtbl -> RemotingServerInvocationReturned(This) ) 
 
-#define ICorProfilerCallback8_RemotingServerSendingReply(This,pCookie,fIsAsync) \
+#define ICorProfilerCallback8_RemotingServerSendingReply(This,pCookie,fIsAsync)        \
     ( (This)->lpVtbl -> RemotingServerSendingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback8_UnmanagedToManagedTransition(This,functionId,reason)  \
+#define ICorProfilerCallback8_UnmanagedToManagedTransition(This,functionId,reason)     \
     ( (This)->lpVtbl -> UnmanagedToManagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback8_ManagedToUnmanagedTransition(This,functionId,reason)  \
+#define ICorProfilerCallback8_ManagedToUnmanagedTransition(This,functionId,reason)     \
     ( (This)->lpVtbl -> ManagedToUnmanagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback8_RuntimeSuspendStarted(This,suspendReason) \
+#define ICorProfilerCallback8_RuntimeSuspendStarted(This,suspendReason)        \
     ( (This)->lpVtbl -> RuntimeSuspendStarted(This,suspendReason) ) 
 
-#define ICorProfilerCallback8_RuntimeSuspendFinished(This)  \
+#define ICorProfilerCallback8_RuntimeSuspendFinished(This)     \
     ( (This)->lpVtbl -> RuntimeSuspendFinished(This) ) 
 
-#define ICorProfilerCallback8_RuntimeSuspendAborted(This)   \
+#define ICorProfilerCallback8_RuntimeSuspendAborted(This)      \
     ( (This)->lpVtbl -> RuntimeSuspendAborted(This) ) 
 
-#define ICorProfilerCallback8_RuntimeResumeStarted(This)    \
+#define ICorProfilerCallback8_RuntimeResumeStarted(This)       \
     ( (This)->lpVtbl -> RuntimeResumeStarted(This) ) 
 
-#define ICorProfilerCallback8_RuntimeResumeFinished(This)   \
+#define ICorProfilerCallback8_RuntimeResumeFinished(This)      \
     ( (This)->lpVtbl -> RuntimeResumeFinished(This) ) 
 
-#define ICorProfilerCallback8_RuntimeThreadSuspended(This,threadId) \
+#define ICorProfilerCallback8_RuntimeThreadSuspended(This,threadId)    \
     ( (This)->lpVtbl -> RuntimeThreadSuspended(This,threadId) ) 
 
-#define ICorProfilerCallback8_RuntimeThreadResumed(This,threadId)   \
+#define ICorProfilerCallback8_RuntimeThreadResumed(This,threadId)      \
     ( (This)->lpVtbl -> RuntimeThreadResumed(This,threadId) ) 
 
-#define ICorProfilerCallback8_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)   \
+#define ICorProfilerCallback8_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)      \
     ( (This)->lpVtbl -> MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback8_ObjectAllocated(This,objectId,classId)    \
+#define ICorProfilerCallback8_ObjectAllocated(This,objectId,classId)   \
     ( (This)->lpVtbl -> ObjectAllocated(This,objectId,classId) ) 
 
-#define ICorProfilerCallback8_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)   \
+#define ICorProfilerCallback8_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)      \
     ( (This)->lpVtbl -> ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects) ) 
 
-#define ICorProfilerCallback8_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds)  \
+#define ICorProfilerCallback8_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) \
     ( (This)->lpVtbl -> ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) ) 
 
-#define ICorProfilerCallback8_RootReferences(This,cRootRefs,rootRefIds) \
+#define ICorProfilerCallback8_RootReferences(This,cRootRefs,rootRefIds)        \
     ( (This)->lpVtbl -> RootReferences(This,cRootRefs,rootRefIds) ) 
 
-#define ICorProfilerCallback8_ExceptionThrown(This,thrownObjectId)  \
+#define ICorProfilerCallback8_ExceptionThrown(This,thrownObjectId)     \
     ( (This)->lpVtbl -> ExceptionThrown(This,thrownObjectId) ) 
 
-#define ICorProfilerCallback8_ExceptionSearchFunctionEnter(This,functionId) \
+#define ICorProfilerCallback8_ExceptionSearchFunctionEnter(This,functionId)    \
     ( (This)->lpVtbl -> ExceptionSearchFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback8_ExceptionSearchFunctionLeave(This)    \
+#define ICorProfilerCallback8_ExceptionSearchFunctionLeave(This)       \
     ( (This)->lpVtbl -> ExceptionSearchFunctionLeave(This) ) 
 
-#define ICorProfilerCallback8_ExceptionSearchFilterEnter(This,functionId)   \
+#define ICorProfilerCallback8_ExceptionSearchFilterEnter(This,functionId)      \
     ( (This)->lpVtbl -> ExceptionSearchFilterEnter(This,functionId) ) 
 
-#define ICorProfilerCallback8_ExceptionSearchFilterLeave(This)  \
+#define ICorProfilerCallback8_ExceptionSearchFilterLeave(This) \
     ( (This)->lpVtbl -> ExceptionSearchFilterLeave(This) ) 
 
-#define ICorProfilerCallback8_ExceptionSearchCatcherFound(This,functionId)  \
+#define ICorProfilerCallback8_ExceptionSearchCatcherFound(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionSearchCatcherFound(This,functionId) ) 
 
-#define ICorProfilerCallback8_ExceptionOSHandlerEnter(This,__unused)    \
+#define ICorProfilerCallback8_ExceptionOSHandlerEnter(This,__unused)   \
     ( (This)->lpVtbl -> ExceptionOSHandlerEnter(This,__unused) ) 
 
-#define ICorProfilerCallback8_ExceptionOSHandlerLeave(This,__unused)    \
+#define ICorProfilerCallback8_ExceptionOSHandlerLeave(This,__unused)   \
     ( (This)->lpVtbl -> ExceptionOSHandlerLeave(This,__unused) ) 
 
-#define ICorProfilerCallback8_ExceptionUnwindFunctionEnter(This,functionId) \
+#define ICorProfilerCallback8_ExceptionUnwindFunctionEnter(This,functionId)    \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback8_ExceptionUnwindFunctionLeave(This)    \
+#define ICorProfilerCallback8_ExceptionUnwindFunctionLeave(This)       \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionLeave(This) ) 
 
-#define ICorProfilerCallback8_ExceptionUnwindFinallyEnter(This,functionId)  \
+#define ICorProfilerCallback8_ExceptionUnwindFinallyEnter(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyEnter(This,functionId) ) 
 
-#define ICorProfilerCallback8_ExceptionUnwindFinallyLeave(This) \
+#define ICorProfilerCallback8_ExceptionUnwindFinallyLeave(This)        \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyLeave(This) ) 
 
-#define ICorProfilerCallback8_ExceptionCatcherEnter(This,functionId,objectId)   \
+#define ICorProfilerCallback8_ExceptionCatcherEnter(This,functionId,objectId)  \
     ( (This)->lpVtbl -> ExceptionCatcherEnter(This,functionId,objectId) ) 
 
-#define ICorProfilerCallback8_ExceptionCatcherLeave(This)   \
+#define ICorProfilerCallback8_ExceptionCatcherLeave(This)      \
     ( (This)->lpVtbl -> ExceptionCatcherLeave(This) ) 
 
-#define ICorProfilerCallback8_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)    \
+#define ICorProfilerCallback8_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)       \
     ( (This)->lpVtbl -> COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots) ) 
 
-#define ICorProfilerCallback8_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) \
+#define ICorProfilerCallback8_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable)    \
     ( (This)->lpVtbl -> COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) ) 
 
-#define ICorProfilerCallback8_ExceptionCLRCatcherFound(This)    \
+#define ICorProfilerCallback8_ExceptionCLRCatcherFound(This)   \
     ( (This)->lpVtbl -> ExceptionCLRCatcherFound(This) ) 
 
-#define ICorProfilerCallback8_ExceptionCLRCatcherExecute(This)  \
+#define ICorProfilerCallback8_ExceptionCLRCatcherExecute(This) \
     ( (This)->lpVtbl -> ExceptionCLRCatcherExecute(This) ) 
 
 
-#define ICorProfilerCallback8_ThreadNameChanged(This,threadId,cchName,name) \
+#define ICorProfilerCallback8_ThreadNameChanged(This,threadId,cchName,name)    \
     ( (This)->lpVtbl -> ThreadNameChanged(This,threadId,cchName,name) ) 
 
-#define ICorProfilerCallback8_GarbageCollectionStarted(This,cGenerations,generationCollected,reason)    \
+#define ICorProfilerCallback8_GarbageCollectionStarted(This,cGenerations,generationCollected,reason)   \
     ( (This)->lpVtbl -> GarbageCollectionStarted(This,cGenerations,generationCollected,reason) ) 
 
-#define ICorProfilerCallback8_SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)    \
+#define ICorProfilerCallback8_SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)       \
     ( (This)->lpVtbl -> SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback8_GarbageCollectionFinished(This)   \
+#define ICorProfilerCallback8_GarbageCollectionFinished(This)  \
     ( (This)->lpVtbl -> GarbageCollectionFinished(This) ) 
 
-#define ICorProfilerCallback8_FinalizeableObjectQueued(This,finalizerFlags,objectID)    \
+#define ICorProfilerCallback8_FinalizeableObjectQueued(This,finalizerFlags,objectID)   \
     ( (This)->lpVtbl -> FinalizeableObjectQueued(This,finalizerFlags,objectID) ) 
 
-#define ICorProfilerCallback8_RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds)    \
+#define ICorProfilerCallback8_RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds)   \
     ( (This)->lpVtbl -> RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds) ) 
 
-#define ICorProfilerCallback8_HandleCreated(This,handleId,initialObjectId)  \
+#define ICorProfilerCallback8_HandleCreated(This,handleId,initialObjectId)     \
     ( (This)->lpVtbl -> HandleCreated(This,handleId,initialObjectId) ) 
 
-#define ICorProfilerCallback8_HandleDestroyed(This,handleId)    \
+#define ICorProfilerCallback8_HandleDestroyed(This,handleId)   \
     ( (This)->lpVtbl -> HandleDestroyed(This,handleId) ) 
 
 
-#define ICorProfilerCallback8_InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData)   \
+#define ICorProfilerCallback8_InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData)  \
     ( (This)->lpVtbl -> InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData) ) 
 
-#define ICorProfilerCallback8_ProfilerAttachComplete(This)  \
+#define ICorProfilerCallback8_ProfilerAttachComplete(This)     \
     ( (This)->lpVtbl -> ProfilerAttachComplete(This) ) 
 
-#define ICorProfilerCallback8_ProfilerDetachSucceeded(This) \
+#define ICorProfilerCallback8_ProfilerDetachSucceeded(This)    \
     ( (This)->lpVtbl -> ProfilerDetachSucceeded(This) ) 
 
 
-#define ICorProfilerCallback8_ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock)   \
+#define ICorProfilerCallback8_ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock)  \
     ( (This)->lpVtbl -> ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback8_GetReJITParameters(This,moduleId,methodId,pFunctionControl)   \
+#define ICorProfilerCallback8_GetReJITParameters(This,moduleId,methodId,pFunctionControl)      \
     ( (This)->lpVtbl -> GetReJITParameters(This,moduleId,methodId,pFunctionControl) ) 
 
-#define ICorProfilerCallback8_ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock) \
+#define ICorProfilerCallback8_ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock)        \
     ( (This)->lpVtbl -> ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback8_ReJITError(This,moduleId,methodId,functionId,hrStatus)    \
+#define ICorProfilerCallback8_ReJITError(This,moduleId,methodId,functionId,hrStatus)   \
     ( (This)->lpVtbl -> ReJITError(This,moduleId,methodId,functionId,hrStatus) ) 
 
-#define ICorProfilerCallback8_MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)  \
+#define ICorProfilerCallback8_MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)     \
     ( (This)->lpVtbl -> MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback8_SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)   \
+#define ICorProfilerCallback8_SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)      \
     ( (This)->lpVtbl -> SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength) ) 
 
 
-#define ICorProfilerCallback8_ConditionalWeakTableElementReferences(This,cRootRefs,keyRefIds,valueRefIds,rootIds)   \
+#define ICorProfilerCallback8_ConditionalWeakTableElementReferences(This,cRootRefs,keyRefIds,valueRefIds,rootIds)      \
     ( (This)->lpVtbl -> ConditionalWeakTableElementReferences(This,cRootRefs,keyRefIds,valueRefIds,rootIds) ) 
 
 
-#define ICorProfilerCallback8_GetAssemblyReferences(This,wszAssemblyPath,pAsmRefProvider)   \
+#define ICorProfilerCallback8_GetAssemblyReferences(This,wszAssemblyPath,pAsmRefProvider)      \
     ( (This)->lpVtbl -> GetAssemblyReferences(This,wszAssemblyPath,pAsmRefProvider) ) 
 
 
-#define ICorProfilerCallback8_ModuleInMemorySymbolsUpdated(This,moduleId)   \
+#define ICorProfilerCallback8_ModuleInMemorySymbolsUpdated(This,moduleId)      \
     ( (This)->lpVtbl -> ModuleInMemorySymbolsUpdated(This,moduleId) ) 
 
 
-#define ICorProfilerCallback8_DynamicMethodJITCompilationStarted(This,functionId,fIsSafeToBlock,pILHeader,cbILHeader)   \
+#define ICorProfilerCallback8_DynamicMethodJITCompilationStarted(This,functionId,fIsSafeToBlock,pILHeader,cbILHeader)  \
     ( (This)->lpVtbl -> DynamicMethodJITCompilationStarted(This,functionId,fIsSafeToBlock,pILHeader,cbILHeader) ) 
 
-#define ICorProfilerCallback8_DynamicMethodJITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)  \
+#define ICorProfilerCallback8_DynamicMethodJITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)     \
     ( (This)->lpVtbl -> DynamicMethodJITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerCallback8_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerCallback8_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerCallback9_INTERFACE_DEFINED__
@@ -6671,7 +6672,7 @@ EXTERN_C const IID IID_ICorProfilerCallback9;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerCallback9Vtbl
     {
@@ -7129,309 +7130,309 @@ EXTERN_C const IID IID_ICorProfilerCallback9;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerCallback9_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerCallback9_QueryInterface(This,riid,ppvObject)      \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerCallback9_AddRef(This)  \
+#define ICorProfilerCallback9_AddRef(This)     \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerCallback9_Release(This) \
+#define ICorProfilerCallback9_Release(This)    \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerCallback9_Initialize(This,pICorProfilerInfoUnk) \
+#define ICorProfilerCallback9_Initialize(This,pICorProfilerInfoUnk)    \
     ( (This)->lpVtbl -> Initialize(This,pICorProfilerInfoUnk) ) 
 
-#define ICorProfilerCallback9_Shutdown(This)    \
+#define ICorProfilerCallback9_Shutdown(This)   \
     ( (This)->lpVtbl -> Shutdown(This) ) 
 
-#define ICorProfilerCallback9_AppDomainCreationStarted(This,appDomainId)    \
+#define ICorProfilerCallback9_AppDomainCreationStarted(This,appDomainId)       \
     ( (This)->lpVtbl -> AppDomainCreationStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback9_AppDomainCreationFinished(This,appDomainId,hrStatus)  \
+#define ICorProfilerCallback9_AppDomainCreationFinished(This,appDomainId,hrStatus)     \
     ( (This)->lpVtbl -> AppDomainCreationFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback9_AppDomainShutdownStarted(This,appDomainId)    \
+#define ICorProfilerCallback9_AppDomainShutdownStarted(This,appDomainId)       \
     ( (This)->lpVtbl -> AppDomainShutdownStarted(This,appDomainId) ) 
 
-#define ICorProfilerCallback9_AppDomainShutdownFinished(This,appDomainId,hrStatus)  \
+#define ICorProfilerCallback9_AppDomainShutdownFinished(This,appDomainId,hrStatus)     \
     ( (This)->lpVtbl -> AppDomainShutdownFinished(This,appDomainId,hrStatus) ) 
 
-#define ICorProfilerCallback9_AssemblyLoadStarted(This,assemblyId)  \
+#define ICorProfilerCallback9_AssemblyLoadStarted(This,assemblyId)     \
     ( (This)->lpVtbl -> AssemblyLoadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback9_AssemblyLoadFinished(This,assemblyId,hrStatus)    \
+#define ICorProfilerCallback9_AssemblyLoadFinished(This,assemblyId,hrStatus)   \
     ( (This)->lpVtbl -> AssemblyLoadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback9_AssemblyUnloadStarted(This,assemblyId)    \
+#define ICorProfilerCallback9_AssemblyUnloadStarted(This,assemblyId)   \
     ( (This)->lpVtbl -> AssemblyUnloadStarted(This,assemblyId) ) 
 
-#define ICorProfilerCallback9_AssemblyUnloadFinished(This,assemblyId,hrStatus)  \
+#define ICorProfilerCallback9_AssemblyUnloadFinished(This,assemblyId,hrStatus) \
     ( (This)->lpVtbl -> AssemblyUnloadFinished(This,assemblyId,hrStatus) ) 
 
-#define ICorProfilerCallback9_ModuleLoadStarted(This,moduleId)  \
+#define ICorProfilerCallback9_ModuleLoadStarted(This,moduleId) \
     ( (This)->lpVtbl -> ModuleLoadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback9_ModuleLoadFinished(This,moduleId,hrStatus)    \
+#define ICorProfilerCallback9_ModuleLoadFinished(This,moduleId,hrStatus)       \
     ( (This)->lpVtbl -> ModuleLoadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback9_ModuleUnloadStarted(This,moduleId)    \
+#define ICorProfilerCallback9_ModuleUnloadStarted(This,moduleId)       \
     ( (This)->lpVtbl -> ModuleUnloadStarted(This,moduleId) ) 
 
-#define ICorProfilerCallback9_ModuleUnloadFinished(This,moduleId,hrStatus)  \
+#define ICorProfilerCallback9_ModuleUnloadFinished(This,moduleId,hrStatus)     \
     ( (This)->lpVtbl -> ModuleUnloadFinished(This,moduleId,hrStatus) ) 
 
-#define ICorProfilerCallback9_ModuleAttachedToAssembly(This,moduleId,AssemblyId)    \
+#define ICorProfilerCallback9_ModuleAttachedToAssembly(This,moduleId,AssemblyId)       \
     ( (This)->lpVtbl -> ModuleAttachedToAssembly(This,moduleId,AssemblyId) ) 
 
-#define ICorProfilerCallback9_ClassLoadStarted(This,classId)    \
+#define ICorProfilerCallback9_ClassLoadStarted(This,classId)   \
     ( (This)->lpVtbl -> ClassLoadStarted(This,classId) ) 
 
-#define ICorProfilerCallback9_ClassLoadFinished(This,classId,hrStatus)  \
+#define ICorProfilerCallback9_ClassLoadFinished(This,classId,hrStatus) \
     ( (This)->lpVtbl -> ClassLoadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback9_ClassUnloadStarted(This,classId)  \
+#define ICorProfilerCallback9_ClassUnloadStarted(This,classId) \
     ( (This)->lpVtbl -> ClassUnloadStarted(This,classId) ) 
 
-#define ICorProfilerCallback9_ClassUnloadFinished(This,classId,hrStatus)    \
+#define ICorProfilerCallback9_ClassUnloadFinished(This,classId,hrStatus)       \
     ( (This)->lpVtbl -> ClassUnloadFinished(This,classId,hrStatus) ) 
 
-#define ICorProfilerCallback9_FunctionUnloadStarted(This,functionId)    \
+#define ICorProfilerCallback9_FunctionUnloadStarted(This,functionId)   \
     ( (This)->lpVtbl -> FunctionUnloadStarted(This,functionId) ) 
 
-#define ICorProfilerCallback9_JITCompilationStarted(This,functionId,fIsSafeToBlock) \
+#define ICorProfilerCallback9_JITCompilationStarted(This,functionId,fIsSafeToBlock)    \
     ( (This)->lpVtbl -> JITCompilationStarted(This,functionId,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback9_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)   \
+#define ICorProfilerCallback9_JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)  \
     ( (This)->lpVtbl -> JITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback9_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)   \
+#define ICorProfilerCallback9_JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction)      \
     ( (This)->lpVtbl -> JITCachedFunctionSearchStarted(This,functionId,pbUseCachedFunction) ) 
 
-#define ICorProfilerCallback9_JITCachedFunctionSearchFinished(This,functionId,result)   \
+#define ICorProfilerCallback9_JITCachedFunctionSearchFinished(This,functionId,result)  \
     ( (This)->lpVtbl -> JITCachedFunctionSearchFinished(This,functionId,result) ) 
 
-#define ICorProfilerCallback9_JITFunctionPitched(This,functionId)   \
+#define ICorProfilerCallback9_JITFunctionPitched(This,functionId)      \
     ( (This)->lpVtbl -> JITFunctionPitched(This,functionId) ) 
 
-#define ICorProfilerCallback9_JITInlining(This,callerId,calleeId,pfShouldInline)    \
+#define ICorProfilerCallback9_JITInlining(This,callerId,calleeId,pfShouldInline)       \
     ( (This)->lpVtbl -> JITInlining(This,callerId,calleeId,pfShouldInline) ) 
 
-#define ICorProfilerCallback9_ThreadCreated(This,threadId)  \
+#define ICorProfilerCallback9_ThreadCreated(This,threadId)     \
     ( (This)->lpVtbl -> ThreadCreated(This,threadId) ) 
 
-#define ICorProfilerCallback9_ThreadDestroyed(This,threadId)    \
+#define ICorProfilerCallback9_ThreadDestroyed(This,threadId)   \
     ( (This)->lpVtbl -> ThreadDestroyed(This,threadId) ) 
 
-#define ICorProfilerCallback9_ThreadAssignedToOSThread(This,managedThreadId,osThreadId) \
+#define ICorProfilerCallback9_ThreadAssignedToOSThread(This,managedThreadId,osThreadId)        \
     ( (This)->lpVtbl -> ThreadAssignedToOSThread(This,managedThreadId,osThreadId) ) 
 
-#define ICorProfilerCallback9_RemotingClientInvocationStarted(This) \
+#define ICorProfilerCallback9_RemotingClientInvocationStarted(This)    \
     ( (This)->lpVtbl -> RemotingClientInvocationStarted(This) ) 
 
-#define ICorProfilerCallback9_RemotingClientSendingMessage(This,pCookie,fIsAsync)   \
+#define ICorProfilerCallback9_RemotingClientSendingMessage(This,pCookie,fIsAsync)      \
     ( (This)->lpVtbl -> RemotingClientSendingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback9_RemotingClientReceivingReply(This,pCookie,fIsAsync)   \
+#define ICorProfilerCallback9_RemotingClientReceivingReply(This,pCookie,fIsAsync)      \
     ( (This)->lpVtbl -> RemotingClientReceivingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback9_RemotingClientInvocationFinished(This)    \
+#define ICorProfilerCallback9_RemotingClientInvocationFinished(This)   \
     ( (This)->lpVtbl -> RemotingClientInvocationFinished(This) ) 
 
-#define ICorProfilerCallback9_RemotingServerReceivingMessage(This,pCookie,fIsAsync) \
+#define ICorProfilerCallback9_RemotingServerReceivingMessage(This,pCookie,fIsAsync)    \
     ( (This)->lpVtbl -> RemotingServerReceivingMessage(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback9_RemotingServerInvocationStarted(This) \
+#define ICorProfilerCallback9_RemotingServerInvocationStarted(This)    \
     ( (This)->lpVtbl -> RemotingServerInvocationStarted(This) ) 
 
-#define ICorProfilerCallback9_RemotingServerInvocationReturned(This)    \
+#define ICorProfilerCallback9_RemotingServerInvocationReturned(This)   \
     ( (This)->lpVtbl -> RemotingServerInvocationReturned(This) ) 
 
-#define ICorProfilerCallback9_RemotingServerSendingReply(This,pCookie,fIsAsync) \
+#define ICorProfilerCallback9_RemotingServerSendingReply(This,pCookie,fIsAsync)        \
     ( (This)->lpVtbl -> RemotingServerSendingReply(This,pCookie,fIsAsync) ) 
 
-#define ICorProfilerCallback9_UnmanagedToManagedTransition(This,functionId,reason)  \
+#define ICorProfilerCallback9_UnmanagedToManagedTransition(This,functionId,reason)     \
     ( (This)->lpVtbl -> UnmanagedToManagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback9_ManagedToUnmanagedTransition(This,functionId,reason)  \
+#define ICorProfilerCallback9_ManagedToUnmanagedTransition(This,functionId,reason)     \
     ( (This)->lpVtbl -> ManagedToUnmanagedTransition(This,functionId,reason) ) 
 
-#define ICorProfilerCallback9_RuntimeSuspendStarted(This,suspendReason) \
+#define ICorProfilerCallback9_RuntimeSuspendStarted(This,suspendReason)        \
     ( (This)->lpVtbl -> RuntimeSuspendStarted(This,suspendReason) ) 
 
-#define ICorProfilerCallback9_RuntimeSuspendFinished(This)  \
+#define ICorProfilerCallback9_RuntimeSuspendFinished(This)     \
     ( (This)->lpVtbl -> RuntimeSuspendFinished(This) ) 
 
-#define ICorProfilerCallback9_RuntimeSuspendAborted(This)   \
+#define ICorProfilerCallback9_RuntimeSuspendAborted(This)      \
     ( (This)->lpVtbl -> RuntimeSuspendAborted(This) ) 
 
-#define ICorProfilerCallback9_RuntimeResumeStarted(This)    \
+#define ICorProfilerCallback9_RuntimeResumeStarted(This)       \
     ( (This)->lpVtbl -> RuntimeResumeStarted(This) ) 
 
-#define ICorProfilerCallback9_RuntimeResumeFinished(This)   \
+#define ICorProfilerCallback9_RuntimeResumeFinished(This)      \
     ( (This)->lpVtbl -> RuntimeResumeFinished(This) ) 
 
-#define ICorProfilerCallback9_RuntimeThreadSuspended(This,threadId) \
+#define ICorProfilerCallback9_RuntimeThreadSuspended(This,threadId)    \
     ( (This)->lpVtbl -> RuntimeThreadSuspended(This,threadId) ) 
 
-#define ICorProfilerCallback9_RuntimeThreadResumed(This,threadId)   \
+#define ICorProfilerCallback9_RuntimeThreadResumed(This,threadId)      \
     ( (This)->lpVtbl -> RuntimeThreadResumed(This,threadId) ) 
 
-#define ICorProfilerCallback9_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)   \
+#define ICorProfilerCallback9_MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)      \
     ( (This)->lpVtbl -> MovedReferences(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback9_ObjectAllocated(This,objectId,classId)    \
+#define ICorProfilerCallback9_ObjectAllocated(This,objectId,classId)   \
     ( (This)->lpVtbl -> ObjectAllocated(This,objectId,classId) ) 
 
-#define ICorProfilerCallback9_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)   \
+#define ICorProfilerCallback9_ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects)      \
     ( (This)->lpVtbl -> ObjectsAllocatedByClass(This,cClassCount,classIds,cObjects) ) 
 
-#define ICorProfilerCallback9_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds)  \
+#define ICorProfilerCallback9_ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) \
     ( (This)->lpVtbl -> ObjectReferences(This,objectId,classId,cObjectRefs,objectRefIds) ) 
 
-#define ICorProfilerCallback9_RootReferences(This,cRootRefs,rootRefIds) \
+#define ICorProfilerCallback9_RootReferences(This,cRootRefs,rootRefIds)        \
     ( (This)->lpVtbl -> RootReferences(This,cRootRefs,rootRefIds) ) 
 
-#define ICorProfilerCallback9_ExceptionThrown(This,thrownObjectId)  \
+#define ICorProfilerCallback9_ExceptionThrown(This,thrownObjectId)     \
     ( (This)->lpVtbl -> ExceptionThrown(This,thrownObjectId) ) 
 
-#define ICorProfilerCallback9_ExceptionSearchFunctionEnter(This,functionId) \
+#define ICorProfilerCallback9_ExceptionSearchFunctionEnter(This,functionId)    \
     ( (This)->lpVtbl -> ExceptionSearchFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback9_ExceptionSearchFunctionLeave(This)    \
+#define ICorProfilerCallback9_ExceptionSearchFunctionLeave(This)       \
     ( (This)->lpVtbl -> ExceptionSearchFunctionLeave(This) ) 
 
-#define ICorProfilerCallback9_ExceptionSearchFilterEnter(This,functionId)   \
+#define ICorProfilerCallback9_ExceptionSearchFilterEnter(This,functionId)      \
     ( (This)->lpVtbl -> ExceptionSearchFilterEnter(This,functionId) ) 
 
-#define ICorProfilerCallback9_ExceptionSearchFilterLeave(This)  \
+#define ICorProfilerCallback9_ExceptionSearchFilterLeave(This) \
     ( (This)->lpVtbl -> ExceptionSearchFilterLeave(This) ) 
 
-#define ICorProfilerCallback9_ExceptionSearchCatcherFound(This,functionId)  \
+#define ICorProfilerCallback9_ExceptionSearchCatcherFound(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionSearchCatcherFound(This,functionId) ) 
 
-#define ICorProfilerCallback9_ExceptionOSHandlerEnter(This,__unused)    \
+#define ICorProfilerCallback9_ExceptionOSHandlerEnter(This,__unused)   \
     ( (This)->lpVtbl -> ExceptionOSHandlerEnter(This,__unused) ) 
 
-#define ICorProfilerCallback9_ExceptionOSHandlerLeave(This,__unused)    \
+#define ICorProfilerCallback9_ExceptionOSHandlerLeave(This,__unused)   \
     ( (This)->lpVtbl -> ExceptionOSHandlerLeave(This,__unused) ) 
 
-#define ICorProfilerCallback9_ExceptionUnwindFunctionEnter(This,functionId) \
+#define ICorProfilerCallback9_ExceptionUnwindFunctionEnter(This,functionId)    \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionEnter(This,functionId) ) 
 
-#define ICorProfilerCallback9_ExceptionUnwindFunctionLeave(This)    \
+#define ICorProfilerCallback9_ExceptionUnwindFunctionLeave(This)       \
     ( (This)->lpVtbl -> ExceptionUnwindFunctionLeave(This) ) 
 
-#define ICorProfilerCallback9_ExceptionUnwindFinallyEnter(This,functionId)  \
+#define ICorProfilerCallback9_ExceptionUnwindFinallyEnter(This,functionId)     \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyEnter(This,functionId) ) 
 
-#define ICorProfilerCallback9_ExceptionUnwindFinallyLeave(This) \
+#define ICorProfilerCallback9_ExceptionUnwindFinallyLeave(This)        \
     ( (This)->lpVtbl -> ExceptionUnwindFinallyLeave(This) ) 
 
-#define ICorProfilerCallback9_ExceptionCatcherEnter(This,functionId,objectId)   \
+#define ICorProfilerCallback9_ExceptionCatcherEnter(This,functionId,objectId)  \
     ( (This)->lpVtbl -> ExceptionCatcherEnter(This,functionId,objectId) ) 
 
-#define ICorProfilerCallback9_ExceptionCatcherLeave(This)   \
+#define ICorProfilerCallback9_ExceptionCatcherLeave(This)      \
     ( (This)->lpVtbl -> ExceptionCatcherLeave(This) ) 
 
-#define ICorProfilerCallback9_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)    \
+#define ICorProfilerCallback9_COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots)       \
     ( (This)->lpVtbl -> COMClassicVTableCreated(This,wrappedClassId,implementedIID,pVTable,cSlots) ) 
 
-#define ICorProfilerCallback9_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) \
+#define ICorProfilerCallback9_COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable)    \
     ( (This)->lpVtbl -> COMClassicVTableDestroyed(This,wrappedClassId,implementedIID,pVTable) ) 
 
-#define ICorProfilerCallback9_ExceptionCLRCatcherFound(This)    \
+#define ICorProfilerCallback9_ExceptionCLRCatcherFound(This)   \
     ( (This)->lpVtbl -> ExceptionCLRCatcherFound(This) ) 
 
-#define ICorProfilerCallback9_ExceptionCLRCatcherExecute(This)  \
+#define ICorProfilerCallback9_ExceptionCLRCatcherExecute(This) \
     ( (This)->lpVtbl -> ExceptionCLRCatcherExecute(This) ) 
 
 
-#define ICorProfilerCallback9_ThreadNameChanged(This,threadId,cchName,name) \
+#define ICorProfilerCallback9_ThreadNameChanged(This,threadId,cchName,name)    \
     ( (This)->lpVtbl -> ThreadNameChanged(This,threadId,cchName,name) ) 
 
-#define ICorProfilerCallback9_GarbageCollectionStarted(This,cGenerations,generationCollected,reason)    \
+#define ICorProfilerCallback9_GarbageCollectionStarted(This,cGenerations,generationCollected,reason)   \
     ( (This)->lpVtbl -> GarbageCollectionStarted(This,cGenerations,generationCollected,reason) ) 
 
-#define ICorProfilerCallback9_SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)    \
+#define ICorProfilerCallback9_SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)       \
     ( (This)->lpVtbl -> SurvivingReferences(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback9_GarbageCollectionFinished(This)   \
+#define ICorProfilerCallback9_GarbageCollectionFinished(This)  \
     ( (This)->lpVtbl -> GarbageCollectionFinished(This) ) 
 
-#define ICorProfilerCallback9_FinalizeableObjectQueued(This,finalizerFlags,objectID)    \
+#define ICorProfilerCallback9_FinalizeableObjectQueued(This,finalizerFlags,objectID)   \
     ( (This)->lpVtbl -> FinalizeableObjectQueued(This,finalizerFlags,objectID) ) 
 
-#define ICorProfilerCallback9_RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds)    \
+#define ICorProfilerCallback9_RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds)   \
     ( (This)->lpVtbl -> RootReferences2(This,cRootRefs,rootRefIds,rootKinds,rootFlags,rootIds) ) 
 
-#define ICorProfilerCallback9_HandleCreated(This,handleId,initialObjectId)  \
+#define ICorProfilerCallback9_HandleCreated(This,handleId,initialObjectId)     \
     ( (This)->lpVtbl -> HandleCreated(This,handleId,initialObjectId) ) 
 
-#define ICorProfilerCallback9_HandleDestroyed(This,handleId)    \
+#define ICorProfilerCallback9_HandleDestroyed(This,handleId)   \
     ( (This)->lpVtbl -> HandleDestroyed(This,handleId) ) 
 
 
-#define ICorProfilerCallback9_InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData)   \
+#define ICorProfilerCallback9_InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData)  \
     ( (This)->lpVtbl -> InitializeForAttach(This,pCorProfilerInfoUnk,pvClientData,cbClientData) ) 
 
-#define ICorProfilerCallback9_ProfilerAttachComplete(This)  \
+#define ICorProfilerCallback9_ProfilerAttachComplete(This)     \
     ( (This)->lpVtbl -> ProfilerAttachComplete(This) ) 
 
-#define ICorProfilerCallback9_ProfilerDetachSucceeded(This) \
+#define ICorProfilerCallback9_ProfilerDetachSucceeded(This)    \
     ( (This)->lpVtbl -> ProfilerDetachSucceeded(This) ) 
 
 
-#define ICorProfilerCallback9_ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock)   \
+#define ICorProfilerCallback9_ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock)  \
     ( (This)->lpVtbl -> ReJITCompilationStarted(This,functionId,rejitId,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback9_GetReJITParameters(This,moduleId,methodId,pFunctionControl)   \
+#define ICorProfilerCallback9_GetReJITParameters(This,moduleId,methodId,pFunctionControl)      \
     ( (This)->lpVtbl -> GetReJITParameters(This,moduleId,methodId,pFunctionControl) ) 
 
-#define ICorProfilerCallback9_ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock) \
+#define ICorProfilerCallback9_ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock)        \
     ( (This)->lpVtbl -> ReJITCompilationFinished(This,functionId,rejitId,hrStatus,fIsSafeToBlock) ) 
 
-#define ICorProfilerCallback9_ReJITError(This,moduleId,methodId,functionId,hrStatus)    \
+#define ICorProfilerCallback9_ReJITError(This,moduleId,methodId,functionId,hrStatus)   \
     ( (This)->lpVtbl -> ReJITError(This,moduleId,methodId,functionId,hrStatus) ) 
 
-#define ICorProfilerCallback9_MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)  \
+#define ICorProfilerCallback9_MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength)     \
     ( (This)->lpVtbl -> MovedReferences2(This,cMovedObjectIDRanges,oldObjectIDRangeStart,newObjectIDRangeStart,cObjectIDRangeLength) ) 
 
-#define ICorProfilerCallback9_SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)   \
+#define ICorProfilerCallback9_SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength)      \
     ( (This)->lpVtbl -> SurvivingReferences2(This,cSurvivingObjectIDRanges,objectIDRangeStart,cObjectIDRangeLength) ) 
 
 
-#define ICorProfilerCallback9_ConditionalWeakTableElementReferences(This,cRootRefs,keyRefIds,valueRefIds,rootIds)   \
+#define ICorProfilerCallback9_ConditionalWeakTableElementReferences(This,cRootRefs,keyRefIds,valueRefIds,rootIds)      \
     ( (This)->lpVtbl -> ConditionalWeakTableElementReferences(This,cRootRefs,keyRefIds,valueRefIds,rootIds) ) 
 
 
-#define ICorProfilerCallback9_GetAssemblyReferences(This,wszAssemblyPath,pAsmRefProvider)   \
+#define ICorProfilerCallback9_GetAssemblyReferences(This,wszAssemblyPath,pAsmRefProvider)      \
     ( (This)->lpVtbl -> GetAssemblyReferences(This,wszAssemblyPath,pAsmRefProvider) ) 
 
 
-#define ICorProfilerCallback9_ModuleInMemorySymbolsUpdated(This,moduleId)   \
+#define ICorProfilerCallback9_ModuleInMemorySymbolsUpdated(This,moduleId)      \
     ( (This)->lpVtbl -> ModuleInMemorySymbolsUpdated(This,moduleId) ) 
 
 
-#define ICorProfilerCallback9_DynamicMethodJITCompilationStarted(This,functionId,fIsSafeToBlock,pILHeader,cbILHeader)   \
+#define ICorProfilerCallback9_DynamicMethodJITCompilationStarted(This,functionId,fIsSafeToBlock,pILHeader,cbILHeader)  \
     ( (This)->lpVtbl -> DynamicMethodJITCompilationStarted(This,functionId,fIsSafeToBlock,pILHeader,cbILHeader) ) 
 
-#define ICorProfilerCallback9_DynamicMethodJITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)  \
+#define ICorProfilerCallback9_DynamicMethodJITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock)     \
     ( (This)->lpVtbl -> DynamicMethodJITCompilationFinished(This,functionId,hrStatus,fIsSafeToBlock) ) 
 
 
-#define ICorProfilerCallback9_DynamicMethodUnloaded(This,functionId)    \
+#define ICorProfilerCallback9_DynamicMethodUnloaded(This,functionId)   \
     ( (This)->lpVtbl -> DynamicMethodUnloaded(This,functionId) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerCallback9_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerCallback9_INTERFACE_DEFINED__ */
 
 
 /* interface __MIDL_itf_corprof_0000_0009 */
@@ -7440,9 +7441,9 @@ EXTERN_C const IID IID_ICorProfilerCallback9;
 typedef /* [public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0009_0001
     {
-        COR_PRF_CODEGEN_DISABLE_INLINING    = 0x1,
-        COR_PRF_CODEGEN_DISABLE_ALL_OPTIMIZATIONS   = 0x2
-    }   COR_PRF_CODEGEN_FLAGS;
+        COR_PRF_CODEGEN_DISABLE_INLINING       = 0x1,
+        COR_PRF_CODEGEN_DISABLE_ALL_OPTIMIZATIONS      = 0x2
+    }  COR_PRF_CODEGEN_FLAGS;
 
 
 
@@ -7623,7 +7624,7 @@ EXTERN_C const IID IID_ICorProfilerInfo;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerInfoVtbl
     {
@@ -7843,124 +7844,124 @@ EXTERN_C const IID IID_ICorProfilerInfo;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerInfo_QueryInterface(This,riid,ppvObject)    \
+#define ICorProfilerInfo_QueryInterface(This,riid,ppvObject)   \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerInfo_AddRef(This)   \
+#define ICorProfilerInfo_AddRef(This)  \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerInfo_Release(This)  \
+#define ICorProfilerInfo_Release(This) \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerInfo_GetClassFromObject(This,objectId,pClassId) \
+#define ICorProfilerInfo_GetClassFromObject(This,objectId,pClassId)    \
     ( (This)->lpVtbl -> GetClassFromObject(This,objectId,pClassId) ) 
 
-#define ICorProfilerInfo_GetClassFromToken(This,moduleId,typeDef,pClassId)  \
+#define ICorProfilerInfo_GetClassFromToken(This,moduleId,typeDef,pClassId)     \
     ( (This)->lpVtbl -> GetClassFromToken(This,moduleId,typeDef,pClassId) ) 
 
-#define ICorProfilerInfo_GetCodeInfo(This,functionId,pStart,pcSize) \
+#define ICorProfilerInfo_GetCodeInfo(This,functionId,pStart,pcSize)    \
     ( (This)->lpVtbl -> GetCodeInfo(This,functionId,pStart,pcSize) ) 
 
-#define ICorProfilerInfo_GetEventMask(This,pdwEvents)   \
+#define ICorProfilerInfo_GetEventMask(This,pdwEvents)  \
     ( (This)->lpVtbl -> GetEventMask(This,pdwEvents) ) 
 
-#define ICorProfilerInfo_GetFunctionFromIP(This,ip,pFunctionId) \
+#define ICorProfilerInfo_GetFunctionFromIP(This,ip,pFunctionId)        \
     ( (This)->lpVtbl -> GetFunctionFromIP(This,ip,pFunctionId) ) 
 
-#define ICorProfilerInfo_GetFunctionFromToken(This,moduleId,token,pFunctionId)  \
+#define ICorProfilerInfo_GetFunctionFromToken(This,moduleId,token,pFunctionId) \
     ( (This)->lpVtbl -> GetFunctionFromToken(This,moduleId,token,pFunctionId) ) 
 
-#define ICorProfilerInfo_GetHandleFromThread(This,threadId,phThread)    \
+#define ICorProfilerInfo_GetHandleFromThread(This,threadId,phThread)   \
     ( (This)->lpVtbl -> GetHandleFromThread(This,threadId,phThread) ) 
 
-#define ICorProfilerInfo_GetObjectSize(This,objectId,pcSize)    \
+#define ICorProfilerInfo_GetObjectSize(This,objectId,pcSize)   \
     ( (This)->lpVtbl -> GetObjectSize(This,objectId,pcSize) ) 
 
-#define ICorProfilerInfo_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank)   \
+#define ICorProfilerInfo_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank)  \
     ( (This)->lpVtbl -> IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) ) 
 
-#define ICorProfilerInfo_GetThreadInfo(This,threadId,pdwWin32ThreadId)  \
+#define ICorProfilerInfo_GetThreadInfo(This,threadId,pdwWin32ThreadId) \
     ( (This)->lpVtbl -> GetThreadInfo(This,threadId,pdwWin32ThreadId) ) 
 
-#define ICorProfilerInfo_GetCurrentThreadID(This,pThreadId) \
+#define ICorProfilerInfo_GetCurrentThreadID(This,pThreadId)    \
     ( (This)->lpVtbl -> GetCurrentThreadID(This,pThreadId) ) 
 
-#define ICorProfilerInfo_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken)   \
+#define ICorProfilerInfo_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken)  \
     ( (This)->lpVtbl -> GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) ) 
 
-#define ICorProfilerInfo_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken) \
+#define ICorProfilerInfo_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)    \
     ( (This)->lpVtbl -> GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken) ) 
 
-#define ICorProfilerInfo_SetEventMask(This,dwEvents)    \
+#define ICorProfilerInfo_SetEventMask(This,dwEvents)   \
     ( (This)->lpVtbl -> SetEventMask(This,dwEvents) ) 
 
-#define ICorProfilerInfo_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall)   \
+#define ICorProfilerInfo_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall)  \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo_SetFunctionIDMapper(This,pFunc)    \
+#define ICorProfilerInfo_SetFunctionIDMapper(This,pFunc)       \
     ( (This)->lpVtbl -> SetFunctionIDMapper(This,pFunc) ) 
 
-#define ICorProfilerInfo_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken)  \
+#define ICorProfilerInfo_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) \
     ( (This)->lpVtbl -> GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) ) 
 
-#define ICorProfilerInfo_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId) \
+#define ICorProfilerInfo_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)    \
     ( (This)->lpVtbl -> GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId) ) 
 
-#define ICorProfilerInfo_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)    \
+#define ICorProfilerInfo_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)       \
     ( (This)->lpVtbl -> GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut) ) 
 
-#define ICorProfilerInfo_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize) \
+#define ICorProfilerInfo_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)        \
     ( (This)->lpVtbl -> GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize) ) 
 
-#define ICorProfilerInfo_GetILFunctionBodyAllocator(This,moduleId,ppMalloc) \
+#define ICorProfilerInfo_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)    \
     ( (This)->lpVtbl -> GetILFunctionBodyAllocator(This,moduleId,ppMalloc) ) 
 
-#define ICorProfilerInfo_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader)  \
+#define ICorProfilerInfo_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) \
     ( (This)->lpVtbl -> SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) ) 
 
-#define ICorProfilerInfo_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId)  \
+#define ICorProfilerInfo_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) \
     ( (This)->lpVtbl -> GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) ) 
 
-#define ICorProfilerInfo_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)    \
+#define ICorProfilerInfo_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)       \
     ( (This)->lpVtbl -> GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId) ) 
 
-#define ICorProfilerInfo_SetFunctionReJIT(This,functionId)  \
+#define ICorProfilerInfo_SetFunctionReJIT(This,functionId)     \
     ( (This)->lpVtbl -> SetFunctionReJIT(This,functionId) ) 
 
-#define ICorProfilerInfo_ForceGC(This)  \
+#define ICorProfilerInfo_ForceGC(This) \
     ( (This)->lpVtbl -> ForceGC(This) ) 
 
-#define ICorProfilerInfo_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)   \
+#define ICorProfilerInfo_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)      \
     ( (This)->lpVtbl -> SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries) ) 
 
-#define ICorProfilerInfo_GetInprocInspectionInterface(This,ppicd)   \
+#define ICorProfilerInfo_GetInprocInspectionInterface(This,ppicd)      \
     ( (This)->lpVtbl -> GetInprocInspectionInterface(This,ppicd) ) 
 
-#define ICorProfilerInfo_GetInprocInspectionIThisThread(This,ppicd) \
+#define ICorProfilerInfo_GetInprocInspectionIThisThread(This,ppicd)    \
     ( (This)->lpVtbl -> GetInprocInspectionIThisThread(This,ppicd) ) 
 
-#define ICorProfilerInfo_GetThreadContext(This,threadId,pContextId) \
+#define ICorProfilerInfo_GetThreadContext(This,threadId,pContextId)    \
     ( (This)->lpVtbl -> GetThreadContext(This,threadId,pContextId) ) 
 
-#define ICorProfilerInfo_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext)  \
+#define ICorProfilerInfo_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) \
     ( (This)->lpVtbl -> BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) ) 
 
-#define ICorProfilerInfo_EndInprocDebugging(This,dwProfilerContext) \
+#define ICorProfilerInfo_EndInprocDebugging(This,dwProfilerContext)    \
     ( (This)->lpVtbl -> EndInprocDebugging(This,dwProfilerContext) ) 
 
-#define ICorProfilerInfo_GetILToNativeMapping(This,functionId,cMap,pcMap,map)   \
+#define ICorProfilerInfo_GetILToNativeMapping(This,functionId,cMap,pcMap,map)  \
     ( (This)->lpVtbl -> GetILToNativeMapping(This,functionId,cMap,pcMap,map) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerInfo_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerInfo_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo2_INTERFACE_DEFINED__
@@ -8105,7 +8106,7 @@ EXTERN_C const IID IID_ICorProfilerInfo2;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerInfo2Vtbl
     {
@@ -8470,188 +8471,188 @@ EXTERN_C const IID IID_ICorProfilerInfo2;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerInfo2_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerInfo2_QueryInterface(This,riid,ppvObject)  \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerInfo2_AddRef(This)  \
+#define ICorProfilerInfo2_AddRef(This) \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerInfo2_Release(This) \
+#define ICorProfilerInfo2_Release(This)        \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerInfo2_GetClassFromObject(This,objectId,pClassId)    \
+#define ICorProfilerInfo2_GetClassFromObject(This,objectId,pClassId)   \
     ( (This)->lpVtbl -> GetClassFromObject(This,objectId,pClassId) ) 
 
-#define ICorProfilerInfo2_GetClassFromToken(This,moduleId,typeDef,pClassId) \
+#define ICorProfilerInfo2_GetClassFromToken(This,moduleId,typeDef,pClassId)    \
     ( (This)->lpVtbl -> GetClassFromToken(This,moduleId,typeDef,pClassId) ) 
 
-#define ICorProfilerInfo2_GetCodeInfo(This,functionId,pStart,pcSize)    \
+#define ICorProfilerInfo2_GetCodeInfo(This,functionId,pStart,pcSize)   \
     ( (This)->lpVtbl -> GetCodeInfo(This,functionId,pStart,pcSize) ) 
 
-#define ICorProfilerInfo2_GetEventMask(This,pdwEvents)  \
+#define ICorProfilerInfo2_GetEventMask(This,pdwEvents) \
     ( (This)->lpVtbl -> GetEventMask(This,pdwEvents) ) 
 
-#define ICorProfilerInfo2_GetFunctionFromIP(This,ip,pFunctionId)    \
+#define ICorProfilerInfo2_GetFunctionFromIP(This,ip,pFunctionId)       \
     ( (This)->lpVtbl -> GetFunctionFromIP(This,ip,pFunctionId) ) 
 
-#define ICorProfilerInfo2_GetFunctionFromToken(This,moduleId,token,pFunctionId) \
+#define ICorProfilerInfo2_GetFunctionFromToken(This,moduleId,token,pFunctionId)        \
     ( (This)->lpVtbl -> GetFunctionFromToken(This,moduleId,token,pFunctionId) ) 
 
-#define ICorProfilerInfo2_GetHandleFromThread(This,threadId,phThread)   \
+#define ICorProfilerInfo2_GetHandleFromThread(This,threadId,phThread)  \
     ( (This)->lpVtbl -> GetHandleFromThread(This,threadId,phThread) ) 
 
-#define ICorProfilerInfo2_GetObjectSize(This,objectId,pcSize)   \
+#define ICorProfilerInfo2_GetObjectSize(This,objectId,pcSize)  \
     ( (This)->lpVtbl -> GetObjectSize(This,objectId,pcSize) ) 
 
-#define ICorProfilerInfo2_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank)  \
+#define ICorProfilerInfo2_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) \
     ( (This)->lpVtbl -> IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) ) 
 
-#define ICorProfilerInfo2_GetThreadInfo(This,threadId,pdwWin32ThreadId) \
+#define ICorProfilerInfo2_GetThreadInfo(This,threadId,pdwWin32ThreadId)        \
     ( (This)->lpVtbl -> GetThreadInfo(This,threadId,pdwWin32ThreadId) ) 
 
-#define ICorProfilerInfo2_GetCurrentThreadID(This,pThreadId)    \
+#define ICorProfilerInfo2_GetCurrentThreadID(This,pThreadId)   \
     ( (This)->lpVtbl -> GetCurrentThreadID(This,pThreadId) ) 
 
-#define ICorProfilerInfo2_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken)  \
+#define ICorProfilerInfo2_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) \
     ( (This)->lpVtbl -> GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) ) 
 
-#define ICorProfilerInfo2_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)    \
+#define ICorProfilerInfo2_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)   \
     ( (This)->lpVtbl -> GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken) ) 
 
-#define ICorProfilerInfo2_SetEventMask(This,dwEvents)   \
+#define ICorProfilerInfo2_SetEventMask(This,dwEvents)  \
     ( (This)->lpVtbl -> SetEventMask(This,dwEvents) ) 
 
-#define ICorProfilerInfo2_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall)  \
+#define ICorProfilerInfo2_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo2_SetFunctionIDMapper(This,pFunc)   \
+#define ICorProfilerInfo2_SetFunctionIDMapper(This,pFunc)      \
     ( (This)->lpVtbl -> SetFunctionIDMapper(This,pFunc) ) 
 
-#define ICorProfilerInfo2_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) \
+#define ICorProfilerInfo2_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken)        \
     ( (This)->lpVtbl -> GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) ) 
 
-#define ICorProfilerInfo2_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)    \
+#define ICorProfilerInfo2_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)   \
     ( (This)->lpVtbl -> GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId) ) 
 
-#define ICorProfilerInfo2_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)   \
+#define ICorProfilerInfo2_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)      \
     ( (This)->lpVtbl -> GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut) ) 
 
-#define ICorProfilerInfo2_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)    \
+#define ICorProfilerInfo2_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)       \
     ( (This)->lpVtbl -> GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize) ) 
 
-#define ICorProfilerInfo2_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)    \
+#define ICorProfilerInfo2_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)   \
     ( (This)->lpVtbl -> GetILFunctionBodyAllocator(This,moduleId,ppMalloc) ) 
 
-#define ICorProfilerInfo2_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) \
+#define ICorProfilerInfo2_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader)        \
     ( (This)->lpVtbl -> SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) ) 
 
-#define ICorProfilerInfo2_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) \
+#define ICorProfilerInfo2_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId)        \
     ( (This)->lpVtbl -> GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) ) 
 
-#define ICorProfilerInfo2_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)   \
+#define ICorProfilerInfo2_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)      \
     ( (This)->lpVtbl -> GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId) ) 
 
-#define ICorProfilerInfo2_SetFunctionReJIT(This,functionId) \
+#define ICorProfilerInfo2_SetFunctionReJIT(This,functionId)    \
     ( (This)->lpVtbl -> SetFunctionReJIT(This,functionId) ) 
 
-#define ICorProfilerInfo2_ForceGC(This) \
+#define ICorProfilerInfo2_ForceGC(This)        \
     ( (This)->lpVtbl -> ForceGC(This) ) 
 
-#define ICorProfilerInfo2_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)  \
+#define ICorProfilerInfo2_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)     \
     ( (This)->lpVtbl -> SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries) ) 
 
-#define ICorProfilerInfo2_GetInprocInspectionInterface(This,ppicd)  \
+#define ICorProfilerInfo2_GetInprocInspectionInterface(This,ppicd)     \
     ( (This)->lpVtbl -> GetInprocInspectionInterface(This,ppicd) ) 
 
-#define ICorProfilerInfo2_GetInprocInspectionIThisThread(This,ppicd)    \
+#define ICorProfilerInfo2_GetInprocInspectionIThisThread(This,ppicd)   \
     ( (This)->lpVtbl -> GetInprocInspectionIThisThread(This,ppicd) ) 
 
-#define ICorProfilerInfo2_GetThreadContext(This,threadId,pContextId)    \
+#define ICorProfilerInfo2_GetThreadContext(This,threadId,pContextId)   \
     ( (This)->lpVtbl -> GetThreadContext(This,threadId,pContextId) ) 
 
-#define ICorProfilerInfo2_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) \
+#define ICorProfilerInfo2_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext)        \
     ( (This)->lpVtbl -> BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) ) 
 
-#define ICorProfilerInfo2_EndInprocDebugging(This,dwProfilerContext)    \
+#define ICorProfilerInfo2_EndInprocDebugging(This,dwProfilerContext)   \
     ( (This)->lpVtbl -> EndInprocDebugging(This,dwProfilerContext) ) 
 
-#define ICorProfilerInfo2_GetILToNativeMapping(This,functionId,cMap,pcMap,map)  \
+#define ICorProfilerInfo2_GetILToNativeMapping(This,functionId,cMap,pcMap,map) \
     ( (This)->lpVtbl -> GetILToNativeMapping(This,functionId,cMap,pcMap,map) ) 
 
 
-#define ICorProfilerInfo2_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)    \
+#define ICorProfilerInfo2_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)       \
     ( (This)->lpVtbl -> DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize) ) 
 
-#define ICorProfilerInfo2_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
+#define ICorProfilerInfo2_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall)        \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo2_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)   \
+#define ICorProfilerInfo2_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)      \
     ( (This)->lpVtbl -> GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs) ) 
 
-#define ICorProfilerInfo2_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)   \
+#define ICorProfilerInfo2_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)  \
     ( (This)->lpVtbl -> GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset) ) 
 
-#define ICorProfilerInfo2_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) \
+#define ICorProfilerInfo2_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize)    \
     ( (This)->lpVtbl -> GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) ) 
 
-#define ICorProfilerInfo2_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)  \
+#define ICorProfilerInfo2_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)     \
     ( (This)->lpVtbl -> GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs) ) 
 
-#define ICorProfilerInfo2_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)    \
+#define ICorProfilerInfo2_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)       \
     ( (This)->lpVtbl -> GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos) ) 
 
-#define ICorProfilerInfo2_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)   \
+#define ICorProfilerInfo2_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)      \
     ( (This)->lpVtbl -> GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID) ) 
 
-#define ICorProfilerInfo2_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) \
+#define ICorProfilerInfo2_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID)        \
     ( (This)->lpVtbl -> GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) ) 
 
-#define ICorProfilerInfo2_EnumModuleFrozenObjects(This,moduleID,ppEnum) \
+#define ICorProfilerInfo2_EnumModuleFrozenObjects(This,moduleID,ppEnum)        \
     ( (This)->lpVtbl -> EnumModuleFrozenObjects(This,moduleID,ppEnum) ) 
 
-#define ICorProfilerInfo2_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)    \
+#define ICorProfilerInfo2_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)   \
     ( (This)->lpVtbl -> GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData) ) 
 
-#define ICorProfilerInfo2_GetBoxClassLayout(This,classId,pBufferOffset) \
+#define ICorProfilerInfo2_GetBoxClassLayout(This,classId,pBufferOffset)        \
     ( (This)->lpVtbl -> GetBoxClassLayout(This,classId,pBufferOffset) ) 
 
-#define ICorProfilerInfo2_GetThreadAppDomain(This,threadId,pAppDomainId)    \
+#define ICorProfilerInfo2_GetThreadAppDomain(This,threadId,pAppDomainId)       \
     ( (This)->lpVtbl -> GetThreadAppDomain(This,threadId,pAppDomainId) ) 
 
-#define ICorProfilerInfo2_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)    \
+#define ICorProfilerInfo2_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)       \
     ( (This)->lpVtbl -> GetRVAStaticAddress(This,classId,fieldToken,ppAddress) ) 
 
-#define ICorProfilerInfo2_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)  \
+#define ICorProfilerInfo2_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)     \
     ( (This)->lpVtbl -> GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress) ) 
 
-#define ICorProfilerInfo2_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)    \
+#define ICorProfilerInfo2_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)   \
     ( (This)->lpVtbl -> GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress) ) 
 
-#define ICorProfilerInfo2_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress)  \
+#define ICorProfilerInfo2_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) \
     ( (This)->lpVtbl -> GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) ) 
 
-#define ICorProfilerInfo2_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)    \
+#define ICorProfilerInfo2_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)       \
     ( (This)->lpVtbl -> GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo) ) 
 
-#define ICorProfilerInfo2_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) \
+#define ICorProfilerInfo2_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges)        \
     ( (This)->lpVtbl -> GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) ) 
 
-#define ICorProfilerInfo2_GetObjectGeneration(This,objectId,range)  \
+#define ICorProfilerInfo2_GetObjectGeneration(This,objectId,range)     \
     ( (This)->lpVtbl -> GetObjectGeneration(This,objectId,range) ) 
 
-#define ICorProfilerInfo2_GetNotifiedExceptionClauseInfo(This,pinfo)    \
+#define ICorProfilerInfo2_GetNotifiedExceptionClauseInfo(This,pinfo)   \
     ( (This)->lpVtbl -> GetNotifiedExceptionClauseInfo(This,pinfo) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerInfo2_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerInfo2_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo3_INTERFACE_DEFINED__
@@ -8752,7 +8753,7 @@ EXTERN_C const IID IID_ICorProfilerInfo3;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerInfo3Vtbl
     {
@@ -9211,231 +9212,231 @@ EXTERN_C const IID IID_ICorProfilerInfo3;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerInfo3_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerInfo3_QueryInterface(This,riid,ppvObject)  \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerInfo3_AddRef(This)  \
+#define ICorProfilerInfo3_AddRef(This) \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerInfo3_Release(This) \
+#define ICorProfilerInfo3_Release(This)        \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerInfo3_GetClassFromObject(This,objectId,pClassId)    \
+#define ICorProfilerInfo3_GetClassFromObject(This,objectId,pClassId)   \
     ( (This)->lpVtbl -> GetClassFromObject(This,objectId,pClassId) ) 
 
-#define ICorProfilerInfo3_GetClassFromToken(This,moduleId,typeDef,pClassId) \
+#define ICorProfilerInfo3_GetClassFromToken(This,moduleId,typeDef,pClassId)    \
     ( (This)->lpVtbl -> GetClassFromToken(This,moduleId,typeDef,pClassId) ) 
 
-#define ICorProfilerInfo3_GetCodeInfo(This,functionId,pStart,pcSize)    \
+#define ICorProfilerInfo3_GetCodeInfo(This,functionId,pStart,pcSize)   \
     ( (This)->lpVtbl -> GetCodeInfo(This,functionId,pStart,pcSize) ) 
 
-#define ICorProfilerInfo3_GetEventMask(This,pdwEvents)  \
+#define ICorProfilerInfo3_GetEventMask(This,pdwEvents) \
     ( (This)->lpVtbl -> GetEventMask(This,pdwEvents) ) 
 
-#define ICorProfilerInfo3_GetFunctionFromIP(This,ip,pFunctionId)    \
+#define ICorProfilerInfo3_GetFunctionFromIP(This,ip,pFunctionId)       \
     ( (This)->lpVtbl -> GetFunctionFromIP(This,ip,pFunctionId) ) 
 
-#define ICorProfilerInfo3_GetFunctionFromToken(This,moduleId,token,pFunctionId) \
+#define ICorProfilerInfo3_GetFunctionFromToken(This,moduleId,token,pFunctionId)        \
     ( (This)->lpVtbl -> GetFunctionFromToken(This,moduleId,token,pFunctionId) ) 
 
-#define ICorProfilerInfo3_GetHandleFromThread(This,threadId,phThread)   \
+#define ICorProfilerInfo3_GetHandleFromThread(This,threadId,phThread)  \
     ( (This)->lpVtbl -> GetHandleFromThread(This,threadId,phThread) ) 
 
-#define ICorProfilerInfo3_GetObjectSize(This,objectId,pcSize)   \
+#define ICorProfilerInfo3_GetObjectSize(This,objectId,pcSize)  \
     ( (This)->lpVtbl -> GetObjectSize(This,objectId,pcSize) ) 
 
-#define ICorProfilerInfo3_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank)  \
+#define ICorProfilerInfo3_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) \
     ( (This)->lpVtbl -> IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) ) 
 
-#define ICorProfilerInfo3_GetThreadInfo(This,threadId,pdwWin32ThreadId) \
+#define ICorProfilerInfo3_GetThreadInfo(This,threadId,pdwWin32ThreadId)        \
     ( (This)->lpVtbl -> GetThreadInfo(This,threadId,pdwWin32ThreadId) ) 
 
-#define ICorProfilerInfo3_GetCurrentThreadID(This,pThreadId)    \
+#define ICorProfilerInfo3_GetCurrentThreadID(This,pThreadId)   \
     ( (This)->lpVtbl -> GetCurrentThreadID(This,pThreadId) ) 
 
-#define ICorProfilerInfo3_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken)  \
+#define ICorProfilerInfo3_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) \
     ( (This)->lpVtbl -> GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) ) 
 
-#define ICorProfilerInfo3_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)    \
+#define ICorProfilerInfo3_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)   \
     ( (This)->lpVtbl -> GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken) ) 
 
-#define ICorProfilerInfo3_SetEventMask(This,dwEvents)   \
+#define ICorProfilerInfo3_SetEventMask(This,dwEvents)  \
     ( (This)->lpVtbl -> SetEventMask(This,dwEvents) ) 
 
-#define ICorProfilerInfo3_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall)  \
+#define ICorProfilerInfo3_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo3_SetFunctionIDMapper(This,pFunc)   \
+#define ICorProfilerInfo3_SetFunctionIDMapper(This,pFunc)      \
     ( (This)->lpVtbl -> SetFunctionIDMapper(This,pFunc) ) 
 
-#define ICorProfilerInfo3_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) \
+#define ICorProfilerInfo3_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken)        \
     ( (This)->lpVtbl -> GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) ) 
 
-#define ICorProfilerInfo3_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)    \
+#define ICorProfilerInfo3_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)   \
     ( (This)->lpVtbl -> GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId) ) 
 
-#define ICorProfilerInfo3_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)   \
+#define ICorProfilerInfo3_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)      \
     ( (This)->lpVtbl -> GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut) ) 
 
-#define ICorProfilerInfo3_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)    \
+#define ICorProfilerInfo3_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)       \
     ( (This)->lpVtbl -> GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize) ) 
 
-#define ICorProfilerInfo3_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)    \
+#define ICorProfilerInfo3_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)   \
     ( (This)->lpVtbl -> GetILFunctionBodyAllocator(This,moduleId,ppMalloc) ) 
 
-#define ICorProfilerInfo3_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) \
+#define ICorProfilerInfo3_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader)        \
     ( (This)->lpVtbl -> SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) ) 
 
-#define ICorProfilerInfo3_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) \
+#define ICorProfilerInfo3_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId)        \
     ( (This)->lpVtbl -> GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) ) 
 
-#define ICorProfilerInfo3_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)   \
+#define ICorProfilerInfo3_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)      \
     ( (This)->lpVtbl -> GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId) ) 
 
-#define ICorProfilerInfo3_SetFunctionReJIT(This,functionId) \
+#define ICorProfilerInfo3_SetFunctionReJIT(This,functionId)    \
     ( (This)->lpVtbl -> SetFunctionReJIT(This,functionId) ) 
 
-#define ICorProfilerInfo3_ForceGC(This) \
+#define ICorProfilerInfo3_ForceGC(This)        \
     ( (This)->lpVtbl -> ForceGC(This) ) 
 
-#define ICorProfilerInfo3_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)  \
+#define ICorProfilerInfo3_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)     \
     ( (This)->lpVtbl -> SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries) ) 
 
-#define ICorProfilerInfo3_GetInprocInspectionInterface(This,ppicd)  \
+#define ICorProfilerInfo3_GetInprocInspectionInterface(This,ppicd)     \
     ( (This)->lpVtbl -> GetInprocInspectionInterface(This,ppicd) ) 
 
-#define ICorProfilerInfo3_GetInprocInspectionIThisThread(This,ppicd)    \
+#define ICorProfilerInfo3_GetInprocInspectionIThisThread(This,ppicd)   \
     ( (This)->lpVtbl -> GetInprocInspectionIThisThread(This,ppicd) ) 
 
-#define ICorProfilerInfo3_GetThreadContext(This,threadId,pContextId)    \
+#define ICorProfilerInfo3_GetThreadContext(This,threadId,pContextId)   \
     ( (This)->lpVtbl -> GetThreadContext(This,threadId,pContextId) ) 
 
-#define ICorProfilerInfo3_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) \
+#define ICorProfilerInfo3_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext)        \
     ( (This)->lpVtbl -> BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) ) 
 
-#define ICorProfilerInfo3_EndInprocDebugging(This,dwProfilerContext)    \
+#define ICorProfilerInfo3_EndInprocDebugging(This,dwProfilerContext)   \
     ( (This)->lpVtbl -> EndInprocDebugging(This,dwProfilerContext) ) 
 
-#define ICorProfilerInfo3_GetILToNativeMapping(This,functionId,cMap,pcMap,map)  \
+#define ICorProfilerInfo3_GetILToNativeMapping(This,functionId,cMap,pcMap,map) \
     ( (This)->lpVtbl -> GetILToNativeMapping(This,functionId,cMap,pcMap,map) ) 
 
 
-#define ICorProfilerInfo3_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)    \
+#define ICorProfilerInfo3_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)       \
     ( (This)->lpVtbl -> DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize) ) 
 
-#define ICorProfilerInfo3_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
+#define ICorProfilerInfo3_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall)        \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo3_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)   \
+#define ICorProfilerInfo3_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)      \
     ( (This)->lpVtbl -> GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs) ) 
 
-#define ICorProfilerInfo3_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)   \
+#define ICorProfilerInfo3_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)  \
     ( (This)->lpVtbl -> GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset) ) 
 
-#define ICorProfilerInfo3_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) \
+#define ICorProfilerInfo3_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize)    \
     ( (This)->lpVtbl -> GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) ) 
 
-#define ICorProfilerInfo3_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)  \
+#define ICorProfilerInfo3_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)     \
     ( (This)->lpVtbl -> GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs) ) 
 
-#define ICorProfilerInfo3_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)    \
+#define ICorProfilerInfo3_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)       \
     ( (This)->lpVtbl -> GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos) ) 
 
-#define ICorProfilerInfo3_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)   \
+#define ICorProfilerInfo3_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)      \
     ( (This)->lpVtbl -> GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID) ) 
 
-#define ICorProfilerInfo3_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) \
+#define ICorProfilerInfo3_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID)        \
     ( (This)->lpVtbl -> GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) ) 
 
-#define ICorProfilerInfo3_EnumModuleFrozenObjects(This,moduleID,ppEnum) \
+#define ICorProfilerInfo3_EnumModuleFrozenObjects(This,moduleID,ppEnum)        \
     ( (This)->lpVtbl -> EnumModuleFrozenObjects(This,moduleID,ppEnum) ) 
 
-#define ICorProfilerInfo3_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)    \
+#define ICorProfilerInfo3_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)   \
     ( (This)->lpVtbl -> GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData) ) 
 
-#define ICorProfilerInfo3_GetBoxClassLayout(This,classId,pBufferOffset) \
+#define ICorProfilerInfo3_GetBoxClassLayout(This,classId,pBufferOffset)        \
     ( (This)->lpVtbl -> GetBoxClassLayout(This,classId,pBufferOffset) ) 
 
-#define ICorProfilerInfo3_GetThreadAppDomain(This,threadId,pAppDomainId)    \
+#define ICorProfilerInfo3_GetThreadAppDomain(This,threadId,pAppDomainId)       \
     ( (This)->lpVtbl -> GetThreadAppDomain(This,threadId,pAppDomainId) ) 
 
-#define ICorProfilerInfo3_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)    \
+#define ICorProfilerInfo3_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)       \
     ( (This)->lpVtbl -> GetRVAStaticAddress(This,classId,fieldToken,ppAddress) ) 
 
-#define ICorProfilerInfo3_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)  \
+#define ICorProfilerInfo3_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)     \
     ( (This)->lpVtbl -> GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress) ) 
 
-#define ICorProfilerInfo3_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)    \
+#define ICorProfilerInfo3_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)   \
     ( (This)->lpVtbl -> GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress) ) 
 
-#define ICorProfilerInfo3_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress)  \
+#define ICorProfilerInfo3_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) \
     ( (This)->lpVtbl -> GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) ) 
 
-#define ICorProfilerInfo3_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)    \
+#define ICorProfilerInfo3_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)       \
     ( (This)->lpVtbl -> GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo) ) 
 
-#define ICorProfilerInfo3_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) \
+#define ICorProfilerInfo3_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges)        \
     ( (This)->lpVtbl -> GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) ) 
 
-#define ICorProfilerInfo3_GetObjectGeneration(This,objectId,range)  \
+#define ICorProfilerInfo3_GetObjectGeneration(This,objectId,range)     \
     ( (This)->lpVtbl -> GetObjectGeneration(This,objectId,range) ) 
 
-#define ICorProfilerInfo3_GetNotifiedExceptionClauseInfo(This,pinfo)    \
+#define ICorProfilerInfo3_GetNotifiedExceptionClauseInfo(This,pinfo)   \
     ( (This)->lpVtbl -> GetNotifiedExceptionClauseInfo(This,pinfo) ) 
 
 
-#define ICorProfilerInfo3_EnumJITedFunctions(This,ppEnum)   \
+#define ICorProfilerInfo3_EnumJITedFunctions(This,ppEnum)      \
     ( (This)->lpVtbl -> EnumJITedFunctions(This,ppEnum) ) 
 
-#define ICorProfilerInfo3_RequestProfilerDetach(This,dwExpectedCompletionMilliseconds)  \
+#define ICorProfilerInfo3_RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) \
     ( (This)->lpVtbl -> RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) ) 
 
-#define ICorProfilerInfo3_SetFunctionIDMapper2(This,pFunc,clientData)   \
+#define ICorProfilerInfo3_SetFunctionIDMapper2(This,pFunc,clientData)  \
     ( (This)->lpVtbl -> SetFunctionIDMapper2(This,pFunc,clientData) ) 
 
-#define ICorProfilerInfo3_GetStringLayout2(This,pStringLengthOffset,pBufferOffset)  \
+#define ICorProfilerInfo3_GetStringLayout2(This,pStringLengthOffset,pBufferOffset)     \
     ( (This)->lpVtbl -> GetStringLayout2(This,pStringLengthOffset,pBufferOffset) ) 
 
-#define ICorProfilerInfo3_SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3)  \
+#define ICorProfilerInfo3_SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3)     \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3) ) 
 
-#define ICorProfilerInfo3_SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo)  \
+#define ICorProfilerInfo3_SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo)     \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo) ) 
 
-#define ICorProfilerInfo3_GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo)   \
+#define ICorProfilerInfo3_GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo)      \
     ( (This)->lpVtbl -> GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo) ) 
 
-#define ICorProfilerInfo3_GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange)    \
+#define ICorProfilerInfo3_GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange)       \
     ( (This)->lpVtbl -> GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange) ) 
 
-#define ICorProfilerInfo3_GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo)  \
+#define ICorProfilerInfo3_GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) \
     ( (This)->lpVtbl -> GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) ) 
 
-#define ICorProfilerInfo3_EnumModules(This,ppEnum)  \
+#define ICorProfilerInfo3_EnumModules(This,ppEnum)     \
     ( (This)->lpVtbl -> EnumModules(This,ppEnum) ) 
 
-#define ICorProfilerInfo3_GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString)   \
+#define ICorProfilerInfo3_GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString)      \
     ( (This)->lpVtbl -> GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString) ) 
 
-#define ICorProfilerInfo3_GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress)   \
+#define ICorProfilerInfo3_GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress)      \
     ( (This)->lpVtbl -> GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress) ) 
 
-#define ICorProfilerInfo3_GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds)    \
+#define ICorProfilerInfo3_GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds)       \
     ( (This)->lpVtbl -> GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds) ) 
 
-#define ICorProfilerInfo3_GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags)    \
+#define ICorProfilerInfo3_GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags)   \
     ( (This)->lpVtbl -> GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerInfo3_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerInfo3_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerObjectEnum_INTERFACE_DEFINED__
@@ -9472,7 +9473,7 @@ EXTERN_C const IID IID_ICorProfilerObjectEnum;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerObjectEnumVtbl
     {
@@ -9524,40 +9525,40 @@ EXTERN_C const IID IID_ICorProfilerObjectEnum;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerObjectEnum_QueryInterface(This,riid,ppvObject)  \
+#define ICorProfilerObjectEnum_QueryInterface(This,riid,ppvObject)     \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerObjectEnum_AddRef(This) \
+#define ICorProfilerObjectEnum_AddRef(This)    \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerObjectEnum_Release(This)    \
+#define ICorProfilerObjectEnum_Release(This)   \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerObjectEnum_Skip(This,celt)  \
+#define ICorProfilerObjectEnum_Skip(This,celt) \
     ( (This)->lpVtbl -> Skip(This,celt) ) 
 
-#define ICorProfilerObjectEnum_Reset(This)  \
+#define ICorProfilerObjectEnum_Reset(This)     \
     ( (This)->lpVtbl -> Reset(This) ) 
 
-#define ICorProfilerObjectEnum_Clone(This,ppEnum)   \
+#define ICorProfilerObjectEnum_Clone(This,ppEnum)      \
     ( (This)->lpVtbl -> Clone(This,ppEnum) ) 
 
-#define ICorProfilerObjectEnum_GetCount(This,pcelt) \
+#define ICorProfilerObjectEnum_GetCount(This,pcelt)    \
     ( (This)->lpVtbl -> GetCount(This,pcelt) ) 
 
-#define ICorProfilerObjectEnum_Next(This,celt,objects,pceltFetched) \
+#define ICorProfilerObjectEnum_Next(This,celt,objects,pceltFetched)    \
     ( (This)->lpVtbl -> Next(This,celt,objects,pceltFetched) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerObjectEnum_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerObjectEnum_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerFunctionEnum_INTERFACE_DEFINED__
@@ -9594,7 +9595,7 @@ EXTERN_C const IID IID_ICorProfilerFunctionEnum;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerFunctionEnumVtbl
     {
@@ -9646,40 +9647,40 @@ EXTERN_C const IID IID_ICorProfilerFunctionEnum;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerFunctionEnum_QueryInterface(This,riid,ppvObject)    \
+#define ICorProfilerFunctionEnum_QueryInterface(This,riid,ppvObject)   \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerFunctionEnum_AddRef(This)   \
+#define ICorProfilerFunctionEnum_AddRef(This)  \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerFunctionEnum_Release(This)  \
+#define ICorProfilerFunctionEnum_Release(This) \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerFunctionEnum_Skip(This,celt)    \
+#define ICorProfilerFunctionEnum_Skip(This,celt)       \
     ( (This)->lpVtbl -> Skip(This,celt) ) 
 
-#define ICorProfilerFunctionEnum_Reset(This)    \
+#define ICorProfilerFunctionEnum_Reset(This)   \
     ( (This)->lpVtbl -> Reset(This) ) 
 
-#define ICorProfilerFunctionEnum_Clone(This,ppEnum) \
+#define ICorProfilerFunctionEnum_Clone(This,ppEnum)    \
     ( (This)->lpVtbl -> Clone(This,ppEnum) ) 
 
-#define ICorProfilerFunctionEnum_GetCount(This,pcelt)   \
+#define ICorProfilerFunctionEnum_GetCount(This,pcelt)  \
     ( (This)->lpVtbl -> GetCount(This,pcelt) ) 
 
-#define ICorProfilerFunctionEnum_Next(This,celt,ids,pceltFetched)   \
+#define ICorProfilerFunctionEnum_Next(This,celt,ids,pceltFetched)      \
     ( (This)->lpVtbl -> Next(This,celt,ids,pceltFetched) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerFunctionEnum_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerFunctionEnum_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerModuleEnum_INTERFACE_DEFINED__
@@ -9716,7 +9717,7 @@ EXTERN_C const IID IID_ICorProfilerModuleEnum;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerModuleEnumVtbl
     {
@@ -9768,40 +9769,40 @@ EXTERN_C const IID IID_ICorProfilerModuleEnum;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerModuleEnum_QueryInterface(This,riid,ppvObject)  \
+#define ICorProfilerModuleEnum_QueryInterface(This,riid,ppvObject)     \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerModuleEnum_AddRef(This) \
+#define ICorProfilerModuleEnum_AddRef(This)    \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerModuleEnum_Release(This)    \
+#define ICorProfilerModuleEnum_Release(This)   \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerModuleEnum_Skip(This,celt)  \
+#define ICorProfilerModuleEnum_Skip(This,celt) \
     ( (This)->lpVtbl -> Skip(This,celt) ) 
 
-#define ICorProfilerModuleEnum_Reset(This)  \
+#define ICorProfilerModuleEnum_Reset(This)     \
     ( (This)->lpVtbl -> Reset(This) ) 
 
-#define ICorProfilerModuleEnum_Clone(This,ppEnum)   \
+#define ICorProfilerModuleEnum_Clone(This,ppEnum)      \
     ( (This)->lpVtbl -> Clone(This,ppEnum) ) 
 
-#define ICorProfilerModuleEnum_GetCount(This,pcelt) \
+#define ICorProfilerModuleEnum_GetCount(This,pcelt)    \
     ( (This)->lpVtbl -> GetCount(This,pcelt) ) 
 
-#define ICorProfilerModuleEnum_Next(This,celt,ids,pceltFetched) \
+#define ICorProfilerModuleEnum_Next(This,celt,ids,pceltFetched)        \
     ( (This)->lpVtbl -> Next(This,celt,ids,pceltFetched) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerModuleEnum_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerModuleEnum_INTERFACE_DEFINED__ */
 
 
 #ifndef __IMethodMalloc_INTERFACE_DEFINED__
@@ -9825,7 +9826,7 @@ EXTERN_C const IID IID_IMethodMalloc;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct IMethodMallocVtbl
     {
@@ -9860,28 +9861,28 @@ EXTERN_C const IID IID_IMethodMalloc;
 #ifdef COBJMACROS
 
 
-#define IMethodMalloc_QueryInterface(This,riid,ppvObject)   \
+#define IMethodMalloc_QueryInterface(This,riid,ppvObject)      \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define IMethodMalloc_AddRef(This)  \
+#define IMethodMalloc_AddRef(This)     \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define IMethodMalloc_Release(This) \
+#define IMethodMalloc_Release(This)    \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define IMethodMalloc_Alloc(This,cb)    \
+#define IMethodMalloc_Alloc(This,cb)   \
     ( (This)->lpVtbl -> Alloc(This,cb) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __IMethodMalloc_INTERFACE_DEFINED__ */
+#endif         /* __IMethodMalloc_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerFunctionControl_INTERFACE_DEFINED__
@@ -9913,7 +9914,7 @@ EXTERN_C const IID IID_ICorProfilerFunctionControl;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerFunctionControlVtbl
     {
@@ -9958,34 +9959,34 @@ EXTERN_C const IID IID_ICorProfilerFunctionControl;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerFunctionControl_QueryInterface(This,riid,ppvObject) \
+#define ICorProfilerFunctionControl_QueryInterface(This,riid,ppvObject)        \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerFunctionControl_AddRef(This)    \
+#define ICorProfilerFunctionControl_AddRef(This)       \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerFunctionControl_Release(This)   \
+#define ICorProfilerFunctionControl_Release(This)      \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerFunctionControl_SetCodegenFlags(This,flags) \
+#define ICorProfilerFunctionControl_SetCodegenFlags(This,flags)        \
     ( (This)->lpVtbl -> SetCodegenFlags(This,flags) ) 
 
-#define ICorProfilerFunctionControl_SetILFunctionBody(This,cbNewILMethodHeader,pbNewILMethodHeader) \
+#define ICorProfilerFunctionControl_SetILFunctionBody(This,cbNewILMethodHeader,pbNewILMethodHeader)    \
     ( (This)->lpVtbl -> SetILFunctionBody(This,cbNewILMethodHeader,pbNewILMethodHeader) ) 
 
-#define ICorProfilerFunctionControl_SetILInstrumentedCodeMap(This,cILMapEntries,rgILMapEntries) \
+#define ICorProfilerFunctionControl_SetILInstrumentedCodeMap(This,cILMapEntries,rgILMapEntries)        \
     ( (This)->lpVtbl -> SetILInstrumentedCodeMap(This,cILMapEntries,rgILMapEntries) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerFunctionControl_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerFunctionControl_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo4_INTERFACE_DEFINED__
@@ -10054,7 +10055,7 @@ EXTERN_C const IID IID_ICorProfilerInfo4;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerInfo4Vtbl
     {
@@ -10571,262 +10572,262 @@ EXTERN_C const IID IID_ICorProfilerInfo4;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerInfo4_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerInfo4_QueryInterface(This,riid,ppvObject)  \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerInfo4_AddRef(This)  \
+#define ICorProfilerInfo4_AddRef(This) \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerInfo4_Release(This) \
+#define ICorProfilerInfo4_Release(This)        \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerInfo4_GetClassFromObject(This,objectId,pClassId)    \
+#define ICorProfilerInfo4_GetClassFromObject(This,objectId,pClassId)   \
     ( (This)->lpVtbl -> GetClassFromObject(This,objectId,pClassId) ) 
 
-#define ICorProfilerInfo4_GetClassFromToken(This,moduleId,typeDef,pClassId) \
+#define ICorProfilerInfo4_GetClassFromToken(This,moduleId,typeDef,pClassId)    \
     ( (This)->lpVtbl -> GetClassFromToken(This,moduleId,typeDef,pClassId) ) 
 
-#define ICorProfilerInfo4_GetCodeInfo(This,functionId,pStart,pcSize)    \
+#define ICorProfilerInfo4_GetCodeInfo(This,functionId,pStart,pcSize)   \
     ( (This)->lpVtbl -> GetCodeInfo(This,functionId,pStart,pcSize) ) 
 
-#define ICorProfilerInfo4_GetEventMask(This,pdwEvents)  \
+#define ICorProfilerInfo4_GetEventMask(This,pdwEvents) \
     ( (This)->lpVtbl -> GetEventMask(This,pdwEvents) ) 
 
-#define ICorProfilerInfo4_GetFunctionFromIP(This,ip,pFunctionId)    \
+#define ICorProfilerInfo4_GetFunctionFromIP(This,ip,pFunctionId)       \
     ( (This)->lpVtbl -> GetFunctionFromIP(This,ip,pFunctionId) ) 
 
-#define ICorProfilerInfo4_GetFunctionFromToken(This,moduleId,token,pFunctionId) \
+#define ICorProfilerInfo4_GetFunctionFromToken(This,moduleId,token,pFunctionId)        \
     ( (This)->lpVtbl -> GetFunctionFromToken(This,moduleId,token,pFunctionId) ) 
 
-#define ICorProfilerInfo4_GetHandleFromThread(This,threadId,phThread)   \
+#define ICorProfilerInfo4_GetHandleFromThread(This,threadId,phThread)  \
     ( (This)->lpVtbl -> GetHandleFromThread(This,threadId,phThread) ) 
 
-#define ICorProfilerInfo4_GetObjectSize(This,objectId,pcSize)   \
+#define ICorProfilerInfo4_GetObjectSize(This,objectId,pcSize)  \
     ( (This)->lpVtbl -> GetObjectSize(This,objectId,pcSize) ) 
 
-#define ICorProfilerInfo4_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank)  \
+#define ICorProfilerInfo4_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) \
     ( (This)->lpVtbl -> IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) ) 
 
-#define ICorProfilerInfo4_GetThreadInfo(This,threadId,pdwWin32ThreadId) \
+#define ICorProfilerInfo4_GetThreadInfo(This,threadId,pdwWin32ThreadId)        \
     ( (This)->lpVtbl -> GetThreadInfo(This,threadId,pdwWin32ThreadId) ) 
 
-#define ICorProfilerInfo4_GetCurrentThreadID(This,pThreadId)    \
+#define ICorProfilerInfo4_GetCurrentThreadID(This,pThreadId)   \
     ( (This)->lpVtbl -> GetCurrentThreadID(This,pThreadId) ) 
 
-#define ICorProfilerInfo4_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken)  \
+#define ICorProfilerInfo4_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) \
     ( (This)->lpVtbl -> GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) ) 
 
-#define ICorProfilerInfo4_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)    \
+#define ICorProfilerInfo4_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)   \
     ( (This)->lpVtbl -> GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken) ) 
 
-#define ICorProfilerInfo4_SetEventMask(This,dwEvents)   \
+#define ICorProfilerInfo4_SetEventMask(This,dwEvents)  \
     ( (This)->lpVtbl -> SetEventMask(This,dwEvents) ) 
 
-#define ICorProfilerInfo4_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall)  \
+#define ICorProfilerInfo4_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo4_SetFunctionIDMapper(This,pFunc)   \
+#define ICorProfilerInfo4_SetFunctionIDMapper(This,pFunc)      \
     ( (This)->lpVtbl -> SetFunctionIDMapper(This,pFunc) ) 
 
-#define ICorProfilerInfo4_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) \
+#define ICorProfilerInfo4_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken)        \
     ( (This)->lpVtbl -> GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) ) 
 
-#define ICorProfilerInfo4_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)    \
+#define ICorProfilerInfo4_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)   \
     ( (This)->lpVtbl -> GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId) ) 
 
-#define ICorProfilerInfo4_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)   \
+#define ICorProfilerInfo4_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)      \
     ( (This)->lpVtbl -> GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut) ) 
 
-#define ICorProfilerInfo4_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)    \
+#define ICorProfilerInfo4_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)       \
     ( (This)->lpVtbl -> GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize) ) 
 
-#define ICorProfilerInfo4_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)    \
+#define ICorProfilerInfo4_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)   \
     ( (This)->lpVtbl -> GetILFunctionBodyAllocator(This,moduleId,ppMalloc) ) 
 
-#define ICorProfilerInfo4_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) \
+#define ICorProfilerInfo4_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader)        \
     ( (This)->lpVtbl -> SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) ) 
 
-#define ICorProfilerInfo4_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) \
+#define ICorProfilerInfo4_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId)        \
     ( (This)->lpVtbl -> GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) ) 
 
-#define ICorProfilerInfo4_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)   \
+#define ICorProfilerInfo4_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)      \
     ( (This)->lpVtbl -> GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId) ) 
 
-#define ICorProfilerInfo4_SetFunctionReJIT(This,functionId) \
+#define ICorProfilerInfo4_SetFunctionReJIT(This,functionId)    \
     ( (This)->lpVtbl -> SetFunctionReJIT(This,functionId) ) 
 
-#define ICorProfilerInfo4_ForceGC(This) \
+#define ICorProfilerInfo4_ForceGC(This)        \
     ( (This)->lpVtbl -> ForceGC(This) ) 
 
-#define ICorProfilerInfo4_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)  \
+#define ICorProfilerInfo4_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)     \
     ( (This)->lpVtbl -> SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries) ) 
 
-#define ICorProfilerInfo4_GetInprocInspectionInterface(This,ppicd)  \
+#define ICorProfilerInfo4_GetInprocInspectionInterface(This,ppicd)     \
     ( (This)->lpVtbl -> GetInprocInspectionInterface(This,ppicd) ) 
 
-#define ICorProfilerInfo4_GetInprocInspectionIThisThread(This,ppicd)    \
+#define ICorProfilerInfo4_GetInprocInspectionIThisThread(This,ppicd)   \
     ( (This)->lpVtbl -> GetInprocInspectionIThisThread(This,ppicd) ) 
 
-#define ICorProfilerInfo4_GetThreadContext(This,threadId,pContextId)    \
+#define ICorProfilerInfo4_GetThreadContext(This,threadId,pContextId)   \
     ( (This)->lpVtbl -> GetThreadContext(This,threadId,pContextId) ) 
 
-#define ICorProfilerInfo4_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) \
+#define ICorProfilerInfo4_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext)        \
     ( (This)->lpVtbl -> BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) ) 
 
-#define ICorProfilerInfo4_EndInprocDebugging(This,dwProfilerContext)    \
+#define ICorProfilerInfo4_EndInprocDebugging(This,dwProfilerContext)   \
     ( (This)->lpVtbl -> EndInprocDebugging(This,dwProfilerContext) ) 
 
-#define ICorProfilerInfo4_GetILToNativeMapping(This,functionId,cMap,pcMap,map)  \
+#define ICorProfilerInfo4_GetILToNativeMapping(This,functionId,cMap,pcMap,map) \
     ( (This)->lpVtbl -> GetILToNativeMapping(This,functionId,cMap,pcMap,map) ) 
 
 
-#define ICorProfilerInfo4_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)    \
+#define ICorProfilerInfo4_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)       \
     ( (This)->lpVtbl -> DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize) ) 
 
-#define ICorProfilerInfo4_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
+#define ICorProfilerInfo4_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall)        \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo4_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)   \
+#define ICorProfilerInfo4_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)      \
     ( (This)->lpVtbl -> GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs) ) 
 
-#define ICorProfilerInfo4_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)   \
+#define ICorProfilerInfo4_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)  \
     ( (This)->lpVtbl -> GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset) ) 
 
-#define ICorProfilerInfo4_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) \
+#define ICorProfilerInfo4_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize)    \
     ( (This)->lpVtbl -> GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) ) 
 
-#define ICorProfilerInfo4_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)  \
+#define ICorProfilerInfo4_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)     \
     ( (This)->lpVtbl -> GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs) ) 
 
-#define ICorProfilerInfo4_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)    \
+#define ICorProfilerInfo4_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)       \
     ( (This)->lpVtbl -> GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos) ) 
 
-#define ICorProfilerInfo4_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)   \
+#define ICorProfilerInfo4_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)      \
     ( (This)->lpVtbl -> GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID) ) 
 
-#define ICorProfilerInfo4_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) \
+#define ICorProfilerInfo4_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID)        \
     ( (This)->lpVtbl -> GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) ) 
 
-#define ICorProfilerInfo4_EnumModuleFrozenObjects(This,moduleID,ppEnum) \
+#define ICorProfilerInfo4_EnumModuleFrozenObjects(This,moduleID,ppEnum)        \
     ( (This)->lpVtbl -> EnumModuleFrozenObjects(This,moduleID,ppEnum) ) 
 
-#define ICorProfilerInfo4_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)    \
+#define ICorProfilerInfo4_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)   \
     ( (This)->lpVtbl -> GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData) ) 
 
-#define ICorProfilerInfo4_GetBoxClassLayout(This,classId,pBufferOffset) \
+#define ICorProfilerInfo4_GetBoxClassLayout(This,classId,pBufferOffset)        \
     ( (This)->lpVtbl -> GetBoxClassLayout(This,classId,pBufferOffset) ) 
 
-#define ICorProfilerInfo4_GetThreadAppDomain(This,threadId,pAppDomainId)    \
+#define ICorProfilerInfo4_GetThreadAppDomain(This,threadId,pAppDomainId)       \
     ( (This)->lpVtbl -> GetThreadAppDomain(This,threadId,pAppDomainId) ) 
 
-#define ICorProfilerInfo4_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)    \
+#define ICorProfilerInfo4_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)       \
     ( (This)->lpVtbl -> GetRVAStaticAddress(This,classId,fieldToken,ppAddress) ) 
 
-#define ICorProfilerInfo4_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)  \
+#define ICorProfilerInfo4_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)     \
     ( (This)->lpVtbl -> GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress) ) 
 
-#define ICorProfilerInfo4_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)    \
+#define ICorProfilerInfo4_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)   \
     ( (This)->lpVtbl -> GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress) ) 
 
-#define ICorProfilerInfo4_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress)  \
+#define ICorProfilerInfo4_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) \
     ( (This)->lpVtbl -> GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) ) 
 
-#define ICorProfilerInfo4_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)    \
+#define ICorProfilerInfo4_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)       \
     ( (This)->lpVtbl -> GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo) ) 
 
-#define ICorProfilerInfo4_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) \
+#define ICorProfilerInfo4_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges)        \
     ( (This)->lpVtbl -> GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) ) 
 
-#define ICorProfilerInfo4_GetObjectGeneration(This,objectId,range)  \
+#define ICorProfilerInfo4_GetObjectGeneration(This,objectId,range)     \
     ( (This)->lpVtbl -> GetObjectGeneration(This,objectId,range) ) 
 
-#define ICorProfilerInfo4_GetNotifiedExceptionClauseInfo(This,pinfo)    \
+#define ICorProfilerInfo4_GetNotifiedExceptionClauseInfo(This,pinfo)   \
     ( (This)->lpVtbl -> GetNotifiedExceptionClauseInfo(This,pinfo) ) 
 
 
-#define ICorProfilerInfo4_EnumJITedFunctions(This,ppEnum)   \
+#define ICorProfilerInfo4_EnumJITedFunctions(This,ppEnum)      \
     ( (This)->lpVtbl -> EnumJITedFunctions(This,ppEnum) ) 
 
-#define ICorProfilerInfo4_RequestProfilerDetach(This,dwExpectedCompletionMilliseconds)  \
+#define ICorProfilerInfo4_RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) \
     ( (This)->lpVtbl -> RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) ) 
 
-#define ICorProfilerInfo4_SetFunctionIDMapper2(This,pFunc,clientData)   \
+#define ICorProfilerInfo4_SetFunctionIDMapper2(This,pFunc,clientData)  \
     ( (This)->lpVtbl -> SetFunctionIDMapper2(This,pFunc,clientData) ) 
 
-#define ICorProfilerInfo4_GetStringLayout2(This,pStringLengthOffset,pBufferOffset)  \
+#define ICorProfilerInfo4_GetStringLayout2(This,pStringLengthOffset,pBufferOffset)     \
     ( (This)->lpVtbl -> GetStringLayout2(This,pStringLengthOffset,pBufferOffset) ) 
 
-#define ICorProfilerInfo4_SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3)  \
+#define ICorProfilerInfo4_SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3)     \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3) ) 
 
-#define ICorProfilerInfo4_SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo)  \
+#define ICorProfilerInfo4_SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo)     \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo) ) 
 
-#define ICorProfilerInfo4_GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo)   \
+#define ICorProfilerInfo4_GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo)      \
     ( (This)->lpVtbl -> GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo) ) 
 
-#define ICorProfilerInfo4_GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange)    \
+#define ICorProfilerInfo4_GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange)       \
     ( (This)->lpVtbl -> GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange) ) 
 
-#define ICorProfilerInfo4_GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo)  \
+#define ICorProfilerInfo4_GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) \
     ( (This)->lpVtbl -> GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) ) 
 
-#define ICorProfilerInfo4_EnumModules(This,ppEnum)  \
+#define ICorProfilerInfo4_EnumModules(This,ppEnum)     \
     ( (This)->lpVtbl -> EnumModules(This,ppEnum) ) 
 
-#define ICorProfilerInfo4_GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString)   \
+#define ICorProfilerInfo4_GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString)      \
     ( (This)->lpVtbl -> GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString) ) 
 
-#define ICorProfilerInfo4_GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress)   \
+#define ICorProfilerInfo4_GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress)      \
     ( (This)->lpVtbl -> GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress) ) 
 
-#define ICorProfilerInfo4_GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds)    \
+#define ICorProfilerInfo4_GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds)       \
     ( (This)->lpVtbl -> GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds) ) 
 
-#define ICorProfilerInfo4_GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags)    \
+#define ICorProfilerInfo4_GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags)   \
     ( (This)->lpVtbl -> GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags) ) 
 
 
-#define ICorProfilerInfo4_EnumThreads(This,ppEnum)  \
+#define ICorProfilerInfo4_EnumThreads(This,ppEnum)     \
     ( (This)->lpVtbl -> EnumThreads(This,ppEnum) ) 
 
-#define ICorProfilerInfo4_InitializeCurrentThread(This) \
+#define ICorProfilerInfo4_InitializeCurrentThread(This)        \
     ( (This)->lpVtbl -> InitializeCurrentThread(This) ) 
 
-#define ICorProfilerInfo4_RequestReJIT(This,cFunctions,moduleIds,methodIds) \
+#define ICorProfilerInfo4_RequestReJIT(This,cFunctions,moduleIds,methodIds)    \
     ( (This)->lpVtbl -> RequestReJIT(This,cFunctions,moduleIds,methodIds) ) 
 
-#define ICorProfilerInfo4_RequestRevert(This,cFunctions,moduleIds,methodIds,status) \
+#define ICorProfilerInfo4_RequestRevert(This,cFunctions,moduleIds,methodIds,status)    \
     ( (This)->lpVtbl -> RequestRevert(This,cFunctions,moduleIds,methodIds,status) ) 
 
-#define ICorProfilerInfo4_GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos)    \
+#define ICorProfilerInfo4_GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos)       \
     ( (This)->lpVtbl -> GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos) ) 
 
-#define ICorProfilerInfo4_GetFunctionFromIP2(This,ip,pFunctionId,pReJitId)  \
+#define ICorProfilerInfo4_GetFunctionFromIP2(This,ip,pFunctionId,pReJitId)     \
     ( (This)->lpVtbl -> GetFunctionFromIP2(This,ip,pFunctionId,pReJitId) ) 
 
-#define ICorProfilerInfo4_GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds)    \
+#define ICorProfilerInfo4_GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds)   \
     ( (This)->lpVtbl -> GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds) ) 
 
-#define ICorProfilerInfo4_GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map) \
+#define ICorProfilerInfo4_GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map)        \
     ( (This)->lpVtbl -> GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map) ) 
 
-#define ICorProfilerInfo4_EnumJITedFunctions2(This,ppEnum)  \
+#define ICorProfilerInfo4_EnumJITedFunctions2(This,ppEnum)     \
     ( (This)->lpVtbl -> EnumJITedFunctions2(This,ppEnum) ) 
 
-#define ICorProfilerInfo4_GetObjectSize2(This,objectId,pcSize)  \
+#define ICorProfilerInfo4_GetObjectSize2(This,objectId,pcSize) \
     ( (This)->lpVtbl -> GetObjectSize2(This,objectId,pcSize) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerInfo4_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerInfo4_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo5_INTERFACE_DEFINED__
@@ -10855,7 +10856,7 @@ EXTERN_C const IID IID_ICorProfilerInfo5;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerInfo5Vtbl
     {
@@ -11382,269 +11383,269 @@ EXTERN_C const IID IID_ICorProfilerInfo5;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerInfo5_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerInfo5_QueryInterface(This,riid,ppvObject)  \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerInfo5_AddRef(This)  \
+#define ICorProfilerInfo5_AddRef(This) \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerInfo5_Release(This) \
+#define ICorProfilerInfo5_Release(This)        \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerInfo5_GetClassFromObject(This,objectId,pClassId)    \
+#define ICorProfilerInfo5_GetClassFromObject(This,objectId,pClassId)   \
     ( (This)->lpVtbl -> GetClassFromObject(This,objectId,pClassId) ) 
 
-#define ICorProfilerInfo5_GetClassFromToken(This,moduleId,typeDef,pClassId) \
+#define ICorProfilerInfo5_GetClassFromToken(This,moduleId,typeDef,pClassId)    \
     ( (This)->lpVtbl -> GetClassFromToken(This,moduleId,typeDef,pClassId) ) 
 
-#define ICorProfilerInfo5_GetCodeInfo(This,functionId,pStart,pcSize)    \
+#define ICorProfilerInfo5_GetCodeInfo(This,functionId,pStart,pcSize)   \
     ( (This)->lpVtbl -> GetCodeInfo(This,functionId,pStart,pcSize) ) 
 
-#define ICorProfilerInfo5_GetEventMask(This,pdwEvents)  \
+#define ICorProfilerInfo5_GetEventMask(This,pdwEvents) \
     ( (This)->lpVtbl -> GetEventMask(This,pdwEvents) ) 
 
-#define ICorProfilerInfo5_GetFunctionFromIP(This,ip,pFunctionId)    \
+#define ICorProfilerInfo5_GetFunctionFromIP(This,ip,pFunctionId)       \
     ( (This)->lpVtbl -> GetFunctionFromIP(This,ip,pFunctionId) ) 
 
-#define ICorProfilerInfo5_GetFunctionFromToken(This,moduleId,token,pFunctionId) \
+#define ICorProfilerInfo5_GetFunctionFromToken(This,moduleId,token,pFunctionId)        \
     ( (This)->lpVtbl -> GetFunctionFromToken(This,moduleId,token,pFunctionId) ) 
 
-#define ICorProfilerInfo5_GetHandleFromThread(This,threadId,phThread)   \
+#define ICorProfilerInfo5_GetHandleFromThread(This,threadId,phThread)  \
     ( (This)->lpVtbl -> GetHandleFromThread(This,threadId,phThread) ) 
 
-#define ICorProfilerInfo5_GetObjectSize(This,objectId,pcSize)   \
+#define ICorProfilerInfo5_GetObjectSize(This,objectId,pcSize)  \
     ( (This)->lpVtbl -> GetObjectSize(This,objectId,pcSize) ) 
 
-#define ICorProfilerInfo5_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank)  \
+#define ICorProfilerInfo5_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) \
     ( (This)->lpVtbl -> IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) ) 
 
-#define ICorProfilerInfo5_GetThreadInfo(This,threadId,pdwWin32ThreadId) \
+#define ICorProfilerInfo5_GetThreadInfo(This,threadId,pdwWin32ThreadId)        \
     ( (This)->lpVtbl -> GetThreadInfo(This,threadId,pdwWin32ThreadId) ) 
 
-#define ICorProfilerInfo5_GetCurrentThreadID(This,pThreadId)    \
+#define ICorProfilerInfo5_GetCurrentThreadID(This,pThreadId)   \
     ( (This)->lpVtbl -> GetCurrentThreadID(This,pThreadId) ) 
 
-#define ICorProfilerInfo5_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken)  \
+#define ICorProfilerInfo5_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) \
     ( (This)->lpVtbl -> GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) ) 
 
-#define ICorProfilerInfo5_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)    \
+#define ICorProfilerInfo5_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)   \
     ( (This)->lpVtbl -> GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken) ) 
 
-#define ICorProfilerInfo5_SetEventMask(This,dwEvents)   \
+#define ICorProfilerInfo5_SetEventMask(This,dwEvents)  \
     ( (This)->lpVtbl -> SetEventMask(This,dwEvents) ) 
 
-#define ICorProfilerInfo5_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall)  \
+#define ICorProfilerInfo5_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo5_SetFunctionIDMapper(This,pFunc)   \
+#define ICorProfilerInfo5_SetFunctionIDMapper(This,pFunc)      \
     ( (This)->lpVtbl -> SetFunctionIDMapper(This,pFunc) ) 
 
-#define ICorProfilerInfo5_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) \
+#define ICorProfilerInfo5_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken)        \
     ( (This)->lpVtbl -> GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) ) 
 
-#define ICorProfilerInfo5_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)    \
+#define ICorProfilerInfo5_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)   \
     ( (This)->lpVtbl -> GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId) ) 
 
-#define ICorProfilerInfo5_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)   \
+#define ICorProfilerInfo5_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)      \
     ( (This)->lpVtbl -> GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut) ) 
 
-#define ICorProfilerInfo5_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)    \
+#define ICorProfilerInfo5_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)       \
     ( (This)->lpVtbl -> GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize) ) 
 
-#define ICorProfilerInfo5_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)    \
+#define ICorProfilerInfo5_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)   \
     ( (This)->lpVtbl -> GetILFunctionBodyAllocator(This,moduleId,ppMalloc) ) 
 
-#define ICorProfilerInfo5_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) \
+#define ICorProfilerInfo5_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader)        \
     ( (This)->lpVtbl -> SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) ) 
 
-#define ICorProfilerInfo5_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) \
+#define ICorProfilerInfo5_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId)        \
     ( (This)->lpVtbl -> GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) ) 
 
-#define ICorProfilerInfo5_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)   \
+#define ICorProfilerInfo5_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)      \
     ( (This)->lpVtbl -> GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId) ) 
 
-#define ICorProfilerInfo5_SetFunctionReJIT(This,functionId) \
+#define ICorProfilerInfo5_SetFunctionReJIT(This,functionId)    \
     ( (This)->lpVtbl -> SetFunctionReJIT(This,functionId) ) 
 
-#define ICorProfilerInfo5_ForceGC(This) \
+#define ICorProfilerInfo5_ForceGC(This)        \
     ( (This)->lpVtbl -> ForceGC(This) ) 
 
-#define ICorProfilerInfo5_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)  \
+#define ICorProfilerInfo5_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)     \
     ( (This)->lpVtbl -> SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries) ) 
 
-#define ICorProfilerInfo5_GetInprocInspectionInterface(This,ppicd)  \
+#define ICorProfilerInfo5_GetInprocInspectionInterface(This,ppicd)     \
     ( (This)->lpVtbl -> GetInprocInspectionInterface(This,ppicd) ) 
 
-#define ICorProfilerInfo5_GetInprocInspectionIThisThread(This,ppicd)    \
+#define ICorProfilerInfo5_GetInprocInspectionIThisThread(This,ppicd)   \
     ( (This)->lpVtbl -> GetInprocInspectionIThisThread(This,ppicd) ) 
 
-#define ICorProfilerInfo5_GetThreadContext(This,threadId,pContextId)    \
+#define ICorProfilerInfo5_GetThreadContext(This,threadId,pContextId)   \
     ( (This)->lpVtbl -> GetThreadContext(This,threadId,pContextId) ) 
 
-#define ICorProfilerInfo5_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) \
+#define ICorProfilerInfo5_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext)        \
     ( (This)->lpVtbl -> BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) ) 
 
-#define ICorProfilerInfo5_EndInprocDebugging(This,dwProfilerContext)    \
+#define ICorProfilerInfo5_EndInprocDebugging(This,dwProfilerContext)   \
     ( (This)->lpVtbl -> EndInprocDebugging(This,dwProfilerContext) ) 
 
-#define ICorProfilerInfo5_GetILToNativeMapping(This,functionId,cMap,pcMap,map)  \
+#define ICorProfilerInfo5_GetILToNativeMapping(This,functionId,cMap,pcMap,map) \
     ( (This)->lpVtbl -> GetILToNativeMapping(This,functionId,cMap,pcMap,map) ) 
 
 
-#define ICorProfilerInfo5_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)    \
+#define ICorProfilerInfo5_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)       \
     ( (This)->lpVtbl -> DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize) ) 
 
-#define ICorProfilerInfo5_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
+#define ICorProfilerInfo5_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall)        \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo5_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)   \
+#define ICorProfilerInfo5_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)      \
     ( (This)->lpVtbl -> GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs) ) 
 
-#define ICorProfilerInfo5_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)   \
+#define ICorProfilerInfo5_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)  \
     ( (This)->lpVtbl -> GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset) ) 
 
-#define ICorProfilerInfo5_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) \
+#define ICorProfilerInfo5_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize)    \
     ( (This)->lpVtbl -> GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) ) 
 
-#define ICorProfilerInfo5_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)  \
+#define ICorProfilerInfo5_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)     \
     ( (This)->lpVtbl -> GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs) ) 
 
-#define ICorProfilerInfo5_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)    \
+#define ICorProfilerInfo5_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)       \
     ( (This)->lpVtbl -> GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos) ) 
 
-#define ICorProfilerInfo5_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)   \
+#define ICorProfilerInfo5_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)      \
     ( (This)->lpVtbl -> GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID) ) 
 
-#define ICorProfilerInfo5_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) \
+#define ICorProfilerInfo5_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID)        \
     ( (This)->lpVtbl -> GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) ) 
 
-#define ICorProfilerInfo5_EnumModuleFrozenObjects(This,moduleID,ppEnum) \
+#define ICorProfilerInfo5_EnumModuleFrozenObjects(This,moduleID,ppEnum)        \
     ( (This)->lpVtbl -> EnumModuleFrozenObjects(This,moduleID,ppEnum) ) 
 
-#define ICorProfilerInfo5_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)    \
+#define ICorProfilerInfo5_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)   \
     ( (This)->lpVtbl -> GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData) ) 
 
-#define ICorProfilerInfo5_GetBoxClassLayout(This,classId,pBufferOffset) \
+#define ICorProfilerInfo5_GetBoxClassLayout(This,classId,pBufferOffset)        \
     ( (This)->lpVtbl -> GetBoxClassLayout(This,classId,pBufferOffset) ) 
 
-#define ICorProfilerInfo5_GetThreadAppDomain(This,threadId,pAppDomainId)    \
+#define ICorProfilerInfo5_GetThreadAppDomain(This,threadId,pAppDomainId)       \
     ( (This)->lpVtbl -> GetThreadAppDomain(This,threadId,pAppDomainId) ) 
 
-#define ICorProfilerInfo5_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)    \
+#define ICorProfilerInfo5_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)       \
     ( (This)->lpVtbl -> GetRVAStaticAddress(This,classId,fieldToken,ppAddress) ) 
 
-#define ICorProfilerInfo5_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)  \
+#define ICorProfilerInfo5_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)     \
     ( (This)->lpVtbl -> GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress) ) 
 
-#define ICorProfilerInfo5_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)    \
+#define ICorProfilerInfo5_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)   \
     ( (This)->lpVtbl -> GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress) ) 
 
-#define ICorProfilerInfo5_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress)  \
+#define ICorProfilerInfo5_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) \
     ( (This)->lpVtbl -> GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) ) 
 
-#define ICorProfilerInfo5_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)    \
+#define ICorProfilerInfo5_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)       \
     ( (This)->lpVtbl -> GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo) ) 
 
-#define ICorProfilerInfo5_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) \
+#define ICorProfilerInfo5_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges)        \
     ( (This)->lpVtbl -> GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) ) 
 
-#define ICorProfilerInfo5_GetObjectGeneration(This,objectId,range)  \
+#define ICorProfilerInfo5_GetObjectGeneration(This,objectId,range)     \
     ( (This)->lpVtbl -> GetObjectGeneration(This,objectId,range) ) 
 
-#define ICorProfilerInfo5_GetNotifiedExceptionClauseInfo(This,pinfo)    \
+#define ICorProfilerInfo5_GetNotifiedExceptionClauseInfo(This,pinfo)   \
     ( (This)->lpVtbl -> GetNotifiedExceptionClauseInfo(This,pinfo) ) 
 
 
-#define ICorProfilerInfo5_EnumJITedFunctions(This,ppEnum)   \
+#define ICorProfilerInfo5_EnumJITedFunctions(This,ppEnum)      \
     ( (This)->lpVtbl -> EnumJITedFunctions(This,ppEnum) ) 
 
-#define ICorProfilerInfo5_RequestProfilerDetach(This,dwExpectedCompletionMilliseconds)  \
+#define ICorProfilerInfo5_RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) \
     ( (This)->lpVtbl -> RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) ) 
 
-#define ICorProfilerInfo5_SetFunctionIDMapper2(This,pFunc,clientData)   \
+#define ICorProfilerInfo5_SetFunctionIDMapper2(This,pFunc,clientData)  \
     ( (This)->lpVtbl -> SetFunctionIDMapper2(This,pFunc,clientData) ) 
 
-#define ICorProfilerInfo5_GetStringLayout2(This,pStringLengthOffset,pBufferOffset)  \
+#define ICorProfilerInfo5_GetStringLayout2(This,pStringLengthOffset,pBufferOffset)     \
     ( (This)->lpVtbl -> GetStringLayout2(This,pStringLengthOffset,pBufferOffset) ) 
 
-#define ICorProfilerInfo5_SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3)  \
+#define ICorProfilerInfo5_SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3)     \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3) ) 
 
-#define ICorProfilerInfo5_SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo)  \
+#define ICorProfilerInfo5_SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo)     \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo) ) 
 
-#define ICorProfilerInfo5_GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo)   \
+#define ICorProfilerInfo5_GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo)      \
     ( (This)->lpVtbl -> GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo) ) 
 
-#define ICorProfilerInfo5_GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange)    \
+#define ICorProfilerInfo5_GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange)       \
     ( (This)->lpVtbl -> GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange) ) 
 
-#define ICorProfilerInfo5_GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo)  \
+#define ICorProfilerInfo5_GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) \
     ( (This)->lpVtbl -> GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) ) 
 
-#define ICorProfilerInfo5_EnumModules(This,ppEnum)  \
+#define ICorProfilerInfo5_EnumModules(This,ppEnum)     \
     ( (This)->lpVtbl -> EnumModules(This,ppEnum) ) 
 
-#define ICorProfilerInfo5_GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString)   \
+#define ICorProfilerInfo5_GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString)      \
     ( (This)->lpVtbl -> GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString) ) 
 
-#define ICorProfilerInfo5_GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress)   \
+#define ICorProfilerInfo5_GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress)      \
     ( (This)->lpVtbl -> GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress) ) 
 
-#define ICorProfilerInfo5_GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds)    \
+#define ICorProfilerInfo5_GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds)       \
     ( (This)->lpVtbl -> GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds) ) 
 
-#define ICorProfilerInfo5_GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags)    \
+#define ICorProfilerInfo5_GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags)   \
     ( (This)->lpVtbl -> GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags) ) 
 
 
-#define ICorProfilerInfo5_EnumThreads(This,ppEnum)  \
+#define ICorProfilerInfo5_EnumThreads(This,ppEnum)     \
     ( (This)->lpVtbl -> EnumThreads(This,ppEnum) ) 
 
-#define ICorProfilerInfo5_InitializeCurrentThread(This) \
+#define ICorProfilerInfo5_InitializeCurrentThread(This)        \
     ( (This)->lpVtbl -> InitializeCurrentThread(This) ) 
 
-#define ICorProfilerInfo5_RequestReJIT(This,cFunctions,moduleIds,methodIds) \
+#define ICorProfilerInfo5_RequestReJIT(This,cFunctions,moduleIds,methodIds)    \
     ( (This)->lpVtbl -> RequestReJIT(This,cFunctions,moduleIds,methodIds) ) 
 
-#define ICorProfilerInfo5_RequestRevert(This,cFunctions,moduleIds,methodIds,status) \
+#define ICorProfilerInfo5_RequestRevert(This,cFunctions,moduleIds,methodIds,status)    \
     ( (This)->lpVtbl -> RequestRevert(This,cFunctions,moduleIds,methodIds,status) ) 
 
-#define ICorProfilerInfo5_GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos)    \
+#define ICorProfilerInfo5_GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos)       \
     ( (This)->lpVtbl -> GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos) ) 
 
-#define ICorProfilerInfo5_GetFunctionFromIP2(This,ip,pFunctionId,pReJitId)  \
+#define ICorProfilerInfo5_GetFunctionFromIP2(This,ip,pFunctionId,pReJitId)     \
     ( (This)->lpVtbl -> GetFunctionFromIP2(This,ip,pFunctionId,pReJitId) ) 
 
-#define ICorProfilerInfo5_GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds)    \
+#define ICorProfilerInfo5_GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds)   \
     ( (This)->lpVtbl -> GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds) ) 
 
-#define ICorProfilerInfo5_GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map) \
+#define ICorProfilerInfo5_GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map)        \
     ( (This)->lpVtbl -> GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map) ) 
 
-#define ICorProfilerInfo5_EnumJITedFunctions2(This,ppEnum)  \
+#define ICorProfilerInfo5_EnumJITedFunctions2(This,ppEnum)     \
     ( (This)->lpVtbl -> EnumJITedFunctions2(This,ppEnum) ) 
 
-#define ICorProfilerInfo5_GetObjectSize2(This,objectId,pcSize)  \
+#define ICorProfilerInfo5_GetObjectSize2(This,objectId,pcSize) \
     ( (This)->lpVtbl -> GetObjectSize2(This,objectId,pcSize) ) 
 
 
-#define ICorProfilerInfo5_GetEventMask2(This,pdwEventsLow,pdwEventsHigh)    \
+#define ICorProfilerInfo5_GetEventMask2(This,pdwEventsLow,pdwEventsHigh)       \
     ( (This)->lpVtbl -> GetEventMask2(This,pdwEventsLow,pdwEventsHigh) ) 
 
-#define ICorProfilerInfo5_SetEventMask2(This,dwEventsLow,dwEventsHigh)  \
+#define ICorProfilerInfo5_SetEventMask2(This,dwEventsLow,dwEventsHigh) \
     ( (This)->lpVtbl -> SetEventMask2(This,dwEventsLow,dwEventsHigh) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerInfo5_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerInfo5_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo6_INTERFACE_DEFINED__
@@ -11672,7 +11673,7 @@ EXTERN_C const IID IID_ICorProfilerInfo6;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerInfo6Vtbl
     {
@@ -12207,273 +12208,273 @@ EXTERN_C const IID IID_ICorProfilerInfo6;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerInfo6_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerInfo6_QueryInterface(This,riid,ppvObject)  \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerInfo6_AddRef(This)  \
+#define ICorProfilerInfo6_AddRef(This) \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerInfo6_Release(This) \
+#define ICorProfilerInfo6_Release(This)        \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerInfo6_GetClassFromObject(This,objectId,pClassId)    \
+#define ICorProfilerInfo6_GetClassFromObject(This,objectId,pClassId)   \
     ( (This)->lpVtbl -> GetClassFromObject(This,objectId,pClassId) ) 
 
-#define ICorProfilerInfo6_GetClassFromToken(This,moduleId,typeDef,pClassId) \
+#define ICorProfilerInfo6_GetClassFromToken(This,moduleId,typeDef,pClassId)    \
     ( (This)->lpVtbl -> GetClassFromToken(This,moduleId,typeDef,pClassId) ) 
 
-#define ICorProfilerInfo6_GetCodeInfo(This,functionId,pStart,pcSize)    \
+#define ICorProfilerInfo6_GetCodeInfo(This,functionId,pStart,pcSize)   \
     ( (This)->lpVtbl -> GetCodeInfo(This,functionId,pStart,pcSize) ) 
 
-#define ICorProfilerInfo6_GetEventMask(This,pdwEvents)  \
+#define ICorProfilerInfo6_GetEventMask(This,pdwEvents) \
     ( (This)->lpVtbl -> GetEventMask(This,pdwEvents) ) 
 
-#define ICorProfilerInfo6_GetFunctionFromIP(This,ip,pFunctionId)    \
+#define ICorProfilerInfo6_GetFunctionFromIP(This,ip,pFunctionId)       \
     ( (This)->lpVtbl -> GetFunctionFromIP(This,ip,pFunctionId) ) 
 
-#define ICorProfilerInfo6_GetFunctionFromToken(This,moduleId,token,pFunctionId) \
+#define ICorProfilerInfo6_GetFunctionFromToken(This,moduleId,token,pFunctionId)        \
     ( (This)->lpVtbl -> GetFunctionFromToken(This,moduleId,token,pFunctionId) ) 
 
-#define ICorProfilerInfo6_GetHandleFromThread(This,threadId,phThread)   \
+#define ICorProfilerInfo6_GetHandleFromThread(This,threadId,phThread)  \
     ( (This)->lpVtbl -> GetHandleFromThread(This,threadId,phThread) ) 
 
-#define ICorProfilerInfo6_GetObjectSize(This,objectId,pcSize)   \
+#define ICorProfilerInfo6_GetObjectSize(This,objectId,pcSize)  \
     ( (This)->lpVtbl -> GetObjectSize(This,objectId,pcSize) ) 
 
-#define ICorProfilerInfo6_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank)  \
+#define ICorProfilerInfo6_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) \
     ( (This)->lpVtbl -> IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) ) 
 
-#define ICorProfilerInfo6_GetThreadInfo(This,threadId,pdwWin32ThreadId) \
+#define ICorProfilerInfo6_GetThreadInfo(This,threadId,pdwWin32ThreadId)        \
     ( (This)->lpVtbl -> GetThreadInfo(This,threadId,pdwWin32ThreadId) ) 
 
-#define ICorProfilerInfo6_GetCurrentThreadID(This,pThreadId)    \
+#define ICorProfilerInfo6_GetCurrentThreadID(This,pThreadId)   \
     ( (This)->lpVtbl -> GetCurrentThreadID(This,pThreadId) ) 
 
-#define ICorProfilerInfo6_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken)  \
+#define ICorProfilerInfo6_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) \
     ( (This)->lpVtbl -> GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) ) 
 
-#define ICorProfilerInfo6_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)    \
+#define ICorProfilerInfo6_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)   \
     ( (This)->lpVtbl -> GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken) ) 
 
-#define ICorProfilerInfo6_SetEventMask(This,dwEvents)   \
+#define ICorProfilerInfo6_SetEventMask(This,dwEvents)  \
     ( (This)->lpVtbl -> SetEventMask(This,dwEvents) ) 
 
-#define ICorProfilerInfo6_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall)  \
+#define ICorProfilerInfo6_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo6_SetFunctionIDMapper(This,pFunc)   \
+#define ICorProfilerInfo6_SetFunctionIDMapper(This,pFunc)      \
     ( (This)->lpVtbl -> SetFunctionIDMapper(This,pFunc) ) 
 
-#define ICorProfilerInfo6_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) \
+#define ICorProfilerInfo6_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken)        \
     ( (This)->lpVtbl -> GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) ) 
 
-#define ICorProfilerInfo6_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)    \
+#define ICorProfilerInfo6_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)   \
     ( (This)->lpVtbl -> GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId) ) 
 
-#define ICorProfilerInfo6_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)   \
+#define ICorProfilerInfo6_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)      \
     ( (This)->lpVtbl -> GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut) ) 
 
-#define ICorProfilerInfo6_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)    \
+#define ICorProfilerInfo6_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)       \
     ( (This)->lpVtbl -> GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize) ) 
 
-#define ICorProfilerInfo6_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)    \
+#define ICorProfilerInfo6_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)   \
     ( (This)->lpVtbl -> GetILFunctionBodyAllocator(This,moduleId,ppMalloc) ) 
 
-#define ICorProfilerInfo6_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) \
+#define ICorProfilerInfo6_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader)        \
     ( (This)->lpVtbl -> SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) ) 
 
-#define ICorProfilerInfo6_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) \
+#define ICorProfilerInfo6_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId)        \
     ( (This)->lpVtbl -> GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) ) 
 
-#define ICorProfilerInfo6_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)   \
+#define ICorProfilerInfo6_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)      \
     ( (This)->lpVtbl -> GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId) ) 
 
-#define ICorProfilerInfo6_SetFunctionReJIT(This,functionId) \
+#define ICorProfilerInfo6_SetFunctionReJIT(This,functionId)    \
     ( (This)->lpVtbl -> SetFunctionReJIT(This,functionId) ) 
 
-#define ICorProfilerInfo6_ForceGC(This) \
+#define ICorProfilerInfo6_ForceGC(This)        \
     ( (This)->lpVtbl -> ForceGC(This) ) 
 
-#define ICorProfilerInfo6_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)  \
+#define ICorProfilerInfo6_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)     \
     ( (This)->lpVtbl -> SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries) ) 
 
-#define ICorProfilerInfo6_GetInprocInspectionInterface(This,ppicd)  \
+#define ICorProfilerInfo6_GetInprocInspectionInterface(This,ppicd)     \
     ( (This)->lpVtbl -> GetInprocInspectionInterface(This,ppicd) ) 
 
-#define ICorProfilerInfo6_GetInprocInspectionIThisThread(This,ppicd)    \
+#define ICorProfilerInfo6_GetInprocInspectionIThisThread(This,ppicd)   \
     ( (This)->lpVtbl -> GetInprocInspectionIThisThread(This,ppicd) ) 
 
-#define ICorProfilerInfo6_GetThreadContext(This,threadId,pContextId)    \
+#define ICorProfilerInfo6_GetThreadContext(This,threadId,pContextId)   \
     ( (This)->lpVtbl -> GetThreadContext(This,threadId,pContextId) ) 
 
-#define ICorProfilerInfo6_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) \
+#define ICorProfilerInfo6_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext)        \
     ( (This)->lpVtbl -> BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) ) 
 
-#define ICorProfilerInfo6_EndInprocDebugging(This,dwProfilerContext)    \
+#define ICorProfilerInfo6_EndInprocDebugging(This,dwProfilerContext)   \
     ( (This)->lpVtbl -> EndInprocDebugging(This,dwProfilerContext) ) 
 
-#define ICorProfilerInfo6_GetILToNativeMapping(This,functionId,cMap,pcMap,map)  \
+#define ICorProfilerInfo6_GetILToNativeMapping(This,functionId,cMap,pcMap,map) \
     ( (This)->lpVtbl -> GetILToNativeMapping(This,functionId,cMap,pcMap,map) ) 
 
 
-#define ICorProfilerInfo6_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)    \
+#define ICorProfilerInfo6_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)       \
     ( (This)->lpVtbl -> DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize) ) 
 
-#define ICorProfilerInfo6_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
+#define ICorProfilerInfo6_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall)        \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo6_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)   \
+#define ICorProfilerInfo6_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)      \
     ( (This)->lpVtbl -> GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs) ) 
 
-#define ICorProfilerInfo6_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)   \
+#define ICorProfilerInfo6_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)  \
     ( (This)->lpVtbl -> GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset) ) 
 
-#define ICorProfilerInfo6_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) \
+#define ICorProfilerInfo6_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize)    \
     ( (This)->lpVtbl -> GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) ) 
 
-#define ICorProfilerInfo6_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)  \
+#define ICorProfilerInfo6_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)     \
     ( (This)->lpVtbl -> GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs) ) 
 
-#define ICorProfilerInfo6_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)    \
+#define ICorProfilerInfo6_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)       \
     ( (This)->lpVtbl -> GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos) ) 
 
-#define ICorProfilerInfo6_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)   \
+#define ICorProfilerInfo6_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)      \
     ( (This)->lpVtbl -> GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID) ) 
 
-#define ICorProfilerInfo6_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) \
+#define ICorProfilerInfo6_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID)        \
     ( (This)->lpVtbl -> GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) ) 
 
-#define ICorProfilerInfo6_EnumModuleFrozenObjects(This,moduleID,ppEnum) \
+#define ICorProfilerInfo6_EnumModuleFrozenObjects(This,moduleID,ppEnum)        \
     ( (This)->lpVtbl -> EnumModuleFrozenObjects(This,moduleID,ppEnum) ) 
 
-#define ICorProfilerInfo6_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)    \
+#define ICorProfilerInfo6_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)   \
     ( (This)->lpVtbl -> GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData) ) 
 
-#define ICorProfilerInfo6_GetBoxClassLayout(This,classId,pBufferOffset) \
+#define ICorProfilerInfo6_GetBoxClassLayout(This,classId,pBufferOffset)        \
     ( (This)->lpVtbl -> GetBoxClassLayout(This,classId,pBufferOffset) ) 
 
-#define ICorProfilerInfo6_GetThreadAppDomain(This,threadId,pAppDomainId)    \
+#define ICorProfilerInfo6_GetThreadAppDomain(This,threadId,pAppDomainId)       \
     ( (This)->lpVtbl -> GetThreadAppDomain(This,threadId,pAppDomainId) ) 
 
-#define ICorProfilerInfo6_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)    \
+#define ICorProfilerInfo6_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)       \
     ( (This)->lpVtbl -> GetRVAStaticAddress(This,classId,fieldToken,ppAddress) ) 
 
-#define ICorProfilerInfo6_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)  \
+#define ICorProfilerInfo6_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)     \
     ( (This)->lpVtbl -> GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress) ) 
 
-#define ICorProfilerInfo6_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)    \
+#define ICorProfilerInfo6_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)   \
     ( (This)->lpVtbl -> GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress) ) 
 
-#define ICorProfilerInfo6_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress)  \
+#define ICorProfilerInfo6_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) \
     ( (This)->lpVtbl -> GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) ) 
 
-#define ICorProfilerInfo6_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)    \
+#define ICorProfilerInfo6_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)       \
     ( (This)->lpVtbl -> GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo) ) 
 
-#define ICorProfilerInfo6_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) \
+#define ICorProfilerInfo6_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges)        \
     ( (This)->lpVtbl -> GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) ) 
 
-#define ICorProfilerInfo6_GetObjectGeneration(This,objectId,range)  \
+#define ICorProfilerInfo6_GetObjectGeneration(This,objectId,range)     \
     ( (This)->lpVtbl -> GetObjectGeneration(This,objectId,range) ) 
 
-#define ICorProfilerInfo6_GetNotifiedExceptionClauseInfo(This,pinfo)    \
+#define ICorProfilerInfo6_GetNotifiedExceptionClauseInfo(This,pinfo)   \
     ( (This)->lpVtbl -> GetNotifiedExceptionClauseInfo(This,pinfo) ) 
 
 
-#define ICorProfilerInfo6_EnumJITedFunctions(This,ppEnum)   \
+#define ICorProfilerInfo6_EnumJITedFunctions(This,ppEnum)      \
     ( (This)->lpVtbl -> EnumJITedFunctions(This,ppEnum) ) 
 
-#define ICorProfilerInfo6_RequestProfilerDetach(This,dwExpectedCompletionMilliseconds)  \
+#define ICorProfilerInfo6_RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) \
     ( (This)->lpVtbl -> RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) ) 
 
-#define ICorProfilerInfo6_SetFunctionIDMapper2(This,pFunc,clientData)   \
+#define ICorProfilerInfo6_SetFunctionIDMapper2(This,pFunc,clientData)  \
     ( (This)->lpVtbl -> SetFunctionIDMapper2(This,pFunc,clientData) ) 
 
-#define ICorProfilerInfo6_GetStringLayout2(This,pStringLengthOffset,pBufferOffset)  \
+#define ICorProfilerInfo6_GetStringLayout2(This,pStringLengthOffset,pBufferOffset)     \
     ( (This)->lpVtbl -> GetStringLayout2(This,pStringLengthOffset,pBufferOffset) ) 
 
-#define ICorProfilerInfo6_SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3)  \
+#define ICorProfilerInfo6_SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3)     \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3) ) 
 
-#define ICorProfilerInfo6_SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo)  \
+#define ICorProfilerInfo6_SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo)     \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo) ) 
 
-#define ICorProfilerInfo6_GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo)   \
+#define ICorProfilerInfo6_GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo)      \
     ( (This)->lpVtbl -> GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo) ) 
 
-#define ICorProfilerInfo6_GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange)    \
+#define ICorProfilerInfo6_GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange)       \
     ( (This)->lpVtbl -> GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange) ) 
 
-#define ICorProfilerInfo6_GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo)  \
+#define ICorProfilerInfo6_GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) \
     ( (This)->lpVtbl -> GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) ) 
 
-#define ICorProfilerInfo6_EnumModules(This,ppEnum)  \
+#define ICorProfilerInfo6_EnumModules(This,ppEnum)     \
     ( (This)->lpVtbl -> EnumModules(This,ppEnum) ) 
 
-#define ICorProfilerInfo6_GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString)   \
+#define ICorProfilerInfo6_GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString)      \
     ( (This)->lpVtbl -> GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString) ) 
 
-#define ICorProfilerInfo6_GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress)   \
+#define ICorProfilerInfo6_GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress)      \
     ( (This)->lpVtbl -> GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress) ) 
 
-#define ICorProfilerInfo6_GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds)    \
+#define ICorProfilerInfo6_GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds)       \
     ( (This)->lpVtbl -> GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds) ) 
 
-#define ICorProfilerInfo6_GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags)    \
+#define ICorProfilerInfo6_GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags)   \
     ( (This)->lpVtbl -> GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags) ) 
 
 
-#define ICorProfilerInfo6_EnumThreads(This,ppEnum)  \
+#define ICorProfilerInfo6_EnumThreads(This,ppEnum)     \
     ( (This)->lpVtbl -> EnumThreads(This,ppEnum) ) 
 
-#define ICorProfilerInfo6_InitializeCurrentThread(This) \
+#define ICorProfilerInfo6_InitializeCurrentThread(This)        \
     ( (This)->lpVtbl -> InitializeCurrentThread(This) ) 
 
-#define ICorProfilerInfo6_RequestReJIT(This,cFunctions,moduleIds,methodIds) \
+#define ICorProfilerInfo6_RequestReJIT(This,cFunctions,moduleIds,methodIds)    \
     ( (This)->lpVtbl -> RequestReJIT(This,cFunctions,moduleIds,methodIds) ) 
 
-#define ICorProfilerInfo6_RequestRevert(This,cFunctions,moduleIds,methodIds,status) \
+#define ICorProfilerInfo6_RequestRevert(This,cFunctions,moduleIds,methodIds,status)    \
     ( (This)->lpVtbl -> RequestRevert(This,cFunctions,moduleIds,methodIds,status) ) 
 
-#define ICorProfilerInfo6_GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos)    \
+#define ICorProfilerInfo6_GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos)       \
     ( (This)->lpVtbl -> GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos) ) 
 
-#define ICorProfilerInfo6_GetFunctionFromIP2(This,ip,pFunctionId,pReJitId)  \
+#define ICorProfilerInfo6_GetFunctionFromIP2(This,ip,pFunctionId,pReJitId)     \
     ( (This)->lpVtbl -> GetFunctionFromIP2(This,ip,pFunctionId,pReJitId) ) 
 
-#define ICorProfilerInfo6_GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds)    \
+#define ICorProfilerInfo6_GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds)   \
     ( (This)->lpVtbl -> GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds) ) 
 
-#define ICorProfilerInfo6_GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map) \
+#define ICorProfilerInfo6_GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map)        \
     ( (This)->lpVtbl -> GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map) ) 
 
-#define ICorProfilerInfo6_EnumJITedFunctions2(This,ppEnum)  \
+#define ICorProfilerInfo6_EnumJITedFunctions2(This,ppEnum)     \
     ( (This)->lpVtbl -> EnumJITedFunctions2(This,ppEnum) ) 
 
-#define ICorProfilerInfo6_GetObjectSize2(This,objectId,pcSize)  \
+#define ICorProfilerInfo6_GetObjectSize2(This,objectId,pcSize) \
     ( (This)->lpVtbl -> GetObjectSize2(This,objectId,pcSize) ) 
 
 
-#define ICorProfilerInfo6_GetEventMask2(This,pdwEventsLow,pdwEventsHigh)    \
+#define ICorProfilerInfo6_GetEventMask2(This,pdwEventsLow,pdwEventsHigh)       \
     ( (This)->lpVtbl -> GetEventMask2(This,pdwEventsLow,pdwEventsHigh) ) 
 
-#define ICorProfilerInfo6_SetEventMask2(This,dwEventsLow,dwEventsHigh)  \
+#define ICorProfilerInfo6_SetEventMask2(This,dwEventsLow,dwEventsHigh) \
     ( (This)->lpVtbl -> SetEventMask2(This,dwEventsLow,dwEventsHigh) ) 
 
 
-#define ICorProfilerInfo6_EnumNgenModuleMethodsInliningThisMethod(This,inlinersModuleId,inlineeModuleId,inlineeMethodId,incompleteData,ppEnum)  \
+#define ICorProfilerInfo6_EnumNgenModuleMethodsInliningThisMethod(This,inlinersModuleId,inlineeModuleId,inlineeMethodId,incompleteData,ppEnum) \
     ( (This)->lpVtbl -> EnumNgenModuleMethodsInliningThisMethod(This,inlinersModuleId,inlineeModuleId,inlineeMethodId,incompleteData,ppEnum) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerInfo6_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerInfo6_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo7_INTERFACE_DEFINED__
@@ -12508,7 +12509,7 @@ EXTERN_C const IID IID_ICorProfilerInfo7;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerInfo7Vtbl
     {
@@ -13060,283 +13061,283 @@ EXTERN_C const IID IID_ICorProfilerInfo7;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerInfo7_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerInfo7_QueryInterface(This,riid,ppvObject)  \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerInfo7_AddRef(This)  \
+#define ICorProfilerInfo7_AddRef(This) \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerInfo7_Release(This) \
+#define ICorProfilerInfo7_Release(This)        \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerInfo7_GetClassFromObject(This,objectId,pClassId)    \
+#define ICorProfilerInfo7_GetClassFromObject(This,objectId,pClassId)   \
     ( (This)->lpVtbl -> GetClassFromObject(This,objectId,pClassId) ) 
 
-#define ICorProfilerInfo7_GetClassFromToken(This,moduleId,typeDef,pClassId) \
+#define ICorProfilerInfo7_GetClassFromToken(This,moduleId,typeDef,pClassId)    \
     ( (This)->lpVtbl -> GetClassFromToken(This,moduleId,typeDef,pClassId) ) 
 
-#define ICorProfilerInfo7_GetCodeInfo(This,functionId,pStart,pcSize)    \
+#define ICorProfilerInfo7_GetCodeInfo(This,functionId,pStart,pcSize)   \
     ( (This)->lpVtbl -> GetCodeInfo(This,functionId,pStart,pcSize) ) 
 
-#define ICorProfilerInfo7_GetEventMask(This,pdwEvents)  \
+#define ICorProfilerInfo7_GetEventMask(This,pdwEvents) \
     ( (This)->lpVtbl -> GetEventMask(This,pdwEvents) ) 
 
-#define ICorProfilerInfo7_GetFunctionFromIP(This,ip,pFunctionId)    \
+#define ICorProfilerInfo7_GetFunctionFromIP(This,ip,pFunctionId)       \
     ( (This)->lpVtbl -> GetFunctionFromIP(This,ip,pFunctionId) ) 
 
-#define ICorProfilerInfo7_GetFunctionFromToken(This,moduleId,token,pFunctionId) \
+#define ICorProfilerInfo7_GetFunctionFromToken(This,moduleId,token,pFunctionId)        \
     ( (This)->lpVtbl -> GetFunctionFromToken(This,moduleId,token,pFunctionId) ) 
 
-#define ICorProfilerInfo7_GetHandleFromThread(This,threadId,phThread)   \
+#define ICorProfilerInfo7_GetHandleFromThread(This,threadId,phThread)  \
     ( (This)->lpVtbl -> GetHandleFromThread(This,threadId,phThread) ) 
 
-#define ICorProfilerInfo7_GetObjectSize(This,objectId,pcSize)   \
+#define ICorProfilerInfo7_GetObjectSize(This,objectId,pcSize)  \
     ( (This)->lpVtbl -> GetObjectSize(This,objectId,pcSize) ) 
 
-#define ICorProfilerInfo7_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank)  \
+#define ICorProfilerInfo7_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) \
     ( (This)->lpVtbl -> IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) ) 
 
-#define ICorProfilerInfo7_GetThreadInfo(This,threadId,pdwWin32ThreadId) \
+#define ICorProfilerInfo7_GetThreadInfo(This,threadId,pdwWin32ThreadId)        \
     ( (This)->lpVtbl -> GetThreadInfo(This,threadId,pdwWin32ThreadId) ) 
 
-#define ICorProfilerInfo7_GetCurrentThreadID(This,pThreadId)    \
+#define ICorProfilerInfo7_GetCurrentThreadID(This,pThreadId)   \
     ( (This)->lpVtbl -> GetCurrentThreadID(This,pThreadId) ) 
 
-#define ICorProfilerInfo7_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken)  \
+#define ICorProfilerInfo7_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) \
     ( (This)->lpVtbl -> GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) ) 
 
-#define ICorProfilerInfo7_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)    \
+#define ICorProfilerInfo7_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)   \
     ( (This)->lpVtbl -> GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken) ) 
 
-#define ICorProfilerInfo7_SetEventMask(This,dwEvents)   \
+#define ICorProfilerInfo7_SetEventMask(This,dwEvents)  \
     ( (This)->lpVtbl -> SetEventMask(This,dwEvents) ) 
 
-#define ICorProfilerInfo7_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall)  \
+#define ICorProfilerInfo7_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo7_SetFunctionIDMapper(This,pFunc)   \
+#define ICorProfilerInfo7_SetFunctionIDMapper(This,pFunc)      \
     ( (This)->lpVtbl -> SetFunctionIDMapper(This,pFunc) ) 
 
-#define ICorProfilerInfo7_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) \
+#define ICorProfilerInfo7_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken)        \
     ( (This)->lpVtbl -> GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) ) 
 
-#define ICorProfilerInfo7_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)    \
+#define ICorProfilerInfo7_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)   \
     ( (This)->lpVtbl -> GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId) ) 
 
-#define ICorProfilerInfo7_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)   \
+#define ICorProfilerInfo7_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)      \
     ( (This)->lpVtbl -> GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut) ) 
 
-#define ICorProfilerInfo7_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)    \
+#define ICorProfilerInfo7_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)       \
     ( (This)->lpVtbl -> GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize) ) 
 
-#define ICorProfilerInfo7_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)    \
+#define ICorProfilerInfo7_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)   \
     ( (This)->lpVtbl -> GetILFunctionBodyAllocator(This,moduleId,ppMalloc) ) 
 
-#define ICorProfilerInfo7_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) \
+#define ICorProfilerInfo7_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader)        \
     ( (This)->lpVtbl -> SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) ) 
 
-#define ICorProfilerInfo7_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) \
+#define ICorProfilerInfo7_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId)        \
     ( (This)->lpVtbl -> GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) ) 
 
-#define ICorProfilerInfo7_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)   \
+#define ICorProfilerInfo7_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)      \
     ( (This)->lpVtbl -> GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId) ) 
 
-#define ICorProfilerInfo7_SetFunctionReJIT(This,functionId) \
+#define ICorProfilerInfo7_SetFunctionReJIT(This,functionId)    \
     ( (This)->lpVtbl -> SetFunctionReJIT(This,functionId) ) 
 
-#define ICorProfilerInfo7_ForceGC(This) \
+#define ICorProfilerInfo7_ForceGC(This)        \
     ( (This)->lpVtbl -> ForceGC(This) ) 
 
-#define ICorProfilerInfo7_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)  \
+#define ICorProfilerInfo7_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)     \
     ( (This)->lpVtbl -> SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries) ) 
 
-#define ICorProfilerInfo7_GetInprocInspectionInterface(This,ppicd)  \
+#define ICorProfilerInfo7_GetInprocInspectionInterface(This,ppicd)     \
     ( (This)->lpVtbl -> GetInprocInspectionInterface(This,ppicd) ) 
 
-#define ICorProfilerInfo7_GetInprocInspectionIThisThread(This,ppicd)    \
+#define ICorProfilerInfo7_GetInprocInspectionIThisThread(This,ppicd)   \
     ( (This)->lpVtbl -> GetInprocInspectionIThisThread(This,ppicd) ) 
 
-#define ICorProfilerInfo7_GetThreadContext(This,threadId,pContextId)    \
+#define ICorProfilerInfo7_GetThreadContext(This,threadId,pContextId)   \
     ( (This)->lpVtbl -> GetThreadContext(This,threadId,pContextId) ) 
 
-#define ICorProfilerInfo7_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) \
+#define ICorProfilerInfo7_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext)        \
     ( (This)->lpVtbl -> BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) ) 
 
-#define ICorProfilerInfo7_EndInprocDebugging(This,dwProfilerContext)    \
+#define ICorProfilerInfo7_EndInprocDebugging(This,dwProfilerContext)   \
     ( (This)->lpVtbl -> EndInprocDebugging(This,dwProfilerContext) ) 
 
-#define ICorProfilerInfo7_GetILToNativeMapping(This,functionId,cMap,pcMap,map)  \
+#define ICorProfilerInfo7_GetILToNativeMapping(This,functionId,cMap,pcMap,map) \
     ( (This)->lpVtbl -> GetILToNativeMapping(This,functionId,cMap,pcMap,map) ) 
 
 
-#define ICorProfilerInfo7_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)    \
+#define ICorProfilerInfo7_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)       \
     ( (This)->lpVtbl -> DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize) ) 
 
-#define ICorProfilerInfo7_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
+#define ICorProfilerInfo7_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall)        \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo7_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)   \
+#define ICorProfilerInfo7_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)      \
     ( (This)->lpVtbl -> GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs) ) 
 
-#define ICorProfilerInfo7_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)   \
+#define ICorProfilerInfo7_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)  \
     ( (This)->lpVtbl -> GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset) ) 
 
-#define ICorProfilerInfo7_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) \
+#define ICorProfilerInfo7_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize)    \
     ( (This)->lpVtbl -> GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) ) 
 
-#define ICorProfilerInfo7_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)  \
+#define ICorProfilerInfo7_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)     \
     ( (This)->lpVtbl -> GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs) ) 
 
-#define ICorProfilerInfo7_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)    \
+#define ICorProfilerInfo7_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)       \
     ( (This)->lpVtbl -> GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos) ) 
 
-#define ICorProfilerInfo7_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)   \
+#define ICorProfilerInfo7_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)      \
     ( (This)->lpVtbl -> GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID) ) 
 
-#define ICorProfilerInfo7_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) \
+#define ICorProfilerInfo7_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID)        \
     ( (This)->lpVtbl -> GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) ) 
 
-#define ICorProfilerInfo7_EnumModuleFrozenObjects(This,moduleID,ppEnum) \
+#define ICorProfilerInfo7_EnumModuleFrozenObjects(This,moduleID,ppEnum)        \
     ( (This)->lpVtbl -> EnumModuleFrozenObjects(This,moduleID,ppEnum) ) 
 
-#define ICorProfilerInfo7_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)    \
+#define ICorProfilerInfo7_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)   \
     ( (This)->lpVtbl -> GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData) ) 
 
-#define ICorProfilerInfo7_GetBoxClassLayout(This,classId,pBufferOffset) \
+#define ICorProfilerInfo7_GetBoxClassLayout(This,classId,pBufferOffset)        \
     ( (This)->lpVtbl -> GetBoxClassLayout(This,classId,pBufferOffset) ) 
 
-#define ICorProfilerInfo7_GetThreadAppDomain(This,threadId,pAppDomainId)    \
+#define ICorProfilerInfo7_GetThreadAppDomain(This,threadId,pAppDomainId)       \
     ( (This)->lpVtbl -> GetThreadAppDomain(This,threadId,pAppDomainId) ) 
 
-#define ICorProfilerInfo7_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)    \
+#define ICorProfilerInfo7_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)       \
     ( (This)->lpVtbl -> GetRVAStaticAddress(This,classId,fieldToken,ppAddress) ) 
 
-#define ICorProfilerInfo7_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)  \
+#define ICorProfilerInfo7_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)     \
     ( (This)->lpVtbl -> GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress) ) 
 
-#define ICorProfilerInfo7_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)    \
+#define ICorProfilerInfo7_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)   \
     ( (This)->lpVtbl -> GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress) ) 
 
-#define ICorProfilerInfo7_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress)  \
+#define ICorProfilerInfo7_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) \
     ( (This)->lpVtbl -> GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) ) 
 
-#define ICorProfilerInfo7_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)    \
+#define ICorProfilerInfo7_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)       \
     ( (This)->lpVtbl -> GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo) ) 
 
-#define ICorProfilerInfo7_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) \
+#define ICorProfilerInfo7_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges)        \
     ( (This)->lpVtbl -> GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) ) 
 
-#define ICorProfilerInfo7_GetObjectGeneration(This,objectId,range)  \
+#define ICorProfilerInfo7_GetObjectGeneration(This,objectId,range)     \
     ( (This)->lpVtbl -> GetObjectGeneration(This,objectId,range) ) 
 
-#define ICorProfilerInfo7_GetNotifiedExceptionClauseInfo(This,pinfo)    \
+#define ICorProfilerInfo7_GetNotifiedExceptionClauseInfo(This,pinfo)   \
     ( (This)->lpVtbl -> GetNotifiedExceptionClauseInfo(This,pinfo) ) 
 
 
-#define ICorProfilerInfo7_EnumJITedFunctions(This,ppEnum)   \
+#define ICorProfilerInfo7_EnumJITedFunctions(This,ppEnum)      \
     ( (This)->lpVtbl -> EnumJITedFunctions(This,ppEnum) ) 
 
-#define ICorProfilerInfo7_RequestProfilerDetach(This,dwExpectedCompletionMilliseconds)  \
+#define ICorProfilerInfo7_RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) \
     ( (This)->lpVtbl -> RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) ) 
 
-#define ICorProfilerInfo7_SetFunctionIDMapper2(This,pFunc,clientData)   \
+#define ICorProfilerInfo7_SetFunctionIDMapper2(This,pFunc,clientData)  \
     ( (This)->lpVtbl -> SetFunctionIDMapper2(This,pFunc,clientData) ) 
 
-#define ICorProfilerInfo7_GetStringLayout2(This,pStringLengthOffset,pBufferOffset)  \
+#define ICorProfilerInfo7_GetStringLayout2(This,pStringLengthOffset,pBufferOffset)     \
     ( (This)->lpVtbl -> GetStringLayout2(This,pStringLengthOffset,pBufferOffset) ) 
 
-#define ICorProfilerInfo7_SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3)  \
+#define ICorProfilerInfo7_SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3)     \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3) ) 
 
-#define ICorProfilerInfo7_SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo)  \
+#define ICorProfilerInfo7_SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo)     \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo) ) 
 
-#define ICorProfilerInfo7_GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo)   \
+#define ICorProfilerInfo7_GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo)      \
     ( (This)->lpVtbl -> GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo) ) 
 
-#define ICorProfilerInfo7_GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange)    \
+#define ICorProfilerInfo7_GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange)       \
     ( (This)->lpVtbl -> GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange) ) 
 
-#define ICorProfilerInfo7_GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo)  \
+#define ICorProfilerInfo7_GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) \
     ( (This)->lpVtbl -> GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) ) 
 
-#define ICorProfilerInfo7_EnumModules(This,ppEnum)  \
+#define ICorProfilerInfo7_EnumModules(This,ppEnum)     \
     ( (This)->lpVtbl -> EnumModules(This,ppEnum) ) 
 
-#define ICorProfilerInfo7_GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString)   \
+#define ICorProfilerInfo7_GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString)      \
     ( (This)->lpVtbl -> GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString) ) 
 
-#define ICorProfilerInfo7_GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress)   \
+#define ICorProfilerInfo7_GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress)      \
     ( (This)->lpVtbl -> GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress) ) 
 
-#define ICorProfilerInfo7_GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds)    \
+#define ICorProfilerInfo7_GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds)       \
     ( (This)->lpVtbl -> GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds) ) 
 
-#define ICorProfilerInfo7_GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags)    \
+#define ICorProfilerInfo7_GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags)   \
     ( (This)->lpVtbl -> GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags) ) 
 
 
-#define ICorProfilerInfo7_EnumThreads(This,ppEnum)  \
+#define ICorProfilerInfo7_EnumThreads(This,ppEnum)     \
     ( (This)->lpVtbl -> EnumThreads(This,ppEnum) ) 
 
-#define ICorProfilerInfo7_InitializeCurrentThread(This) \
+#define ICorProfilerInfo7_InitializeCurrentThread(This)        \
     ( (This)->lpVtbl -> InitializeCurrentThread(This) ) 
 
-#define ICorProfilerInfo7_RequestReJIT(This,cFunctions,moduleIds,methodIds) \
+#define ICorProfilerInfo7_RequestReJIT(This,cFunctions,moduleIds,methodIds)    \
     ( (This)->lpVtbl -> RequestReJIT(This,cFunctions,moduleIds,methodIds) ) 
 
-#define ICorProfilerInfo7_RequestRevert(This,cFunctions,moduleIds,methodIds,status) \
+#define ICorProfilerInfo7_RequestRevert(This,cFunctions,moduleIds,methodIds,status)    \
     ( (This)->lpVtbl -> RequestRevert(This,cFunctions,moduleIds,methodIds,status) ) 
 
-#define ICorProfilerInfo7_GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos)    \
+#define ICorProfilerInfo7_GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos)       \
     ( (This)->lpVtbl -> GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos) ) 
 
-#define ICorProfilerInfo7_GetFunctionFromIP2(This,ip,pFunctionId,pReJitId)  \
+#define ICorProfilerInfo7_GetFunctionFromIP2(This,ip,pFunctionId,pReJitId)     \
     ( (This)->lpVtbl -> GetFunctionFromIP2(This,ip,pFunctionId,pReJitId) ) 
 
-#define ICorProfilerInfo7_GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds)    \
+#define ICorProfilerInfo7_GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds)   \
     ( (This)->lpVtbl -> GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds) ) 
 
-#define ICorProfilerInfo7_GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map) \
+#define ICorProfilerInfo7_GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map)        \
     ( (This)->lpVtbl -> GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map) ) 
 
-#define ICorProfilerInfo7_EnumJITedFunctions2(This,ppEnum)  \
+#define ICorProfilerInfo7_EnumJITedFunctions2(This,ppEnum)     \
     ( (This)->lpVtbl -> EnumJITedFunctions2(This,ppEnum) ) 
 
-#define ICorProfilerInfo7_GetObjectSize2(This,objectId,pcSize)  \
+#define ICorProfilerInfo7_GetObjectSize2(This,objectId,pcSize) \
     ( (This)->lpVtbl -> GetObjectSize2(This,objectId,pcSize) ) 
 
 
-#define ICorProfilerInfo7_GetEventMask2(This,pdwEventsLow,pdwEventsHigh)    \
+#define ICorProfilerInfo7_GetEventMask2(This,pdwEventsLow,pdwEventsHigh)       \
     ( (This)->lpVtbl -> GetEventMask2(This,pdwEventsLow,pdwEventsHigh) ) 
 
-#define ICorProfilerInfo7_SetEventMask2(This,dwEventsLow,dwEventsHigh)  \
+#define ICorProfilerInfo7_SetEventMask2(This,dwEventsLow,dwEventsHigh) \
     ( (This)->lpVtbl -> SetEventMask2(This,dwEventsLow,dwEventsHigh) ) 
 
 
-#define ICorProfilerInfo7_EnumNgenModuleMethodsInliningThisMethod(This,inlinersModuleId,inlineeModuleId,inlineeMethodId,incompleteData,ppEnum)  \
+#define ICorProfilerInfo7_EnumNgenModuleMethodsInliningThisMethod(This,inlinersModuleId,inlineeModuleId,inlineeMethodId,incompleteData,ppEnum) \
     ( (This)->lpVtbl -> EnumNgenModuleMethodsInliningThisMethod(This,inlinersModuleId,inlineeModuleId,inlineeMethodId,incompleteData,ppEnum) ) 
 
 
-#define ICorProfilerInfo7_ApplyMetaData(This,moduleId)  \
+#define ICorProfilerInfo7_ApplyMetaData(This,moduleId) \
     ( (This)->lpVtbl -> ApplyMetaData(This,moduleId) ) 
 
-#define ICorProfilerInfo7_GetInMemorySymbolsLength(This,moduleId,pCountSymbolBytes) \
+#define ICorProfilerInfo7_GetInMemorySymbolsLength(This,moduleId,pCountSymbolBytes)    \
     ( (This)->lpVtbl -> GetInMemorySymbolsLength(This,moduleId,pCountSymbolBytes) ) 
 
-#define ICorProfilerInfo7_ReadInMemorySymbols(This,moduleId,symbolsReadOffset,pSymbolBytes,countSymbolBytes,pCountSymbolBytesRead)  \
+#define ICorProfilerInfo7_ReadInMemorySymbols(This,moduleId,symbolsReadOffset,pSymbolBytes,countSymbolBytes,pCountSymbolBytesRead)     \
     ( (This)->lpVtbl -> ReadInMemorySymbols(This,moduleId,symbolsReadOffset,pSymbolBytes,countSymbolBytes,pCountSymbolBytesRead) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerInfo7_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerInfo7_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo8_INTERFACE_DEFINED__
@@ -13375,7 +13376,7 @@ EXTERN_C const IID IID_ICorProfilerInfo8;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorProfilerInfo8Vtbl
     {
@@ -13948,293 +13949,293 @@ EXTERN_C const IID IID_ICorProfilerInfo8;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerInfo8_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerInfo8_QueryInterface(This,riid,ppvObject)  \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerInfo8_AddRef(This)  \
+#define ICorProfilerInfo8_AddRef(This) \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerInfo8_Release(This) \
+#define ICorProfilerInfo8_Release(This)        \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerInfo8_GetClassFromObject(This,objectId,pClassId)    \
+#define ICorProfilerInfo8_GetClassFromObject(This,objectId,pClassId)   \
     ( (This)->lpVtbl -> GetClassFromObject(This,objectId,pClassId) ) 
 
-#define ICorProfilerInfo8_GetClassFromToken(This,moduleId,typeDef,pClassId) \
+#define ICorProfilerInfo8_GetClassFromToken(This,moduleId,typeDef,pClassId)    \
     ( (This)->lpVtbl -> GetClassFromToken(This,moduleId,typeDef,pClassId) ) 
 
-#define ICorProfilerInfo8_GetCodeInfo(This,functionId,pStart,pcSize)    \
+#define ICorProfilerInfo8_GetCodeInfo(This,functionId,pStart,pcSize)   \
     ( (This)->lpVtbl -> GetCodeInfo(This,functionId,pStart,pcSize) ) 
 
-#define ICorProfilerInfo8_GetEventMask(This,pdwEvents)  \
+#define ICorProfilerInfo8_GetEventMask(This,pdwEvents) \
     ( (This)->lpVtbl -> GetEventMask(This,pdwEvents) ) 
 
-#define ICorProfilerInfo8_GetFunctionFromIP(This,ip,pFunctionId)    \
+#define ICorProfilerInfo8_GetFunctionFromIP(This,ip,pFunctionId)       \
     ( (This)->lpVtbl -> GetFunctionFromIP(This,ip,pFunctionId) ) 
 
-#define ICorProfilerInfo8_GetFunctionFromToken(This,moduleId,token,pFunctionId) \
+#define ICorProfilerInfo8_GetFunctionFromToken(This,moduleId,token,pFunctionId)        \
     ( (This)->lpVtbl -> GetFunctionFromToken(This,moduleId,token,pFunctionId) ) 
 
-#define ICorProfilerInfo8_GetHandleFromThread(This,threadId,phThread)   \
+#define ICorProfilerInfo8_GetHandleFromThread(This,threadId,phThread)  \
     ( (This)->lpVtbl -> GetHandleFromThread(This,threadId,phThread) ) 
 
-#define ICorProfilerInfo8_GetObjectSize(This,objectId,pcSize)   \
+#define ICorProfilerInfo8_GetObjectSize(This,objectId,pcSize)  \
     ( (This)->lpVtbl -> GetObjectSize(This,objectId,pcSize) ) 
 
-#define ICorProfilerInfo8_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank)  \
+#define ICorProfilerInfo8_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) \
     ( (This)->lpVtbl -> IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) ) 
 
-#define ICorProfilerInfo8_GetThreadInfo(This,threadId,pdwWin32ThreadId) \
+#define ICorProfilerInfo8_GetThreadInfo(This,threadId,pdwWin32ThreadId)        \
     ( (This)->lpVtbl -> GetThreadInfo(This,threadId,pdwWin32ThreadId) ) 
 
-#define ICorProfilerInfo8_GetCurrentThreadID(This,pThreadId)    \
+#define ICorProfilerInfo8_GetCurrentThreadID(This,pThreadId)   \
     ( (This)->lpVtbl -> GetCurrentThreadID(This,pThreadId) ) 
 
-#define ICorProfilerInfo8_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken)  \
+#define ICorProfilerInfo8_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) \
     ( (This)->lpVtbl -> GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) ) 
 
-#define ICorProfilerInfo8_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)    \
+#define ICorProfilerInfo8_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)   \
     ( (This)->lpVtbl -> GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken) ) 
 
-#define ICorProfilerInfo8_SetEventMask(This,dwEvents)   \
+#define ICorProfilerInfo8_SetEventMask(This,dwEvents)  \
     ( (This)->lpVtbl -> SetEventMask(This,dwEvents) ) 
 
-#define ICorProfilerInfo8_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall)  \
+#define ICorProfilerInfo8_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo8_SetFunctionIDMapper(This,pFunc)   \
+#define ICorProfilerInfo8_SetFunctionIDMapper(This,pFunc)      \
     ( (This)->lpVtbl -> SetFunctionIDMapper(This,pFunc) ) 
 
-#define ICorProfilerInfo8_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) \
+#define ICorProfilerInfo8_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken)        \
     ( (This)->lpVtbl -> GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) ) 
 
-#define ICorProfilerInfo8_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)    \
+#define ICorProfilerInfo8_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)   \
     ( (This)->lpVtbl -> GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId) ) 
 
-#define ICorProfilerInfo8_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)   \
+#define ICorProfilerInfo8_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)      \
     ( (This)->lpVtbl -> GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut) ) 
 
-#define ICorProfilerInfo8_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)    \
+#define ICorProfilerInfo8_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)       \
     ( (This)->lpVtbl -> GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize) ) 
 
-#define ICorProfilerInfo8_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)    \
+#define ICorProfilerInfo8_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)   \
     ( (This)->lpVtbl -> GetILFunctionBodyAllocator(This,moduleId,ppMalloc) ) 
 
-#define ICorProfilerInfo8_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) \
+#define ICorProfilerInfo8_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader)        \
     ( (This)->lpVtbl -> SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) ) 
 
-#define ICorProfilerInfo8_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) \
+#define ICorProfilerInfo8_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId)        \
     ( (This)->lpVtbl -> GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) ) 
 
-#define ICorProfilerInfo8_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)   \
+#define ICorProfilerInfo8_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)      \
     ( (This)->lpVtbl -> GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId) ) 
 
-#define ICorProfilerInfo8_SetFunctionReJIT(This,functionId) \
+#define ICorProfilerInfo8_SetFunctionReJIT(This,functionId)    \
     ( (This)->lpVtbl -> SetFunctionReJIT(This,functionId) ) 
 
-#define ICorProfilerInfo8_ForceGC(This) \
+#define ICorProfilerInfo8_ForceGC(This)        \
     ( (This)->lpVtbl -> ForceGC(This) ) 
 
-#define ICorProfilerInfo8_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)  \
+#define ICorProfilerInfo8_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)     \
     ( (This)->lpVtbl -> SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries) ) 
 
-#define ICorProfilerInfo8_GetInprocInspectionInterface(This,ppicd)  \
+#define ICorProfilerInfo8_GetInprocInspectionInterface(This,ppicd)     \
     ( (This)->lpVtbl -> GetInprocInspectionInterface(This,ppicd) ) 
 
-#define ICorProfilerInfo8_GetInprocInspectionIThisThread(This,ppicd)    \
+#define ICorProfilerInfo8_GetInprocInspectionIThisThread(This,ppicd)   \
     ( (This)->lpVtbl -> GetInprocInspectionIThisThread(This,ppicd) ) 
 
-#define ICorProfilerInfo8_GetThreadContext(This,threadId,pContextId)    \
+#define ICorProfilerInfo8_GetThreadContext(This,threadId,pContextId)   \
     ( (This)->lpVtbl -> GetThreadContext(This,threadId,pContextId) ) 
 
-#define ICorProfilerInfo8_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) \
+#define ICorProfilerInfo8_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext)        \
     ( (This)->lpVtbl -> BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) ) 
 
-#define ICorProfilerInfo8_EndInprocDebugging(This,dwProfilerContext)    \
+#define ICorProfilerInfo8_EndInprocDebugging(This,dwProfilerContext)   \
     ( (This)->lpVtbl -> EndInprocDebugging(This,dwProfilerContext) ) 
 
-#define ICorProfilerInfo8_GetILToNativeMapping(This,functionId,cMap,pcMap,map)  \
+#define ICorProfilerInfo8_GetILToNativeMapping(This,functionId,cMap,pcMap,map) \
     ( (This)->lpVtbl -> GetILToNativeMapping(This,functionId,cMap,pcMap,map) ) 
 
 
-#define ICorProfilerInfo8_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)    \
+#define ICorProfilerInfo8_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)       \
     ( (This)->lpVtbl -> DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize) ) 
 
-#define ICorProfilerInfo8_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
+#define ICorProfilerInfo8_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall)        \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo8_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)   \
+#define ICorProfilerInfo8_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)      \
     ( (This)->lpVtbl -> GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs) ) 
 
-#define ICorProfilerInfo8_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)   \
+#define ICorProfilerInfo8_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)  \
     ( (This)->lpVtbl -> GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset) ) 
 
-#define ICorProfilerInfo8_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) \
+#define ICorProfilerInfo8_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize)    \
     ( (This)->lpVtbl -> GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) ) 
 
-#define ICorProfilerInfo8_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)  \
+#define ICorProfilerInfo8_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)     \
     ( (This)->lpVtbl -> GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs) ) 
 
-#define ICorProfilerInfo8_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)    \
+#define ICorProfilerInfo8_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)       \
     ( (This)->lpVtbl -> GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos) ) 
 
-#define ICorProfilerInfo8_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)   \
+#define ICorProfilerInfo8_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)      \
     ( (This)->lpVtbl -> GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID) ) 
 
-#define ICorProfilerInfo8_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) \
+#define ICorProfilerInfo8_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID)        \
     ( (This)->lpVtbl -> GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) ) 
 
-#define ICorProfilerInfo8_EnumModuleFrozenObjects(This,moduleID,ppEnum) \
+#define ICorProfilerInfo8_EnumModuleFrozenObjects(This,moduleID,ppEnum)        \
     ( (This)->lpVtbl -> EnumModuleFrozenObjects(This,moduleID,ppEnum) ) 
 
-#define ICorProfilerInfo8_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)    \
+#define ICorProfilerInfo8_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)   \
     ( (This)->lpVtbl -> GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData) ) 
 
-#define ICorProfilerInfo8_GetBoxClassLayout(This,classId,pBufferOffset) \
+#define ICorProfilerInfo8_GetBoxClassLayout(This,classId,pBufferOffset)        \
     ( (This)->lpVtbl -> GetBoxClassLayout(This,classId,pBufferOffset) ) 
 
-#define ICorProfilerInfo8_GetThreadAppDomain(This,threadId,pAppDomainId)    \
+#define ICorProfilerInfo8_GetThreadAppDomain(This,threadId,pAppDomainId)       \
     ( (This)->lpVtbl -> GetThreadAppDomain(This,threadId,pAppDomainId) ) 
 
-#define ICorProfilerInfo8_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)    \
+#define ICorProfilerInfo8_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)       \
     ( (This)->lpVtbl -> GetRVAStaticAddress(This,classId,fieldToken,ppAddress) ) 
 
-#define ICorProfilerInfo8_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)  \
+#define ICorProfilerInfo8_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)     \
     ( (This)->lpVtbl -> GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress) ) 
 
-#define ICorProfilerInfo8_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)    \
+#define ICorProfilerInfo8_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)   \
     ( (This)->lpVtbl -> GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress) ) 
 
-#define ICorProfilerInfo8_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress)  \
+#define ICorProfilerInfo8_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) \
     ( (This)->lpVtbl -> GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) ) 
 
-#define ICorProfilerInfo8_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)    \
+#define ICorProfilerInfo8_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)       \
     ( (This)->lpVtbl -> GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo) ) 
 
-#define ICorProfilerInfo8_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) \
+#define ICorProfilerInfo8_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges)        \
     ( (This)->lpVtbl -> GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) ) 
 
-#define ICorProfilerInfo8_GetObjectGeneration(This,objectId,range)  \
+#define ICorProfilerInfo8_GetObjectGeneration(This,objectId,range)     \
     ( (This)->lpVtbl -> GetObjectGeneration(This,objectId,range) ) 
 
-#define ICorProfilerInfo8_GetNotifiedExceptionClauseInfo(This,pinfo)    \
+#define ICorProfilerInfo8_GetNotifiedExceptionClauseInfo(This,pinfo)   \
     ( (This)->lpVtbl -> GetNotifiedExceptionClauseInfo(This,pinfo) ) 
 
 
-#define ICorProfilerInfo8_EnumJITedFunctions(This,ppEnum)   \
+#define ICorProfilerInfo8_EnumJITedFunctions(This,ppEnum)      \
     ( (This)->lpVtbl -> EnumJITedFunctions(This,ppEnum) ) 
 
-#define ICorProfilerInfo8_RequestProfilerDetach(This,dwExpectedCompletionMilliseconds)  \
+#define ICorProfilerInfo8_RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) \
     ( (This)->lpVtbl -> RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) ) 
 
-#define ICorProfilerInfo8_SetFunctionIDMapper2(This,pFunc,clientData)   \
+#define ICorProfilerInfo8_SetFunctionIDMapper2(This,pFunc,clientData)  \
     ( (This)->lpVtbl -> SetFunctionIDMapper2(This,pFunc,clientData) ) 
 
-#define ICorProfilerInfo8_GetStringLayout2(This,pStringLengthOffset,pBufferOffset)  \
+#define ICorProfilerInfo8_GetStringLayout2(This,pStringLengthOffset,pBufferOffset)     \
     ( (This)->lpVtbl -> GetStringLayout2(This,pStringLengthOffset,pBufferOffset) ) 
 
-#define ICorProfilerInfo8_SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3)  \
+#define ICorProfilerInfo8_SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3)     \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3) ) 
 
-#define ICorProfilerInfo8_SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo)  \
+#define ICorProfilerInfo8_SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo)     \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo) ) 
 
-#define ICorProfilerInfo8_GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo)   \
+#define ICorProfilerInfo8_GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo)      \
     ( (This)->lpVtbl -> GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo) ) 
 
-#define ICorProfilerInfo8_GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange)    \
+#define ICorProfilerInfo8_GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange)       \
     ( (This)->lpVtbl -> GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange) ) 
 
-#define ICorProfilerInfo8_GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo)  \
+#define ICorProfilerInfo8_GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) \
     ( (This)->lpVtbl -> GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) ) 
 
-#define ICorProfilerInfo8_EnumModules(This,ppEnum)  \
+#define ICorProfilerInfo8_EnumModules(This,ppEnum)     \
     ( (This)->lpVtbl -> EnumModules(This,ppEnum) ) 
 
-#define ICorProfilerInfo8_GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString)   \
+#define ICorProfilerInfo8_GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString)      \
     ( (This)->lpVtbl -> GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString) ) 
 
-#define ICorProfilerInfo8_GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress)   \
+#define ICorProfilerInfo8_GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress)      \
     ( (This)->lpVtbl -> GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress) ) 
 
-#define ICorProfilerInfo8_GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds)    \
+#define ICorProfilerInfo8_GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds)       \
     ( (This)->lpVtbl -> GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds) ) 
 
-#define ICorProfilerInfo8_GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags)    \
+#define ICorProfilerInfo8_GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags)   \
     ( (This)->lpVtbl -> GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags) ) 
 
 
-#define ICorProfilerInfo8_EnumThreads(This,ppEnum)  \
+#define ICorProfilerInfo8_EnumThreads(This,ppEnum)     \
     ( (This)->lpVtbl -> EnumThreads(This,ppEnum) ) 
 
-#define ICorProfilerInfo8_InitializeCurrentThread(This) \
+#define ICorProfilerInfo8_InitializeCurrentThread(This)        \
     ( (This)->lpVtbl -> InitializeCurrentThread(This) ) 
 
-#define ICorProfilerInfo8_RequestReJIT(This,cFunctions,moduleIds,methodIds) \
+#define ICorProfilerInfo8_RequestReJIT(This,cFunctions,moduleIds,methodIds)    \
     ( (This)->lpVtbl -> RequestReJIT(This,cFunctions,moduleIds,methodIds) ) 
 
-#define ICorProfilerInfo8_RequestRevert(This,cFunctions,moduleIds,methodIds,status) \
+#define ICorProfilerInfo8_RequestRevert(This,cFunctions,moduleIds,methodIds,status)    \
     ( (This)->lpVtbl -> RequestRevert(This,cFunctions,moduleIds,methodIds,status) ) 
 
-#define ICorProfilerInfo8_GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos)    \
+#define ICorProfilerInfo8_GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos)       \
     ( (This)->lpVtbl -> GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos) ) 
 
-#define ICorProfilerInfo8_GetFunctionFromIP2(This,ip,pFunctionId,pReJitId)  \
+#define ICorProfilerInfo8_GetFunctionFromIP2(This,ip,pFunctionId,pReJitId)     \
     ( (This)->lpVtbl -> GetFunctionFromIP2(This,ip,pFunctionId,pReJitId) ) 
 
-#define ICorProfilerInfo8_GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds)    \
+#define ICorProfilerInfo8_GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds)   \
     ( (This)->lpVtbl -> GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds) ) 
 
-#define ICorProfilerInfo8_GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map) \
+#define ICorProfilerInfo8_GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map)        \
     ( (This)->lpVtbl -> GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map) ) 
 
-#define ICorProfilerInfo8_EnumJITedFunctions2(This,ppEnum)  \
+#define ICorProfilerInfo8_EnumJITedFunctions2(This,ppEnum)     \
     ( (This)->lpVtbl -> EnumJITedFunctions2(This,ppEnum) ) 
 
-#define ICorProfilerInfo8_GetObjectSize2(This,objectId,pcSize)  \
+#define ICorProfilerInfo8_GetObjectSize2(This,objectId,pcSize) \
     ( (This)->lpVtbl -> GetObjectSize2(This,objectId,pcSize) ) 
 
 
-#define ICorProfilerInfo8_GetEventMask2(This,pdwEventsLow,pdwEventsHigh)    \
+#define ICorProfilerInfo8_GetEventMask2(This,pdwEventsLow,pdwEventsHigh)       \
     ( (This)->lpVtbl -> GetEventMask2(This,pdwEventsLow,pdwEventsHigh) ) 
 
-#define ICorProfilerInfo8_SetEventMask2(This,dwEventsLow,dwEventsHigh)  \
+#define ICorProfilerInfo8_SetEventMask2(This,dwEventsLow,dwEventsHigh) \
     ( (This)->lpVtbl -> SetEventMask2(This,dwEventsLow,dwEventsHigh) ) 
 
 
-#define ICorProfilerInfo8_EnumNgenModuleMethodsInliningThisMethod(This,inlinersModuleId,inlineeModuleId,inlineeMethodId,incompleteData,ppEnum)  \
+#define ICorProfilerInfo8_EnumNgenModuleMethodsInliningThisMethod(This,inlinersModuleId,inlineeModuleId,inlineeMethodId,incompleteData,ppEnum) \
     ( (This)->lpVtbl -> EnumNgenModuleMethodsInliningThisMethod(This,inlinersModuleId,inlineeModuleId,inlineeMethodId,incompleteData,ppEnum) ) 
 
 
-#define ICorProfilerInfo8_ApplyMetaData(This,moduleId)  \
+#define ICorProfilerInfo8_ApplyMetaData(This,moduleId) \
     ( (This)->lpVtbl -> ApplyMetaData(This,moduleId) ) 
 
-#define ICorProfilerInfo8_GetInMemorySymbolsLength(This,moduleId,pCountSymbolBytes) \
+#define ICorProfilerInfo8_GetInMemorySymbolsLength(This,moduleId,pCountSymbolBytes)    \
     ( (This)->lpVtbl -> GetInMemorySymbolsLength(This,moduleId,pCountSymbolBytes) ) 
 
-#define ICorProfilerInfo8_ReadInMemorySymbols(This,moduleId,symbolsReadOffset,pSymbolBytes,countSymbolBytes,pCountSymbolBytesRead)  \
+#define ICorProfilerInfo8_ReadInMemorySymbols(This,moduleId,symbolsReadOffset,pSymbolBytes,countSymbolBytes,pCountSymbolBytesRead)     \
     ( (This)->lpVtbl -> ReadInMemorySymbols(This,moduleId,symbolsReadOffset,pSymbolBytes,countSymbolBytes,pCountSymbolBytesRead) ) 
 
 
-#define ICorProfilerInfo8_IsFunctionDynamic(This,functionId,isDynamic)  \
+#define ICorProfilerInfo8_IsFunctionDynamic(This,functionId,isDynamic) \
     ( (This)->lpVtbl -> IsFunctionDynamic(This,functionId,isDynamic) ) 
 
-#define ICorProfilerInfo8_GetFunctionFromIP3(This,ip,functionId,pReJitId)   \
+#define ICorProfilerInfo8_GetFunctionFromIP3(This,ip,functionId,pReJitId)      \
     ( (This)->lpVtbl -> GetFunctionFromIP3(This,ip,functionId,pReJitId) ) 
 
-#define ICorProfilerInfo8_GetDynamicFunctionInfo(This,functionId,moduleId,ppvSig,pbSig,cchName,pcchName,wszName)    \
+#define ICorProfilerInfo8_GetDynamicFunctionInfo(This,functionId,moduleId,ppvSig,pbSig,cchName,pcchName,wszName)       \
     ( (This)->lpVtbl -> GetDynamicFunctionInfo(This,functionId,moduleId,ppvSig,pbSig,cchName,pcchName,wszName) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerInfo8_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerInfo8_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorProfilerInfo9_INTERFACE_DEFINED__
@@ -15168,207 +15169,1016 @@ EXTERN_C const IID IID_ICorProfilerInfo9;
 #endif         /* __ICorProfilerInfo9_INTERFACE_DEFINED__ */
 
 
-#ifndef __ICorProfilerMethodEnum_INTERFACE_DEFINED__
-#define __ICorProfilerMethodEnum_INTERFACE_DEFINED__
+#ifndef __ICorProfilerInfo10_INTERFACE_DEFINED__
+#define __ICorProfilerInfo10_INTERFACE_DEFINED__
 
-/* interface ICorProfilerMethodEnum */
+/* interface ICorProfilerInfo10 */
 /* [local][unique][uuid][object] */ 
 
 
-EXTERN_C const IID IID_ICorProfilerMethodEnum;
+EXTERN_C const IID IID_ICorProfilerInfo10;
 
 #if defined(__cplusplus) && !defined(CINTERFACE)
     
-    MIDL_INTERFACE("FCCEE788-0088-454B-A811-C99F298D1942")
-    ICorProfilerMethodEnum : public IUnknown
+    MIDL_INTERFACE("2F1B5152-C869-40C9-AA5F-3ABE026BD720")
+    ICorProfilerInfo10 : public ICorProfilerInfo9
     {
     public:
-        virtual HRESULT STDMETHODCALLTYPE Skip( 
-            /* [in] */ ULONG celt) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE Clone( 
-            /* [out] */ ICorProfilerMethodEnum **ppEnum) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetCount( 
-            /* [out] */ ULONG *pcelt) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE Next( 
-            /* [in] */ ULONG celt,
-            /* [length_is][size_is][out] */ COR_PRF_METHOD elements[  ],
-            /* [out] */ ULONG *pceltFetched) = 0;
+        virtual HRESULT STDMETHODCALLTYPE GetObjectReferences( 
+            ObjectID objectId,
+            ULONG32 cNumReferences,
+            ULONG32 *pcNumReferences,
+            ObjectID references[  ],
+            SIZE_T offsets[  ]) = 0;
         
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
-    typedef struct ICorProfilerMethodEnumVtbl
+    typedef struct ICorProfilerInfo10Vtbl
     {
         BEGIN_INTERFACE
         
         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICorProfilerMethodEnum * This,
+            ICorProfilerInfo10 * This,
             /* [in] */ REFIID riid,
             /* [annotation][iid_is][out] */ 
             _COM_Outptr_  void **ppvObject);
         
         ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICorProfilerMethodEnum * This);
+            ICorProfilerInfo10 * This);
         
         ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICorProfilerMethodEnum * This);
+            ICorProfilerInfo10 * This);
         
-        HRESULT ( STDMETHODCALLTYPE *Skip )( 
-            ICorProfilerMethodEnum * This,
-            /* [in] */ ULONG celt);
+        HRESULT ( STDMETHODCALLTYPE *GetClassFromObject )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ObjectID objectId,
+            /* [out] */ ClassID *pClassId);
         
-        HRESULT ( STDMETHODCALLTYPE *Reset )( 
-            ICorProfilerMethodEnum * This);
+        HRESULT ( STDMETHODCALLTYPE *GetClassFromToken )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [in] */ mdTypeDef typeDef,
+            /* [out] */ ClassID *pClassId);
         
-        HRESULT ( STDMETHODCALLTYPE *Clone )( 
-            ICorProfilerMethodEnum * This,
-            /* [out] */ ICorProfilerMethodEnum **ppEnum);
+        HRESULT ( STDMETHODCALLTYPE *GetCodeInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [out] */ LPCBYTE *pStart,
+            /* [out] */ ULONG *pcSize);
         
-        HRESULT ( STDMETHODCALLTYPE *GetCount )( 
-            ICorProfilerMethodEnum * This,
-            /* [out] */ ULONG *pcelt);
+        HRESULT ( STDMETHODCALLTYPE *GetEventMask )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ DWORD *pdwEvents);
         
-        HRESULT ( STDMETHODCALLTYPE *Next )( 
-            ICorProfilerMethodEnum * This,
-            /* [in] */ ULONG celt,
-            /* [length_is][size_is][out] */ COR_PRF_METHOD elements[  ],
-            /* [out] */ ULONG *pceltFetched);
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionFromIP )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ LPCBYTE ip,
+            /* [out] */ FunctionID *pFunctionId);
         
-        END_INTERFACE
-    } ICorProfilerMethodEnumVtbl;
-
-    interface ICorProfilerMethodEnum
-    {
-        CONST_VTBL struct ICorProfilerMethodEnumVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ICorProfilerMethodEnum_QueryInterface(This,riid,ppvObject)  \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ICorProfilerMethodEnum_AddRef(This) \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ICorProfilerMethodEnum_Release(This)    \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ICorProfilerMethodEnum_Skip(This,celt)  \
-    ( (This)->lpVtbl -> Skip(This,celt) ) 
-
-#define ICorProfilerMethodEnum_Reset(This)  \
-    ( (This)->lpVtbl -> Reset(This) ) 
-
-#define ICorProfilerMethodEnum_Clone(This,ppEnum)   \
-    ( (This)->lpVtbl -> Clone(This,ppEnum) ) 
-
-#define ICorProfilerMethodEnum_GetCount(This,pcelt) \
-    ( (This)->lpVtbl -> GetCount(This,pcelt) ) 
-
-#define ICorProfilerMethodEnum_Next(This,celt,elements,pceltFetched)    \
-    ( (This)->lpVtbl -> Next(This,celt,elements,pceltFetched) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif  /* C style interface */
-
-
-
-
-#endif  /* __ICorProfilerMethodEnum_INTERFACE_DEFINED__ */
-
-
-#ifndef __ICorProfilerThreadEnum_INTERFACE_DEFINED__
-#define __ICorProfilerThreadEnum_INTERFACE_DEFINED__
-
-/* interface ICorProfilerThreadEnum */
-/* [local][unique][uuid][object] */ 
-
-
-EXTERN_C const IID IID_ICorProfilerThreadEnum;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("571194f7-25ed-419f-aa8b-7016b3159701")
-    ICorProfilerThreadEnum : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE Skip( 
-            /* [in] */ ULONG celt) = 0;
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionFromToken )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [in] */ mdToken token,
+            /* [out] */ FunctionID *pFunctionId);
         
-        virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
+        HRESULT ( STDMETHODCALLTYPE *GetHandleFromThread )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ThreadID threadId,
+            /* [out] */ HANDLE *phThread);
         
-        virtual HRESULT STDMETHODCALLTYPE Clone( 
-            /* [out] */ ICorProfilerThreadEnum **ppEnum) = 0;
+        HRESULT ( STDMETHODCALLTYPE *GetObjectSize )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ObjectID objectId,
+            /* [out] */ ULONG *pcSize);
         
-        virtual HRESULT STDMETHODCALLTYPE GetCount( 
-            /* [out] */ ULONG *pcelt) = 0;
+        HRESULT ( STDMETHODCALLTYPE *IsArrayClass )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [out] */ CorElementType *pBaseElemType,
+            /* [out] */ ClassID *pBaseClassId,
+            /* [out] */ ULONG *pcRank);
         
-        virtual HRESULT STDMETHODCALLTYPE Next
-            /* [in] */ ULONG celt,
-            /* [length_is][size_is][out] */ ThreadID ids[  ],
-            /* [out] */ ULONG *pceltFetched) = 0;
+        HRESULT ( STDMETHODCALLTYPE *GetThreadInfo )
+            ICorProfilerInfo10 * This,
+            /* [in] */ ThreadID threadId,
+            /* [out] */ DWORD *pdwWin32ThreadId);
         
-    };
-    
-    
-#else   /* C style interface */
-
-    typedef struct ICorProfilerThreadEnumVtbl
-    {
-        BEGIN_INTERFACE
+        HRESULT ( STDMETHODCALLTYPE *GetCurrentThreadID )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ ThreadID *pThreadId);
         
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICorProfilerThreadEnum * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
+        HRESULT ( STDMETHODCALLTYPE *GetClassIDInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [out] */ ModuleID *pModuleId,
+            /* [out] */ mdTypeDef *pTypeDefToken);
         
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICorProfilerThreadEnum * This);
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [out] */ ClassID *pClassId,
+            /* [out] */ ModuleID *pModuleId,
+            /* [out] */ mdToken *pToken);
         
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICorProfilerThreadEnum * This);
+        HRESULT ( STDMETHODCALLTYPE *SetEventMask )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ DWORD dwEvents);
         
-        HRESULT ( STDMETHODCALLTYPE *Skip )( 
-            ICorProfilerThreadEnum * This,
-            /* [in] */ ULONG celt);
+        HRESULT ( STDMETHODCALLTYPE *SetEnterLeaveFunctionHooks )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionEnter *pFuncEnter,
+            /* [in] */ FunctionLeave *pFuncLeave,
+            /* [in] */ FunctionTailcall *pFuncTailcall);
         
-        HRESULT ( STDMETHODCALLTYPE *Reset )( 
-            ICorProfilerThreadEnum * This);
+        HRESULT ( STDMETHODCALLTYPE *SetFunctionIDMapper )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionIDMapper *pFunc);
         
-        HRESULT ( STDMETHODCALLTYPE *Clone )( 
-            ICorProfilerThreadEnum * This,
-            /* [out] */ ICorProfilerThreadEnum **ppEnum);
+        HRESULT ( STDMETHODCALLTYPE *GetTokenAndMetaDataFromFunction )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [in] */ REFIID riid,
+            /* [out] */ IUnknown **ppImport,
+            /* [out] */ mdToken *pToken);
         
-        HRESULT ( STDMETHODCALLTYPE *GetCount )( 
-            ICorProfilerThreadEnum * This,
-            /* [out] */ ULONG *pcelt);
+        HRESULT ( STDMETHODCALLTYPE *GetModuleInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [out] */ LPCBYTE *ppBaseLoadAddress,
+            /* [in] */ ULONG cchName,
+            /* [out] */ ULONG *pcchName,
+            /* [annotation][out] */ 
+            _Out_writes_to_(cchName, *pcchName)  WCHAR szName[  ],
+            /* [out] */ AssemblyID *pAssemblyId);
         
-        HRESULT ( STDMETHODCALLTYPE *Next )( 
-            ICorProfilerThreadEnum * This,
-            /* [in] */ ULONG celt,
-            /* [length_is][size_is][out] */ ThreadID ids[  ],
+        HRESULT ( STDMETHODCALLTYPE *GetModuleMetaData )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [in] */ DWORD dwOpenFlags,
+            /* [in] */ REFIID riid,
+            /* [out] */ IUnknown **ppOut);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetILFunctionBody )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [in] */ mdMethodDef methodId,
+            /* [out] */ LPCBYTE *ppMethodHeader,
+            /* [out] */ ULONG *pcbMethodSize);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetILFunctionBodyAllocator )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [out] */ IMethodMalloc **ppMalloc);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetILFunctionBody )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [in] */ mdMethodDef methodid,
+            /* [in] */ LPCBYTE pbNewILMethodHeader);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetAppDomainInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ AppDomainID appDomainId,
+            /* [in] */ ULONG cchName,
+            /* [out] */ ULONG *pcchName,
+            /* [annotation][out] */ 
+            _Out_writes_to_(cchName, *pcchName)  WCHAR szName[  ],
+            /* [out] */ ProcessID *pProcessId);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetAssemblyInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ AssemblyID assemblyId,
+            /* [in] */ ULONG cchName,
+            /* [out] */ ULONG *pcchName,
+            /* [annotation][out] */ 
+            _Out_writes_to_(cchName, *pcchName)  WCHAR szName[  ],
+            /* [out] */ AppDomainID *pAppDomainId,
+            /* [out] */ ModuleID *pModuleId);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetFunctionReJIT )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId);
+        
+        HRESULT ( STDMETHODCALLTYPE *ForceGC )( 
+            ICorProfilerInfo10 * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetILInstrumentedCodeMap )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [in] */ BOOL fStartJit,
+            /* [in] */ ULONG cILMapEntries,
+            /* [size_is][in] */ COR_IL_MAP rgILMapEntries[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetInprocInspectionInterface )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ IUnknown **ppicd);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetInprocInspectionIThisThread )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ IUnknown **ppicd);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetThreadContext )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ThreadID threadId,
+            /* [out] */ ContextID *pContextId);
+        
+        HRESULT ( STDMETHODCALLTYPE *BeginInprocDebugging )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ BOOL fThisThreadOnly,
+            /* [out] */ DWORD *pdwProfilerContext);
+        
+        HRESULT ( STDMETHODCALLTYPE *EndInprocDebugging )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ DWORD dwProfilerContext);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetILToNativeMapping )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [in] */ ULONG32 cMap,
+            /* [out] */ ULONG32 *pcMap,
+            /* [length_is][size_is][out] */ COR_DEBUG_IL_TO_NATIVE_MAP map[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *DoStackSnapshot )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ThreadID thread,
+            /* [in] */ StackSnapshotCallback *callback,
+            /* [in] */ ULONG32 infoFlags,
+            /* [in] */ void *clientData,
+            /* [size_is][in] */ BYTE context[  ],
+            /* [in] */ ULONG32 contextSize);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetEnterLeaveFunctionHooks2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionEnter2 *pFuncEnter,
+            /* [in] */ FunctionLeave2 *pFuncLeave,
+            /* [in] */ FunctionTailcall2 *pFuncTailcall);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionInfo2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID funcId,
+            /* [in] */ COR_PRF_FRAME_INFO frameInfo,
+            /* [out] */ ClassID *pClassId,
+            /* [out] */ ModuleID *pModuleId,
+            /* [out] */ mdToken *pToken,
+            /* [in] */ ULONG32 cTypeArgs,
+            /* [out] */ ULONG32 *pcTypeArgs,
+            /* [out] */ ClassID typeArgs[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetStringLayout )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ ULONG *pBufferLengthOffset,
+            /* [out] */ ULONG *pStringLengthOffset,
+            /* [out] */ ULONG *pBufferOffset);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetClassLayout )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classID,
+            /* [out][in] */ COR_FIELD_OFFSET rFieldOffset[  ],
+            /* [in] */ ULONG cFieldOffset,
+            /* [out] */ ULONG *pcFieldOffset,
+            /* [out] */ ULONG *pulClassSize);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetClassIDInfo2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [out] */ ModuleID *pModuleId,
+            /* [out] */ mdTypeDef *pTypeDefToken,
+            /* [out] */ ClassID *pParentClassId,
+            /* [in] */ ULONG32 cNumTypeArgs,
+            /* [out] */ ULONG32 *pcNumTypeArgs,
+            /* [out] */ ClassID typeArgs[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetCodeInfo2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionID,
+            /* [in] */ ULONG32 cCodeInfos,
+            /* [out] */ ULONG32 *pcCodeInfos,
+            /* [length_is][size_is][out] */ COR_PRF_CODE_INFO codeInfos[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetClassFromTokenAndTypeArgs )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleID,
+            /* [in] */ mdTypeDef typeDef,
+            /* [in] */ ULONG32 cTypeArgs,
+            /* [size_is][in] */ ClassID typeArgs[  ],
+            /* [out] */ ClassID *pClassID);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionFromTokenAndTypeArgs )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleID,
+            /* [in] */ mdMethodDef funcDef,
+            /* [in] */ ClassID classId,
+            /* [in] */ ULONG32 cTypeArgs,
+            /* [size_is][in] */ ClassID typeArgs[  ],
+            /* [out] */ FunctionID *pFunctionID);
+        
+        HRESULT ( STDMETHODCALLTYPE *EnumModuleFrozenObjects )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleID,
+            /* [out] */ ICorProfilerObjectEnum **ppEnum);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetArrayObjectInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ObjectID objectId,
+            /* [in] */ ULONG32 cDimensions,
+            /* [size_is][out] */ ULONG32 pDimensionSizes[  ],
+            /* [size_is][out] */ int pDimensionLowerBounds[  ],
+            /* [out] */ BYTE **ppData);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetBoxClassLayout )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [out] */ ULONG32 *pBufferOffset);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetThreadAppDomain )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ThreadID threadId,
+            /* [out] */ AppDomainID *pAppDomainId);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetRVAStaticAddress )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [in] */ mdFieldDef fieldToken,
+            /* [out] */ void **ppAddress);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetAppDomainStaticAddress )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [in] */ mdFieldDef fieldToken,
+            /* [in] */ AppDomainID appDomainId,
+            /* [out] */ void **ppAddress);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetThreadStaticAddress )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [in] */ mdFieldDef fieldToken,
+            /* [in] */ ThreadID threadId,
+            /* [out] */ void **ppAddress);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetContextStaticAddress )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [in] */ mdFieldDef fieldToken,
+            /* [in] */ ContextID contextId,
+            /* [out] */ void **ppAddress);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetStaticFieldInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [in] */ mdFieldDef fieldToken,
+            /* [out] */ COR_PRF_STATIC_TYPE *pFieldInfo);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetGenerationBounds )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ULONG cObjectRanges,
+            /* [out] */ ULONG *pcObjectRanges,
+            /* [length_is][size_is][out] */ COR_PRF_GC_GENERATION_RANGE ranges[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetObjectGeneration )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ObjectID objectId,
+            /* [out] */ COR_PRF_GC_GENERATION_RANGE *range);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetNotifiedExceptionClauseInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ COR_PRF_EX_CLAUSE_INFO *pinfo);
+        
+        HRESULT ( STDMETHODCALLTYPE *EnumJITedFunctions )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ ICorProfilerFunctionEnum **ppEnum);
+        
+        HRESULT ( STDMETHODCALLTYPE *RequestProfilerDetach )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ DWORD dwExpectedCompletionMilliseconds);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetFunctionIDMapper2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionIDMapper2 *pFunc,
+            /* [in] */ void *clientData);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetStringLayout2 )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ ULONG *pStringLengthOffset,
+            /* [out] */ ULONG *pBufferOffset);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetEnterLeaveFunctionHooks3 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionEnter3 *pFuncEnter3,
+            /* [in] */ FunctionLeave3 *pFuncLeave3,
+            /* [in] */ FunctionTailcall3 *pFuncTailcall3);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetEnterLeaveFunctionHooks3WithInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionEnter3WithInfo *pFuncEnter3WithInfo,
+            /* [in] */ FunctionLeave3WithInfo *pFuncLeave3WithInfo,
+            /* [in] */ FunctionTailcall3WithInfo *pFuncTailcall3WithInfo);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionEnter3Info )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [in] */ COR_PRF_ELT_INFO eltInfo,
+            /* [out] */ COR_PRF_FRAME_INFO *pFrameInfo,
+            /* [out][in] */ ULONG *pcbArgumentInfo,
+            /* [size_is][out] */ COR_PRF_FUNCTION_ARGUMENT_INFO *pArgumentInfo);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionLeave3Info )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [in] */ COR_PRF_ELT_INFO eltInfo,
+            /* [out] */ COR_PRF_FRAME_INFO *pFrameInfo,
+            /* [out] */ COR_PRF_FUNCTION_ARGUMENT_RANGE *pRetvalRange);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionTailcall3Info )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [in] */ COR_PRF_ELT_INFO eltInfo,
+            /* [out] */ COR_PRF_FRAME_INFO *pFrameInfo);
+        
+        HRESULT ( STDMETHODCALLTYPE *EnumModules )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ ICorProfilerModuleEnum **ppEnum);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetRuntimeInformation )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ USHORT *pClrInstanceId,
+            /* [out] */ COR_PRF_RUNTIME_TYPE *pRuntimeType,
+            /* [out] */ USHORT *pMajorVersion,
+            /* [out] */ USHORT *pMinorVersion,
+            /* [out] */ USHORT *pBuildNumber,
+            /* [out] */ USHORT *pQFEVersion,
+            /* [in] */ ULONG cchVersionString,
+            /* [out] */ ULONG *pcchVersionString,
+            /* [annotation][out] */ 
+            _Out_writes_to_(cchVersionString, *pcchVersionString)  WCHAR szVersionString[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetThreadStaticAddress2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [in] */ mdFieldDef fieldToken,
+            /* [in] */ AppDomainID appDomainId,
+            /* [in] */ ThreadID threadId,
+            /* [out] */ void **ppAddress);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetAppDomainsContainingModule )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [in] */ ULONG32 cAppDomainIds,
+            /* [out] */ ULONG32 *pcAppDomainIds,
+            /* [length_is][size_is][out] */ AppDomainID appDomainIds[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetModuleInfo2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [out] */ LPCBYTE *ppBaseLoadAddress,
+            /* [in] */ ULONG cchName,
+            /* [out] */ ULONG *pcchName,
+            /* [annotation][out] */ 
+            _Out_writes_to_(cchName, *pcchName)  WCHAR szName[  ],
+            /* [out] */ AssemblyID *pAssemblyId,
+            /* [out] */ DWORD *pdwModuleFlags);
+        
+        HRESULT ( STDMETHODCALLTYPE *EnumThreads )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ ICorProfilerThreadEnum **ppEnum);
+        
+        HRESULT ( STDMETHODCALLTYPE *InitializeCurrentThread )( 
+            ICorProfilerInfo10 * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *RequestReJIT )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ULONG cFunctions,
+            /* [size_is][in] */ ModuleID moduleIds[  ],
+            /* [size_is][in] */ mdMethodDef methodIds[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *RequestRevert )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ULONG cFunctions,
+            /* [size_is][in] */ ModuleID moduleIds[  ],
+            /* [size_is][in] */ mdMethodDef methodIds[  ],
+            /* [size_is][out] */ HRESULT status[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetCodeInfo3 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionID,
+            /* [in] */ ReJITID reJitId,
+            /* [in] */ ULONG32 cCodeInfos,
+            /* [out] */ ULONG32 *pcCodeInfos,
+            /* [length_is][size_is][out] */ COR_PRF_CODE_INFO codeInfos[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionFromIP2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ LPCBYTE ip,
+            /* [out] */ FunctionID *pFunctionId,
+            /* [out] */ ReJITID *pReJitId);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetReJITIDs )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [in] */ ULONG cReJitIds,
+            /* [out] */ ULONG *pcReJitIds,
+            /* [length_is][size_is][out] */ ReJITID reJitIds[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetILToNativeMapping2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [in] */ ReJITID reJitId,
+            /* [in] */ ULONG32 cMap,
+            /* [out] */ ULONG32 *pcMap,
+            /* [length_is][size_is][out] */ COR_DEBUG_IL_TO_NATIVE_MAP map[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *EnumJITedFunctions2 )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ ICorProfilerFunctionEnum **ppEnum);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetObjectSize2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ObjectID objectId,
+            /* [out] */ SIZE_T *pcSize);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetEventMask2 )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ DWORD *pdwEventsLow,
+            /* [out] */ DWORD *pdwEventsHigh);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetEventMask2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ DWORD dwEventsLow,
+            /* [in] */ DWORD dwEventsHigh);
+        
+        HRESULT ( STDMETHODCALLTYPE *EnumNgenModuleMethodsInliningThisMethod )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID inlinersModuleId,
+            /* [in] */ ModuleID inlineeModuleId,
+            /* [in] */ mdMethodDef inlineeMethodId,
+            /* [out] */ BOOL *incompleteData,
+            /* [out] */ ICorProfilerMethodEnum **ppEnum);
+        
+        HRESULT ( STDMETHODCALLTYPE *ApplyMetaData )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetInMemorySymbolsLength )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [out] */ DWORD *pCountSymbolBytes);
+        
+        HRESULT ( STDMETHODCALLTYPE *ReadInMemorySymbols )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [in] */ DWORD symbolsReadOffset,
+            /* [out] */ BYTE *pSymbolBytes,
+            /* [in] */ DWORD countSymbolBytes,
+            /* [out] */ DWORD *pCountSymbolBytesRead);
+        
+        HRESULT ( STDMETHODCALLTYPE *IsFunctionDynamic )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [out] */ BOOL *isDynamic);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionFromIP3 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ LPCBYTE ip,
+            /* [out] */ FunctionID *functionId,
+            /* [out] */ ReJITID *pReJitId);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetDynamicFunctionInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [out] */ ModuleID *moduleId,
+            /* [out] */ PCCOR_SIGNATURE *ppvSig,
+            /* [out] */ ULONG *pbSig,
+            /* [in] */ ULONG cchName,
+            /* [out] */ ULONG *pcchName,
+            /* [out] */ WCHAR wszName[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetNativeCodeStartAddresses )( 
+            ICorProfilerInfo10 * This,
+            FunctionID functionID,
+            ReJITID reJitId,
+            ULONG32 cCodeStartAddresses,
+            ULONG32 *pcCodeStartAddresses,
+            UINT_PTR codeStartAddresses[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetILToNativeMapping3 )( 
+            ICorProfilerInfo10 * This,
+            UINT_PTR pNativeCodeStartAddress,
+            ULONG32 cMap,
+            ULONG32 *pcMap,
+            COR_DEBUG_IL_TO_NATIVE_MAP map[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetCodeInfo4 )( 
+            ICorProfilerInfo10 * This,
+            UINT_PTR pNativeCodeStartAddress,
+            ULONG32 cCodeInfos,
+            ULONG32 *pcCodeInfos,
+            COR_PRF_CODE_INFO codeInfos[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetObjectReferences )( 
+            ICorProfilerInfo10 * This,
+            ObjectID objectId,
+            ULONG32 cNumReferences,
+            ULONG32 *pcNumReferences,
+            ObjectID references[  ],
+            SIZE_T offsets[  ]);
+        
+        END_INTERFACE
+    } ICorProfilerInfo10Vtbl;
+
+    interface ICorProfilerInfo10
+    {
+        CONST_VTBL struct ICorProfilerInfo10Vtbl *lpVtbl;
+    };
+
+    
+
+#ifdef COBJMACROS
+
+
+#define ICorProfilerInfo10_QueryInterface(This,riid,ppvObject) \
+    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
+
+#define ICorProfilerInfo10_AddRef(This)        \
+    ( (This)->lpVtbl -> AddRef(This) ) 
+
+#define ICorProfilerInfo10_Release(This)       \
+    ( (This)->lpVtbl -> Release(This) ) 
+
+
+#define ICorProfilerInfo10_GetClassFromObject(This,objectId,pClassId)  \
+    ( (This)->lpVtbl -> GetClassFromObject(This,objectId,pClassId) ) 
+
+#define ICorProfilerInfo10_GetClassFromToken(This,moduleId,typeDef,pClassId)   \
+    ( (This)->lpVtbl -> GetClassFromToken(This,moduleId,typeDef,pClassId) ) 
+
+#define ICorProfilerInfo10_GetCodeInfo(This,functionId,pStart,pcSize)  \
+    ( (This)->lpVtbl -> GetCodeInfo(This,functionId,pStart,pcSize) ) 
+
+#define ICorProfilerInfo10_GetEventMask(This,pdwEvents)        \
+    ( (This)->lpVtbl -> GetEventMask(This,pdwEvents) ) 
+
+#define ICorProfilerInfo10_GetFunctionFromIP(This,ip,pFunctionId)      \
+    ( (This)->lpVtbl -> GetFunctionFromIP(This,ip,pFunctionId) ) 
+
+#define ICorProfilerInfo10_GetFunctionFromToken(This,moduleId,token,pFunctionId)       \
+    ( (This)->lpVtbl -> GetFunctionFromToken(This,moduleId,token,pFunctionId) ) 
+
+#define ICorProfilerInfo10_GetHandleFromThread(This,threadId,phThread) \
+    ( (This)->lpVtbl -> GetHandleFromThread(This,threadId,phThread) ) 
+
+#define ICorProfilerInfo10_GetObjectSize(This,objectId,pcSize) \
+    ( (This)->lpVtbl -> GetObjectSize(This,objectId,pcSize) ) 
+
+#define ICorProfilerInfo10_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank)        \
+    ( (This)->lpVtbl -> IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) ) 
+
+#define ICorProfilerInfo10_GetThreadInfo(This,threadId,pdwWin32ThreadId)       \
+    ( (This)->lpVtbl -> GetThreadInfo(This,threadId,pdwWin32ThreadId) ) 
+
+#define ICorProfilerInfo10_GetCurrentThreadID(This,pThreadId)  \
+    ( (This)->lpVtbl -> GetCurrentThreadID(This,pThreadId) ) 
+
+#define ICorProfilerInfo10_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken)        \
+    ( (This)->lpVtbl -> GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) ) 
+
+#define ICorProfilerInfo10_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)  \
+    ( (This)->lpVtbl -> GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken) ) 
+
+#define ICorProfilerInfo10_SetEventMask(This,dwEvents) \
+    ( (This)->lpVtbl -> SetEventMask(This,dwEvents) ) 
+
+#define ICorProfilerInfo10_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall)        \
+    ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
+
+#define ICorProfilerInfo10_SetFunctionIDMapper(This,pFunc)     \
+    ( (This)->lpVtbl -> SetFunctionIDMapper(This,pFunc) ) 
+
+#define ICorProfilerInfo10_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken)       \
+    ( (This)->lpVtbl -> GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) ) 
+
+#define ICorProfilerInfo10_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)  \
+    ( (This)->lpVtbl -> GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId) ) 
+
+#define ICorProfilerInfo10_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)     \
+    ( (This)->lpVtbl -> GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut) ) 
+
+#define ICorProfilerInfo10_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)      \
+    ( (This)->lpVtbl -> GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize) ) 
+
+#define ICorProfilerInfo10_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)  \
+    ( (This)->lpVtbl -> GetILFunctionBodyAllocator(This,moduleId,ppMalloc) ) 
+
+#define ICorProfilerInfo10_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader)       \
+    ( (This)->lpVtbl -> SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) ) 
+
+#define ICorProfilerInfo10_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId)       \
+    ( (This)->lpVtbl -> GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) ) 
+
+#define ICorProfilerInfo10_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)     \
+    ( (This)->lpVtbl -> GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId) ) 
+
+#define ICorProfilerInfo10_SetFunctionReJIT(This,functionId)   \
+    ( (This)->lpVtbl -> SetFunctionReJIT(This,functionId) ) 
+
+#define ICorProfilerInfo10_ForceGC(This)       \
+    ( (This)->lpVtbl -> ForceGC(This) ) 
+
+#define ICorProfilerInfo10_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)    \
+    ( (This)->lpVtbl -> SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries) ) 
+
+#define ICorProfilerInfo10_GetInprocInspectionInterface(This,ppicd)    \
+    ( (This)->lpVtbl -> GetInprocInspectionInterface(This,ppicd) ) 
+
+#define ICorProfilerInfo10_GetInprocInspectionIThisThread(This,ppicd)  \
+    ( (This)->lpVtbl -> GetInprocInspectionIThisThread(This,ppicd) ) 
+
+#define ICorProfilerInfo10_GetThreadContext(This,threadId,pContextId)  \
+    ( (This)->lpVtbl -> GetThreadContext(This,threadId,pContextId) ) 
+
+#define ICorProfilerInfo10_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext)       \
+    ( (This)->lpVtbl -> BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) ) 
+
+#define ICorProfilerInfo10_EndInprocDebugging(This,dwProfilerContext)  \
+    ( (This)->lpVtbl -> EndInprocDebugging(This,dwProfilerContext) ) 
+
+#define ICorProfilerInfo10_GetILToNativeMapping(This,functionId,cMap,pcMap,map)        \
+    ( (This)->lpVtbl -> GetILToNativeMapping(This,functionId,cMap,pcMap,map) ) 
+
+
+#define ICorProfilerInfo10_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)      \
+    ( (This)->lpVtbl -> DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize) ) 
+
+#define ICorProfilerInfo10_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall)       \
+    ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
+
+#define ICorProfilerInfo10_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)     \
+    ( (This)->lpVtbl -> GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs) ) 
+
+#define ICorProfilerInfo10_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset) \
+    ( (This)->lpVtbl -> GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset) ) 
+
+#define ICorProfilerInfo10_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize)   \
+    ( (This)->lpVtbl -> GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) ) 
+
+#define ICorProfilerInfo10_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)    \
+    ( (This)->lpVtbl -> GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs) ) 
+
+#define ICorProfilerInfo10_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)      \
+    ( (This)->lpVtbl -> GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos) ) 
+
+#define ICorProfilerInfo10_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)     \
+    ( (This)->lpVtbl -> GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID) ) 
+
+#define ICorProfilerInfo10_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID)       \
+    ( (This)->lpVtbl -> GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) ) 
+
+#define ICorProfilerInfo10_EnumModuleFrozenObjects(This,moduleID,ppEnum)       \
+    ( (This)->lpVtbl -> EnumModuleFrozenObjects(This,moduleID,ppEnum) ) 
+
+#define ICorProfilerInfo10_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)  \
+    ( (This)->lpVtbl -> GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData) ) 
+
+#define ICorProfilerInfo10_GetBoxClassLayout(This,classId,pBufferOffset)       \
+    ( (This)->lpVtbl -> GetBoxClassLayout(This,classId,pBufferOffset) ) 
+
+#define ICorProfilerInfo10_GetThreadAppDomain(This,threadId,pAppDomainId)      \
+    ( (This)->lpVtbl -> GetThreadAppDomain(This,threadId,pAppDomainId) ) 
+
+#define ICorProfilerInfo10_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)      \
+    ( (This)->lpVtbl -> GetRVAStaticAddress(This,classId,fieldToken,ppAddress) ) 
+
+#define ICorProfilerInfo10_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)    \
+    ( (This)->lpVtbl -> GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress) ) 
+
+#define ICorProfilerInfo10_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)  \
+    ( (This)->lpVtbl -> GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress) ) 
+
+#define ICorProfilerInfo10_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress)        \
+    ( (This)->lpVtbl -> GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) ) 
+
+#define ICorProfilerInfo10_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)      \
+    ( (This)->lpVtbl -> GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo) ) 
+
+#define ICorProfilerInfo10_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges)       \
+    ( (This)->lpVtbl -> GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) ) 
+
+#define ICorProfilerInfo10_GetObjectGeneration(This,objectId,range)    \
+    ( (This)->lpVtbl -> GetObjectGeneration(This,objectId,range) ) 
+
+#define ICorProfilerInfo10_GetNotifiedExceptionClauseInfo(This,pinfo)  \
+    ( (This)->lpVtbl -> GetNotifiedExceptionClauseInfo(This,pinfo) ) 
+
+
+#define ICorProfilerInfo10_EnumJITedFunctions(This,ppEnum)     \
+    ( (This)->lpVtbl -> EnumJITedFunctions(This,ppEnum) ) 
+
+#define ICorProfilerInfo10_RequestProfilerDetach(This,dwExpectedCompletionMilliseconds)        \
+    ( (This)->lpVtbl -> RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) ) 
+
+#define ICorProfilerInfo10_SetFunctionIDMapper2(This,pFunc,clientData) \
+    ( (This)->lpVtbl -> SetFunctionIDMapper2(This,pFunc,clientData) ) 
+
+#define ICorProfilerInfo10_GetStringLayout2(This,pStringLengthOffset,pBufferOffset)    \
+    ( (This)->lpVtbl -> GetStringLayout2(This,pStringLengthOffset,pBufferOffset) ) 
+
+#define ICorProfilerInfo10_SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3)    \
+    ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3) ) 
+
+#define ICorProfilerInfo10_SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo)    \
+    ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo) ) 
+
+#define ICorProfilerInfo10_GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo)     \
+    ( (This)->lpVtbl -> GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo) ) 
+
+#define ICorProfilerInfo10_GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange)      \
+    ( (This)->lpVtbl -> GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange) ) 
+
+#define ICorProfilerInfo10_GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo)        \
+    ( (This)->lpVtbl -> GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) ) 
+
+#define ICorProfilerInfo10_EnumModules(This,ppEnum)    \
+    ( (This)->lpVtbl -> EnumModules(This,ppEnum) ) 
+
+#define ICorProfilerInfo10_GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString)     \
+    ( (This)->lpVtbl -> GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString) ) 
+
+#define ICorProfilerInfo10_GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress)     \
+    ( (This)->lpVtbl -> GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress) ) 
+
+#define ICorProfilerInfo10_GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds)      \
+    ( (This)->lpVtbl -> GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds) ) 
+
+#define ICorProfilerInfo10_GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags)  \
+    ( (This)->lpVtbl -> GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags) ) 
+
+
+#define ICorProfilerInfo10_EnumThreads(This,ppEnum)    \
+    ( (This)->lpVtbl -> EnumThreads(This,ppEnum) ) 
+
+#define ICorProfilerInfo10_InitializeCurrentThread(This)       \
+    ( (This)->lpVtbl -> InitializeCurrentThread(This) ) 
+
+#define ICorProfilerInfo10_RequestReJIT(This,cFunctions,moduleIds,methodIds)   \
+    ( (This)->lpVtbl -> RequestReJIT(This,cFunctions,moduleIds,methodIds) ) 
+
+#define ICorProfilerInfo10_RequestRevert(This,cFunctions,moduleIds,methodIds,status)   \
+    ( (This)->lpVtbl -> RequestRevert(This,cFunctions,moduleIds,methodIds,status) ) 
+
+#define ICorProfilerInfo10_GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos)      \
+    ( (This)->lpVtbl -> GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos) ) 
+
+#define ICorProfilerInfo10_GetFunctionFromIP2(This,ip,pFunctionId,pReJitId)    \
+    ( (This)->lpVtbl -> GetFunctionFromIP2(This,ip,pFunctionId,pReJitId) ) 
+
+#define ICorProfilerInfo10_GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds)  \
+    ( (This)->lpVtbl -> GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds) ) 
+
+#define ICorProfilerInfo10_GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map)       \
+    ( (This)->lpVtbl -> GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map) ) 
+
+#define ICorProfilerInfo10_EnumJITedFunctions2(This,ppEnum)    \
+    ( (This)->lpVtbl -> EnumJITedFunctions2(This,ppEnum) ) 
+
+#define ICorProfilerInfo10_GetObjectSize2(This,objectId,pcSize)        \
+    ( (This)->lpVtbl -> GetObjectSize2(This,objectId,pcSize) ) 
+
+
+#define ICorProfilerInfo10_GetEventMask2(This,pdwEventsLow,pdwEventsHigh)      \
+    ( (This)->lpVtbl -> GetEventMask2(This,pdwEventsLow,pdwEventsHigh) ) 
+
+#define ICorProfilerInfo10_SetEventMask2(This,dwEventsLow,dwEventsHigh)        \
+    ( (This)->lpVtbl -> SetEventMask2(This,dwEventsLow,dwEventsHigh) ) 
+
+
+#define ICorProfilerInfo10_EnumNgenModuleMethodsInliningThisMethod(This,inlinersModuleId,inlineeModuleId,inlineeMethodId,incompleteData,ppEnum)        \
+    ( (This)->lpVtbl -> EnumNgenModuleMethodsInliningThisMethod(This,inlinersModuleId,inlineeModuleId,inlineeMethodId,incompleteData,ppEnum) ) 
+
+
+#define ICorProfilerInfo10_ApplyMetaData(This,moduleId)        \
+    ( (This)->lpVtbl -> ApplyMetaData(This,moduleId) ) 
+
+#define ICorProfilerInfo10_GetInMemorySymbolsLength(This,moduleId,pCountSymbolBytes)   \
+    ( (This)->lpVtbl -> GetInMemorySymbolsLength(This,moduleId,pCountSymbolBytes) ) 
+
+#define ICorProfilerInfo10_ReadInMemorySymbols(This,moduleId,symbolsReadOffset,pSymbolBytes,countSymbolBytes,pCountSymbolBytesRead)    \
+    ( (This)->lpVtbl -> ReadInMemorySymbols(This,moduleId,symbolsReadOffset,pSymbolBytes,countSymbolBytes,pCountSymbolBytesRead) ) 
+
+
+#define ICorProfilerInfo10_IsFunctionDynamic(This,functionId,isDynamic)        \
+    ( (This)->lpVtbl -> IsFunctionDynamic(This,functionId,isDynamic) ) 
+
+#define ICorProfilerInfo10_GetFunctionFromIP3(This,ip,functionId,pReJitId)     \
+    ( (This)->lpVtbl -> GetFunctionFromIP3(This,ip,functionId,pReJitId) ) 
+
+#define ICorProfilerInfo10_GetDynamicFunctionInfo(This,functionId,moduleId,ppvSig,pbSig,cchName,pcchName,wszName)      \
+    ( (This)->lpVtbl -> GetDynamicFunctionInfo(This,functionId,moduleId,ppvSig,pbSig,cchName,pcchName,wszName) ) 
+
+
+#define ICorProfilerInfo10_GetNativeCodeStartAddresses(This,functionID,reJitId,cCodeStartAddresses,pcCodeStartAddresses,codeStartAddresses)    \
+    ( (This)->lpVtbl -> GetNativeCodeStartAddresses(This,functionID,reJitId,cCodeStartAddresses,pcCodeStartAddresses,codeStartAddresses) ) 
+
+#define ICorProfilerInfo10_GetILToNativeMapping3(This,pNativeCodeStartAddress,cMap,pcMap,map)  \
+    ( (This)->lpVtbl -> GetILToNativeMapping3(This,pNativeCodeStartAddress,cMap,pcMap,map) ) 
+
+#define ICorProfilerInfo10_GetCodeInfo4(This,pNativeCodeStartAddress,cCodeInfos,pcCodeInfos,codeInfos) \
+    ( (This)->lpVtbl -> GetCodeInfo4(This,pNativeCodeStartAddress,cCodeInfos,pcCodeInfos,codeInfos) ) 
+
+
+#define ICorProfilerInfo10_GetObjectReferences(This,objectId,cNumReferences,pcNumReferences,references,offsets)        \
+    ( (This)->lpVtbl -> GetObjectReferences(This,objectId,cNumReferences,pcNumReferences,references,offsets) ) 
+
+#endif /* COBJMACROS */
+
+
+#endif         /* C style interface */
+
+
+
+
+#endif         /* __ICorProfilerInfo10_INTERFACE_DEFINED__ */
+
+
+#ifndef __ICorProfilerMethodEnum_INTERFACE_DEFINED__
+#define __ICorProfilerMethodEnum_INTERFACE_DEFINED__
+
+/* interface ICorProfilerMethodEnum */
+/* [local][unique][uuid][object] */ 
+
+
+EXTERN_C const IID IID_ICorProfilerMethodEnum;
+
+#if defined(__cplusplus) && !defined(CINTERFACE)
+    
+    MIDL_INTERFACE("FCCEE788-0088-454B-A811-C99F298D1942")
+    ICorProfilerMethodEnum : public IUnknown
+    {
+    public:
+        virtual HRESULT STDMETHODCALLTYPE Skip( 
+            /* [in] */ ULONG celt) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE Clone( 
+            /* [out] */ ICorProfilerMethodEnum **ppEnum) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE GetCount( 
+            /* [out] */ ULONG *pcelt) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE Next( 
+            /* [in] */ ULONG celt,
+            /* [length_is][size_is][out] */ COR_PRF_METHOD elements[  ],
+            /* [out] */ ULONG *pceltFetched) = 0;
+        
+    };
+    
+    
+#else  /* C style interface */
+
+    typedef struct ICorProfilerMethodEnumVtbl
+    {
+        BEGIN_INTERFACE
+        
+        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
+            ICorProfilerMethodEnum * This,
+            /* [in] */ REFIID riid,
+            /* [annotation][iid_is][out] */ 
+            _COM_Outptr_  void **ppvObject);
+        
+        ULONG ( STDMETHODCALLTYPE *AddRef )( 
+            ICorProfilerMethodEnum * This);
+        
+        ULONG ( STDMETHODCALLTYPE *Release )( 
+            ICorProfilerMethodEnum * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *Skip )( 
+            ICorProfilerMethodEnum * This,
+            /* [in] */ ULONG celt);
+        
+        HRESULT ( STDMETHODCALLTYPE *Reset )( 
+            ICorProfilerMethodEnum * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *Clone )( 
+            ICorProfilerMethodEnum * This,
+            /* [out] */ ICorProfilerMethodEnum **ppEnum);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetCount )( 
+            ICorProfilerMethodEnum * This,
+            /* [out] */ ULONG *pcelt);
+        
+        HRESULT ( STDMETHODCALLTYPE *Next )( 
+            ICorProfilerMethodEnum * This,
+            /* [in] */ ULONG celt,
+            /* [length_is][size_is][out] */ COR_PRF_METHOD elements[  ],
             /* [out] */ ULONG *pceltFetched);
         
         END_INTERFACE
-    } ICorProfilerThreadEnumVtbl;
+    } ICorProfilerMethodEnumVtbl;
 
-    interface ICorProfilerThreadEnum
+    interface ICorProfilerMethodEnum
     {
-        CONST_VTBL struct ICorProfilerThreadEnumVtbl *lpVtbl;
+        CONST_VTBL struct ICorProfilerMethodEnumVtbl *lpVtbl;
     };
 
     
@@ -15376,91 +16186,121 @@ EXTERN_C const IID IID_ICorProfilerThreadEnum;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerThreadEnum_QueryInterface(This,riid,ppvObject)  \
+#define ICorProfilerMethodEnum_QueryInterface(This,riid,ppvObject)     \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerThreadEnum_AddRef(This) \
+#define ICorProfilerMethodEnum_AddRef(This)    \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerThreadEnum_Release(This)    \
+#define ICorProfilerMethodEnum_Release(This)   \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerThreadEnum_Skip(This,celt)  \
+#define ICorProfilerMethodEnum_Skip(This,celt) \
     ( (This)->lpVtbl -> Skip(This,celt) ) 
 
-#define ICorProfilerThreadEnum_Reset(This)  \
+#define ICorProfilerMethodEnum_Reset(This)     \
     ( (This)->lpVtbl -> Reset(This) ) 
 
-#define ICorProfilerThreadEnum_Clone(This,ppEnum)   \
+#define ICorProfilerMethodEnum_Clone(This,ppEnum)      \
     ( (This)->lpVtbl -> Clone(This,ppEnum) ) 
 
-#define ICorProfilerThreadEnum_GetCount(This,pcelt) \
+#define ICorProfilerMethodEnum_GetCount(This,pcelt)    \
     ( (This)->lpVtbl -> GetCount(This,pcelt) ) 
 
-#define ICorProfilerThreadEnum_Next(This,celt,ids,pceltFetched) \
-    ( (This)->lpVtbl -> Next(This,celt,ids,pceltFetched) ) 
+#define ICorProfilerMethodEnum_Next(This,celt,elements,pceltFetched)   \
+    ( (This)->lpVtbl -> Next(This,celt,elements,pceltFetched) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerThreadEnum_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerMethodEnum_INTERFACE_DEFINED__ */
 
 
-#ifndef __ICorProfilerAssemblyReferenceProvider_INTERFACE_DEFINED__
-#define __ICorProfilerAssemblyReferenceProvider_INTERFACE_DEFINED__
+#ifndef __ICorProfilerThreadEnum_INTERFACE_DEFINED__
+#define __ICorProfilerThreadEnum_INTERFACE_DEFINED__
 
-/* interface ICorProfilerAssemblyReferenceProvider */
+/* interface ICorProfilerThreadEnum */
 /* [local][unique][uuid][object] */ 
 
 
-EXTERN_C const IID IID_ICorProfilerAssemblyReferenceProvider;
+EXTERN_C const IID IID_ICorProfilerThreadEnum;
 
 #if defined(__cplusplus) && !defined(CINTERFACE)
     
-    MIDL_INTERFACE("66A78C24-2EEF-4F65-B45F-DD1D8038BF3C")
-    ICorProfilerAssemblyReferenceProvider : public IUnknown
+    MIDL_INTERFACE("571194f7-25ed-419f-aa8b-7016b3159701")
+    ICorProfilerThreadEnum : public IUnknown
     {
     public:
-        virtual HRESULT STDMETHODCALLTYPE AddAssemblyReference( 
-            const COR_PRF_ASSEMBLY_REFERENCE_INFO *pAssemblyRefInfo) = 0;
+        virtual HRESULT STDMETHODCALLTYPE Skip( 
+            /* [in] */ ULONG celt) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE Clone( 
+            /* [out] */ ICorProfilerThreadEnum **ppEnum) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE GetCount( 
+            /* [out] */ ULONG *pcelt) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE Next( 
+            /* [in] */ ULONG celt,
+            /* [length_is][size_is][out] */ ThreadID ids[  ],
+            /* [out] */ ULONG *pceltFetched) = 0;
         
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
-    typedef struct ICorProfilerAssemblyReferenceProviderVtbl
+    typedef struct ICorProfilerThreadEnumVtbl
     {
         BEGIN_INTERFACE
         
         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICorProfilerAssemblyReferenceProvider * This,
+            ICorProfilerThreadEnum * This,
             /* [in] */ REFIID riid,
             /* [annotation][iid_is][out] */ 
             _COM_Outptr_  void **ppvObject);
         
         ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICorProfilerAssemblyReferenceProvider * This);
+            ICorProfilerThreadEnum * This);
         
         ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICorProfilerAssemblyReferenceProvider * This);
+            ICorProfilerThreadEnum * This);
         
-        HRESULT ( STDMETHODCALLTYPE *AddAssemblyReference )( 
-            ICorProfilerAssemblyReferenceProvider * This,
-            const COR_PRF_ASSEMBLY_REFERENCE_INFO *pAssemblyRefInfo);
+        HRESULT ( STDMETHODCALLTYPE *Skip )( 
+            ICorProfilerThreadEnum * This,
+            /* [in] */ ULONG celt);
+        
+        HRESULT ( STDMETHODCALLTYPE *Reset )( 
+            ICorProfilerThreadEnum * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *Clone )( 
+            ICorProfilerThreadEnum * This,
+            /* [out] */ ICorProfilerThreadEnum **ppEnum);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetCount )( 
+            ICorProfilerThreadEnum * This,
+            /* [out] */ ULONG *pcelt);
+        
+        HRESULT ( STDMETHODCALLTYPE *Next )( 
+            ICorProfilerThreadEnum * This,
+            /* [in] */ ULONG celt,
+            /* [length_is][size_is][out] */ ThreadID ids[  ],
+            /* [out] */ ULONG *pceltFetched);
         
         END_INTERFACE
-    } ICorProfilerAssemblyReferenceProviderVtbl;
+    } ICorProfilerThreadEnumVtbl;
 
-    interface ICorProfilerAssemblyReferenceProvider
+    interface ICorProfilerThreadEnum
     {
-        CONST_VTBL struct ICorProfilerAssemblyReferenceProviderVtbl *lpVtbl;
+        CONST_VTBL struct ICorProfilerThreadEnumVtbl *lpVtbl;
     };
 
     
@@ -15468,89 +16308,91 @@ EXTERN_C const IID IID_ICorProfilerAssemblyReferenceProvider;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerAssemblyReferenceProvider_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerThreadEnum_QueryInterface(This,riid,ppvObject)     \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerAssemblyReferenceProvider_AddRef(This)  \
+#define ICorProfilerThreadEnum_AddRef(This)    \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerAssemblyReferenceProvider_Release(This) \
+#define ICorProfilerThreadEnum_Release(This)   \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerAssemblyReferenceProvider_AddAssemblyReference(This,pAssemblyRefInfo)   \
-    ( (This)->lpVtbl -> AddAssemblyReference(This,pAssemblyRefInfo) ) 
+#define ICorProfilerThreadEnum_Skip(This,celt) \
+    ( (This)->lpVtbl -> Skip(This,celt) ) 
+
+#define ICorProfilerThreadEnum_Reset(This)     \
+    ( (This)->lpVtbl -> Reset(This) ) 
+
+#define ICorProfilerThreadEnum_Clone(This,ppEnum)      \
+    ( (This)->lpVtbl -> Clone(This,ppEnum) ) 
+
+#define ICorProfilerThreadEnum_GetCount(This,pcelt)    \
+    ( (This)->lpVtbl -> GetCount(This,pcelt) ) 
+
+#define ICorProfilerThreadEnum_Next(This,celt,ids,pceltFetched)        \
+    ( (This)->lpVtbl -> Next(This,celt,ids,pceltFetched) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICorProfilerAssemblyReferenceProvider_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerThreadEnum_INTERFACE_DEFINED__ */
 
 
-#ifndef __ICLRProfiling_INTERFACE_DEFINED__
-#define __ICLRProfiling_INTERFACE_DEFINED__
+#ifndef __ICorProfilerAssemblyReferenceProvider_INTERFACE_DEFINED__
+#define __ICorProfilerAssemblyReferenceProvider_INTERFACE_DEFINED__
 
-/* interface ICLRProfiling */
-/* [object][local][helpstring][version][uuid] */ 
+/* interface ICorProfilerAssemblyReferenceProvider */
+/* [local][unique][uuid][object] */ 
 
 
-EXTERN_C const IID IID_ICLRProfiling;
+EXTERN_C const IID IID_ICorProfilerAssemblyReferenceProvider;
 
 #if defined(__cplusplus) && !defined(CINTERFACE)
     
-    MIDL_INTERFACE("B349ABE3-B56F-4689-BFCD-76BF39D888EA")
-    ICLRProfiling : public IUnknown
+    MIDL_INTERFACE("66A78C24-2EEF-4F65-B45F-DD1D8038BF3C")
+    ICorProfilerAssemblyReferenceProvider : public IUnknown
     {
     public:
-        virtual HRESULT STDMETHODCALLTYPE AttachProfiler( 
-            /* [in] */ DWORD dwProfileeProcessID,
-            /* [in] */ DWORD dwMillisecondsMax,
-            /* [in] */ const CLSID *pClsidProfiler,
-            /* [in] */ LPCWSTR wszProfilerPath,
-            /* [size_is][in] */ void *pvClientData,
-            /* [in] */ UINT cbClientData) = 0;
+        virtual HRESULT STDMETHODCALLTYPE AddAssemblyReference( 
+            const COR_PRF_ASSEMBLY_REFERENCE_INFO *pAssemblyRefInfo) = 0;
         
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
-    typedef struct ICLRProfilingVtbl
+    typedef struct ICorProfilerAssemblyReferenceProviderVtbl
     {
         BEGIN_INTERFACE
         
         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRProfiling * This,
+            ICorProfilerAssemblyReferenceProvider * This,
             /* [in] */ REFIID riid,
             /* [annotation][iid_is][out] */ 
             _COM_Outptr_  void **ppvObject);
         
         ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRProfiling * This);
+            ICorProfilerAssemblyReferenceProvider * This);
         
         ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRProfiling * This);
+            ICorProfilerAssemblyReferenceProvider * This);
         
-        HRESULT ( STDMETHODCALLTYPE *AttachProfiler )( 
-            ICLRProfiling * This,
-            /* [in] */ DWORD dwProfileeProcessID,
-            /* [in] */ DWORD dwMillisecondsMax,
-            /* [in] */ const CLSID *pClsidProfiler,
-            /* [in] */ LPCWSTR wszProfilerPath,
-            /* [size_is][in] */ void *pvClientData,
-            /* [in] */ UINT cbClientData);
+        HRESULT ( STDMETHODCALLTYPE *AddAssemblyReference )( 
+            ICorProfilerAssemblyReferenceProvider * This,
+            const COR_PRF_ASSEMBLY_REFERENCE_INFO *pAssemblyRefInfo);
         
         END_INTERFACE
-    } ICLRProfilingVtbl;
+    } ICorProfilerAssemblyReferenceProviderVtbl;
 
-    interface ICLRProfiling
+    interface ICorProfilerAssemblyReferenceProvider
     {
-        CONST_VTBL struct ICLRProfilingVtbl *lpVtbl;
+        CONST_VTBL struct ICorProfilerAssemblyReferenceProviderVtbl *lpVtbl;
     };
 
     
@@ -15558,28 +16400,28 @@ EXTERN_C const IID IID_ICLRProfiling;
 #ifdef COBJMACROS
 
 
-#define ICLRProfiling_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerAssemblyReferenceProvider_QueryInterface(This,riid,ppvObject)      \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICLRProfiling_AddRef(This)  \
+#define ICorProfilerAssemblyReferenceProvider_AddRef(This)     \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICLRProfiling_Release(This) \
+#define ICorProfilerAssemblyReferenceProvider_Release(This)    \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICLRProfiling_AttachProfiler(This,dwProfileeProcessID,dwMillisecondsMax,pClsidProfiler,wszProfilerPath,pvClientData,cbClientData)   \
-    ( (This)->lpVtbl -> AttachProfiler(This,dwProfileeProcessID,dwMillisecondsMax,pClsidProfiler,wszProfilerPath,pvClientData,cbClientData) ) 
+#define ICorProfilerAssemblyReferenceProvider_AddAssemblyReference(This,pAssemblyRefInfo)      \
+    ( (This)->lpVtbl -> AddAssemblyReference(This,pAssemblyRefInfo) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
+#endif         /* C style interface */
 
 
 
 
-#endif  /* __ICLRProfiling_INTERFACE_DEFINED__ */
+#endif         /* __ICorProfilerAssemblyReferenceProvider_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICLRProfiling_INTERFACE_DEFINED__
index 7115e88..31885a4 100644 (file)
@@ -254,10 +254,6 @@ ASMCONSTANTS_C_ASSERT(OFFSETOF__InterfaceInfo_t__m_pMethodTable
 ASMCONSTANTS_C_ASSERT(SIZEOF__InterfaceInfo_t
                     == sizeof(InterfaceInfo_t));
 
-#define               OFFSETOF__DomainLocalBlock__m_pModuleSlots   0x8 
-ASMCONSTANTS_C_ASSERT(OFFSETOF__DomainLocalBlock__m_pModuleSlots
-                    == offsetof(DomainLocalBlock, m_pModuleSlots));
-
 #define               OFFSETOF__DomainLocalModule__m_pDataBlob   0x030
 ASMCONSTANTS_C_ASSERT(OFFSETOF__DomainLocalModule__m_pDataBlob  
                     == offsetof(DomainLocalModule, m_pDataBlob));
index c106d9d..fc5d73f 100644 (file)
@@ -157,7 +157,7 @@ BOOL CompareCLSID(UPTR u1, UPTR u2)
 
 #ifndef CROSSGEN_COMPILE
 // Constructor for the LargeHeapHandleBucket class.
-LargeHeapHandleBucket::LargeHeapHandleBucket(LargeHeapHandleBucket *pNext, DWORD Size, BaseDomain *pDomain, BOOL bCrossAD)
+LargeHeapHandleBucket::LargeHeapHandleBucket(LargeHeapHandleBucket *pNext, DWORD Size, BaseDomain *pDomain)
 : m_pNext(pNext)
 , m_ArraySize(Size)
 , m_CurrentPos(0)
@@ -176,31 +176,8 @@ LargeHeapHandleBucket::LargeHeapHandleBucket(LargeHeapHandleBucket *pNext, DWORD
     PTRARRAYREF HandleArrayObj;
 
     // Allocate the array in the large object heap.
-    if (!bCrossAD) 
-    {
-        OVERRIDE_TYPE_LOAD_LEVEL_LIMIT(CLASS_LOADED);
-        HandleArrayObj = (PTRARRAYREF)AllocateObjectArray(Size, g_pObjectClass, TRUE);
-    }
-    else 
-    {
-        // During AD creation we don't want to assign the handle array to the currently running AD but
-        // to the AD being created.  Ensure that AllocateArrayEx doesn't set the AD and then set it here.
-        AppDomain *pAD = pDomain->AsAppDomain();
-        _ASSERTE(pAD);
-        _ASSERTE(pAD->IsBeingCreated());
-
-        OBJECTREF array;
-        {
-            OVERRIDE_TYPE_LOAD_LEVEL_LIMIT(CLASS_LOADED);
-            array = AllocateArrayEx(
-                ClassLoader::LoadArrayTypeThrowing(g_pObjectClass),
-                (INT32 *)(&Size),
-                1,
-                TRUE);
-        }
-
-        HandleArrayObj = (PTRARRAYREF)array;
-    }
+    OVERRIDE_TYPE_LOAD_LEVEL_LIMIT(CLASS_LOADED);
+    HandleArrayObj = (PTRARRAYREF)AllocateObjectArray(Size, g_pObjectClass, TRUE);
 
     // Retrieve the pointer to the data inside the array. This is legal since the array
     // is located in the large object heap and is guaranteed not to move.
@@ -404,31 +381,19 @@ LargeHeapHandleTable::~LargeHeapHandleTable()
 // Third case:  Releases for use in a string literal entry
 //
 // CrstHolder gch(&(SystemDomain::GetGlobalStringLiteralMap()->m_HashTableCrstGlobal));
-// taken in the AppDomainStringLiteralMap functions below protects the 4 ways that this can happen
+// taken in the AppDomainStringLiteralMap functions below protects the 3 ways that this can happen
 //
 // case 3a)
 //
-// in an appdomain unload case
-//
-// AppDomainStringLiteralMap::~AppDomainStringLiteralMap() takes the lock then
-// leads to calls to
-//     StringLiteralEntry::Release
-//    which leads to
-//        SystemDomain::GetGlobalStringLiteralMapNoCreate()->RemoveStringLiteralEntry(this)
-//        which leads to
-//            m_LargeHeapHandleTable.ReleaseHandles((OBJECTREF*)pObjRef, 1);
-//
-// case 3b)
-//
 // AppDomainStringLiteralMap::GetStringLiteral() can call StringLiteralEntry::Release in some
 // error cases, leading to the same stack as above
 //
-// case 3c)
+// case 3b)
 //
 // AppDomainStringLiteralMap::GetInternedString() can call StringLiteralEntry::Release in some
 // error cases, leading to the same stack as above
 //
-// case 3d)
+// case 3c)
 //
 // The same code paths in 3b and 3c and also end up releasing if an exception is thrown
 // during their processing.  Both these paths use a StringLiteralEntryHolder to assist in cleanup,
@@ -437,7 +402,7 @@ LargeHeapHandleTable::~LargeHeapHandleTable()
 
 
 // Allocate handles from the large heap handle table.
-OBJECTREF* LargeHeapHandleTable::AllocateHandles(DWORD nRequested, BOOL bCrossAD)
+OBJECTREF* LargeHeapHandleTable::AllocateHandles(DWORD nRequested)
 {
     CONTRACTL
     {
@@ -507,7 +472,7 @@ OBJECTREF* LargeHeapHandleTable::AllocateHandles(DWORD nRequested, BOOL bCrossAD
         // We need a block big enough to hold the requested handles
         DWORD NewBucketSize = max(m_NextBucketSize, nRequested);
 
-        m_pHead = new LargeHeapHandleBucket(m_pHead, NewBucketSize, m_pDomain, bCrossAD);
+        m_pHead = new LargeHeapHandleBucket(m_pHead, NewBucketSize, m_pDomain);
 
         m_NextBucketSize = min(m_NextBucketSize * 2, MAX_BUCKETSIZE);
     }
@@ -982,7 +947,7 @@ void AppDomain::ReleaseFiles()
 } // AppDomain::ReleaseFiles
 
 
-OBJECTREF* BaseDomain::AllocateObjRefPtrsInLargeTable(int nRequested, OBJECTREF** ppLazyAllocate, BOOL bCrossAD)
+OBJECTREF* BaseDomain::AllocateObjRefPtrsInLargeTable(int nRequested, OBJECTREF** ppLazyAllocate)
 {
     CONTRACTL
     {
@@ -1016,7 +981,7 @@ OBJECTREF* BaseDomain::AllocateObjRefPtrsInLargeTable(int nRequested, OBJECTREF*
             InitLargeHeapHandleTable();
 
         // Allocate the handles.
-        OBJECTREF* result = m_pLargeHeapHandleTable->AllocateHandles(nRequested, bCrossAD);
+        OBJECTREF* result = m_pLargeHeapHandleTable->AllocateHandles(nRequested);
 
         if (ppLazyAllocate)
         {
@@ -3114,8 +3079,6 @@ void AppDomain::Init()
 
     m_MemoryPressure = 0;
 
-    m_sDomainLocalBlock.Init(this);
-
 #ifndef CROSSGEN_COMPILE
 
 #ifdef FEATURE_APPDOMAIN_RESOURCE_MONITORING
@@ -4423,7 +4386,7 @@ CHECK AppDomain::CheckValidModule(Module * pModule)
     }
     CONTRACTL_END;
 
-    if (pModule->FindDomainFile(this) != NULL)
+    if (pModule->GetDomainFile() != NULL)
         CHECK_OK;
 
     CHECK_OK;
@@ -6258,64 +6221,6 @@ void DomainLocalModule::PopulateClass(MethodTable *pMT)
 }
 #endif // CROSSGEN_COMPILE
 
-void DomainLocalBlock::EnsureModuleIndex(ModuleIndex index)
-{
-    CONTRACTL
-    {
-        THROWS;
-        GC_TRIGGERS;
-        MODE_ANY;
-        INJECT_FAULT(COMPlusThrowOM(););
-        // Assumes BaseDomain::DomainLocalBlockLockHolder is taken
-        PRECONDITION(m_pDomain->OwnDomainLocalBlockLock());
-    }
-    CONTRACTL_END;
-
-    if (m_aModuleIndices > index.m_dwIndex)
-    {
-        _ASSERTE(m_pModuleSlots != NULL);
-        return;
-    }
-
-    SIZE_T aModuleIndices = max(16, m_aModuleIndices);
-    while (aModuleIndices <= index.m_dwIndex)
-    {
-        aModuleIndices *= 2;
-    }
-
-    PTR_DomainLocalModule* pNewModuleSlots = (PTR_DomainLocalModule*) (void*)m_pDomain->GetHighFrequencyHeap()->AllocMem(S_SIZE_T(sizeof(PTR_DomainLocalModule)) * S_SIZE_T(aModuleIndices));
-
-    memcpy(pNewModuleSlots, m_pModuleSlots, sizeof(SIZE_T)*m_aModuleIndices);
-
-    // Note: Memory allocated on loader heap is zero filled
-    // memset(pNewModuleSlots + m_aModuleIndices, 0 , (aModuleIndices - m_aModuleIndices)*sizeof(PTR_DomainLocalModule) );
-
-    // Commit new table. The lock-free helpers depend on the order.
-    MemoryBarrier();
-    m_pModuleSlots = pNewModuleSlots;
-    MemoryBarrier();
-    m_aModuleIndices = aModuleIndices;
-
-}
-
-void DomainLocalBlock::SetModuleSlot(ModuleIndex index, PTR_DomainLocalModule pLocalModule)
-{
-    // Need to synchronize with table growth in this domain
-    BaseDomain::DomainLocalBlockLockHolder lh(m_pDomain);
-
-    EnsureModuleIndex(index);
-
-    _ASSERTE(index.m_dwIndex < m_aModuleIndices);
-
-    // We would like this assert here, unfortunately, loading a module in this appdomain can fail
-    // after here  and we will keep the module around and reuse the slot when we retry (if
-    // the failure happened due to a transient error, such as OOM). In that case the slot wont
-    // be null.
-    //_ASSERTE(m_pModuleSlots[index.m_dwIndex] == 0);
-
-    m_pModuleSlots[index.m_dwIndex] = pLocalModule;
-}
-
 #ifndef CROSSGEN_COMPILE
 
 DomainAssembly* AppDomain::RaiseTypeResolveEventThrowing(DomainAssembly* pAssembly, LPCSTR szName, ASSEMBLYREF *pResultingAssemblyRef)
@@ -7076,28 +6981,6 @@ DomainLocalModule::EnumMemoryRegions(CLRDataEnumMemoryFlags flags)
 }
 
 void
-DomainLocalBlock::EnumMemoryRegions(CLRDataEnumMemoryFlags flags)
-{
-    SUPPORTS_DAC;
-    // Block is contained in AppDomain, don't enum this.
-
-    if (m_pModuleSlots.IsValid())
-    {
-        DacEnumMemoryRegion(dac_cast<TADDR>(m_pModuleSlots),
-                            m_aModuleIndices * sizeof(TADDR));
-
-        for (SIZE_T i = 0; i < m_aModuleIndices; i++)
-        {
-            PTR_DomainLocalModule domMod = m_pModuleSlots[i];
-            if (domMod.IsValid())
-            {
-                domMod->EnumMemoryRegions(flags);
-            }
-        }
-    }
-}
-
-void
 BaseDomain::EnumMemoryRegions(CLRDataEnumMemoryFlags flags,
                               bool enumThis)
 {
@@ -7142,8 +7025,6 @@ AppDomain::EnumMemoryRegions(CLRDataEnumMemoryFlags flags,
     {
         pDomainAssembly->EnumMemoryRegions(flags);
     }
-
-    m_sDomainLocalBlock.EnumMemoryRegions(flags);
 }
 
 void
index edf2c0b..5bc45d7 100644 (file)
@@ -483,97 +483,6 @@ public:
 #define OFFSETOF__DomainLocalModule__NormalDynamicEntry__m_pDataBlob TARGET_POINTER_SIZE /* m_pGCStatics */
 #endif
 
-typedef DPTR(class DomainLocalBlock) PTR_DomainLocalBlock;
-class DomainLocalBlock
-{
-    friend class ClrDataAccess;
-    friend class CheckAsmOffsets;
-
-private:
-    PTR_AppDomain          m_pDomain;
-    DPTR(PTR_DomainLocalModule) m_pModuleSlots;
-    SIZE_T                 m_aModuleIndices;               // Module entries the shared block has allocated
-
-public: // used by code generators
-    static SIZE_T GetOffsetOfModuleSlotsPointer() { return offsetof(DomainLocalBlock, m_pModuleSlots);}
-
-public:
-
-#ifndef DACCESS_COMPILE
-    DomainLocalBlock()
-      : m_pDomain(NULL),  m_pModuleSlots(NULL), m_aModuleIndices(0) {}
-
-    void    EnsureModuleIndex(ModuleIndex index);
-
-    void Init(AppDomain *pDomain) { LIMITED_METHOD_CONTRACT; m_pDomain = pDomain; }
-#endif
-
-    void SetModuleSlot(ModuleIndex index, PTR_DomainLocalModule pLocalModule);
-
-    FORCEINLINE PTR_DomainLocalModule GetModuleSlot(ModuleIndex index)
-    {
-        WRAPPER_NO_CONTRACT;
-        SUPPORTS_DAC;
-        _ASSERTE(index.m_dwIndex < m_aModuleIndices);
-        return m_pModuleSlots[index.m_dwIndex];
-    }
-
-    inline PTR_DomainLocalModule GetModuleSlot(MethodTable* pMT)
-    {
-        WRAPPER_NO_CONTRACT;
-        return GetModuleSlot(pMT->GetModuleForStatics()->GetModuleIndex());
-    }
-
-    DomainFile* TryGetDomainFile(ModuleIndex index)
-    {
-        WRAPPER_NO_CONTRACT;
-        SUPPORTS_DAC;
-
-        // the publishing of m_aModuleIndices and m_pModuleSlots is dependent
-        // on the order of accesses; we must ensure that we read from m_aModuleIndices
-        // before m_pModuleSlots.
-        if (index.m_dwIndex < m_aModuleIndices)
-        {
-            MemoryBarrier();
-            if (m_pModuleSlots[index.m_dwIndex])
-            {
-                return m_pModuleSlots[index.m_dwIndex]->GetDomainFile();
-            }
-        }
-
-        return NULL;
-    }
-
-    DomainFile* GetDomainFile(SIZE_T ModuleID)
-    {
-        WRAPPER_NO_CONTRACT;
-        ModuleIndex index = Module::IDToIndex(ModuleID);
-        _ASSERTE(index.m_dwIndex < m_aModuleIndices);
-        return m_pModuleSlots[index.m_dwIndex]->GetDomainFile();
-    }
-
-#ifndef DACCESS_COMPILE
-    void SetDomainFile(ModuleIndex index, DomainFile* pDomainFile)
-    {
-        WRAPPER_NO_CONTRACT;
-        _ASSERTE(index.m_dwIndex < m_aModuleIndices);
-        m_pModuleSlots[index.m_dwIndex]->SetDomainFile(pDomainFile);
-    }
-#endif
-
-#ifdef DACCESS_COMPILE
-    void EnumMemoryRegions(CLRDataEnumMemoryFlags flags);
-#endif
-
-
-private:
-
-    //
-    // Low level routines to get & set class entries
-    //
-
-};
-
 #ifdef _MSC_VER
 #pragma warning(pop)
 #endif
@@ -585,7 +494,7 @@ class LargeHeapHandleBucket
 {
 public:
     // Constructor and desctructor.
-    LargeHeapHandleBucket(LargeHeapHandleBucket *pNext, DWORD Size, BaseDomain *pDomain, BOOL bCrossAD = FALSE);
+    LargeHeapHandleBucket(LargeHeapHandleBucket *pNext, DWORD Size, BaseDomain *pDomain);
     ~LargeHeapHandleBucket();
 
     // This returns the next bucket.
@@ -642,7 +551,7 @@ public:
     ~LargeHeapHandleTable();
 
     // Allocate handles from the large heap handle table.
-    OBJECTREF* AllocateHandles(DWORD nRequested, BOOL bCrossAD = FALSE);
+    OBJECTREF* AllocateHandles(DWORD nRequested);
 
     // Release object handles allocated using AllocateHandles().
     void ReleaseHandles(OBJECTREF *pObjRef, DWORD nReleased);    
@@ -1028,9 +937,6 @@ class BaseDomain
     VPTR_BASE_VTABLE_CLASS(BaseDomain)
     VPTR_UNIQUE(VPTR_UNIQUE_BaseDomain)
 
-protected:
-    DomainLocalBlock    m_sDomainLocalBlock;
-
 public:
 
     class AssemblyIterator;
@@ -1091,7 +997,6 @@ public:
         return m_pWinRtBinder;
     }
 #endif // FEATURE_COMINTEROP
-    
 #ifdef _DEBUG
     BOOL OwnDomainLocalBlockLock()
     {
@@ -1100,7 +1005,7 @@ public:
         return m_DomainLocalBlockCrst.OwnedByCurrentThread();
     }
 #endif
-
+   
     //****************************************************************************************
     // Get the class init lock. The method is limited to friends because inappropriate use
     // will cause deadlocks in the system
@@ -1130,7 +1035,7 @@ public:
     // Statics and reflection info (Types, MemberInfo,..) are stored this way
     // If ppLazyAllocate != 0, allocation will only take place if *ppLazyAllocate != 0 (and the allocation
     // will be properly serialized)
-    OBJECTREF *AllocateObjRefPtrsInLargeTable(int nRequested, OBJECTREF** ppLazyAllocate = NULL, BOOL bCrossAD = FALSE);
+    OBJECTREF *AllocateObjRefPtrsInLargeTable(int nRequested, OBJECTREF** ppLazyAllocate = NULL);
 
 #ifdef FEATURE_PREJIT
     // Ensures that the file for logging profile data is open (we only open it once)
@@ -1767,8 +1672,6 @@ public:
     static void Create();
 #endif
 
-    DomainAssembly* FindDomainAssembly(Assembly*);
-
     //-----------------------------------------------------------------------------------------------------------------
     // Convenience wrapper for ::GetAppDomain to provide better encapsulation.
     static PTR_AppDomain GetCurrentDomain()
@@ -2280,31 +2183,10 @@ public:
 
         return AllocateObjRefPtrsInLargeTable(nRequested, ppLazyAllocate);
     }
-
-    OBJECTREF* AllocateStaticFieldObjRefPtrsCrossDomain(int nRequested, OBJECTREF** ppLazyAllocate = NULL)
-    {
-        WRAPPER_NO_CONTRACT;
-
-        return AllocateObjRefPtrsInLargeTable(nRequested, ppLazyAllocate, TRUE);
-    }
 #endif // DACCESS_COMPILE
 
     void              EnumStaticGCRefs(promote_func* fn, ScanContext* sc);
 
-    DomainLocalBlock *GetDomainLocalBlock()
-    {
-        LIMITED_METHOD_DAC_CONTRACT;
-
-        return &m_sDomainLocalBlock;
-    }
-
-    static SIZE_T GetOffsetOfModuleSlotsPointer()
-    {
-        WRAPPER_NO_CONTRACT;
-
-        return offsetof(AppDomain,m_sDomainLocalBlock) + DomainLocalBlock::GetOffsetOfModuleSlotsPointer();
-    }
-
     void SetupSharedStatics();
 
     //****************************************************************************************
index d98272c..65491f8 100644 (file)
 
 #include "appdomain.hpp"
 
-inline DomainAssembly* AppDomain::FindDomainAssembly(Assembly* assembly)
-{
-    CONTRACTL
-    {
-        GC_NOTRIGGER;
-        MODE_COOPERATIVE;
-        PRECONDITION(CheckPointer(assembly));
-    }
-    CONTRACTL_END;
-    return assembly->FindDomainAssembly(this);    
-};
-
 inline void AppDomain::AddMemoryPressure()
 {
     STANDARD_VM_CONTRACT;
index 7f9b0ac..ed57b89 100644 (file)
@@ -176,9 +176,6 @@ ASMCONSTANTS_C_ASSERT(Thread__m_pFrame == offsetof(Thread, m_pFrame));
 #define Thread_m_pFrame Thread__m_pFrame
 
 #ifndef CROSSGEN_COMPILE
-#define               DomainLocalBlock__m_pModuleSlots                 0x04
-ASMCONSTANTS_C_ASSERT(DomainLocalBlock__m_pModuleSlots == offsetof(DomainLocalBlock, m_pModuleSlots));
-
 #define               DomainLocalModule__m_pDataBlob                 0x18
 ASMCONSTANTS_C_ASSERT(DomainLocalModule__m_pDataBlob == offsetof(DomainLocalModule, m_pDataBlob));
 
index 2d89cc4..80e7f9c 100644 (file)
@@ -726,35 +726,10 @@ void Assembly::SetDomainAssembly(DomainAssembly *pDomainAssembly)
 
 #endif // #ifndef DACCESS_COMPILE
 
-DomainAssembly *Assembly::GetDomainAssembly(AppDomain *pDomain)
+DomainAssembly *Assembly::GetDomainAssembly()
 {
-    CONTRACT(DomainAssembly *)
-    {
-        PRECONDITION(CheckPointer(pDomain, NULL_NOT_OK));
-        POSTCONDITION(CheckPointer(RETVAL));
-        THROWS;
-        GC_TRIGGERS;
-    }
-    CONTRACT_END;
-
-    RETURN GetManifestModule()->GetDomainAssembly(pDomain);
-}
-
-DomainAssembly *Assembly::FindDomainAssembly(AppDomain *pDomain)
-{
-    CONTRACT(DomainAssembly *)
-    {
-        PRECONDITION(CheckPointer(pDomain));
-        POSTCONDITION(CheckPointer(RETVAL, NULL_OK));
-        NOTHROW;
-        GC_NOTRIGGER;
-        FORBID_FAULT;
-        SUPPORTS_DAC;
-    }
-    CONTRACT_END;
-
-    PREFIX_ASSUME (GetManifestModule() !=NULL); 
-    RETURN GetManifestModule()->FindDomainAssembly(pDomain);
+    LIMITED_METHOD_DAC_CONTRACT;
+    return GetManifestModule()->GetDomainAssembly();
 }
 
 PTR_LoaderHeap Assembly::GetLowFrequencyHeap()
@@ -883,7 +858,7 @@ Module *Assembly::FindModuleByExportedType(mdExportedType mdType,
 #ifndef DACCESS_COMPILE
                     // LoadAssembly never returns NULL
                     DomainAssembly * pDomainAssembly =
-                        GetManifestModule()->LoadAssembly(::GetAppDomain(), mdLinkRef);
+                        GetManifestModule()->LoadAssembly(mdLinkRef);
                     PREFIX_ASSUME(pDomainAssembly != NULL);
 
                     RETURN pDomainAssembly->GetCurrentModule();
@@ -1137,7 +1112,6 @@ Module * Assembly::FindModuleByTypeRef(
 
             
             DomainAssembly * pDomainAssembly = pModule->LoadAssembly(
-                    ::GetAppDomain(), 
                     tkType, 
                     szNamespace, 
                     szClassName);
index 43d9172..5adf596 100644 (file)
@@ -432,17 +432,9 @@ public:
 
     //****************************************************************************************
 
-    DomainAssembly *GetDomainAssembly(AppDomain *pDomain);
+    DomainAssembly *GetDomainAssembly();
     void SetDomainAssembly(DomainAssembly *pAssembly);
 
-    // Verison of GetDomainAssembly that uses the current AppDomain (N/A in DAC builds)
-#ifndef DACCESS_COMPILE
-    DomainAssembly *GetDomainAssembly()     { WRAPPER_NO_CONTRACT; return GetDomainAssembly(GetAppDomain()); }
-#endif
-
-    // FindDomainAssembly will return NULL if the assembly is not in the given domain
-    DomainAssembly *FindDomainAssembly(AppDomain *pDomain);
-
 #if defined(FEATURE_COLLECTIBLE_TYPES) && !defined(DACCESS_COMPILE)
     OBJECTHANDLE GetLoaderAllocatorObjectHandle() { WRAPPER_NO_CONTRACT; return GetLoaderAllocator()->GetLoaderAllocatorObjectHandle(); }
 #endif // FEATURE_COLLECTIBLE_TYPES
index ebbc485..4558bba 100644 (file)
@@ -88,12 +88,10 @@ FCIMPL1(Object*, AssemblyNameNative::ToString, Object* refThisUNSAFE)
     if (pThis == NULL)
         COMPlusThrow(kNullReferenceException, W("NullReference_This"));
 
-    Thread *pThread = GetThread();
-
-    CheckPointHolder cph(pThread->m_MarshalAlloc.GetCheckpoint()); //hold checkpoint for autorelease
+    ACQUIRE_STACKING_ALLOCATOR(pStackingAllocator);
 
     AssemblySpec spec;
-    spec.InitializeSpec(&(pThread->m_MarshalAlloc), (ASSEMBLYNAMEREF*) &pThis, FALSE); 
+    spec.InitializeSpec(pStackingAllocator, (ASSEMBLYNAMEREF*) &pThis, FALSE); 
 
     StackSString name;
     spec.GetFileOrDisplayName(ASM_DISPLAYF_VERSION |
@@ -161,12 +159,10 @@ FCIMPL1(void, AssemblyNameNative::Init, Object * refThisUNSAFE)
     if (pThis == NULL)
         COMPlusThrow(kNullReferenceException, W("NullReference_This"));
 
-    Thread * pThread = GetThread();
-
-    CheckPointHolder cph(pThread->m_MarshalAlloc.GetCheckpoint()); //hold checkpoint for autorelease
+    ACQUIRE_STACKING_ALLOCATOR(pStackingAllocator);
 
     AssemblySpec spec;
-    hr = spec.InitializeSpec(&(pThread->m_MarshalAlloc), (ASSEMBLYNAMEREF *) &pThis, TRUE); 
+    hr = spec.InitializeSpec(pStackingAllocator, (ASSEMBLYNAMEREF *) &pThis, TRUE); 
 
     if (SUCCEEDED(hr))
     {
index cc95151..5834757 100644 (file)
@@ -62,8 +62,7 @@ FCIMPL6(Object*, AssemblyNative::Load, AssemblyNameBaseObject* assemblyNameUNSAF
     if (gc.assemblyName == NULL)
         COMPlusThrow(kArgumentNullException, W("ArgumentNull_AssemblyName"));
 
-    Thread * pThread = GetThread();
-    CheckPointHolder cph(pThread->m_MarshalAlloc.GetCheckpoint()); //hold checkpoint for autorelease
+    ACQUIRE_STACKING_ALLOCATOR(pStackingAllocator);
 
     DomainAssembly * pParentAssembly = NULL;
     Assembly * pRefAssembly = NULL;
@@ -95,7 +94,7 @@ FCIMPL6(Object*, AssemblyNative::Load, AssemblyNameBaseObject* assemblyNameUNSAF
 
     // Initialize spec
     AssemblySpec spec;
-    spec.InitializeSpec(&(pThread->m_MarshalAlloc)
+    spec.InitializeSpec(pStackingAllocator
                         &gc.assemblyName,
                         FALSE);
     
@@ -105,7 +104,7 @@ FCIMPL6(Object*, AssemblyNative::Load, AssemblyNameBaseObject* assemblyNameUNSAF
     }
     
     if (gc.codeBase != NULL)
-        spec.SetCodeBase(&(pThread->m_MarshalAlloc), &gc.codeBase);
+        spec.SetCodeBase(pStackingAllocator, &gc.codeBase);
 
     if (pParentAssembly != NULL)
         spec.SetParentAssembly(pParentAssembly);
index d98f180..0de5dd4 100644 (file)
@@ -1856,130 +1856,18 @@ BOOL Module::IsManifest()
            dac_cast<TADDR>(this);
 }
 
-DomainAssembly* Module::GetDomainAssembly(AppDomain *pDomain)
+DomainAssembly* Module::GetDomainAssembly()
 {
-    CONTRACT(DomainAssembly *)
-    {
-        INSTANCE_CHECK;
-        PRECONDITION(CheckPointer(pDomain, NULL_OK));
-        POSTCONDITION(CheckPointer(RETVAL));
-        THROWS;
-        GC_TRIGGERS;
-        MODE_ANY;
-    }
-    CONTRACT_END;
-
-    if (IsManifest())
-        RETURN (DomainAssembly *) GetDomainFile(pDomain);
-    else
-        RETURN (DomainAssembly *) m_pAssembly->GetDomainAssembly(pDomain);
-}
-
-DomainFile *Module::GetDomainFile(AppDomain *pDomain)
-{
-    CONTRACT(DomainFile *)
-    {
-        INSTANCE_CHECK;
-        PRECONDITION(CheckPointer(pDomain));
-        POSTCONDITION(CheckPointer(RETVAL));
-        GC_TRIGGERS;
-        THROWS;
-        MODE_ANY;
-        SUPPORTS_DAC;
-    }
-    CONTRACT_END;
-
-    if (Module::IsEncodedModuleIndex(GetModuleID()))
-    {
-        DomainLocalBlock *pLocalBlock = pDomain->GetDomainLocalBlock();
-        DomainFile *pDomainFile =  pLocalBlock->TryGetDomainFile(GetModuleIndex());
-
-        RETURN (PTR_DomainFile) pDomainFile;
-    }
-    else
-    {
-        RETURN dac_cast<PTR_DomainFile>(m_ModuleID->GetDomainFile());
-    }
-}
-
-DomainAssembly* Module::FindDomainAssembly(AppDomain *pDomain)
-{
-    CONTRACT(DomainAssembly *)
-    {
-        INSTANCE_CHECK;
-        PRECONDITION(CheckPointer(pDomain));
-        POSTCONDITION(CheckPointer(RETVAL, NULL_OK));
-        NOTHROW;
-        GC_NOTRIGGER;
-        MODE_ANY;
-        SUPPORTS_DAC;
-    }
-    CONTRACT_END;
-
-    if (IsManifest())
-        RETURN dac_cast<PTR_DomainAssembly>(FindDomainFile(pDomain));
-    else
-        RETURN m_pAssembly->FindDomainAssembly(pDomain);
-}
-
-DomainModule *Module::GetDomainModule(AppDomain *pDomain)
-{
-    CONTRACT(DomainModule *)
-    {
-        INSTANCE_CHECK;
-        PRECONDITION(CheckPointer(pDomain));
-        PRECONDITION(!IsManifest());
-        POSTCONDITION(CheckPointer(RETVAL));
-
-        THROWS;
-        GC_TRIGGERS;
-        MODE_ANY;
-    }
-    CONTRACT_END;
-
-    RETURN (DomainModule *) GetDomainFile(pDomain);
-}
-
-DomainFile *Module::FindDomainFile(AppDomain *pDomain)
-{
-    CONTRACT(DomainFile *)
-    {
-        INSTANCE_CHECK;
-        PRECONDITION(CheckPointer(pDomain));
-        POSTCONDITION(CheckPointer(RETVAL, NULL_OK));
-        NOTHROW;
-        GC_NOTRIGGER;
-        MODE_ANY;
-        SUPPORTS_DAC;
-    }
-    CONTRACT_END;
+    LIMITED_METHOD_DAC_CONTRACT;
 
-    if (Module::IsEncodedModuleIndex(GetModuleID()))
-    {
-        DomainLocalBlock *pLocalBlock = pDomain->GetDomainLocalBlock();
-        RETURN pLocalBlock->TryGetDomainFile(GetModuleIndex());
-    }
-    else
-    {
-        RETURN m_ModuleID->GetDomainFile();
-    }
+    return dac_cast<PTR_DomainAssembly>(m_ModuleID->GetDomainFile());
 }
 
-DomainModule *Module::FindDomainModule(AppDomain *pDomain)
+DomainFile *Module::GetDomainFile()
 {
-    CONTRACT(DomainModule *)
-    {
-        INSTANCE_CHECK;
-        PRECONDITION(CheckPointer(pDomain));
-        PRECONDITION(!IsManifest());
-        POSTCONDITION(CheckPointer(RETVAL, NULL_OK));
-        GC_NOTRIGGER;
-        NOTHROW;
-        MODE_ANY;
-    }
-    CONTRACT_END;
+    LIMITED_METHOD_DAC_CONTRACT;
 
-    RETURN (DomainModule *) FindDomainFile(pDomain);
+    return dac_cast<PTR_DomainFile>(m_ModuleID->GetDomainFile());
 }
 
 #ifndef DACCESS_COMPILE 
@@ -2815,9 +2703,6 @@ void Module::FreeModuleIndex()
     CONTRACTL_END;
     if (m_ModuleID != NULL)
     {
-        // Module's m_ModuleID should not contain the ID, it should 
-        // contain a pointer to the DLM
-        _ASSERTE(!Module::IsEncodedModuleIndex((SIZE_T)m_ModuleID));
         _ASSERTE(m_ModuleIndex == m_ModuleID->GetModuleIndex());
 
 #ifndef CROSSGEN_COMPILE
@@ -2888,31 +2773,13 @@ void Module::AllocateRegularStaticHandles(AppDomain* pDomain)
     // allocate if pModuleData->GetGCStaticsBasePointerAddress(pMT) != 0, avoiding creating
     // handles more than once for a given MT or module
 
-    DomainLocalModule *pModuleData = GetDomainLocalModule(pDomain);
+    DomainLocalModule *pModuleData = GetDomainLocalModule();
 
     _ASSERTE(pModuleData->GetPrecomputedGCStaticsBasePointerAddress() != NULL);
     if (this->m_dwMaxGCRegularStaticHandles > 0)
     {
-        // If we're setting up a non-default domain, we want the allocation to look like it's
-        // coming from the created domain.
-
-        // REVISIT_TODO: The comparison "pDomain != GetDomain()" will always be true for domain-neutral
-        // modules, since GetDomain() will return the SharedDomain, which is NOT an AppDomain.
-        // Was this intended? If so, there should be a clarifying comment. If not, then we should
-        // probably do "pDomain != GetAppDomain()" instead.
-
-        if (pDomain != GetDomain() &&
-            pDomain != SystemDomain::System()->DefaultDomain() &&
-            IsSystem())
-        {
-            pDomain->AllocateStaticFieldObjRefPtrsCrossDomain(this->m_dwMaxGCRegularStaticHandles,
+        pDomain->AllocateStaticFieldObjRefPtrs(this->m_dwMaxGCRegularStaticHandles,
                                                pModuleData->GetPrecomputedGCStaticsBasePointerAddress());
-        }
-        else
-        {
-            pDomain->AllocateStaticFieldObjRefPtrs(this->m_dwMaxGCRegularStaticHandles,
-                                               pModuleData->GetPrecomputedGCStaticsBasePointerAddress());
-        }
 
         // We should throw if we fail to allocate and never hit this assert
         _ASSERTE(pModuleData->GetPrecomputedGCStaticsBasePointer() != NULL);
@@ -2983,7 +2850,7 @@ void Module::AllocateStatics(AllocMemTracker *pamTracker)
 // statics is through the handle table. Module::AllocateRegularStaticHandles() allocates a GC handle
 // from the handle table, and the GC will trace this handle and find the statics.
 
-void Module::EnumRegularStaticGCRefs(AppDomain* pAppDomain, promote_func* fn, ScanContext* sc)
+void Module::EnumRegularStaticGCRefs(promote_func* fn, ScanContext* sc)
 {
     CONTRACT_VOID
     {
@@ -2997,7 +2864,7 @@ void Module::EnumRegularStaticGCRefs(AppDomain* pAppDomain, promote_func* fn, Sc
          IsGCSpecialThread());
 
 
-    DomainLocalModule *pModuleData = GetDomainLocalModule(pAppDomain);
+    DomainLocalModule *pModuleData = GetDomainLocalModule();
     DWORD dwHandles                = m_dwMaxGCRegularStaticHandles;
 
     if (IsResource())
@@ -4624,30 +4491,6 @@ void Module::AddActiveDependency(Module *pModule, BOOL unconditional)
     RETURN;
 }
 
-void Module::EnableModuleFailureTriggers(Module *pModuleTo, AppDomain *pDomain)
-{
-    CONTRACTL
-    {
-        THROWS;
-        GC_TRIGGERS;
-        MODE_ANY;
-    }
-    CONTRACTL_END;
-    // At this point we need to enable failure triggers we have placed in the code for this module.  However,
-    // the failure trigger codegen logic is NYI.  To keep correctness, we just allow the exception to propagate
-    // here.  Note that in general this will enforce the failure invariants, but will also result in some rude
-    // behavior as these failures will be propagated too widely rather than constrained to the appropriate
-    // assemblies/app domains.
-    //
-    // This should throw.
-    STRESS_LOG1(LF_CLASSLOADER, LL_INFO100,"EnableModuleFailureTriggers for module %p\n",pModuleTo);
-    DomainFile *pDomainFileTo = pModuleTo->GetDomainFile(pDomain);
-    pDomainFileTo->EnsureActive();
-
-    // @NYI: shouldn't get here yet since we propagate failures
-    UNREACHABLE_MSG("Module failure triggers NYI");
-}
-
 #endif //!DACCESS_COMPILE
 
 #if !defined(DACCESS_COMPILE) && defined(FEATURE_PREJIT)
@@ -4792,7 +4635,7 @@ Module::GetAssemblyIfLoaded(
     if ((pAssembly != NULL) && !IsGCThread() && !IsStackWalkerThread())
     {
         _ASSERTE(::GetAppDomain() != NULL);
-        DomainAssembly * pDomainAssembly = pAssembly->FindDomainAssembly(::GetAppDomain());
+        DomainAssembly * pDomainAssembly = pAssembly->GetDomainAssembly();
         if ((pDomainAssembly == NULL) || !pDomainAssembly->IsLoaded())
             pAssembly = NULL;
     }   
@@ -4804,7 +4647,7 @@ Module::GetAssemblyIfLoaded(
         {
             AppDomain * pAppDomainExamine = AppDomain::GetCurrentDomain();
             
-            DomainAssembly * pCurAssemblyInExamineDomain = GetAssembly()->FindDomainAssembly(pAppDomainExamine);
+            DomainAssembly * pCurAssemblyInExamineDomain = GetAssembly()->GetDomainAssembly();
             if (pCurAssemblyInExamineDomain == NULL)
             {
                 continue;
@@ -4937,7 +4780,7 @@ Module::GetAssemblyIfLoaded(
             {
                 AppDomain * pAppDomainExamine = ::GetAppDomain(); // There is only 1 AppDomain on CoreCLR
             
-                DomainAssembly * pCurAssemblyInExamineDomain = GetAssembly()->FindDomainAssembly(pAppDomainExamine);
+                DomainAssembly * pCurAssemblyInExamineDomain = GetAssembly()->GetDomainAssembly();
                 if (pCurAssemblyInExamineDomain == NULL)
                 {
                     continue;
@@ -5065,7 +4908,6 @@ Module::GetAssemblyRefFlags(
 //   szWinRtTypeNamespace ... Namespace of WinRT type.
 //   szWinRtTypeClassName ... Name of WinRT type, NULL for non-WinRT (classic) types.
 DomainAssembly * Module::LoadAssembly(
-    AppDomain *   pDomain, 
     mdAssemblyRef kAssemblyRef, 
     LPCUTF8       szWinRtTypeNamespace, 
     LPCUTF8       szWinRtTypeClassName)
@@ -5077,7 +4919,6 @@ DomainAssembly * Module::LoadAssembly(
         if (FORBIDGC_LOADER_USE_ENABLED()) GC_NOTRIGGER; else GC_TRIGGERS;
         if (FORBIDGC_LOADER_USE_ENABLED()) FORBID_FAULT; else { INJECT_FAULT(COMPlusThrowOM();); }
         MODE_ANY;
-        PRECONDITION(CheckPointer(pDomain));
         POSTCONDITION(CheckPointer(RETVAL, NULL_NOT_OK));
         //POSTCONDITION((CheckPointer(GetAssemblyIfLoaded(kAssemblyRef, szWinRtTypeNamespace, szWinRtTypeClassName)), NULL_NOT_OK));
     }
@@ -5095,11 +4936,8 @@ DomainAssembly * Module::LoadAssembly(
     {
         _ASSERTE(HasBindableIdentity(kAssemblyRef));
 
-        pDomainAssembly = pAssembly->FindDomainAssembly(pDomain);
-
-        if (pDomainAssembly == NULL)
-            pDomainAssembly = pAssembly->GetDomainAssembly(pDomain);
-        pDomain->LoadDomainFile(pDomainAssembly, FILE_LOADED);
+        pDomainAssembly = pAssembly->GetDomainAssembly();
+        ::GetAppDomain()->LoadDomainFile(pDomainAssembly, FILE_LOADED);
 
         RETURN pDomainAssembly;
     }
@@ -5107,13 +4945,13 @@ DomainAssembly * Module::LoadAssembly(
     bool fHasBindableIdentity = HasBindableIdentity(kAssemblyRef);
     
     {
-        PEAssemblyHolder pFile = GetDomainFile(GetAppDomain())->GetFile()->LoadAssembly(
+        PEAssemblyHolder pFile = GetDomainAssembly()->GetFile()->LoadAssembly(
                 kAssemblyRef, 
                 NULL, 
                 szWinRtTypeNamespace, 
                 szWinRtTypeClassName);
         AssemblySpec spec;
-        spec.InitializeSpec(kAssemblyRef, GetMDImport(), GetDomainFile(GetAppDomain())->GetDomainAssembly());
+        spec.InitializeSpec(kAssemblyRef, GetMDImport(), GetDomainAssembly());
         // Set the binding context in the AssemblySpec if one is available. This can happen if the LoadAssembly ended up
         // invoking the custom AssemblyLoadContext implementation that returned a reference to an assembly bound to a different
         // AssemblyLoadContext implementation.
@@ -6540,9 +6378,7 @@ void Module::FixupVTables()
             cVtableThunks += pFixupTable[iFixup].Count;
     }
 
-    Thread *pThread = GetThread();
-    StackingAllocator *pAlloc = &pThread->m_MarshalAlloc;
-    CheckPointHolder cph(pAlloc->GetCheckpoint());
+    ACQUIRE_STACKING_ALLOCATOR(pAlloc);
 
     // Allocate the working array of tokens.
     cMethodsToLoad = cVtableThunks;
@@ -13756,7 +13592,7 @@ CHECK Module::CheckActivated()
     CONTRACTL_END;
 
 #ifndef DACCESS_COMPILE 
-    DomainFile *pDomainFile = FindDomainFile(GetAppDomain());
+    DomainFile *pDomainFile = GetDomainFile();
     CHECK(pDomainFile != NULL);
     PREFIX_ASSUME(pDomainFile != NULL);
     CHECK(pDomainFile->CheckActivated());
@@ -13806,16 +13642,11 @@ void Module::EnumMemoryRegions(CLRDataEnumMemoryFlags flags,
     }
 
     //Save module id data only if it a real pointer, not a tagged sugestion to use ModuleIndex.
-    if (!Module::IsEncodedModuleIndex(GetModuleID()))
+    if (m_ModuleID.IsValid())
     {
-        if (m_ModuleID.IsValid())
-        {
-            m_ModuleID->EnumMemoryRegions(flags);
-        }
+        m_ModuleID->EnumMemoryRegions(flags);
     }
 
-    // TODO: Enumerate DomainLocalModules?  It's not clear if we need all AppDomains 
-    // in the multi-domain case (where m_ModuleID has it's low-bit set).
     if (m_file.IsValid())
     {
         m_file->EnumMemoryRegions(flags);
index 99c1c78..04d78c3 100644 (file)
@@ -1763,24 +1763,11 @@ protected:
     MethodTable *GetGlobalMethodTable();
     bool         NeedsGlobalMethodTable();
 
-    // Only for non-manifest modules
-    DomainModule *GetDomainModule(AppDomain *pDomain);
-    DomainModule *FindDomainModule(AppDomain *pDomain);
-
     // This works for manifest modules too
-    DomainFile *GetDomainFile(AppDomain *pDomain);
-    DomainFile *FindDomainFile(AppDomain *pDomain);
+    DomainFile *GetDomainFile();
 
     // Operates on assembly of module
-    DomainAssembly *GetDomainAssembly(AppDomain *pDomain);
-    DomainAssembly *FindDomainAssembly(AppDomain *pDomain);
-
-    // Versions which rely on the current AppDomain (N/A for DAC builds)
-#ifndef DACCESS_COMPILE
-    DomainModule * GetDomainModule()         { WRAPPER_NO_CONTRACT; return GetDomainModule(GetAppDomain()); }
-    DomainFile * GetDomainFile()             { WRAPPER_NO_CONTRACT; return GetDomainFile(GetAppDomain()); }
-    DomainAssembly * GetDomainAssembly()     { WRAPPER_NO_CONTRACT; return GetDomainAssembly(GetAppDomain()); }
-#endif
+    DomainAssembly *GetDomainAssembly();
 
     void SetDomainFile(DomainFile *pDomainFile);
 
@@ -2179,7 +2166,6 @@ private:
 public:
 
     DomainAssembly * LoadAssembly(
-            AppDomain *   pDomain, 
             mdAssemblyRef kAssemblyRef, 
             LPCUTF8       szWinRtTypeNamespace = NULL,
             LPCUTF8       szWinRtTypeClassName = NULL);
@@ -2684,9 +2670,6 @@ public:
 
     void AddActiveDependency(Module *pModule, BOOL unconditional);
 
-    // Turn triggers from this module into runtime checks
-    void EnableModuleFailureTriggers(Module *pModule, AppDomain *pDomain);
-
 #ifdef FEATURE_PREJIT
     BOOL IsZappedCode(PCODE code);
     BOOL IsZappedPrecode(PCODE code);
@@ -3010,33 +2993,6 @@ public:
     // We need this for the jitted shared case,
     inline MethodTable* GetDynamicClassMT(DWORD dynamicClassID);
 
-    static BOOL IsEncodedModuleIndex(SIZE_T ModuleID)
-    {
-        LIMITED_METHOD_DAC_CONTRACT;
-        
-        // We should never see encoded module index in CoreCLR
-        _ASSERTE((ModuleID&1)==0);
-        return FALSE;
-    }
-
-    static SIZE_T IndexToID(ModuleIndex index)
-    {
-        LIMITED_METHOD_CONTRACT
-            
-        return (index.m_dwIndex << 1) | 1;
-    }
-
-    static ModuleIndex IDToIndex(SIZE_T ModuleID)
-    {
-        LIMITED_METHOD_CONTRACT
-        SUPPORTS_DAC;
-            
-        _ASSERTE(IsEncodedModuleIndex(ModuleID));
-        ModuleIndex index(ModuleID >> 1);
-
-        return index;
-    }
-
     static ModuleIndex AllocateModuleIndex();
     static void FreeModuleIndex(ModuleIndex index);
 
@@ -3064,11 +3020,7 @@ public:
         return offsetof(Module, m_ModuleID);
     }
 
-    PTR_DomainLocalModule   GetDomainLocalModule(AppDomain *pDomain);
-
-#ifndef DACCESS_COMPILE
-    PTR_DomainLocalModule   GetDomainLocalModule()  { WRAPPER_NO_CONTRACT; return GetDomainLocalModule(NULL); };
-#endif
+    PTR_DomainLocalModule   GetDomainLocalModule();
 
 #ifdef FEATURE_PREJIT
     NgenStats *GetNgenStats()
@@ -3086,7 +3038,7 @@ public:
     // Self-initializing accessor for domain-independent IJW thunk heap
     LoaderHeap              *GetDllThunkHeap();
 
-    void            EnumRegularStaticGCRefs        (AppDomain* pAppDomain, promote_func* fn, ScanContext* sc);
+    void            EnumRegularStaticGCRefs        (promote_func* fn, ScanContext* sc);
 
 protected:    
 
index e0ce07f..dc2593f 100644 (file)
@@ -473,28 +473,12 @@ inline BOOL Module::IsEditAndContinueCapable()
     return isEnCCapable;
 }
 
-FORCEINLINE PTR_DomainLocalModule Module::GetDomainLocalModule(AppDomain *pDomain)
+FORCEINLINE PTR_DomainLocalModule Module::GetDomainLocalModule()
 {
     WRAPPER_NO_CONTRACT;
     SUPPORTS_DAC;
 
-    if (!Module::IsEncodedModuleIndex(GetModuleID()))
-    {
-        return m_ModuleID;
-    }
-
-#if !defined(DACCESS_COMPILE)
-    if (pDomain == NULL)
-    {
-        pDomain = GetAppDomain();
-    }
-#endif // DACCESS_COMPILE
-
-    // If the module is domain neutral, then you must supply an AppDomain argument.
-    // Use GetDomainLocalModule() if you want to rely on the current AppDomain
-    _ASSERTE(pDomain != NULL);
-
-    return pDomain->GetDomainLocalBlock()->GetModuleSlot(GetModuleIndex());
+    return m_ModuleID;
 }
 
 #include "nibblestream.h"
index 3ca3356..10216f5 100644 (file)
@@ -458,7 +458,7 @@ void InitializeStartupFlags()
         g_IGCconcurrent = 0;
 
 
-    g_heap_type = (flags & STARTUP_SERVER_GC) == 0 ? GC_HEAP_WKS : GC_HEAP_SVR;
+    g_heap_type = ((flags & STARTUP_SERVER_GC) && GetCurrentProcessCpuCount() > 1) ? GC_HEAP_SVR : GC_HEAP_WKS;
     g_IGCHoardVM = (flags & STARTUP_HOARD_GC_VM) == 0 ? 0 : 1;
 }
 #endif // CROSSGEN_COMPILE
index 14eb059..4d03db7 100644 (file)
@@ -293,7 +293,7 @@ VOID EEClass::FixupFieldDescForEnC(MethodTable * pMT, EnCFieldDesc *pFD, mdField
     // MethodTableBuilder uses the stacking allocator for most of it's
     // working memory requirements, so this makes sure to free the memory
     // once this function is out of scope.
-    CheckPointHolder cph(GetThread()->m_MarshalAlloc.GetCheckpoint());
+    ACQUIRE_STACKING_ALLOCATOR(pStackingAllocator);
 
     MethodTableBuilder::bmtMetaDataInfo bmtMetaData;
     bmtMetaData.cFields = 1;
@@ -357,7 +357,7 @@ VOID EEClass::FixupFieldDescForEnC(MethodTable * pMT, EnCFieldDesc *pFD, mdField
 
     BaseDomain * pDomain = pMT->GetDomain();
     MethodTableBuilder builder(pMT, pClass,
-                               &GetThread()->m_MarshalAlloc,
+                               pStackingAllocator,
                                &dummyAmTracker);
 
     MethodTableBuilder::bmtGenericsInfo genericsInfo;
@@ -603,10 +603,12 @@ HRESULT EEClass::AddMethod(MethodTable * pMT, mdMethodDef methodDef, RVA newRVA,
     // Get the new MethodDesc (Note: The method desc memory is zero initialized)
     MethodDesc *pNewMD = pChunk->GetFirstMethodDesc();
 
+    ACQUIRE_STACKING_ALLOCATOR(pStackingAllocator);
+
     // Initialize the new MethodDesc
     MethodTableBuilder builder(pMT,
                                pClass,
-                               &GetThread()->m_MarshalAlloc,
+                               pStackingAllocator,
                                &dummyAmTracker);
     EX_TRY
     {
index 7faf7a0..680755e 100644 (file)
@@ -72,7 +72,6 @@ class   ArrayMethodDesc;
 class   Assembly;
 class   ClassLoader;
 class   DictionaryLayout;
-class   DomainLocalBlock;
 class   FCallMethodDesc;
 class   EEClass;
 class   EnCFieldDesc;
index 775a861..473e328 100644 (file)
@@ -227,8 +227,6 @@ InteropMethodTableData *MethodTableBuilder::BuildInteropVTable(AllocMemTracker *
 #endif // _DEBUG
 
     //Get Check Point for the thread-based allocator
-    Thread *pThread = GetThread();
-    CheckPointHolder cph(pThread->m_MarshalAlloc.GetCheckpoint()); //hold checkpoint for autorelease
 
     HRESULT hr = S_OK;
     Module *pModule = pThisMT->GetModule();
@@ -349,19 +347,19 @@ InteropMethodTableData *MethodTableBuilder::BuildInteropVTable(AllocMemTracker *
         // The interop data for the VTable for COM Interop backward compatibility
 
         // Allocate space to hold on to the MethodDesc for each entry
-        bmtVT.ppSDVtable = new (&pThread->m_MarshalAlloc) InteropMethodTableSlotData*[bmtVT.dwMaxVtableSize];
+        bmtVT.ppSDVtable = new (GetStackingAllocator()) InteropMethodTableSlotData*[bmtVT.dwMaxVtableSize];
         ZeroMemory(bmtVT.ppSDVtable, bmtVT.dwMaxVtableSize * sizeof(InteropMethodTableSlotData*));
 
         // Allocate space to hold on to the MethodDesc for each entry
-        bmtVT.ppSDNonVtable = new (&pThread->m_MarshalAlloc) InteropMethodTableSlotData*[NumDeclaredMethods()];
+        bmtVT.ppSDNonVtable = new (GetStackingAllocator()) InteropMethodTableSlotData*[NumDeclaredMethods()];
         ZeroMemory(bmtVT.ppSDNonVtable , sizeof(InteropMethodTableSlotData*)*NumDeclaredMethods());
 
 
         DWORD cMaxEntries = (bmtVT.dwMaxVtableSize * 2) + (NumDeclaredMethods() * 2);
-        InteropMethodTableSlotData *pInteropData = new (&pThread->m_MarshalAlloc) InteropMethodTableSlotData[cMaxEntries];
+        InteropMethodTableSlotData *pInteropData = new (GetStackingAllocator()) InteropMethodTableSlotData[cMaxEntries];
         memset(pInteropData, 0, cMaxEntries * sizeof(InteropMethodTableSlotData));
 
-        bmtVT.pInteropData = new (&pThread->m_MarshalAlloc) InteropMethodTableSlotDataMap(pInteropData, cMaxEntries);
+        bmtVT.pInteropData = new (GetStackingAllocator()) InteropMethodTableSlotDataMap(pInteropData, cMaxEntries);
 
         // Initialize the map with parent information
         if (bmtParent.pParentMethodTable != NULL)
@@ -632,7 +630,7 @@ VOID MethodTableBuilder::BuildInteropVTable_InterfaceList(
         Module *pModule = GetModule();
 
         // Allocate the BuildingInterfaceList table
-        *ppBuildingInterfaceList = new(&pThread->m_MarshalAlloc) BuildingInterfaceInfo_t[cAllInterfaces];
+        *ppBuildingInterfaceList = new(GetStackingAllocator()) BuildingInterfaceInfo_t[cAllInterfaces];
         BuildingInterfaceInfo_t *pInterfaceBuildInfo = *ppBuildingInterfaceList;
 
         while (pMDImport->EnumNext(&hEnumInterfaceImpl, &ii))
@@ -836,13 +834,10 @@ VOID MethodTableBuilder::BuildInteropVTable_PlaceMembers(
                         slotNum = (WORD) pItfMD->GetSlot();
                         if (bmtInterface->pppInterfaceImplementingMD[j] == NULL)
                         {
-                            Thread *pThread = GetThread();
-                            StackingAllocator * pAlloc = &pThread->m_MarshalAlloc;
-
-                            bmtInterface->pppInterfaceImplementingMD[j] = new (pAlloc) MethodDesc * [pInterface->GetNumVirtuals()];
+                            bmtInterface->pppInterfaceImplementingMD[j] = new (GetStackingAllocator()) MethodDesc * [pInterface->GetNumVirtuals()];
                             memset(bmtInterface->pppInterfaceImplementingMD[j], 0, sizeof(MethodDesc *) * pInterface->GetNumVirtuals());
 
-                            bmtInterface->pppInterfaceDeclaringMD[j] = new (pAlloc) MethodDesc * [pInterface->GetNumVirtuals()];
+                            bmtInterface->pppInterfaceDeclaringMD[j] = new (GetStackingAllocator()) MethodDesc * [pInterface->GetNumVirtuals()];
                             memset(bmtInterface->pppInterfaceDeclaringMD[j], 0, sizeof(MethodDesc *) * pInterface->GetNumVirtuals());
                         }
 
@@ -1084,7 +1079,7 @@ VOID MethodTableBuilder::BuildInteropVTable_ResolveInterfaces(
     }
 
     // Create a fully expanded map of all interfaces we implement
-    bmtInterface->pInterfaceMap = new (&pThread->m_MarshalAlloc) InterfaceInfo_t[bmtInterface->dwMaxExpandedInterfaces];
+    bmtInterface->pInterfaceMap = new (GetStackingAllocator()) InterfaceInfo_t[bmtInterface->dwMaxExpandedInterfaces];
 
     // # slots of largest interface
     bmtInterface->dwLargestInterfaceSize = 0;
@@ -1100,9 +1095,9 @@ VOID MethodTableBuilder::BuildInteropVTable_ResolveInterfaces(
         // This is needed later - for each interface, we get the MethodDesc pointer for each
         // method.  We need to be able to persist at most one interface at a time, so we
         // need enough memory for the largest interface.
-        bmtInterface->ppInterfaceMethodDescList = new (&pThread->m_MarshalAlloc) MethodDesc*[bmtInterface->dwLargestInterfaceSize];
+        bmtInterface->ppInterfaceMethodDescList = new (GetStackingAllocator()) MethodDesc*[bmtInterface->dwLargestInterfaceSize];
 
-        bmtInterface->ppInterfaceDeclMethodDescList = new (&pThread->m_MarshalAlloc) MethodDesc*[bmtInterface->dwLargestInterfaceSize];
+        bmtInterface->ppInterfaceDeclMethodDescList = new (GetStackingAllocator()) MethodDesc*[bmtInterface->dwLargestInterfaceSize];
     }
 
     EEClass *pParentClass = (IsInterface() || bmtParent->pParentMethodTable == NULL) ? NULL : bmtParent->pParentMethodTable->GetClass();
@@ -1134,10 +1129,10 @@ VOID MethodTableBuilder::BuildInteropVTable_ResolveInterfaces(
 
     bmtVT->wCurrentNonVtableSlot      = 0;
 
-    bmtInterface->pppInterfaceImplementingMD = (MethodDesc ***) pThread->m_MarshalAlloc.Alloc(S_UINT32(sizeof(MethodDesc *)) * S_UINT32(bmtInterface->dwMaxExpandedInterfaces));
+    bmtInterface->pppInterfaceImplementingMD = (MethodDesc ***) GetStackingAllocator()->Alloc(S_UINT32(sizeof(MethodDesc *)) * S_UINT32(bmtInterface->dwMaxExpandedInterfaces));
     memset(bmtInterface->pppInterfaceImplementingMD, 0, sizeof(MethodDesc *) * bmtInterface->dwMaxExpandedInterfaces);
 
-    bmtInterface->pppInterfaceDeclaringMD = (MethodDesc ***) pThread->m_MarshalAlloc.Alloc(S_UINT32(sizeof(MethodDesc *)) * S_UINT32(bmtInterface->dwMaxExpandedInterfaces));
+    bmtInterface->pppInterfaceDeclaringMD = (MethodDesc ***) GetStackingAllocator()->Alloc(S_UINT32(sizeof(MethodDesc *)) * S_UINT32(bmtInterface->dwMaxExpandedInterfaces));
     memset(bmtInterface->pppInterfaceDeclaringMD, 0, sizeof(MethodDesc *) * bmtInterface->dwMaxExpandedInterfaces);
 
     return;
@@ -1555,8 +1550,8 @@ VOID MethodTableBuilder::BuildInteropVTable_PlaceMethodImpls(
 
     // Allocate some temporary storage. The number of overrides for a single method impl
     // cannot be greater then the number of vtable slots. 
-    DWORD* slots = (DWORD*) new (&GetThread()->m_MarshalAlloc) DWORD[bmtVT->wCurrentVtableSlot];
-    MethodDesc **replaced = new (&GetThread()->m_MarshalAlloc) MethodDesc*[bmtVT->wCurrentVtableSlot];
+    DWORD* slots = (DWORD*) new (GetStackingAllocator()) DWORD[bmtVT->wCurrentVtableSlot];
+    MethodDesc **replaced = new (GetStackingAllocator()) MethodDesc*[bmtVT->wCurrentVtableSlot];
 
     while(pIndex < bmtMethodImpl->pIndex) {
 
@@ -1761,7 +1756,7 @@ VOID MethodTableBuilder::BuildInteropVTable_PlaceInterfaceDeclaration(
                 if(bmtInterface->pdwOriginalStart == NULL)
                 {
                     Thread *pThread = GetThread();
-                    bmtInterface->pdwOriginalStart = new (&pThread->m_MarshalAlloc) DWORD[bmtInterface->dwMaxExpandedInterfaces];
+                    bmtInterface->pdwOriginalStart = new (GetStackingAllocator()) DWORD[bmtInterface->dwMaxExpandedInterfaces];
                     memset(bmtInterface->pdwOriginalStart, 0, sizeof(DWORD)*bmtInterface->dwMaxExpandedInterfaces);
                 }
 
@@ -2080,7 +2075,7 @@ VOID    MethodTableBuilder::EnumerateMethodImpls()
         //
         // Allocate the structures to keep track of the token pairs
         //
-        bmtMethodImpl->rgMethodImplTokens = new (&GetThread()->m_MarshalAlloc)
+        bmtMethodImpl->rgMethodImplTokens = new (GetStackingAllocator())
             bmtMethodImplInfo::MethodImplTokenPair[bmtMethodImpl->dwNumberMethodImpls];
             
         // Iterate through each MethodImpl declared on this class
@@ -2137,8 +2132,8 @@ VOID    MethodTableBuilder::EnumerateMethodImpls()
         //
         // Allocate the structures to keep track of the impl matches
         //
-        bmtMethodImpl->pMethodDeclSubsts = new (&GetThread()->m_MarshalAlloc) Substitution[bmtMethodImpl->dwNumberMethodImpls]; 
-        bmtMethodImpl->rgEntries = new (&GetThread()->m_MarshalAlloc) bmtMethodImplInfo::Entry[bmtMethodImpl->dwNumberMethodImpls];
+        bmtMethodImpl->pMethodDeclSubsts = new (GetStackingAllocator()) Substitution[bmtMethodImpl->dwNumberMethodImpls]; 
+        bmtMethodImpl->rgEntries = new (GetStackingAllocator()) bmtMethodImplInfo::Entry[bmtMethodImpl->dwNumberMethodImpls];
 
         // These are used for verification
         maxRidMD = pMDInternalImport->GetCountWithTokenKind(mdtMethodDef);
@@ -2309,7 +2304,6 @@ VOID    MethodTableBuilder::EnumerateClassMethods()
 
     HRESULT hr = S_OK;
     DWORD i;
-    Thread *pThread = GetThread();
     IMDInternalImport *pMDInternalImport = bmtType->pMDImport;
     mdToken tok;
     DWORD dwMemberAttrs;
@@ -2346,16 +2340,16 @@ VOID    MethodTableBuilder::EnumerateClassMethods()
     // Allocate an array to contain the method tokens as well as information about the methods.
     bmtMethod->cMethAndGaps = bmtMethod->hEnumMethod.EnumGetCount();
 
-    bmtMethod->rgMethodTokens = new (&pThread->m_MarshalAlloc) mdToken[bmtMethod->cMethAndGaps]; 
-    bmtMethod->rgMethodRVA = new (&pThread->m_MarshalAlloc) ULONG[bmtMethod->cMethAndGaps]; 
-    bmtMethod->rgMethodAttrs = new (&pThread->m_MarshalAlloc) DWORD[bmtMethod->cMethAndGaps]; 
-    bmtMethod->rgMethodImplFlags = new (&pThread->m_MarshalAlloc) DWORD[bmtMethod->cMethAndGaps]; 
-    bmtMethod->rgMethodClassifications = new (&pThread->m_MarshalAlloc) DWORD[bmtMethod->cMethAndGaps]; 
+    bmtMethod->rgMethodTokens = new (GetStackingAllocator()) mdToken[bmtMethod->cMethAndGaps]; 
+    bmtMethod->rgMethodRVA = new (GetStackingAllocator()) ULONG[bmtMethod->cMethAndGaps]; 
+    bmtMethod->rgMethodAttrs = new (GetStackingAllocator()) DWORD[bmtMethod->cMethAndGaps]; 
+    bmtMethod->rgMethodImplFlags = new (GetStackingAllocator()) DWORD[bmtMethod->cMethAndGaps]; 
+    bmtMethod->rgMethodClassifications = new (GetStackingAllocator()) DWORD[bmtMethod->cMethAndGaps]; 
 
-    bmtMethod->rgszMethodName = new (&pThread->m_MarshalAlloc) LPCSTR[bmtMethod->cMethAndGaps];
+    bmtMethod->rgszMethodName = new (GetStackingAllocator()) LPCSTR[bmtMethod->cMethAndGaps];
 
-    bmtMethod->rgMethodImpl = new (&pThread->m_MarshalAlloc) BYTE[bmtMethod->cMethAndGaps]; 
-    bmtMethod->rgMethodType = new (&pThread->m_MarshalAlloc) BYTE[bmtMethod->cMethAndGaps]; 
+    bmtMethod->rgMethodImpl = new (GetStackingAllocator()) BYTE[bmtMethod->cMethAndGaps]; 
+    bmtMethod->rgMethodType = new (GetStackingAllocator()) BYTE[bmtMethod->cMethAndGaps]; 
 
     enum { SeenCtor = 1, SeenInvoke = 2, SeenBeginInvoke = 4, SeenEndInvoke = 8};
     unsigned delegateMethodsSeen = 0;
@@ -2961,10 +2955,8 @@ VOID    MethodTableBuilder::AllocateMethodWorkingMemory()
     CONTRACTL_END;
 
     DWORD i;
-    Thread *pThread = GetThread();
-
     // Allocate a MethodDesc* for each method (needed later when doing interfaces), and a FieldDesc* for each field
-    bmtMethod->ppMethodDescList = new (&pThread->m_MarshalAlloc) MethodDesc*[NumDeclaredMethods()];
+    bmtMethod->ppMethodDescList = new (GetStackingAllocator()) MethodDesc*[NumDeclaredMethods()];
     ZeroMemory(bmtMethod->ppMethodDescList, NumDeclaredMethods() * sizeof(MethodDesc *));
 
     // Create a temporary function table (we don't know how large the vtable will be until the very end,
@@ -2979,7 +2971,7 @@ VOID    MethodTableBuilder::AllocateMethodWorkingMemory()
     if (IsValueClass())
     {
         bmtVT->dwMaxVtableSize += NumDeclaredMethods();
-        bmtMethod->ppUnboxMethodDescList = new (&pThread->m_MarshalAlloc) MethodDesc*[NumDeclaredMethods()];
+        bmtMethod->ppUnboxMethodDescList = new (GetStackingAllocator()) MethodDesc*[NumDeclaredMethods()];
         ZeroMemory(bmtMethod->ppUnboxMethodDescList, NumDeclaredMethods() * sizeof(MethodDesc*));
     }
 
@@ -2997,13 +2989,13 @@ VOID    MethodTableBuilder::AllocateMethodWorkingMemory()
     }
 
     // Allocate the temporary vtable
-    bmtVT->pVtable = new (&pThread->m_MarshalAlloc)PCODE [bmtVT->dwMaxVtableSize];
+    bmtVT->pVtable = new (GetStackingAllocator())PCODE [bmtVT->dwMaxVtableSize];
     ZeroMemory(bmtVT->pVtable, bmtVT->dwMaxVtableSize * sizeof(PCODE));
-    bmtVT->pVtableMD = new (&pThread->m_MarshalAlloc) MethodDesc*[bmtVT->dwMaxVtableSize];
+    bmtVT->pVtableMD = new (GetStackingAllocator()) MethodDesc*[bmtVT->dwMaxVtableSize];
     ZeroMemory(bmtVT->pVtableMD, bmtVT->dwMaxVtableSize * sizeof(MethodDesc*));
 
     // Allocate the temporary non-vtable
-    bmtVT->pNonVtableMD = new (&pThread->m_MarshalAlloc) MethodDesc*[NumDeclaredMethods()];
+    bmtVT->pNonVtableMD = new (GetStackingAllocator()) MethodDesc*[NumDeclaredMethods()];
     ZeroMemory(bmtVT->pNonVtableMD, sizeof(MethodDesc*) * NumDeclaredMethods());
 
     if (bmtParent->pParentMethodTable != NULL)
@@ -3066,7 +3058,7 @@ VOID    MethodTableBuilder::AllocateMethodWorkingMemory()
     if (NumDeclaredMethods() > 0)
     {
         bmtParent->ppParentMethodDescBuf = (MethodDesc **)
-            pThread->m_MarshalAlloc.Alloc(S_UINT32(2) * S_UINT32(NumDeclaredMethods()) *
+            GetStackingAllocator()->Alloc(S_UINT32(2) * S_UINT32(NumDeclaredMethods()) *
                                           S_UINT32(sizeof(MethodDesc*)));
 
         bmtParent->ppParentMethodDescBufPtr = bmtParent->ppParentMethodDescBuf;
@@ -3532,10 +3524,9 @@ MethodNameHash *MethodTableBuilder::CreateMethodChainHash(MethodTable *pMT)
 {
     STANDARD_VM_CONTRACT;
 
-    Thread *pThread = GetThread();
-    MethodNameHash *pHash = new (&pThread->m_MarshalAlloc) MethodNameHash();
+    MethodNameHash *pHash = new (GetStackingAllocator()) MethodNameHash();
 
-    pHash->Init(pMT->GetNumVirtuals(), &(pThread->m_MarshalAlloc));
+    pHash->Init(pMT->GetNumVirtuals(), GetStackingAllocator());
 
     MethodTable::MethodIterator it(pMT);
     for (;it.IsValid(); it.Next())
index f16fcd0..a3f8aa4 100644 (file)
@@ -38,7 +38,6 @@ class   ArrayClass;
 class   ArrayMethodDesc;
 class   Assembly;
 class   ClassLoader;
-class   DomainLocalBlock;
 class   FCallMethodDesc;
 class   EEClass;
 class   LayoutEEClass;
@@ -200,11 +199,12 @@ public:
 class MethodTableBuilder
 {
 public:
-    MethodTableBuilder(MethodTable * pMT) 
+    MethodTableBuilder(MethodTable * pMT, StackingAllocator *pStackingAllocator
     {
         LIMITED_METHOD_CONTRACT;
         m_pHalfBakedMT = pMT;
         m_pHalfBakedClass = pMT->GetClass();
+        m_pStackingAllocator = pStackingAllocator;
         NullBMTData();
     }
 public:
@@ -241,6 +241,9 @@ private:
     // <NICE> Get rid of this.</NICE>
     EEClass *m_pHalfBakedClass;
     MethodTable * m_pHalfBakedMT;
+    StackingAllocator *m_pStackingAllocator;
+
+    StackingAllocator* GetStackingAllocator() { return m_pStackingAllocator; }
 
     // GetHalfBakedClass: The EEClass you get back from this function may not have all its fields filled in yet.
     // Thus you have to make sure that the relevant item which you are accessing has
index 323e29b..67b4dee 100644 (file)
@@ -2236,10 +2236,10 @@ TypeHandle ClassLoader::LookupTypeDefOrRefInModule(Module *pModule, mdToken cl,
     RETURN(typeHandle);
 }
 
-DomainAssembly *ClassLoader::GetDomainAssembly(AppDomain *pDomain/*=NULL*/)
+DomainAssembly *ClassLoader::GetDomainAssembly()
 {
     WRAPPER_NO_CONTRACT;
-    return GetAssembly()->GetDomainAssembly(pDomain);
+    return GetAssembly()->GetDomainAssembly();
 }
 
 #ifndef DACCESS_COMPILE
index a0debb2..32550fe 100644 (file)
@@ -636,7 +636,7 @@ public:
     void Init(AllocMemTracker *pamTracker);
 
     PTR_Assembly GetAssembly();
-    DomainAssembly* GetDomainAssembly(AppDomain *pDomain = NULL);
+    DomainAssembly* GetDomainAssembly();
 
     void    FreeModules();
 
index 00ed67a..f475541 100644 (file)
@@ -4357,6 +4357,31 @@ BOOL ExecutionManager::IsManagedCodeWorker(PCODE currentPC)
     return FALSE;
 }
 
+//**************************************************************************
+// Assumes that it is safe not to take it the ExecutionManager reader/writer lock
+BOOL ExecutionManager::IsReadyToRunCode(PCODE currentPC)
+{
+    CONTRACTL{
+        NOTHROW;
+        GC_NOTRIGGER;
+    } CONTRACTL_END;
+
+    // This may get called for arbitrary code addresses. Note that the lock is
+    // taken over the call to JitCodeToMethodInfo too so that nobody pulls out 
+    // the range section from underneath us.
+
+#ifdef FEATURE_READYTORUN
+    RangeSection * pRS = GetRangeSection(currentPC);
+    if (pRS != NULL && (pRS->flags & RangeSection::RANGE_SECTION_READYTORUN))
+    {
+        if (dac_cast<PTR_ReadyToRunJitManager>(pRS->pjit)->JitCodeToMethodInfo(pRS, currentPC, NULL, NULL))
+            return TRUE;
+    }
+#endif
+
+    return FALSE;
+}
+
 #ifndef DACCESS_COMPILE
 
 //**************************************************************************
index 04e7dd1..1dc8d8f 100644 (file)
@@ -1245,6 +1245,9 @@ public:
     // Special version with profiler hook
     static BOOL IsManagedCode(PCODE currentPC, HostCallPreference hostCallPreference, BOOL *pfFailedReaderLock);
 
+    // Returns true if currentPC is ready to run codegen
+    static BOOL IsReadyToRunCode(PCODE currentPC);
+
     // Returns method's start address for a given PC
     static PCODE GetCodeStartAddress(PCODE currentPC);
 
index a115238..93457b4 100644 (file)
@@ -819,7 +819,7 @@ FCIMPL1(void, DebugDebugger::CustomNotification, Object * dataUNSAFE)
         StrongHandleHolder objHandle = pAppDomain->CreateStrongHandle(pData);
         MethodTable * pMT = pData->GetGCSafeMethodTable();
         Module * pModule = pMT->GetModule();
-        DomainFile * pDomainFile = pModule->GetDomainFile(pAppDomain);
+        DomainFile * pDomainFile = pModule->GetDomainFile();
         mdTypeDef classToken = pMT->GetCl();
 
         pThread->SetThreadCurrNotification(objHandle);
index 562d551..a60f8d4 100644 (file)
@@ -2421,8 +2421,8 @@ void DomainAssembly::EnumStaticGCRefs(promote_func* fn, ScanContext* sc)
         {
             // We guarantee that at this point the module has it's DomainLocalModule set up
             // , as we create it while we load the module
-            _ASSERTE(pDomainFile->GetLoadedModule()->GetDomainLocalModule(this->GetAppDomain()));
-            pDomainFile->GetLoadedModule()->EnumRegularStaticGCRefs(this->GetAppDomain(), fn, sc);
+            _ASSERTE(pDomainFile->GetLoadedModule()->GetDomainLocalModule());
+            pDomainFile->GetLoadedModule()->EnumRegularStaticGCRefs(fn, sc);
 
             // We current to do not iterate over the ThreadLocalModules that correspond
             // to this Module. The GC discovers thread statics through the handle table.
index 21b651c..216a0e1 100644 (file)
@@ -104,6 +104,7 @@ public:
     // should fall back to the slow GetValue if GetValueSpeculative returns false.
     // Assumes that we are in cooperative mode already. For performance-sensitive codepaths.
     BOOL            GetValueSpeculative(KeyType pKey, HashDatum *pData);
+    BOOL            GetValueSpeculative(KeyType pKey, HashDatum *pData, DWORD hashValue);
 
     DWORD           GetHash(KeyType Key);
     DWORD           GetCount();
index 4ed9fa2..efb3ca5 100644 (file)
@@ -510,6 +510,32 @@ FORCEINLINE BOOL EEHashTableBase<KeyType, Helper, bDefaultCopyIsDeep>::GetValueS
 }
 
 template <class KeyType, class Helper, BOOL bDefaultCopyIsDeep>
+FORCEINLINE BOOL EEHashTableBase<KeyType, Helper, bDefaultCopyIsDeep>::GetValueSpeculative(KeyType pKey, HashDatum *pData, DWORD hashValue)
+{
+    CONTRACTL
+    {
+        WRAPPER(THROWS);
+        WRAPPER(GC_NOTRIGGER);
+#ifdef MODE_COOPERATIVE     // This header file sees contract.h, not eecontract.h - what a kludge!
+        MODE_COOPERATIVE;
+#endif
+    }
+    CONTRACTL_END
+
+    EEHashEntry_t *pItem = FindItemSpeculative(pKey, hashValue);
+
+    if (pItem != NULL)
+    {
+        *pData = pItem->Data;
+        return TRUE;
+    }
+    else
+    {
+        return FALSE;
+    }
+}
+
+template <class KeyType, class Helper, BOOL bDefaultCopyIsDeep>
 EEHashEntry_t *EEHashTableBase<KeyType, Helper, bDefaultCopyIsDeep>::FindItem(KeyType pKey)
 {
     CONTRACTL
index 6af54de..b5c5e09 100644 (file)
@@ -251,18 +251,30 @@ EventPipeSessionID EventPipe::Enable(
     }
     CONTRACTL_END;
 
-    // Take the lock before enabling tracing.
-    CrstHolder _crst(GetLock());
+    EventPipeSessionID sessionId;
+    EventPipeProviderCallbackDataQueue eventPipeProviderCallbackDataQueue;
+    EventPipeProviderCallbackData eventPipeProviderCallbackData;
+    {
+        // Take the lock before enabling tracing.
+        CrstHolder _crst(GetLock());
+
+        // Create a new session.
+        SampleProfiler::SetSamplingRate((unsigned long)profilerSamplingRateInNanoseconds);
+        EventPipeSession *pSession = s_pConfig->CreateSession(
+            (strOutputPath != NULL) ? EventPipeSessionType::File : EventPipeSessionType::Streaming,
+            circularBufferSizeInMB,
+            pProviders,
+            numProviders);
 
-    // Create a new session.
-    SampleProfiler::SetSamplingRate(static_cast<unsigned long>(profilerSamplingRateInNanoseconds));
-    EventPipeSession *pSession = s_pConfig->CreateSession(
-        sessionType,
-        circularBufferSizeInMB,
-        pProviders,
-        numProviders);
+        // Enable the session.
+        sessionId = Enable(strOutputPath, pSession, sessionType, pStream, &eventPipeProviderCallbackDataQueue);
+    }
+
+    while (eventPipeProviderCallbackDataQueue.TryDequeue(&eventPipeProviderCallbackData))
+    {
+        EventPipeProvider::InvokeCallback(eventPipeProviderCallbackData);
+    }
 
-    EventPipeSessionID sessionId = Enable(strOutputPath, pSession, sessionType, pStream);
     return sessionId;
 }
 
@@ -270,7 +282,8 @@ EventPipeSessionID EventPipe::Enable(
     LPCWSTR strOutputPath,
     EventPipeSession *const pSession,
     EventPipeSessionType sessionType,
-    IpcStream *const pStream)
+    IpcStream *const pStream,
+    EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue)
 {
     CONTRACTL
     {
@@ -322,10 +335,10 @@ EventPipeSessionID EventPipe::Enable(
     }
 
     // Enable tracing.
-    s_pConfig->Enable(s_pSession);
+    s_pConfig->Enable(s_pSession, pEventPipeProviderCallbackDataQueue);
 
     // Enable the sample profiler
-    SampleProfiler::Enable();
+    SampleProfiler::Enable(pEventPipeProviderCallbackDataQueue);
 
     // Return the session ID.
     return sessionId;
@@ -349,12 +362,21 @@ void EventPipe::Disable(EventPipeSessionID id)
     // Don't block GC during clean-up.
     GCX_PREEMP();
 
-    // Take the lock before disabling tracing.
-    CrstHolder _crst(GetLock());
-    DisableInternal(reinterpret_cast<EventPipeSessionID>(s_pSession));
+    EventPipeProviderCallbackDataQueue eventPipeProviderCallbackDataQueue;
+    EventPipeProviderCallbackData eventPipeProviderCallbackData;
+    {
+        // Take the lock before disabling tracing.
+        CrstHolder _crst(GetLock());
+        DisableInternal(reinterpret_cast<EventPipeSessionID>(s_pSession), &eventPipeProviderCallbackDataQueue);
+    }
+
+    while (eventPipeProviderCallbackDataQueue.TryDequeue(&eventPipeProviderCallbackData))
+    {
+        EventPipeProvider::InvokeCallback(eventPipeProviderCallbackData);
+    }
 }
 
-void EventPipe::DisableInternal(EventPipeSessionID id)
+void EventPipe::DisableInternal(EventPipeSessionID id, EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue)
 {
     CONTRACTL
     {
@@ -377,7 +399,7 @@ void EventPipe::DisableInternal(EventPipeSessionID id)
         ETW::InfoLog::RuntimeInformation(ETW::InfoLog::InfoStructs::Normal);
 
         // Disable tracing.
-        s_pConfig->Disable(s_pSession);
+        s_pConfig->Disable(s_pSession, pEventPipeProviderCallbackDataQueue);
 
         // Delete the session.
         s_pConfig->DeleteSession(s_pSession);
@@ -410,14 +432,14 @@ void EventPipe::DisableInternal(EventPipeSessionID id)
                     1 /* circularBufferSizeInMB */,
                     RundownProviders,
                     sizeof(RundownProviders) / sizeof(EventPipeProviderConfiguration));
-                s_pConfig->EnableRundown(s_pSession);
+                s_pConfig->EnableRundown(s_pSession, pEventPipeProviderCallbackDataQueue);
 
                 // Ask the runtime to emit rundown events.
                 if (g_fEEStarted && !g_fEEShutDown)
                     ETW::EnumerationLog::EndRundown();
 
                 // Disable the event pipe now that rundown is complete.
-                s_pConfig->Disable(s_pSession);
+                s_pConfig->Disable(s_pSession, pEventPipeProviderCallbackDataQueue);
 
                 // Delete the rundown session.
                 s_pConfig->DeleteSession(s_pSession);
@@ -518,36 +540,45 @@ void WINAPI EventPipe::FlushTimer(PVOID parameter, BOOLEAN timerFired)
 
     GCX_PREEMP();
 
-    // Take the lock control lock to make sure that tracing isn't disabled during this operation.
-    CrstHolder _crst(GetLock());
+    EventPipeProviderCallbackDataQueue eventPipeProviderCallbackDataQueue;
+    EventPipeProviderCallbackData eventPipeProviderCallbackData;
+    {
+        // Take the lock control lock to make sure that tracing isn't disabled during this operation.
+        CrstHolder _crst(GetLock());
 
-    if (s_pSession == nullptr || s_pFile == nullptr)
-        return;
+        if (s_pSession == nullptr || s_pFile == nullptr)
+            return;
 
-    // Make sure that we should actually switch files.
-    if (!Enabled() || s_pSession->GetSessionType() != EventPipeSessionType::IpcStream)
-        return;
+        // Make sure that we should actually switch files.
+        if (!Enabled() || s_pSession->GetSessionType() != EventPipeSessionType::IpcStream)
+            return;
 
-    if (CLRGetTickCount64() > (s_lastFlushSwitchTime + 100))
-    {
-        // Get the current time stamp.
-        // WriteAllBuffersToFile will use this to ensure that no events after
-        // the current timestamp are written into the file.
-        LARGE_INTEGER stopTimeStamp;
-        QueryPerformanceCounter(&stopTimeStamp);
-        s_pBufferManager->WriteAllBuffersToFile(s_pFile, stopTimeStamp);
+        if (CLRGetTickCount64() > (s_lastFlushSwitchTime + 100))
+        {
+            // Get the current time stamp.
+            // WriteAllBuffersToFile will use this to ensure that no events after
+            // the current timestamp are written into the file.
+            LARGE_INTEGER stopTimeStamp;
+            QueryPerformanceCounter(&stopTimeStamp);
+            s_pBufferManager->WriteAllBuffersToFile(s_pFile, stopTimeStamp);
+
+            s_lastFlushSwitchTime = CLRGetTickCount64();
+        }
 
-        s_lastFlushSwitchTime = CLRGetTickCount64();
+        if (s_pFile->HasErrors())
+        {
+            EX_TRY
+            {
+                DisableInternal(reinterpret_cast<EventPipeSessionID>(s_pSession), &eventPipeProviderCallbackDataQueue);
+            }
+            EX_CATCH {}
+            EX_END_CATCH(SwallowAllExceptions);
+        }
     }
 
-    if (s_pFile->HasErrors())
+    while (eventPipeProviderCallbackDataQueue.TryDequeue(&eventPipeProviderCallbackData))
     {
-        EX_TRY
-        {
-            DisableInternal(reinterpret_cast<EventPipeSessionID>(s_pSession));
-        }
-        EX_CATCH {}
-        EX_END_CATCH(SwallowAllExceptions);
+        EventPipeProvider::InvokeCallback(eventPipeProviderCallbackData);
     }
 }
 
@@ -583,15 +614,41 @@ EventPipeProvider *EventPipe::CreateProvider(const SString &providerName, EventP
         THROWS;
         GC_TRIGGERS;
         MODE_ANY;
+        PRECONDITION(!GetLock()->OwnedByCurrentThread());
     }
     CONTRACTL_END;
+    
+    EventPipeProvider *pProvider = NULL;
+    EventPipeProviderCallbackDataQueue eventPipeProviderCallbackDataQueue;
+    EventPipeProviderCallbackData eventPipeProviderCallbackData;
+    {
+        CrstHolder _crst(GetLock());
+        pProvider = EventPipe::CreateProvider(providerName, pCallbackFunction, pCallbackData, &eventPipeProviderCallbackDataQueue);
+    }
+    while (eventPipeProviderCallbackDataQueue.TryDequeue(&eventPipeProviderCallbackData))
+    {
+        EventPipeProvider::InvokeCallback(eventPipeProviderCallbackData);
+    }
 
+    return pProvider;
+}
+
+EventPipeProvider *EventPipe::CreateProvider(const SString &providerName, EventPipeCallback pCallbackFunction, void *pCallbackData, EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue)
+{
+    CONTRACTL
+    {
+        THROWS;
+        GC_TRIGGERS;
+        MODE_ANY;
+        PRECONDITION(GetLock()->OwnedByCurrentThread());
+    }
+    CONTRACTL_END;
+    
     EventPipeProvider *pProvider = NULL;
     if (s_pConfig != NULL)
     {
-        pProvider = s_pConfig->CreateProvider(providerName, pCallbackFunction, pCallbackData);
+        pProvider = s_pConfig->CreateProvider(providerName, pCallbackFunction, pCallbackData, pEventPipeProviderCallbackDataQueue);
     }
-
     return pProvider;
 }
 
index b40a0b7..842896e 100644 (file)
@@ -234,6 +234,8 @@ public:
 
 typedef UINT64 EventPipeSessionID;
 
+class EventPipeProviderCallbackDataQueue;
+
 class EventPipe
 {
     // Declare friends.
@@ -272,6 +274,8 @@ public:
     // Create a provider.
     static EventPipeProvider *CreateProvider(const SString &providerName, EventPipeCallback pCallbackFunction = NULL, void *pCallbackData = NULL);
 
+    static EventPipeProvider *CreateProvider(const SString &providerName, EventPipeCallback pCallbackFunction, void *pCallbackData, EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue);
+
     // Get a provider.
     static EventPipeProvider *GetProvider(const SString &providerName);
 
@@ -305,14 +309,15 @@ private:
     // The counterpart to WriteEvent which after the payload is constructed
     static void WriteEventInternal(EventPipeEvent &event, EventPipeEventPayload &payload, LPCGUID pActivityId = NULL, LPCGUID pRelatedActivityId = NULL);
 
-    static void DisableInternal(EventPipeSessionID id);
+    static void DisableInternal(EventPipeSessionID id, EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue);
 
     // Enable the specified EventPipe session.
     static EventPipeSessionID Enable(
         LPCWSTR strOutputPath,
         EventPipeSession *const pSession,
         EventPipeSessionType sessionType,
-        IpcStream *const pStream);
+        IpcStream *const pStream,
+        EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue);
 
     static void CreateFlushTimerCallback();
 
index 9c7d396..9fb09b9 100644 (file)
@@ -91,9 +91,19 @@ void EventPipeConfiguration::Initialize()
         MODE_ANY;
     }
     CONTRACTL_END;
+    
+    EventPipeProviderCallbackDataQueue eventPipeProviderCallbackDataQueue;
+    EventPipeProviderCallbackData eventPipeProviderCallbackData;
+    {
+        CrstHolder _crst(EventPipe::GetLock());
 
-    // Create the configuration provider.
-    m_pConfigProvider = CreateProvider(SL(s_configurationProviderName), NULL, NULL);
+        // Create the configuration provider.
+        m_pConfigProvider = CreateProvider(SL(s_configurationProviderName), NULL, NULL, &eventPipeProviderCallbackDataQueue);
+    }
+    while (eventPipeProviderCallbackDataQueue.TryDequeue(&eventPipeProviderCallbackData))
+    {
+        EventPipeProvider::InvokeCallback(eventPipeProviderCallbackData);
+    }
 
     // Create the metadata event.
     m_pMetadataEvent = m_pConfigProvider->AddEvent(
@@ -104,13 +114,14 @@ void EventPipeConfiguration::Initialize()
         false); /* needStack */
 }
 
-EventPipeProvider *EventPipeConfiguration::CreateProvider(const SString &providerName, EventPipeCallback pCallbackFunction, void *pCallbackData)
+EventPipeProvider *EventPipeConfiguration::CreateProvider(const SString &providerName, EventPipeCallback pCallbackFunction, void *pCallbackData, EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue)
 {
     CONTRACTL
     {
         THROWS;
         GC_TRIGGERS;
         MODE_ANY;
+        PRECONDITION(EventPipe::GetLock()->OwnedByCurrentThread());
     }
     CONTRACTL_END;
 
@@ -118,7 +129,7 @@ EventPipeProvider *EventPipeConfiguration::CreateProvider(const SString &provide
     EventPipeProvider *pProvider = new EventPipeProvider(this, providerName, pCallbackFunction, pCallbackData);
 
     // Register the provider with the configuration system.
-    RegisterProvider(*pProvider);
+    RegisterProvider(*pProvider, pEventPipeProviderCallbackDataQueue);
 
     return pProvider;
 }
@@ -144,19 +155,17 @@ void EventPipeConfiguration::DeleteProvider(EventPipeProvider *pProvider)
     delete pProvider;
 }
 
-bool EventPipeConfiguration::RegisterProvider(EventPipeProvider &provider)
+bool EventPipeConfiguration::RegisterProvider(EventPipeProvider &provider, EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue)
 {
     CONTRACTL
     {
         THROWS;
         GC_TRIGGERS;
         MODE_ANY;
+        PRECONDITION(EventPipe::GetLock()->OwnedByCurrentThread());
     }
     CONTRACTL_END;
 
-    // Take the lock before manipulating the provider list.
-    CrstHolder _crst(EventPipe::GetLock());
-
     // See if we've already registered this provider.
     EventPipeProvider *pExistingProvider = GetProviderNoLock(provider.GetProviderName());
     if (pExistingProvider != NULL)
@@ -177,11 +186,12 @@ bool EventPipeConfiguration::RegisterProvider(EventPipeProvider &provider)
         EventPipeSessionProvider *pSessionProvider = GetSessionProvider(m_pSession, &provider);
         if (pSessionProvider != NULL)
         {
-            provider.SetConfiguration(
+            EventPipeProviderCallbackData eventPipeProviderCallbackData = provider.SetConfiguration(
                 true /* providerEnabled */,
                 pSessionProvider->GetKeywords(),
                 pSessionProvider->GetLevel(),
                 pSessionProvider->GetFilterData());
+            pEventPipeProviderCallbackDataQueue->Enqueue(&eventPipeProviderCallbackData);
         }
     }
 
@@ -350,7 +360,7 @@ void EventPipeConfiguration::DeleteSession(EventPipeSession *pSession)
     }
 }
 
-void EventPipeConfiguration::Enable(EventPipeSession *pSession)
+void EventPipeConfiguration::Enable(EventPipeSession *pSession, EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue)
 {
     CONTRACTL
     {
@@ -363,6 +373,8 @@ void EventPipeConfiguration::Enable(EventPipeSession *pSession)
     }
     CONTRACTL_END;
 
+    EventPipeProviderCallbackData eventPipeProviderCallbackData;
+
     m_pSession = pSession;
     m_enabled = true;
 
@@ -378,11 +390,12 @@ void EventPipeConfiguration::Enable(EventPipeSession *pSession)
             EventPipeSessionProvider *pSessionProvider = GetSessionProvider(m_pSession, pProvider);
             if (pSessionProvider != NULL)
             {
-                pProvider->SetConfiguration(
+                eventPipeProviderCallbackData = pProvider->SetConfiguration(
                     true /* providerEnabled */,
                     pSessionProvider->GetKeywords(),
                     pSessionProvider->GetLevel(),
                     pSessionProvider->GetFilterData());
+                pEventPipeProviderCallbackDataQueue->Enqueue(&eventPipeProviderCallbackData);
             }
 
             pElem = m_pProviderList->GetNext(pElem);
@@ -390,7 +403,7 @@ void EventPipeConfiguration::Enable(EventPipeSession *pSession)
     }
 }
 
-void EventPipeConfiguration::Disable(EventPipeSession *pSession)
+void EventPipeConfiguration::Disable(EventPipeSession *pSession, EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue)
 {
     CONTRACTL
     {
@@ -405,6 +418,8 @@ void EventPipeConfiguration::Disable(EventPipeSession *pSession)
     }
     CONTRACTL_END;
 
+    EventPipeProviderCallbackData eventPipeProviderCallbackData;
+
     // The provider list should be non-NULL, but can be NULL on shutdown.
     if (m_pProviderList != NULL)
     {
@@ -412,11 +427,12 @@ void EventPipeConfiguration::Disable(EventPipeSession *pSession)
         while (pElem != NULL)
         {
             EventPipeProvider *pProvider = pElem->GetValue();
-            pProvider->SetConfiguration(
+            eventPipeProviderCallbackData = pProvider->SetConfiguration(
                 false /* providerEnabled */,
                 0 /* keywords */,
                 EventPipeEventLevel::Critical /* level */,
                 NULL /* filterData */);
+            pEventPipeProviderCallbackDataQueue->Enqueue(&eventPipeProviderCallbackData);
 
             pElem = m_pProviderList->GetNext(pElem);
         }
@@ -440,7 +456,7 @@ bool EventPipeConfiguration::RundownEnabled() const
     return m_rundownEnabled;
 }
 
-void EventPipeConfiguration::EnableRundown(EventPipeSession *pSession)
+void EventPipeConfiguration::EnableRundown(EventPipeSession *pSession, EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue)
 {
     CONTRACTL
     {
@@ -463,7 +479,7 @@ void EventPipeConfiguration::EnableRundown(EventPipeSession *pSession)
     m_rundownEnabled = true;
 
     // Enable tracing.
-    Enable(pSession);
+    Enable(pSession, pEventPipeProviderCallbackDataQueue);
 }
 
 EventPipeEventInstance *EventPipeConfiguration::BuildEventMetadataEvent(EventPipeEventInstance &sourceInstance, unsigned int metadataId)
index 270ed44..bc88e36 100644 (file)
@@ -26,6 +26,36 @@ enum class EventPipeEventLevel
     Verbose
 };
 
+struct EventPipeProviderCallbackData
+{
+    LPCWSTR pFilterData;
+    EventPipeCallback pCallbackFunction;
+    bool enabled;
+    INT64 keywords;
+    EventPipeEventLevel providerLevel;
+    void* pCallbackData;
+};
+
+struct EventPipeProviderCallbackDataNode
+{
+    EventPipeProviderCallbackData* value;
+    EventPipeProviderCallbackDataNode* prev;
+};
+
+class EventPipeProviderCallbackDataQueue
+{
+public:
+    EventPipeProviderCallbackDataQueue();
+
+    void Enqueue(EventPipeProviderCallbackData* pEventPipeProviderCallbackData);
+
+    bool TryDequeue(EventPipeProviderCallbackData* pEventPipeProviderCallbackData);
+
+private:
+    EventPipeProviderCallbackDataNode* front;
+    EventPipeProviderCallbackDataNode* back;
+};
+
 class EventPipeConfiguration
 {
 public:
@@ -36,13 +66,13 @@ public:
     void Initialize();
 
     // Create a new provider.
-    EventPipeProvider *CreateProvider(const SString &providerName, EventPipeCallback pCallbackFunction, void *pCallbackData);
+    EventPipeProvider *CreateProvider(const SString &providerName, EventPipeCallback pCallbackFunction, void *pCallbackData, EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue);
 
     // Delete a provider.
     void DeleteProvider(EventPipeProvider *pProvider);
 
     // Register a provider.
-    bool RegisterProvider(EventPipeProvider &provider);
+    bool RegisterProvider(EventPipeProvider &provider, EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue);
 
     // Unregister a provider.
     bool UnregisterProvider(EventPipeProvider &provider);
@@ -64,10 +94,10 @@ public:
     size_t GetCircularBufferSize() const;
 
     // Enable a session in the event pipe.
-    void Enable(EventPipeSession *pSession);
+    void Enable(EventPipeSession *pSession, EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue);
 
     // Disable a session in the event pipe.
-    void Disable(EventPipeSession *pSession);
+    void Disable(EventPipeSession *pSession, EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue);
 
     // Get the status of the event pipe.
     bool Enabled() const;
@@ -76,7 +106,7 @@ public:
     bool RundownEnabled() const;
 
     // Enable rundown using the specified configuration.
-    void EnableRundown(EventPipeSession *pSession);
+    void EnableRundown(EventPipeSession *pSession, EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue);
 
     // Get the event used to write metadata to the event stream.
     EventPipeEventInstance *BuildEventMetadataEvent(EventPipeEventInstance &sourceInstance, unsigned int metdataId);
index 4c6eabc..96bde58 100644 (file)
 
 #ifdef FEATURE_PERFTRACING
 
+EventPipeProviderCallbackDataQueue::EventPipeProviderCallbackDataQueue()
+{
+    this->front = this->back = NULL;
+}
+
+void EventPipeProviderCallbackDataQueue::Enqueue(EventPipeProviderCallbackData* pEventPipeProviderCallbackData)
+{
+    EventPipeProviderCallbackDataNode* newNode = new EventPipeProviderCallbackDataNode(); // throws
+    newNode->prev = NULL;
+    newNode->value = new EventPipeProviderCallbackData(); // throws
+    *(newNode->value) = *pEventPipeProviderCallbackData;
+    if (this->back == NULL)
+    {
+        this->front = this->back = newNode;
+    }
+    else
+    {
+        this->back->prev = newNode;
+        this->back = newNode;
+    }
+}
+
+bool EventPipeProviderCallbackDataQueue::TryDequeue(EventPipeProviderCallbackData* pEventPipeProviderCallbackData)
+{
+    if (this->front == nullptr)
+    {
+        return false;
+    }
+
+    EventPipeProviderCallbackDataNode* oldNode = this->front;
+    this->front = this->front->prev;
+    if (this->front == nullptr)
+    {
+        this->back = nullptr;
+    }
+    
+    *pEventPipeProviderCallbackData = *(oldNode->value);
+    delete oldNode;
+    return true;
+}
+
 EventPipeProvider::EventPipeProvider(EventPipeConfiguration *pConfig, const SString &providerName, EventPipeCallback pCallbackFunction, void *pCallbackData)
 {
     CONTRACTL
@@ -111,7 +152,7 @@ bool EventPipeProvider::EventEnabled(INT64 keywords, EventPipeEventLevel eventLe
         ((eventLevel == EventPipeEventLevel::LogAlways) || (m_providerLevel >= eventLevel)));
 }
 
-void EventPipeProvider::SetConfiguration(bool providerEnabled, INT64 keywords, EventPipeEventLevel providerLevel, LPCWSTR pFilterData)
+EventPipeProviderCallbackData EventPipeProvider::SetConfiguration(bool providerEnabled, INT64 keywords, EventPipeEventLevel providerLevel, LPCWSTR pFilterData)
 {
     CONTRACTL
     {
@@ -127,7 +168,7 @@ void EventPipeProvider::SetConfiguration(bool providerEnabled, INT64 keywords, E
     m_providerLevel = providerLevel;
 
     RefreshAllEvents();
-    InvokeCallback(pFilterData);
+    return PrepareCallbackData(pFilterData);
 }
 
 EventPipeEvent* EventPipeProvider::AddEvent(unsigned int eventID, INT64 keywords, unsigned int eventVersion, EventPipeEventLevel level, bool needStack, BYTE *pMetadata, unsigned int metadataLength)
@@ -173,17 +214,23 @@ void EventPipeProvider::AddEvent(EventPipeEvent &event)
     event.RefreshState();
 }
 
-void EventPipeProvider::InvokeCallback(LPCWSTR pFilterData)
+/* static */ void EventPipeProvider::InvokeCallback(EventPipeProviderCallbackData eventPipeProviderCallbackData)
 {
     CONTRACTL
     {
         THROWS;
         GC_TRIGGERS;
         MODE_ANY;
-        PRECONDITION(EventPipe::GetLock()->OwnedByCurrentThread());
+        PRECONDITION(!EventPipe::GetLock()->OwnedByCurrentThread());
     }
     CONTRACTL_END;
 
+    LPCWSTR pFilterData = eventPipeProviderCallbackData.pFilterData;
+    EventPipeCallback pCallbackFunction = eventPipeProviderCallbackData.pCallbackFunction;
+    bool enabled = eventPipeProviderCallbackData.enabled;
+    INT64 keywords = eventPipeProviderCallbackData.keywords;
+    EventPipeEventLevel providerLevel = eventPipeProviderCallbackData.providerLevel;
+    void* pCallbackData = eventPipeProviderCallbackData.pCallbackData;
 
     bool isEventFilterDescriptorInitialized = false;
     EventFilterDescriptor eventFilterDescriptor{};
@@ -211,21 +258,42 @@ void EventPipeProvider::InvokeCallback(LPCWSTR pFilterData)
         isEventFilterDescriptorInitialized = true;
     }
 
-    if(m_pCallbackFunction != NULL && !g_fEEShutDown)
+    if(pCallbackFunction != NULL && !g_fEEShutDown)
     {
-        (*m_pCallbackFunction)(
+        (*pCallbackFunction)(
             NULL, /* providerId */
-            m_enabled,
-            (UCHAR) m_providerLevel,
-            m_keywords,
+            enabled,
+            (UCHAR) providerLevel,
+            keywords,
             0 /* matchAllKeywords */,
             isEventFilterDescriptorInitialized ? &eventFilterDescriptor : NULL,
-            m_pCallbackData /* CallbackContext */);
+            pCallbackData /* CallbackContext */);
     }
 
     buffer.Destroy();
 }
 
+EventPipeProviderCallbackData EventPipeProvider::PrepareCallbackData(LPCWSTR pFilterData)
+{
+    CONTRACTL
+    {
+        THROWS;
+        GC_TRIGGERS;
+        MODE_ANY;
+        PRECONDITION(EventPipe::GetLock()->OwnedByCurrentThread());
+    }
+    CONTRACTL_END;
+
+    EventPipeProviderCallbackData result;
+    result.pFilterData = pFilterData;
+    result.pCallbackFunction = m_pCallbackFunction;
+    result.enabled = m_enabled;
+    result.providerLevel = m_providerLevel;
+    result.keywords = m_keywords;
+    result.pCallbackData = m_pCallbackData;
+    return result;
+}
+
 bool EventPipeProvider::GetDeleteDeferred() const
 {
     LIMITED_METHOD_CONTRACT;
index 6da1ec7..d20b492 100644 (file)
@@ -78,13 +78,16 @@ private:
 
     // Set the provider configuration (enable and disable sets of events).
     // This is called by EventPipeConfiguration.
-    void SetConfiguration(bool providerEnabled, INT64 keywords, EventPipeEventLevel providerLevel, LPCWSTR pFilterData);
+    EventPipeProviderCallbackData SetConfiguration(bool providerEnabled, INT64 keywords, EventPipeEventLevel providerLevel, LPCWSTR pFilterData);
 
     // Refresh the runtime state of all events.
     void RefreshAllEvents();
 
+    // Prepare the data required for invoking callback
+    EventPipeProviderCallbackData PrepareCallbackData(LPCWSTR pFilterData);
+
     // Invoke the provider callback.
-    void InvokeCallback(LPCWSTR pFilterData);
+    static void InvokeCallback(EventPipeProviderCallbackData eventPipeProviderCallbackData);
 
     // Specifies whether or not the provider was deleted, but that deletion
     // was deferred until after tracing is stopped.
index 7c30cde..4eb424f 100644 (file)
@@ -1513,7 +1513,7 @@ void BulkStaticsLogger::LogAllStatics()
                 if (module == NULL)
                     continue;
 
-                DomainFile *domainFile = module->FindDomainFile(domain);
+                DomainFile *domainFile = module->GetDomainFile();
                 if (domainFile == NULL)
                     continue;
 
@@ -1521,7 +1521,7 @@ void BulkStaticsLogger::LogAllStatics()
                 if (!domainFile->IsActive())
                     continue;
 
-                DomainLocalModule *domainModule = module->GetDomainLocalModule(domain);
+                DomainLocalModule *domainModule = module->GetDomainLocalModule();
                 if (domainModule == NULL)
                     continue;
 
@@ -6092,7 +6092,7 @@ VOID ETW::LoaderLog::SendModuleEvent(Module *pModule, DWORD dwEventOptions, BOOL
     {
         if(pModule->GetDomain()->IsSharedDomain()) // for shared domains, we do not fire domainmodule event
             return;
-        ullAppDomainId = (ULONGLONG)pModule->FindDomainAssembly(pModule->GetDomain()->AsAppDomain())->GetAppDomain();
+        ullAppDomainId = (ULONGLONG)pModule->GetDomainAssembly()->GetAppDomain();
     }
 
     LPCWSTR pEmptyString = W("");
@@ -7193,7 +7193,7 @@ VOID ETW::EnumerationLog::IterateAssembly(Assembly *pAssembly, DWORD enumeration
         {
             if(pAssembly->GetDomain()->IsAppDomain())
             {
-                DomainModuleIterator dmIterator = pAssembly->FindDomainAssembly(pAssembly->GetDomain()->AsAppDomain())->IterateModules(kModIterIncludeLoaded);
+                DomainModuleIterator dmIterator = pAssembly->GetDomainAssembly()->IterateModules(kModIterIncludeLoaded);
                 while (dmIterator.Next()) 
                 {
                     ETW::LoaderLog::SendModuleEvent(dmIterator.GetModule(), enumerationOptions, TRUE);
index 8574caf..948913c 100644 (file)
@@ -1839,6 +1839,12 @@ CLRUnwindStatus ExceptionTracker::ProcessOSExceptionNotification(
             //
             //    Thus, ICF::ExceptionUnwind should not do anything significant. If any of these assumptions
             //    break, then the next best thing will be to make the JIT link/unlink the frame dynamically.
+            //
+            // If the current method executing is from precompiled ReadyToRun code, then the above is no longer
+            // applicable because each PInvoke is wrapped by calls to the JIT_PInvokeBegin and JIT_PInvokeEnd
+            // helpers, which push and pop the ICF to the current thread. Unlike jitted code, the ICF is not
+            // linked during the method prolog, and unlinked at the epilog (it looks more like the X64 case).
+            // In that case, we need to unlink the ICF during unwinding here.
 
             if (fTargetUnwind && (pFrame->GetVTablePtr() == InlinedCallFrame::GetMethodFrameVPtr()))
             {
@@ -1851,9 +1857,21 @@ CLRUnwindStatus ExceptionTracker::ProcessOSExceptionNotification(
                     ((UINT_PTR)pICF < uCallerSP)) 
                 {
                     pICFForUnwindTarget = pFrame;
+
+                    // When unwinding an exception in ReadyToRun, the JIT_PInvokeEnd helper which unlinks the ICF from 
+                    // the thread will be skipped. This is because unlike jitted code, each pinvoke is wrapped by calls
+                    // to the JIT_PInvokeBegin and JIT_PInvokeEnd helpers, which push and pop the ICF on the thread. The
+                    // ICF is not linked at the method prolog and unlined at the epilog when running R2R code. Since the
+                    // JIT_PInvokeEnd helper will be skipped, we need to unlink the ICF here. If the executing method
+                    // has another pinovoke, it will re-link the ICF again when the JIT_PInvokeBegin helper is called
+
+                    if (ExecutionManager::IsReadyToRunCode(((InlinedCallFrame*)pFrame)->m_pCallerReturnAddress))
+                    {
+                        pICFForUnwindTarget = pICFForUnwindTarget->Next();
+                    }
                 }
             }
-#endif // defined(_TARGET_ARM_)
+#endif // USE_PER_FRAME_PINVOKE_INIT
 
             cfThisFrame.CheckGSCookies();
 
index 38b6393..c526453 100644 (file)
@@ -451,7 +451,6 @@ public:
         }
     }
 
-#ifndef DACCESS_COMPILE
     PTR_BYTE GetBase()
     {
         CONTRACTL
@@ -467,28 +466,6 @@ public:
         return GetBaseInDomainLocalModule(pMT->GetDomainLocalModule());
     }
 
-#endif //!DACCESS_COMPILE
-
-    PTR_BYTE GetBaseInDomain(AppDomain * appDomain)
-    {
-        CONTRACTL
-        {
-            NOTHROW;
-            GC_NOTRIGGER;
-        }
-        CONTRACTL_END;
-
-        Module *pModule = GetEnclosingMethodTable()->GetModuleForStatics();
-        if (pModule == NULL)
-            return NULL;
-
-        DomainLocalModule *pLocalModule = pModule->GetDomainLocalModule(appDomain);
-        if (pLocalModule == NULL)
-            return NULL;
-
-        return GetBaseInDomainLocalModule(pLocalModule);
-    }
-
     // returns the address of the field
     void* GetStaticAddress(void *base);
 
index 5fe5173..8e47cae 100644 (file)
@@ -454,7 +454,9 @@ DWORD WINAPI BackgroundThreadStub(void* arg)
 //
 
 #if defined(GC_PROFILING) || defined(FEATURE_EVENT_TRACE)
-inline BOOL ShouldTrackMovementForProfilerOrEtw()
+
+// Tracks all surviving objects (moved or otherwise).
+inline bool ShouldTrackSurvivorsForProfilerOrEtw()
 {
 #ifdef GC_PROFILING
     if (CORProfilerTrackGC())
@@ -468,6 +470,16 @@ inline BOOL ShouldTrackMovementForProfilerOrEtw()
 
     return false;
 }
+
+// Only tracks surviving objects in compacting GCs (moved or otherwise).
+inline bool ShouldTrackSurvivorsInCompactingGCsForProfiler()
+{
+#ifdef GC_PROFILING
+    if (CORProfilerTrackGCMovedObjects())
+        return true;
+#endif
+    return false;
+}
 #endif // defined(GC_PROFILING) || defined(FEATURE_EVENT_TRACE)
 
 void ProfScanRootsHelper(Object** ppObject, ScanContext *pSC, uint32_t dwFlags)
@@ -788,10 +800,11 @@ void WalkMovedReferences(uint8_t* begin, uint8_t* end,
                                !fBGC);
 }
 
-void GCToEEInterface::DiagWalkSurvivors(void* gcContext)
+void GCToEEInterface::DiagWalkSurvivors(void* gcContext, bool fCompacting)
 {
 #if defined(GC_PROFILING) || defined(FEATURE_EVENT_TRACE)
-    if (ShouldTrackMovementForProfilerOrEtw())
+    if (ShouldTrackSurvivorsForProfilerOrEtw() ||
+        (fCompacting && ShouldTrackSurvivorsInCompactingGCsForProfiler()))
     {
         size_t context = 0;
         ETW::GCLog::BeginMovedReferences(&context);
@@ -804,7 +817,7 @@ void GCToEEInterface::DiagWalkSurvivors(void* gcContext)
 void GCToEEInterface::DiagWalkLOHSurvivors(void* gcContext)
 {
 #if defined(GC_PROFILING) || defined(FEATURE_EVENT_TRACE)
-    if (ShouldTrackMovementForProfilerOrEtw())
+    if (ShouldTrackSurvivorsForProfilerOrEtw())
     {
         size_t context = 0;
         ETW::GCLog::BeginMovedReferences(&context);
@@ -817,7 +830,7 @@ void GCToEEInterface::DiagWalkLOHSurvivors(void* gcContext)
 void GCToEEInterface::DiagWalkBGCSurvivors(void* gcContext)
 {
 #if defined(GC_PROFILING) || defined(FEATURE_EVENT_TRACE)
-    if (ShouldTrackMovementForProfilerOrEtw())
+    if (ShouldTrackSurvivorsForProfilerOrEtw())
     {
         size_t context = 0;
         ETW::GCLog::BeginMovedReferences(&context);
index 0b542ef..383c079 100644 (file)
@@ -55,7 +55,7 @@ public:
     void DiagUpdateGenerationBounds();
     void DiagGCEnd(size_t index, int gen, int reason, bool fConcurrent);
     void DiagWalkFReachableObjects(void* gcContext);
-    void DiagWalkSurvivors(void* gcContext);
+    void DiagWalkSurvivors(void* gcContext, bool fCompacting);
     void DiagWalkLOHSurvivors(void* gcContext);
     void DiagWalkBGCSurvivors(void* gcContext);
     void StompWriteBarrier(WriteBarrierParameters* args);
index ee131c8..01c216d 100644 (file)
@@ -1868,6 +1868,21 @@ NOINLINE LPVOID COMPlusEndCatchWorker(Thread * pThread)
     // Sync managed exception state, for the managed thread, based upon any active exception tracker
     pThread->SyncManagedExceptionState(fIsDebuggerHelperThread);
 
+    if (InlinedCallFrame::FrameHasActiveCall(pThread->m_pFrame))
+    {
+        // When unwinding an exception in ReadyToRun, the JIT_PInvokeEnd helper which unlinks the ICF from 
+        // the thread will be skipped. This is because unlike jitted code, each pinvoke is wrapped by calls
+        // to the JIT_PInvokeBegin and JIT_PInvokeEnd helpers, which push and pop the ICF on the thread. The
+        // ICF is not linked at the method prolog and unlined at the epilog when running R2R code. Since the
+        // JIT_PInvokeEnd helper will be skipped, we need to unlink the ICF here. If the executing method
+        // has another pinovoke, it will re-link the ICF again when the JIT_PInvokeBegin helper is called
+
+        if (ExecutionManager::IsReadyToRunCode(((InlinedCallFrame*)pThread->m_pFrame)->m_pCallerReturnAddress))
+        {
+            pThread->m_pFrame->Pop(pThread);
+        }
+    }
+
     LOG((LF_EH, LL_INFO1000, "COMPlusPEndCatch: esp=%p\n", esp));
 
     return esp;
index 7d0b5a0..11d07e6 100644 (file)
@@ -1337,20 +1337,10 @@ HCIMPLEND
 
 #include <optsmallperfcritical.h>
 
-HCIMPL2(void*, JIT_GetSharedNonGCStaticBase_Portable, SIZE_T moduleDomainID, DWORD dwClassDomainID)
+HCIMPL2(void*, JIT_GetSharedNonGCStaticBase_Portable, DomainLocalModule *pLocalModule, DWORD dwClassDomainID)
 {
     FCALL_CONTRACT;
 
-    DomainLocalModule *pLocalModule = NULL;
-
-    if (!Module::IsEncodedModuleIndex(moduleDomainID))
-        pLocalModule = (DomainLocalModule *) moduleDomainID;
-    else
-    {
-        DomainLocalBlock *pLocalBlock = GetAppDomain()->GetDomainLocalBlock();
-        pLocalModule = pLocalBlock->GetModuleSlot(Module::IDToIndex(moduleDomainID));
-    }
-
     // If type doesn't have a class constructor, the contents of this if statement may 
     // still get executed.  JIT_GetSharedNonGCStaticBaseNoCtor should be used in this case.
     if (pLocalModule->IsPrecomputedClassInitialized(dwClassDomainID))
@@ -1366,38 +1356,18 @@ HCIMPLEND
 
 // No constructor version of JIT_GetSharedNonGCStaticBase.  Does not check if class has 
 // been initialized.
-HCIMPL1(void*, JIT_GetSharedNonGCStaticBaseNoCtor_Portable, SIZE_T moduleDomainID)
+HCIMPL1(void*, JIT_GetSharedNonGCStaticBaseNoCtor_Portable, DomainLocalModule *pLocalModule)
 {
     FCALL_CONTRACT;
 
-    DomainLocalModule *pLocalModule = NULL;
-
-    if (!Module::IsEncodedModuleIndex(moduleDomainID))
-        pLocalModule = (DomainLocalModule *) moduleDomainID;
-    else
-    {
-        DomainLocalBlock *pLocalBlock = GetAppDomain()->GetDomainLocalBlock();
-        pLocalModule = pLocalBlock->GetModuleSlot(Module::IDToIndex(moduleDomainID));
-    }
-
     return (void*)pLocalModule->GetPrecomputedNonGCStaticsBasePointer();
 }
 HCIMPLEND
 
-HCIMPL2(void*, JIT_GetSharedGCStaticBase_Portable, SIZE_T moduleDomainID, DWORD dwClassDomainID)
+HCIMPL2(void*, JIT_GetSharedGCStaticBase_Portable, DomainLocalModule *pLocalModule, DWORD dwClassDomainID)
 {
     FCALL_CONTRACT;
 
-    DomainLocalModule *pLocalModule = NULL;
-
-    if (!Module::IsEncodedModuleIndex(moduleDomainID))
-        pLocalModule = (DomainLocalModule *) moduleDomainID;
-    else
-    {
-        DomainLocalBlock *pLocalBlock = GetAppDomain()->GetDomainLocalBlock();
-        pLocalModule = pLocalBlock->GetModuleSlot(Module::IDToIndex(moduleDomainID));
-    }
-
     // If type doesn't have a class constructor, the contents of this if statement may 
     // still get executed.  JIT_GetSharedGCStaticBaseNoCtor should be used in this case.
     if (pLocalModule->IsPrecomputedClassInitialized(dwClassDomainID))
@@ -1413,20 +1383,10 @@ HCIMPLEND
 
 // No constructor version of JIT_GetSharedGCStaticBase.  Does not check if class has been
 // initialized.
-HCIMPL1(void*, JIT_GetSharedGCStaticBaseNoCtor_Portable, SIZE_T moduleDomainID)
+HCIMPL1(void*, JIT_GetSharedGCStaticBaseNoCtor_Portable, DomainLocalModule *pLocalModule)
 {
     FCALL_CONTRACT;
 
-    DomainLocalModule *pLocalModule = NULL;
-
-    if (!Module::IsEncodedModuleIndex(moduleDomainID))
-        pLocalModule = (DomainLocalModule *) moduleDomainID;
-    else
-    {
-        DomainLocalBlock *pLocalBlock = GetAppDomain()->GetDomainLocalBlock();
-        pLocalModule = pLocalBlock->GetModuleSlot(Module::IDToIndex(moduleDomainID));
-    }
-
     return (void*)pLocalModule->GetPrecomputedGCStaticsBasePointer();
 }
 HCIMPLEND
@@ -1494,20 +1454,10 @@ HCIMPLEND
 
 /*************************************************************/
 #include <optsmallperfcritical.h>
-HCIMPL2(void*, JIT_GetSharedNonGCStaticBaseDynamicClass, SIZE_T moduleDomainID, DWORD dwDynamicClassDomainID)
+HCIMPL2(void*, JIT_GetSharedNonGCStaticBaseDynamicClass, DomainLocalModule *pLocalModule, DWORD dwDynamicClassDomainID)
 {
     FCALL_CONTRACT;
 
-    DomainLocalModule *pLocalModule;
-
-    if (!Module::IsEncodedModuleIndex(moduleDomainID))
-        pLocalModule = (DomainLocalModule *) moduleDomainID;
-    else
-    {
-        DomainLocalBlock *pLocalBlock = GetAppDomain()->GetDomainLocalBlock();
-        pLocalModule = pLocalBlock->GetModuleSlot(Module::IDToIndex(moduleDomainID));
-    }
-
     DomainLocalModule::PTR_DynamicClassInfo pLocalInfo = pLocalModule->GetDynamicClassInfoIfInitialized(dwDynamicClassDomainID);
     if (pLocalInfo != NULL)
     {
@@ -1546,20 +1496,10 @@ HCIMPL2(void, JIT_ClassInitDynamicClass_Helper, DomainLocalModule *pLocalModule,
 HCIMPLEND
 
 #include <optsmallperfcritical.h>
-HCIMPL2(void, JIT_ClassInitDynamicClass, SIZE_T moduleDomainID, DWORD dwDynamicClassDomainID)
+HCIMPL2(void, JIT_ClassInitDynamicClass, DomainLocalModule *pLocalModule, DWORD dwDynamicClassDomainID)
 {
     FCALL_CONTRACT;
 
-    DomainLocalModule *pLocalModule;
-
-    if (!Module::IsEncodedModuleIndex(moduleDomainID))
-        pLocalModule = (DomainLocalModule *) moduleDomainID;
-    else
-    {
-        DomainLocalBlock *pLocalBlock = GetAppDomain()->GetDomainLocalBlock();
-        pLocalModule = pLocalBlock->GetModuleSlot(Module::IDToIndex(moduleDomainID));
-    }
-
     DomainLocalModule::PTR_DynamicClassInfo pLocalInfo = pLocalModule->GetDynamicClassInfoIfInitialized(dwDynamicClassDomainID);
     if (pLocalInfo != NULL)
     {
@@ -1597,20 +1537,10 @@ HCIMPLEND
 
 /*************************************************************/
 #include <optsmallperfcritical.h>
-HCIMPL2(void*, JIT_GetSharedGCStaticBaseDynamicClass, SIZE_T moduleDomainID, DWORD dwDynamicClassDomainID)
+HCIMPL2(void*, JIT_GetSharedGCStaticBaseDynamicClass, DomainLocalModule *pLocalModule, DWORD dwDynamicClassDomainID)
 {
     FCALL_CONTRACT;
 
-    DomainLocalModule *pLocalModule;
-
-    if (!Module::IsEncodedModuleIndex(moduleDomainID))
-        pLocalModule = (DomainLocalModule *) moduleDomainID;
-    else
-    {
-        DomainLocalBlock *pLocalBlock = GetAppDomain()->GetDomainLocalBlock();
-        pLocalModule = pLocalBlock->GetModuleSlot(Module::IDToIndex(moduleDomainID));
-    }
-
     DomainLocalModule::PTR_DynamicClassInfo pLocalInfo = pLocalModule->GetDynamicClassInfoIfInitialized(dwDynamicClassDomainID);
     if (pLocalInfo != NULL)
     {
@@ -1845,15 +1775,12 @@ HCIMPLEND
 //     possible.
 
 #include <optsmallperfcritical.h>
-HCIMPL2(void*, JIT_GetSharedNonGCThreadStaticBase, SIZE_T moduleDomainID, DWORD dwClassDomainID)
+HCIMPL2(void*, JIT_GetSharedNonGCThreadStaticBase, DomainLocalModule *pDomainLocalModule, DWORD dwClassDomainID)
 {
     FCALL_CONTRACT;
 
     // Get the ModuleIndex
-    ModuleIndex index = 
-        (Module::IsEncodedModuleIndex(moduleDomainID)) ?
-            Module::IDToIndex(moduleDomainID) :
-            ((DomainLocalModule *)moduleDomainID)->GetModuleIndex();
+    ModuleIndex index = pDomainLocalModule->GetModuleIndex();
 
     // Get the relevant ThreadLocalModule
     ThreadLocalModule * pThreadLocalModule = ThreadStatics::GetTLMIfExists(index);
@@ -1866,12 +1793,6 @@ HCIMPL2(void*, JIT_GetSharedNonGCThreadStaticBase, SIZE_T moduleDomainID, DWORD
     // If the TLM was not allocated or if the class was not marked as initialized
     // then we have to go through the slow path
 
-    // Get the DomainLocalModule
-    DomainLocalModule *pDomainLocalModule =
-        (Module::IsEncodedModuleIndex(moduleDomainID)) ?
-            GetAppDomain()->GetDomainLocalBlock()->GetModuleSlot(Module::IDToIndex(moduleDomainID)) :
-            (DomainLocalModule *) moduleDomainID;
-    
     // Obtain the MethodTable
     MethodTable * pMT = pDomainLocalModule->GetMethodTableFromClassDomainID(dwClassDomainID);
     _ASSERTE(!pMT->HasGenericsStaticsInfo());
@@ -1889,15 +1810,12 @@ HCIMPLEND
 //     possible.
 
 #include <optsmallperfcritical.h>
-HCIMPL2(void*, JIT_GetSharedGCThreadStaticBase, SIZE_T moduleDomainID, DWORD dwClassDomainID)
+HCIMPL2(void*, JIT_GetSharedGCThreadStaticBase, DomainLocalModule *pDomainLocalModule, DWORD dwClassDomainID)
 {
     FCALL_CONTRACT;
 
     // Get the ModuleIndex
-    ModuleIndex index = 
-        (Module::IsEncodedModuleIndex(moduleDomainID)) ?
-            Module::IDToIndex(moduleDomainID) :
-            ((DomainLocalModule *)moduleDomainID)->GetModuleIndex();
+    ModuleIndex index = pDomainLocalModule->GetModuleIndex();
 
     // Get the relevant ThreadLocalModule
     ThreadLocalModule * pThreadLocalModule = ThreadStatics::GetTLMIfExists(index);
@@ -1910,12 +1828,6 @@ HCIMPL2(void*, JIT_GetSharedGCThreadStaticBase, SIZE_T moduleDomainID, DWORD dwC
     // If the TLM was not allocated or if the class was not marked as initialized
     // then we have to go through the slow path
 
-    // Get the DomainLocalModule
-    DomainLocalModule *pDomainLocalModule =
-        (Module::IsEncodedModuleIndex(moduleDomainID)) ?
-            GetAppDomain()->GetDomainLocalBlock()->GetModuleSlot(Module::IDToIndex(moduleDomainID)) :
-            (DomainLocalModule *) moduleDomainID;
-    
     // Obtain the MethodTable
     MethodTable * pMT = pDomainLocalModule->GetMethodTableFromClassDomainID(dwClassDomainID);
     _ASSERTE(!pMT->HasGenericsStaticsInfo());
@@ -1929,16 +1841,10 @@ HCIMPLEND
 // *** This helper corresponds to CORINFO_HELP_GETSHARED_NONGCTHREADSTATIC_BASE_DYNAMICCLASS
 
 #include <optsmallperfcritical.h>
-HCIMPL2(void*, JIT_GetSharedNonGCThreadStaticBaseDynamicClass, SIZE_T moduleDomainID, DWORD dwDynamicClassDomainID)
+HCIMPL2(void*, JIT_GetSharedNonGCThreadStaticBaseDynamicClass, DomainLocalModule *pDomainLocalModule, DWORD dwDynamicClassDomainID)
 {
     FCALL_CONTRACT;
 
-    // Obtain the DomainLocalModule
-    DomainLocalModule *pDomainLocalModule =
-        (Module::IsEncodedModuleIndex(moduleDomainID)) ?
-        GetAppDomain()->GetDomainLocalBlock()->GetModuleSlot(Module::IDToIndex(moduleDomainID)) :
-        (DomainLocalModule *)moduleDomainID;
-
     // Get the ModuleIndex
     ModuleIndex index = pDomainLocalModule->GetModuleIndex();
 
@@ -1983,16 +1889,10 @@ HCIMPLEND
 // *** This helper corresponds to CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_DYNAMICCLASS
 
 #include <optsmallperfcritical.h>
-HCIMPL2(void*, JIT_GetSharedGCThreadStaticBaseDynamicClass, SIZE_T moduleDomainID, DWORD dwDynamicClassDomainID)
+HCIMPL2(void*, JIT_GetSharedGCThreadStaticBaseDynamicClass, DomainLocalModule *pDomainLocalModule, DWORD dwDynamicClassDomainID)
 {
     FCALL_CONTRACT;
 
-    // Obtain the DomainLocalModule
-    DomainLocalModule *pDomainLocalModule =
-        (Module::IsEncodedModuleIndex(moduleDomainID)) ?
-        GetAppDomain()->GetDomainLocalBlock()->GetModuleSlot(Module::IDToIndex(moduleDomainID)) :
-        (DomainLocalModule *)moduleDomainID;
-
     // Get the ModuleIndex
     ModuleIndex index = pDomainLocalModule->GetModuleIndex();
 
index 4b2fd00..e97eb33 100644 (file)
@@ -165,26 +165,26 @@ EXTERN_C FCDECL_MONHELPER(JIT_MonExitStatic_Portable, AwareLock *lock);
 #ifndef JIT_GetSharedGCStaticBase
 #define JIT_GetSharedGCStaticBase JIT_GetSharedGCStaticBase_Portable
 #endif
-EXTERN_C FCDECL2(void*, JIT_GetSharedGCStaticBase, SIZE_T moduleDomainID, DWORD dwModuleClassID);
-EXTERN_C FCDECL2(void*, JIT_GetSharedGCStaticBase_Portable, SIZE_T moduleDomainID, DWORD dwModuleClassID);
+EXTERN_C FCDECL2(void*, JIT_GetSharedGCStaticBase, DomainLocalModule *pLocalModule, DWORD dwModuleClassID);
+EXTERN_C FCDECL2(void*, JIT_GetSharedGCStaticBase_Portable, DomainLocalModule *pLocalModule, DWORD dwModuleClassID);
 
 #ifndef JIT_GetSharedNonGCStaticBase
 #define JIT_GetSharedNonGCStaticBase JIT_GetSharedNonGCStaticBase_Portable
 #endif
-EXTERN_C FCDECL2(void*, JIT_GetSharedNonGCStaticBase, SIZE_T moduleDomainID, DWORD dwModuleClassID);
-EXTERN_C FCDECL2(void*, JIT_GetSharedNonGCStaticBase_Portable, SIZE_T moduleDomainID, DWORD dwModuleClassID);
+EXTERN_C FCDECL2(void*, JIT_GetSharedNonGCStaticBase, DomainLocalModule *pLocalModule, DWORD dwModuleClassID);
+EXTERN_C FCDECL2(void*, JIT_GetSharedNonGCStaticBase_Portable, DomainLocalModule *pLocalModule, DWORD dwModuleClassID);
 
 #ifndef JIT_GetSharedGCStaticBaseNoCtor
 #define JIT_GetSharedGCStaticBaseNoCtor JIT_GetSharedGCStaticBaseNoCtor_Portable
 #endif
-EXTERN_C FCDECL1(void*, JIT_GetSharedGCStaticBaseNoCtor, SIZE_T moduleDomainID);
-EXTERN_C FCDECL1(void*, JIT_GetSharedGCStaticBaseNoCtor_Portable, SIZE_T moduleDomainID);
+EXTERN_C FCDECL1(void*, JIT_GetSharedGCStaticBaseNoCtor, DomainLocalModule *pLocalModule);
+EXTERN_C FCDECL1(void*, JIT_GetSharedGCStaticBaseNoCtor_Portable, DomainLocalModule *pLocalModule);
 
 #ifndef JIT_GetSharedNonGCStaticBaseNoCtor
 #define JIT_GetSharedNonGCStaticBaseNoCtor JIT_GetSharedNonGCStaticBaseNoCtor_Portable
 #endif
-EXTERN_C FCDECL1(void*, JIT_GetSharedNonGCStaticBaseNoCtor, SIZE_T moduleDomainID);
-EXTERN_C FCDECL1(void*, JIT_GetSharedNonGCStaticBaseNoCtor_Portable, SIZE_T moduleDomainID);
+EXTERN_C FCDECL1(void*, JIT_GetSharedNonGCStaticBaseNoCtor, DomainLocalModule *pLocalModule);
+EXTERN_C FCDECL1(void*, JIT_GetSharedNonGCStaticBaseNoCtor_Portable, DomainLocalModule *pLocalModule);
 
 #ifndef JIT_ChkCastClass
 #define JIT_ChkCastClass JIT_ChkCastClass_Portable
index eb3f29b..5ca4b65 100644 (file)
@@ -686,15 +686,7 @@ BOOL QCALLTYPE LoaderAllocator::Destroy(QCall::LoaderAllocatorHandle pLoaderAllo
         if (pDomainAssembly != NULL)
         {
             Assembly *pAssembly = pDomainAssembly->GetCurrentAssembly();
-
-            //if not fully loaded, it is still domain specific, so just get one from DomainAssembly
-            BaseDomain *pDomain = pAssembly ? pAssembly->Parent() : pDomainAssembly->GetAppDomain();
-
-            // This will probably change for shared code unloading
-            _ASSERTE(pDomain->IsAppDomain());
-
-            AppDomain *pAppDomain = pDomain->AsAppDomain();
-            pLoaderAllocator->m_pFirstDomainAssemblyFromSameALCToDelete = pAssembly->GetDomainAssembly(pAppDomain);
+            pLoaderAllocator->m_pFirstDomainAssemblyFromSameALCToDelete = pAssembly->GetDomainAssembly();
         }
 
         // Iterate through all references to other loader allocators and decrement their reference
index 27083b0..2782c9b 100644 (file)
@@ -513,7 +513,7 @@ BOOL MethodTable::ValidateWithPossibleAV()
 #ifndef DACCESS_COMPILE
 
 //==========================================================================================
-BOOL  MethodTable::IsClassInited(AppDomain* pAppDomain /* = NULL */)
+BOOL  MethodTable::IsClassInited()
 {
     WRAPPER_NO_CONTRACT;
 
@@ -523,15 +523,7 @@ BOOL  MethodTable::IsClassInited(AppDomain* pAppDomain /* = NULL */)
     if (IsSharedByGenericInstantiations())
         return FALSE;
 
-    DomainLocalModule *pLocalModule;
-    if (pAppDomain == NULL)
-    {
-        pLocalModule = GetDomainLocalModule();
-    }
-    else
-    {
-        pLocalModule = GetDomainLocalModule(pAppDomain);
-    }
+    DomainLocalModule *pLocalModule = GetDomainLocalModule();
 
     _ASSERTE(pLocalModule != NULL);
 
@@ -8463,7 +8455,9 @@ InteropMethodTableData *MethodTable::CreateComInteropData(AllocMemTracker *pamTr
         PRECONDITION(GetParentMethodTable() == NULL || GetParentMethodTable()->LookupComInteropData() != NULL);
     } CONTRACTL_END;
 
-    ClassCompat::MethodTableBuilder builder(this);
+    ACQUIRE_STACKING_ALLOCATOR(pStackingAllocator);
+
+    ClassCompat::MethodTableBuilder builder(this, pStackingAllocator);
 
     InteropMethodTableData *pData = builder.BuildInteropVTable(pamTracker);
     _ASSERTE(pData);
index 18cca3f..3fe016f 100644 (file)
@@ -36,7 +36,6 @@ class    ArrayClass;
 class    ArrayMethodDesc;
 struct   ClassCtorInfoEntry;
 class ClassLoader;
-class    DomainLocalBlock;
 class FCallMethodDesc;
 class    EEClass;
 class    EnCFieldDesc;
@@ -693,12 +692,7 @@ public:
     void SetLoaderAllocator(LoaderAllocator* pAllocator);
 
     // Get the domain local module - useful for static init checks
-    PTR_DomainLocalModule GetDomainLocalModule(AppDomain * pAppDomain);
-
-#ifndef DACCESS_COMPILE
-    // Version of GetDomainLocalModule which relies on the current AppDomain
     PTR_DomainLocalModule   GetDomainLocalModule();
-#endif
 
     MethodTable *LoadEnclosingMethodTable(ClassLoadLevel targetLevel = CLASS_DEPENDENCIES_LOADED);
 
@@ -877,7 +871,7 @@ public:
 
     //-------------------------------------------------------------------
     // THE CLASS INITIALIZATION CONDITION 
-    //  (and related DomainLocalBlock/DomainLocalModule storage)
+    //  (and related DomainLocalModule storage)
     //
     // - populate the DomainLocalModule if needed
     // - run the cctor 
@@ -914,7 +908,7 @@ public:
     // mark the class as having its cctor run.  
 #ifndef DACCESS_COMPILE
     void SetClassInited();
-    BOOL  IsClassInited(AppDomain* pAppDomain = NULL);   
+    BOOL  IsClassInited();
 
     BOOL IsInitError();
     void SetClassInitError();
index afb5237..31e373c 100644 (file)
@@ -1490,20 +1490,11 @@ inline PTR_BYTE MethodTable::GetGCThreadStaticsBasePointer(PTR_Thread pThread)
 }
 
 //==========================================================================================
-inline PTR_DomainLocalModule MethodTable::GetDomainLocalModule(AppDomain * pAppDomain)
-{
-    WRAPPER_NO_CONTRACT;
-    return GetModuleForStatics()->GetDomainLocalModule(pAppDomain);
-}
-
-#ifndef DACCESS_COMPILE
-//==========================================================================================
 inline PTR_DomainLocalModule MethodTable::GetDomainLocalModule()
 {
     WRAPPER_NO_CONTRACT;
     return GetModuleForStatics()->GetDomainLocalModule();
 }
-#endif //!DACCESS_COMPILE
 
 //==========================================================================================
 inline OBJECTREF MethodTable::AllocateNoChecks()
index 53ba9ce..5b094f6 100644 (file)
@@ -2652,11 +2652,24 @@ MethodTableBuilder::EnumerateClassMethods()
         {
             BuildMethodTableThrowException(BFA_METHOD_TOKEN_OUT_OF_RANGE);
         }
-
+        if (FAILED(pMDInternalImport->GetSigOfMethodDef(tok, &cMemberSignature, &pMemberSignature)))
+        {
+            BuildMethodTableThrowException(hr, BFA_BAD_SIGNATURE, mdMethodDefNil);
+        }
         if (FAILED(pMDInternalImport->GetMethodDefProps(tok, &dwMemberAttrs)))
         {
             BuildMethodTableThrowException(IDS_CLASSLOAD_BADFORMAT);
         }
+
+        // Signature validation
+        if (!bmtProp->fNoSanityChecks)
+        {
+            hr = validateTokenSig(tok,pMemberSignature,cMemberSignature,dwMemberAttrs,pMDInternalImport);
+            if (FAILED(hr))
+            {
+                BuildMethodTableThrowException(hr, BFA_BAD_SIGNATURE, mdMethodDefNil);
+            }
+        }
         if (IsMdRTSpecialName(dwMemberAttrs) || IsMdVirtual(dwMemberAttrs) || IsDelegate())
         {
             if (FAILED(pMDInternalImport->GetNameOfMethodDef(tok, (LPCSTR *)&strMethodName)))
@@ -2676,51 +2689,63 @@ MethodTableBuilder::EnumerateClassMethods()
         DWORD numGenericMethodArgs = 0;
 
         {
-            HENUMInternalHolder hEnumTyPars(pMDInternalImport);
-            hr = hEnumTyPars.EnumInitNoThrow(mdtGenericParam, tok);
+            SigParser genericArgParser(pMemberSignature, cMemberSignature);
+            ULONG ulCallConv;
+            hr = genericArgParser.GetCallingConvInfo(&ulCallConv);
             if (FAILED(hr))
             {
                 BuildMethodTableThrowException(hr, *bmtError);
             }
 
-            numGenericMethodArgs = hEnumTyPars.EnumGetCount();
-
-            // We do not want to support context-bound objects with generic methods.
-
-            if (numGenericMethodArgs != 0)
+            // Only read the generic parameter table if the method signature is generic
+            if (ulCallConv & IMAGE_CEE_CS_CALLCONV_GENERIC)
             {
-                HENUMInternalHolder hEnumGenericPars(pMDInternalImport);
+                HENUMInternalHolder hEnumTyPars(pMDInternalImport);
+                hr = hEnumTyPars.EnumInitNoThrow(mdtGenericParam, tok);
+                if (FAILED(hr))
+                {
+                    BuildMethodTableThrowException(hr, *bmtError);
+                }
+
+                numGenericMethodArgs = hEnumTyPars.EnumGetCount();
 
-                hEnumGenericPars.EnumInit(mdtGenericParam, tok);
+                // We do not want to support context-bound objects with generic methods.
 
-                for (unsigned methIdx = 0; methIdx < numGenericMethodArgs; methIdx++)
+                if (numGenericMethodArgs != 0)
                 {
-                    mdGenericParam tkTyPar;
-                    pMDInternalImport->EnumNext(&hEnumGenericPars, &tkTyPar);
-                    DWORD flags;
-                    if (FAILED(pMDInternalImport->GetGenericParamProps(tkTyPar, NULL, &flags, NULL, NULL, NULL)))
-                    {
-                        BuildMethodTableThrowException(IDS_CLASSLOAD_BADFORMAT);
-                    }
-                    
-                    if (0 != (flags & ~(gpVarianceMask | gpSpecialConstraintMask)))
-                    {
-                        BuildMethodTableThrowException(IDS_CLASSLOAD_BADFORMAT);
-                    }
-                    switch (flags & gpVarianceMask)
-                    {
-                        case gpNonVariant:
-                            break;
+                    HENUMInternalHolder hEnumGenericPars(pMDInternalImport);
 
-                        case gpCovariant: // intentional fallthru
-                        case gpContravariant:
-                            BuildMethodTableThrowException(VLDTR_E_GP_ILLEGAL_VARIANT_MVAR);
-                            break;
+                    hEnumGenericPars.EnumInit(mdtGenericParam, tok);
 
-                        default:
+                    for (unsigned methIdx = 0; methIdx < numGenericMethodArgs; methIdx++)
+                    {
+                        mdGenericParam tkTyPar;
+                        pMDInternalImport->EnumNext(&hEnumGenericPars, &tkTyPar);
+                        DWORD flags;
+                        if (FAILED(pMDInternalImport->GetGenericParamProps(tkTyPar, NULL, &flags, NULL, NULL, NULL)))
+                        {
                             BuildMethodTableThrowException(IDS_CLASSLOAD_BADFORMAT);
-                    }
+                        }
+                        
+                        if (0 != (flags & ~(gpVarianceMask | gpSpecialConstraintMask)))
+                        {
+                            BuildMethodTableThrowException(IDS_CLASSLOAD_BADFORMAT);
+                        }
+                        switch (flags & gpVarianceMask)
+                        {
+                            case gpNonVariant:
+                                break;
+
+                            case gpCovariant: // intentional fallthru
+                            case gpContravariant:
+                                BuildMethodTableThrowException(VLDTR_E_GP_ILLEGAL_VARIANT_MVAR);
+                                break;
+
+                            default:
+                                BuildMethodTableThrowException(IDS_CLASSLOAD_BADFORMAT);
+                        }
 
+                    }
                 }
             }
         }
@@ -2826,198 +2851,191 @@ MethodTableBuilder::EnumerateClassMethods()
         // But first - minimal flags validity checks
         //
         // No methods in Enums!
-        if (fIsClassEnum)
-        {
-            BuildMethodTableThrowException(BFA_METHOD_IN_A_ENUM);
-        }
-        // RVA : 0
-        if (dwMethodRVA != 0)
+#ifndef _DEBUG // Don't run the minimal validity checks for the system dll/r2r dlls (except in debug builds so we don't build a bad system dll)
+        if (!bmtProp->fNoSanityChecks)
+#endif
         {
-            if(fIsClassComImport)
+            if (fIsClassEnum)
             {
-                BuildMethodTableThrowException(BFA_METHOD_WITH_NONZERO_RVA);
+                BuildMethodTableThrowException(BFA_METHOD_IN_A_ENUM);
             }
-            if(IsMdAbstract(dwMemberAttrs))
+            // RVA : 0
+            if (dwMethodRVA != 0)
             {
-                BuildMethodTableThrowException(BFA_ABSTRACT_METHOD_WITH_RVA);
-            }
-            if(IsMiRuntime(dwImplFlags))
-            {
-                BuildMethodTableThrowException(BFA_RUNTIME_METHOD_WITH_RVA);
-            }
-            if(IsMiInternalCall(dwImplFlags))
-            {
-                BuildMethodTableThrowException(BFA_INTERNAL_METHOD_WITH_RVA);
+                if(fIsClassComImport)
+                {
+                    BuildMethodTableThrowException(BFA_METHOD_WITH_NONZERO_RVA);
+                }
+                if(IsMdAbstract(dwMemberAttrs))
+                {
+                    BuildMethodTableThrowException(BFA_ABSTRACT_METHOD_WITH_RVA);
+                }
+                if(IsMiRuntime(dwImplFlags))
+                {
+                    BuildMethodTableThrowException(BFA_RUNTIME_METHOD_WITH_RVA);
+                }
+                if(IsMiInternalCall(dwImplFlags))
+                {
+                    BuildMethodTableThrowException(BFA_INTERNAL_METHOD_WITH_RVA);
+                }
             }
-        }
 
-        // Abstract / not abstract
-        if(IsMdAbstract(dwMemberAttrs))
-        {
-            if(fIsClassNotAbstract)
-            {
-                BuildMethodTableThrowException(BFA_AB_METHOD_IN_AB_CLASS);
-            }
-            if(!IsMdVirtual(dwMemberAttrs))
+            // Abstract / not abstract
+            if(IsMdAbstract(dwMemberAttrs))
             {
-                BuildMethodTableThrowException(BFA_NONVIRT_AB_METHOD);
+                if(fIsClassNotAbstract)
+                {
+                    BuildMethodTableThrowException(BFA_AB_METHOD_IN_AB_CLASS);
+                }
+                if(!IsMdVirtual(dwMemberAttrs))
+                {
+                    BuildMethodTableThrowException(BFA_NONVIRT_AB_METHOD);
+                }
             }
-        }
-        else if(fIsClassInterface)
-        {
-            if (IsMdRTSpecialName(dwMemberAttrs))
+            else if(fIsClassInterface)
             {
-                CONSISTENCY_CHECK(CheckPointer(strMethodName));
-                if (strcmp(strMethodName, COR_CCTOR_METHOD_NAME))
+                if (IsMdRTSpecialName(dwMemberAttrs))
                 {
-                    BuildMethodTableThrowException(BFA_NONAB_NONCCTOR_METHOD_ON_INT);
+                    CONSISTENCY_CHECK(CheckPointer(strMethodName));
+                    if (strcmp(strMethodName, COR_CCTOR_METHOD_NAME))
+                    {
+                        BuildMethodTableThrowException(BFA_NONAB_NONCCTOR_METHOD_ON_INT);
+                    }
                 }
             }
-        }
 
-        // Virtual / not virtual
-        if(IsMdVirtual(dwMemberAttrs))
-        {
-            if(IsMdPinvokeImpl(dwMemberAttrs))
-            {
-                BuildMethodTableThrowException(BFA_VIRTUAL_PINVOKE_METHOD);
-            }
-            if(IsMdStatic(dwMemberAttrs))
+            // Virtual / not virtual
+            if(IsMdVirtual(dwMemberAttrs))
             {
-                BuildMethodTableThrowException(BFA_VIRTUAL_STATIC_METHOD);
-            }
-            if(strMethodName && (0==strcmp(strMethodName, COR_CTOR_METHOD_NAME)))
-            {
-                BuildMethodTableThrowException(BFA_VIRTUAL_INSTANCE_CTOR);
+                if(IsMdPinvokeImpl(dwMemberAttrs))
+                {
+                    BuildMethodTableThrowException(BFA_VIRTUAL_PINVOKE_METHOD);
+                }
+                if(IsMdStatic(dwMemberAttrs))
+                {
+                    BuildMethodTableThrowException(BFA_VIRTUAL_STATIC_METHOD);
+                }
+                if(strMethodName && (0==strcmp(strMethodName, COR_CTOR_METHOD_NAME)))
+                {
+                    BuildMethodTableThrowException(BFA_VIRTUAL_INSTANCE_CTOR);
+                }
             }
-        }
 
-        // Some interface checks.
-        // We only need them if default interface method support is disabled or if this is fragile crossgen
+            // Some interface checks.
+            // We only need them if default interface method support is disabled or if this is fragile crossgen
 #if !defined(FEATURE_DEFAULT_INTERFACES) || defined(FEATURE_NATIVE_IMAGE_GENERATION)
-        if (fIsClassInterface
+            if (fIsClassInterface
 #if defined(FEATURE_DEFAULT_INTERFACES)
-            // Only fragile crossgen wasn't upgraded to deal with default interface methods.
-            && !IsReadyToRunCompilation()
+                // Only fragile crossgen wasn't upgraded to deal with default interface methods.
+                && !IsReadyToRunCompilation()
 #endif
-            )
-        {
-            if (IsMdVirtual(dwMemberAttrs))
+                )
             {
-                if (!IsMdAbstract(dwMemberAttrs))
+                if (IsMdVirtual(dwMemberAttrs))
                 {
-                    BuildMethodTableThrowException(BFA_VIRTUAL_NONAB_INT_METHOD);
+                    if (!IsMdAbstract(dwMemberAttrs))
+                    {
+                        BuildMethodTableThrowException(BFA_VIRTUAL_NONAB_INT_METHOD);
+                    }
                 }
-            }
-            else
-            {
-                // Instance method
-                if (!IsMdStatic(dwMemberAttrs))
+                else
                 {
-                    BuildMethodTableThrowException(BFA_NONVIRT_INST_INT_METHOD);
+                    // Instance method
+                    if (!IsMdStatic(dwMemberAttrs))
+                    {
+                        BuildMethodTableThrowException(BFA_NONVIRT_INST_INT_METHOD);
+                    }
                 }
             }
-        }
 #endif // !defined(FEATURE_DEFAULT_INTERFACES) || defined(FEATURE_NATIVE_IMAGE_GENERATION)
 
-        // No synchronized methods in ValueTypes
-        if(fIsClassValueType && IsMiSynchronized(dwImplFlags))
-        {
-            BuildMethodTableThrowException(BFA_SYNC_METHOD_IN_VT);
-        }
-
-        // Global methods:
-        if(IsGlobalClass())
-        {
-            if(!IsMdStatic(dwMemberAttrs))
+            // No synchronized methods in ValueTypes
+            if(fIsClassValueType && IsMiSynchronized(dwImplFlags))
             {
-                BuildMethodTableThrowException(BFA_NONSTATIC_GLOBAL_METHOD);
+                BuildMethodTableThrowException(BFA_SYNC_METHOD_IN_VT);
             }
-            if (strMethodName)  //<TODO>@todo: investigate mc++ generating null name</TODO>
+
+            // Global methods:
+            if(IsGlobalClass())
             {
-                if(0==strcmp(strMethodName, COR_CTOR_METHOD_NAME))
+                if(!IsMdStatic(dwMemberAttrs))
                 {
-                    BuildMethodTableThrowException(BFA_GLOBAL_INST_CTOR);
+                    BuildMethodTableThrowException(BFA_NONSTATIC_GLOBAL_METHOD);
+                }
+                if (strMethodName)  //<TODO>@todo: investigate mc++ generating null name</TODO>
+                {
+                    if(0==strcmp(strMethodName, COR_CTOR_METHOD_NAME))
+                    {
+                        BuildMethodTableThrowException(BFA_GLOBAL_INST_CTOR);
+                    }
                 }
             }
-        }
-        //@GENERICS:
-        // Generic methods or methods in generic classes
-        // may not be part of a COM Import class (except for WinRT), PInvoke, internal call outside mscorlib.
-        if ((bmtGenerics->GetNumGenericArgs() != 0 || numGenericMethodArgs != 0) &&
-            (
+            //@GENERICS:
+            // Generic methods or methods in generic classes
+            // may not be part of a COM Import class (except for WinRT), PInvoke, internal call outside mscorlib.
+            if ((bmtGenerics->GetNumGenericArgs() != 0 || numGenericMethodArgs != 0) &&
+                (
 #ifdef FEATURE_COMINTEROP 
-             fIsClassComImport ||
-             bmtProp->fComEventItfType ||
+                fIsClassComImport ||
+                bmtProp->fComEventItfType ||
 #endif // FEATURE_COMINTEROP
-             IsMdPinvokeImpl(dwMemberAttrs) ||
-             (IsMiInternalCall(dwImplFlags) && !GetModule()->IsSystem())))
-        {
+                IsMdPinvokeImpl(dwMemberAttrs) ||
+                (IsMiInternalCall(dwImplFlags) && !GetModule()->IsSystem())))
+            {
 #ifdef FEATURE_COMINTEROP
-            if (!GetHalfBakedClass()->IsProjectedFromWinRT())
+                if (!GetHalfBakedClass()->IsProjectedFromWinRT())
 #endif // FEATURE_COMINTEROP
-            {
-                BuildMethodTableThrowException(BFA_BAD_PLACE_FOR_GENERIC_METHOD);
+                {
+                    BuildMethodTableThrowException(BFA_BAD_PLACE_FOR_GENERIC_METHOD);
+                }
             }
-        }
-
-        // Generic methods may not be marked "runtime".  However note that
-        // methods in generic delegate classes are, hence we don't apply this to
-        // methods in generic classes in general.
-        if (numGenericMethodArgs != 0 && IsMiRuntime(dwImplFlags))
-        {
-            BuildMethodTableThrowException(BFA_GENERIC_METHOD_RUNTIME_IMPL);
-        }
-
 
-        // Signature validation
-        if (FAILED(pMDInternalImport->GetSigOfMethodDef(tok, &cMemberSignature, &pMemberSignature)))
-        {
-            BuildMethodTableThrowException(hr, BFA_BAD_SIGNATURE, mdMethodDefNil);
-        }
-        hr = validateTokenSig(tok,pMemberSignature,cMemberSignature,dwMemberAttrs,pMDInternalImport);
-        if (FAILED(hr))
-        {
-            BuildMethodTableThrowException(hr, BFA_BAD_SIGNATURE, mdMethodDefNil);
-        }
+            // Generic methods may not be marked "runtime".  However note that
+            // methods in generic delegate classes are, hence we don't apply this to
+            // methods in generic classes in general.
+            if (numGenericMethodArgs != 0 && IsMiRuntime(dwImplFlags))
+            {
+                BuildMethodTableThrowException(BFA_GENERIC_METHOD_RUNTIME_IMPL);
+            }
 
-        // Check the appearance of covariant and contravariant in the method signature
-        // Note that variance is only supported for interfaces
-        if (bmtGenerics->pVarianceInfo != NULL)
-        {
-            SigPointer sp(pMemberSignature, cMemberSignature);
-            ULONG callConv;
-            IfFailThrow(sp.GetCallingConvInfo(&callConv));
+            // Check the appearance of covariant and contravariant in the method signature
+            // Note that variance is only supported for interfaces
+            if (bmtGenerics->pVarianceInfo != NULL)
+            {
+                SigPointer sp(pMemberSignature, cMemberSignature);
+                ULONG callConv;
+                IfFailThrow(sp.GetCallingConvInfo(&callConv));
 
-            if (callConv & IMAGE_CEE_CS_CALLCONV_GENERIC)
-                IfFailThrow(sp.GetData(NULL));
+                if (callConv & IMAGE_CEE_CS_CALLCONV_GENERIC)
+                    IfFailThrow(sp.GetData(NULL));
 
-            DWORD numArgs;
-            IfFailThrow(sp.GetData(&numArgs));
+                DWORD numArgs;
+                IfFailThrow(sp.GetData(&numArgs));
 
-            // Return type behaves covariantly
-            if (!EEClass::CheckVarianceInSig(
-                    bmtGenerics->GetNumGenericArgs(), 
-                    bmtGenerics->pVarianceInfo, 
-                    GetModule(), 
-                    sp, 
-                    gpCovariant))
-            {
-                BuildMethodTableThrowException(IDS_CLASSLOAD_VARIANCE_IN_METHOD_RESULT, tok);
-            }
-            IfFailThrow(sp.SkipExactlyOne());
-            for (DWORD j = 0; j < numArgs; j++)
-            {
-                // Argument types behave contravariantly
-                if (!EEClass::CheckVarianceInSig(bmtGenerics->GetNumGenericArgs(),
-                                                 bmtGenerics->pVarianceInfo,
-                                                 GetModule(),
-                                                 sp,
-                                                 gpContravariant))
+                // Return type behaves covariantly
+                if (!EEClass::CheckVarianceInSig(
+                        bmtGenerics->GetNumGenericArgs(), 
+                        bmtGenerics->pVarianceInfo, 
+                        GetModule(), 
+                        sp, 
+                        gpCovariant))
                 {
-                    BuildMethodTableThrowException(IDS_CLASSLOAD_VARIANCE_IN_METHOD_ARG, tok);
+                    BuildMethodTableThrowException(IDS_CLASSLOAD_VARIANCE_IN_METHOD_RESULT, tok);
                 }
                 IfFailThrow(sp.SkipExactlyOne());
+                for (DWORD j = 0; j < numArgs; j++)
+                {
+                    // Argument types behave contravariantly
+                    if (!EEClass::CheckVarianceInSig(bmtGenerics->GetNumGenericArgs(),
+                                                    bmtGenerics->pVarianceInfo,
+                                                    GetModule(),
+                                                    sp,
+                                                    gpContravariant))
+                    {
+                        BuildMethodTableThrowException(IDS_CLASSLOAD_VARIANCE_IN_METHOD_ARG, tok);
+                    }
+                    IfFailThrow(sp.SkipExactlyOne());
+                }
             }
         }
 
@@ -6175,9 +6193,9 @@ MethodTableBuilder::PlaceMethodImpls()
     // it might contain overrides for other interface methods.
     DWORD dwMaxSlotSize = IsInterface() ? bmtMethod->dwNumberMethodImpls : bmtVT->cVirtualSlots;
 
-    DWORD * slots = new (&GetThread()->m_MarshalAlloc) DWORD[dwMaxSlotSize];
-    mdToken * tokens = new (&GetThread()->m_MarshalAlloc) mdToken[dwMaxSlotSize];
-    RelativePointer<MethodDesc *> * replaced = new (&GetThread()->m_MarshalAlloc) RelativePointer<MethodDesc*>[dwMaxSlotSize];
+    DWORD * slots = new (GetStackingAllocator()) DWORD[dwMaxSlotSize];
+    mdToken * tokens = new (GetStackingAllocator()) mdToken[dwMaxSlotSize];
+    RelativePointer<MethodDesc *> * replaced = new (GetStackingAllocator()) RelativePointer<MethodDesc*>[dwMaxSlotSize];
 
     DWORD iEntry = 0;
     bmtMDMethod * pCurImplMethod = bmtMethodImpl->GetImplementationMethod(iEntry);
@@ -9004,8 +9022,7 @@ MethodTableBuilder::LoadExactInterfaceMap(MethodTable *pMT)
 
         // First we do a GetCheckpoint for the thread-based allocator.  ExpandExactInheritedInterfaces allocates substitution chains
         // on the thread allocator rather than on the stack.
-        Thread * pThread = GetThread();
-        CheckPointHolder cph(pThread->m_MarshalAlloc.GetCheckpoint()); //hold checkpoint for autorelease
+        ACQUIRE_STACKING_ALLOCATOR(pStackingAllocator);
 
         // ***********************************************************
         // ****** This must be consistent with code:ExpandApproxInterface etc. *******
@@ -9015,7 +9032,7 @@ MethodTableBuilder::LoadExactInterfaceMap(MethodTable *pMT)
         // ***********************************************************
 
         bmtExactInterfaceInfo bmtExactInterface;
-        bmtExactInterface.pInterfaceSubstitution = new (&pThread->m_MarshalAlloc) Substitution[pMT->GetNumInterfaces()];
+        bmtExactInterface.pInterfaceSubstitution = new (pStackingAllocator) Substitution[pMT->GetNumInterfaces()];
         bmtExactInterface.pExactMTs = pExactMTs;
         bmtExactInterface.nAssigned = 0;
         bmtExactInterface.typeContext = typeContext;
@@ -9023,15 +9040,16 @@ MethodTableBuilder::LoadExactInterfaceMap(MethodTable *pMT)
         // Do the interfaces inherited from a parent class
         if ((pParentMT != NULL) && (pParentMT->GetNumInterfaces() > 0))
         {
-            Substitution * pParentSubstForTypeLoad = new (&pThread->m_MarshalAlloc) Substitution(
+            Substitution * pParentSubstForTypeLoad = new (pStackingAllocator) Substitution(
                 pMT->GetSubstitutionForParent(NULL));
-            Substitution * pParentSubstForComparing = new (&pThread->m_MarshalAlloc) Substitution(
+            Substitution * pParentSubstForComparing = new (pStackingAllocator) Substitution(
                 pMT->GetSubstitutionForParent(NULL));
             ExpandExactInheritedInterfaces(
                 &bmtExactInterface, 
                 pParentMT, 
                 pParentSubstForTypeLoad, 
-                pParentSubstForComparing);
+                pParentSubstForComparing,
+                pStackingAllocator);
         }
 #ifdef _DEBUG
         //#ExactInterfaceMap_SupersetOfParent
@@ -9064,16 +9082,20 @@ MethodTableBuilder::LoadExactInterfaceMap(MethodTable *pMT)
 
         // If there are any __Canon instances in the type argument list, then we defer the
         // ambiguity checking until an exact instantiation.
-        if (!pMT->IsSharedByGenericInstantiations())
+        // As the C# compiler won't allow an ambiguous generic interface to be generated, we don't
+        // need this logic for CoreLib. We can't use the sanity checks flag here, as these ambiguities
+        // are specified to the exact instantiation in use, not just whether or not normal the type is
+        // well formed in metadata.
+        if (!pMT->IsSharedByGenericInstantiations() && !pMT->GetModule()->IsSystem())
         {
             // There are no __Canon types in the instantiation, so do ambiguity check.
             bmtInterfaceAmbiguityCheckInfo bmtCheckInfo;
             bmtCheckInfo.pMT = pMT;
-            bmtCheckInfo.ppInterfaceSubstitutionChains = new (&pThread->m_MarshalAlloc) Substitution *[pMT->GetNumInterfaces()];
-            bmtCheckInfo.ppExactDeclaredInterfaces = new (&pThread->m_MarshalAlloc) MethodTable *[pMT->GetNumInterfaces()];
+            bmtCheckInfo.ppInterfaceSubstitutionChains = new (pStackingAllocator) Substitution *[pMT->GetNumInterfaces()];
+            bmtCheckInfo.ppExactDeclaredInterfaces = new (pStackingAllocator) MethodTable *[pMT->GetNumInterfaces()];
             bmtCheckInfo.nAssigned = 0;
             bmtCheckInfo.typeContext = typeContext;
-            MethodTableBuilder::InterfacesAmbiguityCheck(&bmtCheckInfo, pMT->GetModule(), pMT->GetCl(), NULL);
+            MethodTableBuilder::InterfacesAmbiguityCheck(&bmtCheckInfo, pMT->GetModule(), pMT->GetCl(), NULL, pStackingAllocator);
         }
 
         // OK, there is no ambiguity amongst the instantiated interfaces declared on this class.
@@ -9082,7 +9104,8 @@ MethodTableBuilder::LoadExactInterfaceMap(MethodTable *pMT)
             pMT->GetModule(), 
             pMT->GetCl(), 
             NULL, 
-            NULL 
+            NULL,
+            pStackingAllocator
             COMMA_INDEBUG(pMT));
         CONSISTENCY_CHECK(bmtExactInterface.nAssigned == pMT->GetNumInterfaces());
         
@@ -9266,7 +9289,8 @@ MethodTableBuilder::ExpandExactInheritedInterfaces(
     bmtExactInterfaceInfo * bmtInfo, 
     MethodTable *           pMT, 
     const Substitution *    pSubstForTypeLoad, 
-    Substitution *          pSubstForComparing)
+    Substitution *          pSubstForComparing,
+    StackingAllocator *     pStackingAllocator)
 {
     STANDARD_VM_CONTRACT;
 
@@ -9280,26 +9304,28 @@ MethodTableBuilder::ExpandExactInheritedInterfaces(
     if (pParentMT)
     {
         // Chain parent's substitution for exact type load
-        Substitution * pParentSubstForTypeLoad = new (&GetThread()->m_MarshalAlloc) Substitution(
+        Substitution * pParentSubstForTypeLoad = new (pStackingAllocator) Substitution(
             pMT->GetSubstitutionForParent(pSubstForTypeLoad));
         
         // Chain parent's substitution for comparing interfaces (note that this type is temporarily 
         // considered as open type)
-        Substitution * pParentSubstForComparing = new (&GetThread()->m_MarshalAlloc) Substitution(
+        Substitution * pParentSubstForComparing = new (pStackingAllocator) Substitution(
             pMT->GetSubstitutionForParent(pSubstForComparing));
         
         ExpandExactInheritedInterfaces(
             bmtInfo, 
             pParentMT, 
             pParentSubstForTypeLoad, 
-            pParentSubstForComparing);
+            pParentSubstForComparing,
+            pStackingAllocator);
     }
     ExpandExactDeclaredInterfaces(
         bmtInfo, 
         pMT->GetModule(), 
         pMT->GetCl(), 
         pSubstForTypeLoad, 
-        pSubstForComparing 
+        pSubstForComparing,
+        pStackingAllocator
         COMMA_INDEBUG(pMT));
     
     // Restore type's subsitution chain for comparing interfaces
@@ -9314,7 +9340,8 @@ MethodTableBuilder::ExpandExactDeclaredInterfaces(
     Module *                    pModule, 
     mdToken                     typeDef, 
     const Substitution *        pSubstForTypeLoad, 
-    Substitution *              pSubstForComparing 
+    Substitution *              pSubstForComparing,
+    StackingAllocator *         pStackingAllocator
     COMMA_INDEBUG(MethodTable * dbg_pClassMT))
 {
     STANDARD_VM_CONTRACT;
@@ -9340,7 +9367,8 @@ MethodTableBuilder::ExpandExactDeclaredInterfaces(
             bmtInfo, 
             pInterface, 
             &ifaceSubstForTypeLoad, 
-            &ifaceSubstForComparing 
+            &ifaceSubstForComparing,
+            pStackingAllocator
             COMMA_INDEBUG(dbg_pClassMT));
     }
     if (FAILED(hr))
@@ -9355,7 +9383,8 @@ MethodTableBuilder::ExpandExactInterface(
     bmtExactInterfaceInfo *     bmtInfo, 
     MethodTable *               pIntf, 
     const Substitution *        pSubstForTypeLoad_OnStack,   // Allocated on stack!
-    const Substitution *        pSubstForComparing_OnStack   // Allocated on stack!
+    const Substitution *        pSubstForComparing_OnStack,  // Allocated on stack!
+    StackingAllocator *         pStackingAllocator
     COMMA_INDEBUG(MethodTable * dbg_pClassMT))
 {
     STANDARD_VM_CONTRACT;
@@ -9394,14 +9423,15 @@ MethodTableBuilder::ExpandExactInterface(
     bmtInfo->pInterfaceSubstitution[n] = *pSubstForComparing_OnStack;
     bmtInfo->nAssigned++;
     
-    Substitution * pSubstForTypeLoad = new (&GetThread()->m_MarshalAlloc) Substitution(*pSubstForTypeLoad_OnStack);
+    Substitution * pSubstForTypeLoad = new (pStackingAllocator) Substitution(*pSubstForTypeLoad_OnStack);
     
     ExpandExactDeclaredInterfaces(
         bmtInfo, 
         pIntf->GetModule(), 
         pIntf->GetCl(), 
         pSubstForTypeLoad, 
-        &bmtInfo->pInterfaceSubstitution[n] 
+        &bmtInfo->pInterfaceSubstitution[n],
+        pStackingAllocator
         COMMA_INDEBUG(dbg_pClassMT));
 } // MethodTableBuilder::ExpandExactInterface
 
@@ -9410,7 +9440,8 @@ MethodTableBuilder::ExpandExactInterface(
 void MethodTableBuilder::InterfacesAmbiguityCheck(bmtInterfaceAmbiguityCheckInfo *bmtCheckInfo,
                                                   Module *pModule,
                                                   mdToken typeDef,
-                                                  const Substitution *pSubstChain)
+                                                  const Substitution *pSubstChain,
+                                                  StackingAllocator *pStackingAllocator)
 {
     STANDARD_VM_CONTRACT;
 
@@ -9427,7 +9458,7 @@ void MethodTableBuilder::InterfacesAmbiguityCheck(bmtInterfaceAmbiguityCheckInfo
                                                         CLASS_LOAD_EXACTPARENTS,
                                                         TRUE,
                                                         pSubstChain).GetMethodTable();
-        InterfaceAmbiguityCheck(bmtCheckInfo, ie.CurrentSubst(), pInterface);
+        InterfaceAmbiguityCheck(bmtCheckInfo, ie.CurrentSubst(), pInterface, pStackingAllocator);
     }
     if (FAILED(hr))
     {
@@ -9438,7 +9469,8 @@ void MethodTableBuilder::InterfacesAmbiguityCheck(bmtInterfaceAmbiguityCheckInfo
 //*******************************************************************************
 void MethodTableBuilder::InterfaceAmbiguityCheck(bmtInterfaceAmbiguityCheckInfo *bmtCheckInfo,
                                                  const Substitution *pItfSubstChain,
-                                                 MethodTable *pIntf)
+                                                 MethodTable *pIntf,
+                                                 StackingAllocator *pStackingAllocator)
 {
     STANDARD_VM_CONTRACT;
 
@@ -9472,11 +9504,11 @@ void MethodTableBuilder::InterfaceAmbiguityCheck(bmtInterfaceAmbiguityCheckInfo
 
     DWORD n = bmtCheckInfo->nAssigned;
     bmtCheckInfo->ppExactDeclaredInterfaces[n] = pIntf;
-    bmtCheckInfo->ppInterfaceSubstitutionChains[n] = new (&GetThread()->m_MarshalAlloc) Substitution[pItfSubstChain->GetLength()];
+    bmtCheckInfo->ppInterfaceSubstitutionChains[n] = new (pStackingAllocator) Substitution[pItfSubstChain->GetLength()];
     pItfSubstChain->CopyToArray(bmtCheckInfo->ppInterfaceSubstitutionChains[n]);
 
     bmtCheckInfo->nAssigned++;
-    InterfacesAmbiguityCheck(bmtCheckInfo,pIntf->GetModule(),pIntf->GetCl(),pItfSubstChain);
+    InterfacesAmbiguityCheck(bmtCheckInfo,pIntf->GetModule(),pIntf->GetCl(),pItfSubstChain, pStackingAllocator);
 }
 
 
@@ -11734,7 +11766,8 @@ MethodTableBuilder::GatherGenericsInfo(
     Module *          pModule, 
     mdTypeDef         cl, 
     Instantiation     inst, 
-    bmtGenericsInfo * bmtGenericsInfo)
+    bmtGenericsInfo * bmtGenericsInfo,
+    StackingAllocator*pStackingAllocator)
 {
     CONTRACTL
     {
@@ -11778,14 +11811,14 @@ MethodTableBuilder::GatherGenericsInfo(
         bmtGenericsInfo->numDicts = 1;
         
         mdGenericParam tkTyPar;
-        bmtGenericsInfo->pVarianceInfo = new (&GetThread()->m_MarshalAlloc) BYTE[numGenericArgs];
+        bmtGenericsInfo->pVarianceInfo = new (pStackingAllocator) BYTE[numGenericArgs];
 
         // If it has generic arguments but none have been specified, then load the instantiation at the formals
         if (inst.IsEmpty())
         {
             bmtGenericsInfo->fTypicalInstantiation = TRUE;
             S_UINT32 scbAllocSize = S_UINT32(numGenericArgs) * S_UINT32(sizeof(TypeHandle));
-            TypeHandle * genericArgs = (TypeHandle *) GetThread()->m_MarshalAlloc.Alloc(scbAllocSize);
+            TypeHandle * genericArgs = (TypeHandle *) pStackingAllocator->Alloc(scbAllocSize);
 
             inst = Instantiation(genericArgs, numGenericArgs);
 
@@ -11990,8 +12023,6 @@ ClassLoader::CreateTypeHandleForTypeDefThrowing(
 
     MethodTable * pMT = NULL;
 
-    Thread * pThread = GetThread();
-
     MethodTable * pParentMethodTable = NULL;
     SigPointer    parentInst;
     mdTypeDef     tdEnclosing = mdTypeDefNil;
@@ -12014,10 +12045,10 @@ ClassLoader::CreateTypeHandleForTypeDefThrowing(
     // used during class loading.
     // <NICE> Ideally a debug/checked build should pass around tokens indicating the Checkpoint
     // being used and check these dynamically </NICE>
-    CheckPointHolder cph(pThread->m_MarshalAlloc.GetCheckpoint()); //hold checkpoint for autorelease
+    ACQUIRE_STACKING_ALLOCATOR(pStackingAllocator);
     
     // Gather up generics info
-    MethodTableBuilder::GatherGenericsInfo(pModule, cl, inst, &genericsInfo);
+    MethodTableBuilder::GatherGenericsInfo(pModule, cl, inst, &genericsInfo, pStackingAllocator);
 
     Module * pLoaderModule = pModule;
     if (!inst.IsEmpty())
@@ -12153,7 +12184,7 @@ ClassLoader::CreateTypeHandleForTypeDefThrowing(
         DWORD i;
         
         // Allocate the BuildingInterfaceList table
-        pInterfaceBuildInfo = new (&GetThread()->m_MarshalAlloc) BuildingInterfaceInfo_t[cInterfaces];
+        pInterfaceBuildInfo = new (pStackingAllocator) BuildingInterfaceInfo_t[cInterfaces];
         
         mdInterfaceImpl ii;
         for (i = 0; pInternalImport->EnumNext(&hEnumInterfaceImpl, &ii); i++)
@@ -12258,7 +12289,7 @@ ClassLoader::CreateTypeHandleForTypeDefThrowing(
                 pAssembly->ThrowTypeLoadException(pInternalImport, cl, IDS_CLASSLOAD_BADFORMAT);
             }
 
-            pLayoutRawFieldInfos = (LayoutRawFieldInfo *)GetThread()->m_MarshalAlloc.Alloc(
+            pLayoutRawFieldInfos = (LayoutRawFieldInfo *)pStackingAllocator->Alloc(
                 (S_UINT32(1) + S_UINT32(cFields)) * S_UINT32(sizeof(LayoutRawFieldInfo)));
             
             {
@@ -12295,7 +12326,7 @@ ClassLoader::CreateTypeHandleForTypeDefThrowing(
     MethodTableBuilder builder(
         NULL,
         pClass,
-        &GetThread()->m_MarshalAlloc
+        pStackingAllocator
         pamTracker);
 
     pMT = builder.BuildMethodTableThrowing(
index e7ef13b..82f1c4f 100644 (file)
@@ -123,7 +123,8 @@ public:
     static void GatherGenericsInfo(Module *pModule,
                                    mdTypeDef cl,
                                    Instantiation inst,
-                                   bmtGenericsInfo *bmtGenericsInfo);
+                                   bmtGenericsInfo *bmtGenericsInfo,
+                                   StackingAllocator *pStackingAllocator);
 
     MethodTable *
     BuildMethodTableThrowing(
@@ -2426,7 +2427,8 @@ private:
         bmtExactInterfaceInfo *     bmtInfo, 
         MethodTable *               pIntf, 
         const Substitution *        pSubstForTypeLoad_OnStack,  // Allocated on stack!
-        const Substitution *        pSubstForComparing_OnStack  // Allocated on stack!
+        const Substitution *        pSubstForComparing_OnStack, // Allocated on stack!
+        StackingAllocator *         pStackingAllocator
         COMMA_INDEBUG(MethodTable * dbg_pClassMT));
     
 public:
@@ -2436,7 +2438,8 @@ public:
         Module *                    pModule, 
         mdToken                     typeDef, 
         const Substitution *        pSubstForTypeLoad, 
-        Substitution *              pSubstForComparing 
+        Substitution *              pSubstForComparing,
+        StackingAllocator *     pStackingAllocator
         COMMA_INDEBUG(MethodTable * dbg_pClassMT));
     
     static void
@@ -2444,7 +2447,8 @@ public:
         bmtExactInterfaceInfo * bmtInfo, 
         MethodTable *           pParentMT, 
         const Substitution *    pSubstForTypeLoad, 
-        Substitution *          pSubstForComparing);
+        Substitution *          pSubstForComparing,
+        StackingAllocator *     pStackingAllocator);
 
 public: 
     // --------------------------------------------------------------------------------------------
@@ -2469,14 +2473,16 @@ public:
         bmtInterfaceAmbiguityCheckInfo *,
         Module *pModule, 
         mdToken typeDef,  
-        const Substitution *pSubstChain);
+        const Substitution *pSubstChain,
+        StackingAllocator *pStackingAllocator);
 
 private:
     static void
     InterfaceAmbiguityCheck(
         bmtInterfaceAmbiguityCheckInfo *,
         const Substitution *pSubstChain, 
-        MethodTable *pIntfMT);
+        MethodTable *pIntfMT,
+        StackingAllocator *pStackingAllocator);
 
 public:
     static void
index 20e8f4b..5ff9bb1 100644 (file)
@@ -234,7 +234,7 @@ FileLoadLevel MulticoreJitManager::GetModuleFileLoadLevel(Module * pModule)
 
     if (pModule != NULL)
     {
-        DomainFile * pDomainFile = pModule->FindDomainFile(GetAppDomain());
+        DomainFile * pDomainFile = pModule->GetDomainFile();
 
         if (pDomainFile != NULL)
         {
index f0a44d8..5c7aa55 100644 (file)
@@ -1716,7 +1716,7 @@ BOOL PEFile::GetResource(LPCSTR szName, DWORD *cbResource,
         if (pAssembly == NULL)
             return FALSE;
 
-        pDomainAssembly = pAssembly->GetDomainAssembly(pAppDomain);
+        pDomainAssembly = pAssembly->GetDomainAssembly();
         pPEFile = pDomainAssembly->GetFile();
 
         if (FAILED(pAssembly->GetManifestImport()->FindManifestResourceByName(
index 0cb3148..b03638f 100644 (file)
@@ -310,76 +310,6 @@ HRESULT IterateUnsharedModules(AppDomain * pAppDomain,
 
 
 //---------------------------------------------------------------------------------------
-// This is a helper class used by ProfilerModuleEnum when determining which shared
-// modules should be added to the enumerator. See code:ProfilerModuleEnum::Init for how
-// this gets used
-
-class IterateAppDomainsForSharedModule
-{
-public:
-    IterateAppDomainsForSharedModule(CDynArray< ModuleID > * pElements, Module * pModule)
-        : m_pElements(pElements), m_pModule(pModule)
-    {
-        LIMITED_METHOD_CONTRACT;
-    }
-
-    //---------------------------------------------------------------------------------------
-    // Callback passed to IterateAppDomains, that takes the currently iterated AppDomain,
-    // and adds m_pModule to the enumerator if it's loaded into the AppDomain. See
-    // code:ProfilerModuleEnum::Init for how this gets used.
-    // 
-    // Arguments:
-    //      * pAppDomain - Current AppDomain being iterated.
-    //
-    // Return Value:
-    //      * S_OK = the iterator should continue after we return.
-    //      * S_FALSE = we verified m_pModule is loaded into this AppDomain, so no need
-    //          for the iterator to continue with the next AppDomain
-    //      * error indicating a failure
-    //
-    HRESULT AddSharedModuleForAppDomain(AppDomain * pAppDomain)
-    {
-        CONTRACTL
-        {
-            NOTHROW;
-            GC_NOTRIGGER;
-            MODE_ANY;
-            CANNOT_TAKE_LOCK;
-        }
-        CONTRACTL_END;
-
-        DomainFile * pDomainFile = m_pModule->FindDomainFile(pAppDomain);
-        if ((pDomainFile == NULL) || !pDomainFile->IsAvailableToProfilers())
-        {
-            // This AD doesn't contain a fully loaded DomainFile for m_pModule.  So continue
-            // iterating with the next AD
-            return S_OK;
-        }
-
-        ModuleID * pElement = m_pElements->Append();
-        if (pElement == NULL)
-        {
-            // Stop iteration with error
-            return E_OUTOFMEMORY;
-        }
-
-        // If we're here, we found a fully loaded DomainFile for m_pModule. So add
-        // m_pModule to our array, and no need to look at other other ADs for this
-        // m_pModule.
-        *pElement = (ModuleID) m_pModule;
-        return S_FALSE;
-    }
-
-private:
-    // List of ModuleIDs in the enumerator we're building
-    CDynArray< ModuleID > * m_pElements;    
-
-    // Shared Module we're testing for load status in the iterated ADs.
-    Module * m_pModule;                     
-};
-
-
-//---------------------------------------------------------------------------------------
 //
 // Callback passed to IterateAppDomains, that takes the currently iterated AppDomain,
 // and then iterates through the unshared modules loaded into that AD.  See
@@ -528,7 +458,7 @@ HRESULT IterateAppDomainContainingModule::AddAppDomainContainingModule(AppDomain
     }
     CONTRACTL_END;
 
-    DomainFile * pDomainFile = m_pModule->FindDomainFile(pAppDomain);
+    DomainFile * pDomainFile = m_pModule->GetDomainFile();
     if ((pDomainFile != NULL) && (pDomainFile->IsAvailableToProfilers()))
     {
         if (m_index < m_cAppDomainIds)
index 663b82f..db331f4 100644 (file)
@@ -590,6 +590,10 @@ COM_METHOD ProfToEEInterfaceImpl::QueryInterface(REFIID id, void ** pInterface)
     {
         *pInterface = static_cast<ICorProfilerInfo9 *>(this);
     }
+    else if (id == IID_ICorProfilerInfo10)
+    {
+        *pInterface = static_cast<ICorProfilerInfo10 *>(this);
+    }
     else if (id == IID_IUnknown)
     {
         *pInterface = static_cast<IUnknown *>(static_cast<ICorProfilerInfo *>(this));
@@ -1077,6 +1081,43 @@ bool SaveContainedObjectRef(Object * pBO, void * context)
     return TRUE;
 }
 
+typedef struct _ObjectRefOffsetTuple
+{
+    Object* pCurObjRef;
+    SIZE_T* pCurObjOffset;
+} ObjectRefOffsetTuple;
+
+//---------------------------------------------------------------------------------------
+//
+// Callback of type walk_fn used by IGCHeap::DiagWalkObject.  Stores each object reference
+// encountered into an array.
+//
+// Arguments:
+//      o - original object
+//      pBO - Object reference encountered in walk
+//      context - Array of locations within the walked object that point to other
+//                objects.  On entry, (*context) points to the next unfilled array
+//                entry.  On exit, that location is filled, and (*context) is incremented
+//                to point to the next entry.
+//
+// Return Value:
+//      Always returns TRUE to object walker so it walks the entire object
+//
+
+bool SaveContainedObjectRef2(Object* o, uint8_t** pBO, void* context)
+{
+    LIMITED_METHOD_CONTRACT;
+
+    auto x = (ObjectRefOffsetTuple*)context;
+    *((Object **)(x->pCurObjRef)) = (Object *)*pBO;
+    *((SIZE_T **)(x->pCurObjOffset)) = (SIZE_T*)((uint8_t*)pBO - (uint8_t*)o);
+
+    x->pCurObjRef++;
+    x->pCurObjOffset++;
+
+    return TRUE;
+}
+
 //---------------------------------------------------------------------------------------
 //
 // Callback of type walk_fn used by the GC when walking the heap, to help profapi and ETW
@@ -3113,7 +3154,7 @@ HRESULT ProfToEEInterfaceImpl::GetRVAStaticAddress(ClassID classId,
     //
     // Check that the data is available
     //
-    if (!IsClassOfMethodTableInited(pMethodTable, GetAppDomain()))
+    if (!IsClassOfMethodTableInited(pMethodTable))
     {
         return CORPROF_E_DATAINCOMPLETE;
     }
@@ -3170,7 +3211,7 @@ HRESULT ProfToEEInterfaceImpl::GetAppDomainStaticAddress(ClassID classId,
         // Yay!
         EE_THREAD_NOT_REQUIRED;
 
-        // FieldDesc::GetStaticAddress & FieldDesc::GetBaseInDomain take locks
+        // FieldDesc::GetStaticAddress & FieldDesc::GetBase take locks
         CAN_TAKE_LOCK;
 
     }
@@ -3251,7 +3292,7 @@ HRESULT ProfToEEInterfaceImpl::GetAppDomainStaticAddress(ClassID classId,
     //
     // Check that the data is available
     //
-    if (!IsClassOfMethodTableInited(pMethodTable, pAppDomain))
+    if (!IsClassOfMethodTableInited(pMethodTable))
     {
         return CORPROF_E_DATAINCOMPLETE;
     }
@@ -3259,7 +3300,7 @@ HRESULT ProfToEEInterfaceImpl::GetAppDomainStaticAddress(ClassID classId,
     //
     // Get the address
     //
-    void *base = (void*)pFieldDesc->GetBaseInDomain(pAppDomain);
+    void *base = (void*)pFieldDesc->GetBase();
 
     if (base == NULL)
     {
@@ -3466,12 +3507,11 @@ HRESULT ProfToEEInterfaceImpl::GetThreadStaticAddress2(ClassID classId,
     // It may seem redundant to try to retrieve the same method table from GetEnclosingMethodTable, but classId 
     // leads to the instantiated method table while GetEnclosingMethodTable returns the uninstantiated one.
     MethodTable *pMethodTable = pFieldDesc->GetEnclosingMethodTable();
-    AppDomain * pAppDomain = (AppDomain *)appDomainId;
 
     //
     // Check that the data is available
     //
-    if (!IsClassOfMethodTableInited(pMethodTable, pAppDomain))
+    if (!IsClassOfMethodTableInited(pMethodTable))
     {
         return CORPROF_E_DATAINCOMPLETE;
     }
@@ -6751,6 +6791,71 @@ HRESULT ProfToEEInterfaceImpl::GetCodeInfo4(UINT_PTR pNativeCodeStartAddress,
 }
 
 /*
+ * GetObjectReferences
+ * 
+ * Gets the object references (if any) from the ObjectID.
+ * 
+ * Parameters:
+ *      objectId        - object id of interest
+ *      cNumReferences  - count of references for which the profiler has allocated buffer space
+ *      pcNumReferences - actual count of references
+ *      references      - filled array of object references
+ *
+ * Returns:
+ *   S_OK if successful
+ *
+ */
+HRESULT ProfToEEInterfaceImpl::GetObjectReferences(ObjectID objectId, ULONG32 cNumReferences, ULONG32 *pcNumReferences, ObjectID references[], SIZE_T offsets[])
+{
+    CONTRACTL
+    {
+        NOTHROW;
+        GC_NOTRIGGER;
+        MODE_ANY;
+        EE_THREAD_NOT_REQUIRED;
+        CANNOT_TAKE_LOCK;
+    }
+    CONTRACTL_END;
+
+    PROFILER_TO_CLR_ENTRYPOINT_SYNC_EX(
+        kP2EEAllowableAfterAttach,
+        (LF_CORPROF,
+        LL_INFO1000,
+        "**PROF: GetObjectReferences 0x%p.\n",
+        objectId));
+
+    if (cNumReferences > 0 && (pcNumReferences == nullptr || references == nullptr || offsets == nullptr))
+    {
+        return E_INVALIDARG;
+    }
+
+    Object* pBO = (Object*)objectId;
+    MethodTable *pMT = pBO->GetMethodTable();
+
+    if (pMT->ContainsPointersOrCollectible())
+    {
+        if (cNumReferences == 0)
+        {
+            GCHeapUtilities::GetGCHeap()->DiagWalkObject(pBO, &CountContainedObjectRef, (void*)pcNumReferences);
+        }
+        else
+        {
+            ObjectRefOffsetTuple t;
+            t.pCurObjRef = (Object*)references;
+            t.pCurObjOffset = offsets;
+
+            GCHeapUtilities::GetGCHeap()->DiagWalkObject2(pBO, &SaveContainedObjectRef2, (void*)&t);
+        }
+    }
+    else
+    {
+        *pcNumReferences = 0;
+    }
+
+    return S_OK;
+}
+
+/*
  * GetStringLayout
  *
  * This function describes to a profiler the internal layout of a string.
index 7c3c88b..2445c43 100644 (file)
@@ -133,7 +133,7 @@ typedef struct _PROFILER_STACK_WALK_DATA PROFILER_STACK_WALK_DATA;
 // from the profiler implementation.  The profiler will call back on the v-table
 // to get at EE internals as required.
 
-class ProfToEEInterfaceImpl : public ICorProfilerInfo9
+class ProfToEEInterfaceImpl : public ICorProfilerInfo10
 {
 public:
 
@@ -600,6 +600,17 @@ public:
 
     // end ICorProfilerInfo9
 
+    // beging ICorProfilerInfo10
+
+    COM_METHOD GetObjectReferences(
+        ObjectID objectId,
+        ULONG32 cNumReferences,
+        ULONG32 *pcNumReferences,
+        ObjectID references[],
+        SIZE_T offsets[]);
+
+    // end ICorProfilerInfo10
+
 protected:
 
     // Internal Helper Functions
index 376fad2..58a3770 100644 (file)
@@ -178,14 +178,14 @@ inline ProfToEEInterfaceImpl::ProfToEEInterfaceImpl()
 };
 
 
-inline BOOL IsClassOfMethodTableInited(MethodTable * pMethodTable, AppDomain * pAppDomain)
+inline BOOL IsClassOfMethodTableInited(MethodTable * pMethodTable)
 {
     LIMITED_METHOD_CONTRACT;
 
     return (pMethodTable->IsRestored() &&
         (pMethodTable->GetModuleForStatics() != NULL) &&
-        (pMethodTable->GetDomainLocalModule(pAppDomain) != NULL) &&
-        pMethodTable->IsClassInited(pAppDomain));
+        (pMethodTable->GetDomainLocalModule() != NULL) &&
+        pMethodTable->IsClassInited());
 }
 
 
index ec1d175..3d45ef2 100644 (file)
@@ -1926,7 +1926,7 @@ FCIMPL1(void, ReflectionInvocation::RunModuleConstructor, ReflectModuleBaseObjec
 
     Assembly *pAssem = pModule->GetAssembly();
 
-    DomainFile *pDomainFile = pModule->FindDomainFile(GetAppDomain());
+    DomainFile *pDomainFile = pModule->GetDomainFile();
     if (pDomainFile==NULL || !pDomainFile->IsActive())
     {
         HELPER_METHOD_FRAME_BEGIN_1(refModule);
index 620886e..911dcab 100644 (file)
@@ -169,7 +169,7 @@ NOINLINE ReflectModuleBaseObject* GetRuntimeModuleHelper(LPVOID __me, Module *pM
     if (pModule == NULL)
         return NULL;
     
-    DomainFile * pDomainFile = pModule->FindDomainFile(GetAppDomain());
+    DomainFile * pDomainFile = pModule->GetDomainFile();
 
     OBJECTREF refModule = (pDomainFile != NULL) ? pDomainFile->GetExposedModuleObjectIfExists() : NULL;
 
@@ -500,13 +500,10 @@ FCIMPL1(AssemblyBaseObject*, RuntimeTypeHandle::GetAssembly, ReflectClassBaseObj
     if (refType == NULL)
         FCThrowRes(kArgumentNullException, W("Arg_InvalidHandle"));
 
-    DomainFile *pDomainFile = NULL;
-    
-        Module *pModule = refType->GetType().GetAssembly()->GetManifestModule();
-
-            pDomainFile = pModule->FindDomainFile(GetAppDomain());
+    Module *pModule = refType->GetType().GetAssembly()->GetManifestModule();
+    DomainAssembly *pDomainAssembly = pModule->GetDomainAssembly();
 
-    FC_RETURN_ASSEMBLY_OBJECT((DomainAssembly *)pDomainFile, refType);
+    FC_RETURN_ASSEMBLY_OBJECT(pDomainAssembly, refType);
 }
 FCIMPLEND
 
@@ -2761,7 +2758,7 @@ FCIMPL1(ReflectModuleBaseObject*, AssemblyHandle::GetManifestModule, AssemblyBas
         return NULL;
 
     Module *pModule = currentAssembly->GetManifestModule();
-    DomainFile * pDomainFile = pModule->FindDomainFile(GetAppDomain());
+    DomainFile * pDomainFile = pModule->GetDomainFile();
 
 #ifdef _DEBUG
     OBJECTREF orModule;
index 44ab2f8..4b8e8b5 100644 (file)
@@ -36,7 +36,7 @@ HINSTANCE SampleProfiler::s_hMultimediaLib = NULL;
 typedef MMRESULT (WINAPI *TimePeriodFnPtr) (UINT uPeriod);
 #endif //FEATURE_PAL
 
-void SampleProfiler::Enable()
+void SampleProfiler::Enable(EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue)
 {
     CONTRACTL
     {
@@ -53,7 +53,7 @@ void SampleProfiler::Enable()
 
     if(s_pEventPipeProvider == NULL)
     {
-        s_pEventPipeProvider = EventPipe::CreateProvider(SL(s_providerName));
+        s_pEventPipeProvider = EventPipe::CreateProvider(SL(s_providerName), nullptr, nullptr, pEventPipeProviderCallbackDataQueue);
         s_pThreadTimeEvent = s_pEventPipeProvider->AddEvent(
             0, /* eventID */
             0, /* keywords */
index 00c20f3..dd8009b 100644 (file)
@@ -26,7 +26,7 @@ class SampleProfiler
     public:
 
         // Enable profiling.
-        static void Enable();
+        static void Enable(EventPipeProviderCallbackDataQueue* pEventPipeProviderCallbackDataQueue);
 
         // Disable profiling.
         static void Disable();
index 266105b..1e57c48 100644 (file)
@@ -52,7 +52,6 @@ StackingAllocator::StackingAllocator()
 
     m_FirstBlock = NULL;
     m_FirstFree = NULL;
-    m_InitialBlock = NULL;
     m_DeferredFreeBlock = NULL;
 
 #ifdef _DEBUG
@@ -64,9 +63,15 @@ StackingAllocator::StackingAllocator()
         m_MaxAlloc = 0;
 #endif
 
-    Init(true);
+    Init();
 }
 
+StackingAllocator::InitialStackBlock::InitialStackBlock()
+{
+    m_initialBlockHeader.m_Next = NULL;
+    m_initialBlockHeader.m_Length = sizeof(m_dataSpace);
+    INDEBUG(m_initialBlockHeader.m_Sentinal = 0);
+}
 
 StackingAllocator::~StackingAllocator()
 {
@@ -78,7 +83,7 @@ StackingAllocator::~StackingAllocator()
     }
     CONTRACTL_END;
 
-    Clear(NULL);
+    Clear(&m_InitialBlock.m_initialBlockHeader);
  
     if (m_DeferredFreeBlock)
     {
@@ -95,9 +100,33 @@ StackingAllocator::~StackingAllocator()
 #endif
 }
 
+void StackingAllocator::Init()
+{
+    WRAPPER_NO_CONTRACT;
+
+    m_FirstBlock = &m_InitialBlock.m_initialBlockHeader;
+    m_FirstFree = m_FirstBlock->GetData();
+    _ASSERTE((void*)m_FirstFree == (void*)m_InitialBlock.m_dataSpace);
+    m_BytesLeft = static_cast<unsigned>(m_FirstBlock->m_Length);
+}
+
 // Lightweight initial checkpoint
 Checkpoint StackingAllocator::s_initialCheckpoint;
 
+void StackingAllocator::StoreCheckpoint(Checkpoint *c)
+{
+    LIMITED_METHOD_CONTRACT;
+
+#ifdef _DEBUG
+    m_CheckpointDepth++;
+    m_Checkpoints++;
+#endif
+
+    // Record previous allocator state in it.
+    c->m_OldBlock = m_FirstBlock;
+    c->m_OldBytesLeft = m_BytesLeft;
+}
+
 void *StackingAllocator::GetCheckpoint()
 {
     CONTRACTL {
@@ -114,7 +143,7 @@ void *StackingAllocator::GetCheckpoint()
     // a special marker, s_initialCheckpoint). This is because we know how to restore the
     // allocator state on a Collapse without having to store any additional
     // context info.
-    if ((m_InitialBlock == NULL) || (m_FirstFree == m_InitialBlock->m_Data))
+    if (m_FirstFree == m_InitialBlock.m_dataSpace)
         return &s_initialCheckpoint;
 
     // Remember the current allocator state.
@@ -172,9 +201,7 @@ bool StackingAllocator::AllocNewBlockForBytes(unsigned n)
         // limit of MinBlockSize and an upper limit of MaxBlockSize. If the
         // request is larger than MaxBlockSize then allocate exactly that
         // amount.
-        // Additionally, if we don't have an initial block yet, use an increased
-        // lower bound for the size, since we intend to cache this block.
-        unsigned lower = m_InitialBlock ? MinBlockSize : InitBlockSize;
+        unsigned lower = MinBlockSize;
         size_t allocSize = sizeof(StackBlock) + max(n, min(max(n * 4, lower), MaxBlockSize));
 
         // Allocate the block.
@@ -192,19 +219,11 @@ bool StackingAllocator::AllocNewBlockForBytes(unsigned n)
 #endif
      }
 
-     // If this is the first block allocated, we record that fact since we
-     // intend to cache it.
-     if (m_InitialBlock == NULL)
-     {
-         _ASSERTE((m_FirstBlock == NULL) && (m_FirstFree == NULL) && (m_BytesLeft == 0));
-         m_InitialBlock = b;
-     }
-
      // Link new block to head of block chain and update internal state to
      // start allocating from this new block.
      b->m_Next = m_FirstBlock;
      m_FirstBlock = b;
-     m_FirstFree = b->m_Data;
+     m_FirstFree = b->GetData();
      // the cast below is safe because b->m_Length is less than MaxBlockSize (4096)
      m_BytesLeft = static_cast<unsigned>(b->m_Length);
 
@@ -274,8 +293,8 @@ void StackingAllocator::Collapse(void *CheckpointMarker)
 
     // Special case collapsing back to the initial checkpoint.
     if (c == &s_initialCheckpoint || c->m_OldBlock == NULL) {
-        Clear(m_InitialBlock);
-        Init(false);
+        Clear(&m_InitialBlock.m_initialBlockHeader);
+        Init();
 
         // confirm no buffer overruns
         INDEBUG(Validate(m_FirstBlock, m_FirstFree));
@@ -295,14 +314,71 @@ void StackingAllocator::Collapse(void *CheckpointMarker)
 
     // Restore former allocator state.
     m_FirstBlock = pOldBlock;
-    m_FirstFree = &pOldBlock->m_Data[pOldBlock->m_Length - iOldBytesLeft];
+    m_FirstFree = &pOldBlock->GetData()[pOldBlock->m_Length - iOldBytesLeft];
     m_BytesLeft = iOldBytesLeft;
 
     // confirm no buffer overruns
     INDEBUG(Validate(m_FirstBlock, m_FirstFree));
 }
 
+#ifdef _DEBUG
+void StackingAllocator::Validate(StackBlock *block, void* spot)
+{
+    LIMITED_METHOD_CONTRACT;
+
+    if (!block) 
+        return;
+    _ASSERTE(m_InitialBlock.m_initialBlockHeader.m_Length == sizeof(m_InitialBlock.m_dataSpace));
+    Sentinal* ptr = block->m_Sentinal;
+    _ASSERTE(spot);
+    while(ptr >= spot)
+    {
+            // If this assert goes off then someone overwrote their buffer!
+            // A common candidate is PINVOKE buffer run.  To confirm look
+            // up on the stack for NDirect.* Look for the MethodDesc
+            // associated with it.  Be very suspicious if it is one that
+            // has a return string buffer!.  This usually means the end
+            // programmer did not allocate a big enough buffer before passing
+            // it to the PINVOKE method.
+        if (ptr->m_Marker1 != Sentinal::marker1Val)
+            _ASSERTE(!"Memory overrun!! May be bad buffer passed to PINVOKE. turn on logging LF_STUBS level 6 to find method");
+        ptr = ptr->m_Next;
+    }
+    block->m_Sentinal = ptr;
+}
+#endif // _DEBUG
+
+void StackingAllocator::Clear(StackBlock *ToBlock)
+{
+    LIMITED_METHOD_CONTRACT;
+
+    StackBlock *p = m_FirstBlock;
+    StackBlock *q;
 
+    _ASSERTE(ToBlock != NULL);
+
+    while (p != ToBlock)
+    {
+        PREFAST_ASSUME(p != NULL);
+        
+        q = p;
+        p = p->m_Next;
+
+        INDEBUG(Validate(q, q));
+
+        // we don't give the tail block back to the OS
+        // because we can get into situations where we're growing
+        // back and forth over a single seam for a tiny alloc
+        // and the perf is a disaster -- VSWhidbey #100462
+        if (m_DeferredFreeBlock != NULL)
+        {
+            delete [] (char *)m_DeferredFreeBlock;
+        }
+
+        m_DeferredFreeBlock = q;
+        m_DeferredFreeBlock->m_Next = NULL;
+    }
+}
 void * __cdecl operator new(size_t n, StackingAllocator * alloc)
 {
     STATIC_CONTRACT_THROWS;
@@ -365,3 +441,24 @@ void * __cdecl operator new[](size_t n, StackingAllocator * alloc, const NoThrow
     return alloc->UnsafeAllocNoThrow((unsigned)n);
 }
 
+StackingAllocatorHolder::~StackingAllocatorHolder()
+{
+    m_pStackingAllocator->Collapse(m_checkpointMarker);
+    if (m_owner)
+    {
+        m_thread->m_stackLocalAllocator = NULL;
+        m_pStackingAllocator->~StackingAllocator();
+    }
+}
+
+StackingAllocatorHolder::StackingAllocatorHolder(StackingAllocator *pStackingAllocator, Thread *pThread, bool owner) :
+    m_pStackingAllocator(pStackingAllocator),
+    m_checkpointMarker(pStackingAllocator->GetCheckpoint()),
+    m_thread(pThread),
+    m_owner(owner)
+{
+    if (m_owner)
+    {
+        m_thread->m_stackLocalAllocator = pStackingAllocator;
+    }
+}
index 6d1b603..27d7037 100644 (file)
@@ -41,7 +41,7 @@
         DWORD_PTR   m_Length;       // Length of block excluding header  (needs to be pointer-sized for alignment on IA64)
         INDEBUG(Sentinal*   m_Sentinal;)    // insure that we don't fall of the end of the buffer
         INDEBUG(void**      m_Pad;)                    // keep the size a multiple of 8
-        char        m_Data[];       // Start of user allocation space
+        char *GetData() { return (char *)(this + 1);}
     };
 
     // Whenever a checkpoint is requested, a checkpoint structure is allocated
@@ -80,11 +80,20 @@ public:
 
     enum
     {
-        MinBlockSize    = 128,
-        MaxBlockSize    = 4096,
-        InitBlockSize   = 512      
+        MinBlockSize    = 0x2000,
+        MaxBlockSize    = 0x8000,
     };
 
+private:
+    struct InitialStackBlock
+    {
+        InitialStackBlock();
+        StackBlock m_initialBlockHeader;
+        char m_dataSpace[0x2000];
+    };
+
+public:
+
 #ifndef DACCESS_COMPILE
     StackingAllocator();
     ~StackingAllocator();
@@ -92,20 +101,7 @@ public:
     StackingAllocator() { LIMITED_METHOD_CONTRACT; }
 #endif
 
-    void StoreCheckpoint(Checkpoint *c)
-    {
-        LIMITED_METHOD_CONTRACT;
-
-#ifdef _DEBUG
-        m_CheckpointDepth++;
-        m_Checkpoints++;
-#endif
-
-        // Record previous allocator state in it.
-        c->m_OldBlock = m_FirstBlock;
-        c->m_OldBytesLeft = m_BytesLeft;
-    }
-
+    void StoreCheckpoint(Checkpoint *c);
     void* GetCheckpoint();
 
     // @todo move this into a .inl file as many class users of this class don't need to include this body
@@ -196,15 +192,16 @@ public:
 
     void* UnsafeAllocSafeThrow(UINT32 size);
     void* UnsafeAlloc(UINT32 size);
+    
 private:
 
     bool AllocNewBlockForBytes(unsigned n);
     
-    StackBlock      *m_FirstBlock;       // Pointer to head of allocation block list
-    char       *m_FirstFree;        // Pointer to first free byte in head block
-    unsigned    m_BytesLeft;        // Number of free bytes left in head block
-    StackBlock      *m_InitialBlock;     // The first block is special, we never free it
-    StackBlock      *m_DeferredFreeBlock; // Avoid going to the OS too often by deferring one free
+    StackBlock       *m_FirstBlock;       // Pointer to head of allocation block list
+    char             *m_FirstFree;        // Pointer to first free byte in head block
+    unsigned          m_BytesLeft;        // Number of free bytes left in head block
+    InitialStackBlock m_InitialBlock;     // The first block is special, we never free it
+    StackBlock       *m_DeferredFreeBlock; // Avoid going to the OS too often by deferring one free
 
 #ifdef _DEBUG
     unsigned    m_CheckpointDepth;
@@ -215,87 +212,57 @@ private:
     unsigned    m_MaxAlloc;
 #endif
 
-    void Init(bool bResetInitBlock)
-    {
-        WRAPPER_NO_CONTRACT;
-
-        if (bResetInitBlock || (m_InitialBlock == NULL))
-        {
-            Clear(NULL);
-            m_FirstBlock = NULL;
-            m_FirstFree = NULL;
-            m_BytesLeft = 0;
-            m_InitialBlock = NULL;
-        }
-        else
-        {
-            m_FirstBlock = m_InitialBlock;
-            m_FirstFree = m_InitialBlock->m_Data;
-            _ASSERTE(FitsIn<unsigned>(m_InitialBlock->m_Length));
-            m_BytesLeft = static_cast<unsigned>(m_InitialBlock->m_Length);
-        }
-    }
+    void Init();
 
 #ifdef _DEBUG
-    void Validate(StackBlock *block, void* spot)
-    {
-        LIMITED_METHOD_CONTRACT;
-
-        if (!block) 
-            return;
-        Sentinal* ptr = block->m_Sentinal;
-        _ASSERTE(spot);
-        while(ptr >= spot)
-        {
-                // If this assert goes off then someone overwrote their buffer!
-                // A common candidate is PINVOKE buffer run.  To confirm look
-                // up on the stack for NDirect.* Look for the MethodDesc
-                // associated with it.  Be very suspicious if it is one that
-                // has a return string buffer!.  This usually means the end
-                // programmer did not allocate a big enough buffer before passing
-                // it to the PINVOKE method.
-            if (ptr->m_Marker1 != Sentinal::marker1Val)
-                _ASSERTE(!"Memory overrun!! May be bad buffer passed to PINVOKE. turn on logging LF_STUBS level 6 to find method");
-            ptr = ptr->m_Next;
-        }
-        block->m_Sentinal = ptr;
-    }
+    void Validate(StackBlock *block, void* spot);
 #endif
 
-    void Clear(StackBlock *ToBlock)
-    {
-        LIMITED_METHOD_CONTRACT;
-
-        StackBlock *p = m_FirstBlock;
-        StackBlock *q;
-
-        while (p != ToBlock)
-        {
-            PREFAST_ASSUME(p != NULL);
-            
-            q = p;
-            p = p->m_Next;
-
-            INDEBUG(Validate(q, q));
-
-            // we don't give the tail block back to the OS
-            // because we can get into situations where we're growing
-            // back and forth over a single seam for a tiny alloc
-            // and the perf is a disaster -- VSWhidbey #100462
-            if (m_DeferredFreeBlock != NULL)
-            {
-                delete [] (char *)m_DeferredFreeBlock;
-            }
-
-            m_DeferredFreeBlock = q;
-            m_DeferredFreeBlock->m_Next = NULL;
-        }
-    }
+    void Clear(StackBlock *ToBlock);
 
 private :
     static Checkpoint s_initialCheckpoint;
 };
 
+#define ACQUIRE_STACKING_ALLOCATOR(stackingAllocatorName)  \
+  Thread *pThread__ACQUIRE_STACKING_ALLOCATOR = GetThread(); \
+  StackingAllocator *stackingAllocatorName = pThread__ACQUIRE_STACKING_ALLOCATOR->m_stackLocalAllocator; \
+  bool allocatorOwner__ACQUIRE_STACKING_ALLOCATOR = false; \
+  NewHolder<StackingAllocator> heapAllocatedStackingBuffer__ACQUIRE_STACKING_ALLOCATOR; \
+\
+  if (stackingAllocatorName == NULL) \
+  { \
+      if (pThread__ACQUIRE_STACKING_ALLOCATOR->CheckCanUseStackAlloc()) \
+      { \
+          stackingAllocatorName = new (_alloca(sizeof(StackingAllocator))) StackingAllocator; \
+      } \
+      else \
+      {\
+          stackingAllocatorName = new (nothrow) StackingAllocator; \
+          if (stackingAllocatorName == NULL) \
+              ThrowOutOfMemory(); \
+          heapAllocatedStackingBuffer__ACQUIRE_STACKING_ALLOCATOR = stackingAllocatorName; \
+      }\
+      allocatorOwner__ACQUIRE_STACKING_ALLOCATOR = true; \
+  } \
+  StackingAllocatorHolder sah_ACQUIRE_STACKING_ALLOCATOR(stackingAllocatorName, pThread__ACQUIRE_STACKING_ALLOCATOR, allocatorOwner__ACQUIRE_STACKING_ALLOCATOR)
+
+class Thread;
+class StackingAllocatorHolder
+{
+    StackingAllocator *m_pStackingAllocator;
+    void* m_checkpointMarker;
+    Thread* m_thread;
+    bool m_owner;
+
+    public:
+    ~StackingAllocatorHolder();
+    StackingAllocatorHolder(StackingAllocator *pStackingAllocator, Thread *pThread, bool owner);
+    StackingAllocator *GetStackingAllocator() { return m_pStackingAllocator; }
+    StackingAllocator &operator->() { return *m_pStackingAllocator; }
+};
+
+
 void * __cdecl operator new(size_t n, StackingAllocator *alloc);
 void * __cdecl operator new[](size_t n, StackingAllocator *alloc);
 void * __cdecl operator new(size_t n, StackingAllocator *alloc, const NoThrow&) throw();
index 179d526..a663af0 100644 (file)
@@ -159,61 +159,50 @@ STRINGREF *StringLiteralMap::GetStringLiteral(EEStringData *pStringData, BOOL bA
     HashDatum Data;
 
     DWORD dwHash = m_StringToEntryHashTable->GetHash(pStringData);
-    if (m_StringToEntryHashTable->GetValue(pStringData, &Data, dwHash))
-    {
-        STRINGREF *pStrObj = NULL;
-        pStrObj = ((StringLiteralEntry*)Data)->GetStringObject();
-        _ASSERTE(!bAddIfNotFound || pStrObj);
-        return pStrObj;
+    // Retrieve the string literal from the global string literal map.
+    CrstHolder gch(&(SystemDomain::GetGlobalStringLiteralMap()->m_HashTableCrstGlobal));
 
-    }
-    else
-    {
-        // Retrieve the string literal from the global string literal map.
-        CrstHolder gch(&(SystemDomain::GetGlobalStringLiteralMap()->m_HashTableCrstGlobal));
-
-        // TODO: We can be more efficient by checking our local hash table now to see if
-        // someone beat us to inserting it. (m_StringToEntryHashTable->GetValue(pStringData, &Data))
-        // (Rather than waiting until after we look the string up in the global map) 
-        
-        StringLiteralEntryHolder pEntry(SystemDomain::GetGlobalStringLiteralMap()->GetStringLiteral(pStringData, dwHash, bAddIfNotFound));
+    // TODO: We can be more efficient by checking our local hash table now to see if
+    // someone beat us to inserting it. (m_StringToEntryHashTable->GetValue(pStringData, &Data))
+    // (Rather than waiting until after we look the string up in the global map) 
+    
+    StringLiteralEntryHolder pEntry(SystemDomain::GetGlobalStringLiteralMap()->GetStringLiteral(pStringData, dwHash, bAddIfNotFound));
 
-        _ASSERTE(pEntry || !bAddIfNotFound);
+    _ASSERTE(pEntry || !bAddIfNotFound);
 
-        // If pEntry is non-null then the entry exists in the Global map. (either we retrieved it or added it just now)
-        if (pEntry)
-        {
-            // If the entry exists in the Global map and the appdomain wont ever unload then we really don't need to add a
-            // hashentry in the appdomain specific map.
-            // TODO: except that by not inserting into our local table we always take the global map lock
-            // and come into this path, when we could succeed at a lock free lookup above.
-            
-            if (!bAppDomainWontUnload)
-            {                
-                // Make sure some other thread has not already added it.
-                if (!m_StringToEntryHashTable->GetValue(pStringData, &Data))
-                {
-                    // Insert the handle to the string into the hash table.
-                    m_StringToEntryHashTable->InsertValue(pStringData, (LPVOID)pEntry, FALSE);
-                }
-                else
-                {
-                    pEntry.Release(); //while we're still under lock
-                }
+    // If pEntry is non-null then the entry exists in the Global map. (either we retrieved it or added it just now)
+    if (pEntry)
+    {
+        // If the entry exists in the Global map and the appdomain wont ever unload then we really don't need to add a
+        // hashentry in the appdomain specific map.
+        // TODO: except that by not inserting into our local table we always take the global map lock
+        // and come into this path, when we could succeed at a lock free lookup above.
+        
+        if (!bAppDomainWontUnload)
+        {                
+            // Make sure some other thread has not already added it.
+            if (!m_StringToEntryHashTable->GetValue(pStringData, &Data))
+            {
+                // Insert the handle to the string into the hash table.
+                m_StringToEntryHashTable->InsertValue(pStringData, (LPVOID)pEntry, FALSE);
             }
-#ifdef _DEBUG
             else
             {
-                LOG((LF_APPDOMAIN, LL_INFO10000, "Avoided adding String literal to appdomain map: size: %d bytes\n", pStringData->GetCharCount()));
+                pEntry.Release(); //while we're still under lock
             }
-#endif
-            pEntry.SuppressRelease();
-            STRINGREF *pStrObj = NULL;
-            // Retrieve the string objectref from the string literal entry.
-            pStrObj = pEntry->GetStringObject();
-            _ASSERTE(!bAddIfNotFound || pStrObj);
-            return pStrObj;
         }
+#ifdef _DEBUG
+        else
+        {
+            LOG((LF_APPDOMAIN, LL_INFO10000, "Avoided adding String literal to appdomain map: size: %d bytes\n", pStringData->GetCharCount()));
+        }
+#endif
+        pEntry.SuppressRelease();
+        STRINGREF *pStrObj = NULL;
+        // Retrieve the string objectref from the string literal entry.
+        pStrObj = pEntry->GetStringObject();
+        _ASSERTE(!bAddIfNotFound || pStrObj);
+        return pStrObj;
     }
     // If the bAddIfNotFound flag is set then we better have a string
     // string object at this point.
@@ -389,7 +378,7 @@ StringLiteralEntry *GlobalStringLiteralMap::GetStringLiteral(EEStringData *pStri
     HashDatum Data;
     StringLiteralEntry *pEntry = NULL;
 
-    if (m_StringToEntryHashTable->GetValue(pStringData, &Data, dwHash))
+    if (m_StringToEntryHashTable->GetValueSpeculative(pStringData, &Data, dwHash)) // Since we hold the critical section here, we can safely use the speculative variant of GetValue
     {
         pEntry = (StringLiteralEntry*)Data;
         // If the entry is already in the table then addref it before we return it.
index 37d30c3..73d452c 100644 (file)
@@ -1402,6 +1402,7 @@ Thread::Thread()
     m_CacheStackBase = 0;
     m_CacheStackLimit = 0;
     m_CacheStackSufficientExecutionLimit = 0;
+    m_CacheStackStackAllocNonRiskyExecutionLimit = 0;
 
     m_LastAllowableStackAddress= 0;
     m_ProbeLimit = 0;
@@ -6445,6 +6446,20 @@ BOOL Thread::SetStackLimits(SetStackLimitScope scope)
         {
             m_CacheStackSufficientExecutionLimit = reinterpret_cast<UINT_PTR>(m_CacheStackBase);
         }
+
+        // Compute the limit used by CheckCanUseStackAllocand cache it on the thread. This minimum stack size should
+        // be sufficient to avoid all significant risk of a moderate size stack alloc interfering with application behavior
+        const UINT_PTR StackAllocNonRiskyExecutionStackSize = 512 * 1024;
+        _ASSERTE(m_CacheStackBase >= m_CacheStackLimit);
+        if ((reinterpret_cast<UINT_PTR>(m_CacheStackBase) - reinterpret_cast<UINT_PTR>(m_CacheStackLimit)) >
+            StackAllocNonRiskyExecutionStackSize)
+        {
+            m_CacheStackStackAllocNonRiskyExecutionLimit = reinterpret_cast<UINT_PTR>(m_CacheStackLimit) + StackAllocNonRiskyExecutionStackSize;
+        }
+        else
+        {
+            m_CacheStackStackAllocNonRiskyExecutionLimit = reinterpret_cast<UINT_PTR>(m_CacheStackBase);
+        }
     }
 
     // Ensure that we've setup the stack guarantee properly before we cache the stack limits
@@ -8156,8 +8171,6 @@ void Thread::InternalReset(BOOL fNotFinalizerThread, BOOL fThreadObjectResetNeed
         nPriority = ResetManagedThreadObject(nPriority);
     }
 
-    //m_MarshalAlloc.Collapse(NULL);
-
     if (fResetAbort && IsAbortRequested()) {
         UnmarkThreadForAbort(TAR_ALL);
     }
index ee3e69f..fcc7922 100644 (file)
@@ -275,7 +275,8 @@ public:
     BOOL IsAddressInStack (PTR_VOID addr) const { return TRUE; }
     static BOOL IsAddressInCurrentStack (PTR_VOID addr) { return TRUE; }
 
-    StackingAllocator    m_MarshalAlloc;
+    StackingAllocator*    m_stackLocalAllocator = NULL;
+    bool CheckCanUseStackAlloc() { return true; }
 
  private:
     LoadLevelLimiter *m_pLoadLimiter;
@@ -439,15 +440,6 @@ public:
     DWORD       m_dwLastError;
 };
 
-inline void DoReleaseCheckpoint(void *checkPointMarker)
-{
-    WRAPPER_NO_CONTRACT;
-    GetThread()->m_MarshalAlloc.Collapse(checkPointMarker);
-}
-
-// CheckPointHolder : Back out to a checkpoint on the thread allocator.
-typedef Holder<void*, DoNothing,DoReleaseCheckpoint> CheckPointHolder;
-
 class AVInRuntimeImplOkayHolder
 {
 public:
@@ -1691,7 +1683,7 @@ public:
     // is started using a CheckPointHolder and GetCheckpoint, and this region can then be used for allocations
     // from that point onwards, and then all memory is reclaimed when the static scope for the
     // checkpoint is exited by the running thread.
-    StackingAllocator    m_MarshalAlloc;
+    StackingAllocator*    m_stackLocalAllocator = NULL;
 
     // Flags used to indicate tasks the thread has to do.
     ThreadTasks          m_ThreadTasks;
@@ -3290,6 +3282,16 @@ public:
     // and GetCachedStackBase for the cached values on this Thread.
     static void * GetStackLowerBound();
     static void * GetStackUpperBound();
+
+    bool CheckCanUseStackAlloc()
+    {
+        int local;
+        UINT_PTR current = reinterpret_cast<UINT_PTR>(&local);
+        UINT_PTR limit = GetCachedStackStackAllocNonRiskyExecutionLimit();
+        return (current > limit);
+    }
+#else // DACCESS_COMPILE
+    bool CheckCanUseStackAlloc() { return true; }
 #endif
 
     enum SetStackLimitScope { fAll, fAllowableOnly };
@@ -3303,6 +3305,7 @@ public:
     PTR_VOID GetCachedStackBase() {LIMITED_METHOD_DAC_CONTRACT;  return m_CacheStackBase; }
     PTR_VOID GetCachedStackLimit() {LIMITED_METHOD_DAC_CONTRACT;  return m_CacheStackLimit;}
     UINT_PTR GetCachedStackSufficientExecutionLimit() {LIMITED_METHOD_DAC_CONTRACT; return m_CacheStackSufficientExecutionLimit;}
+    UINT_PTR GetCachedStackStackAllocNonRiskyExecutionLimit() {LIMITED_METHOD_DAC_CONTRACT; return m_CacheStackStackAllocNonRiskyExecutionLimit;}
 
 private:
     // Access the base and limit of the stack. (I.e. the memory ranges that the thread has reserved for its stack).
@@ -3313,6 +3316,7 @@ private:
     PTR_VOID    m_CacheStackBase;
     PTR_VOID    m_CacheStackLimit;
     UINT_PTR    m_CacheStackSufficientExecutionLimit;
+    UINT_PTR    m_CacheStackStackAllocNonRiskyExecutionLimit;
 
 #define HARD_GUARD_REGION_SIZE GetOsPageSize()
 
@@ -6428,20 +6432,6 @@ if (g_pConfig->GetGCStressLevel() && g_pConfig->FastGCStressLevel() > 1) {   \
 
 #endif  // _DEBUG
 
-
-
-
-inline void DoReleaseCheckpoint(void *checkPointMarker)
-{
-    WRAPPER_NO_CONTRACT;
-    GetThread()->m_MarshalAlloc.Collapse(checkPointMarker);
-}
-
-
-// CheckPointHolder : Back out to a checkpoint on the thread allocator.
-typedef Holder<void*, DoNothing, DoReleaseCheckpoint> CheckPointHolder;
-
-
 #ifdef _DEBUG_IMPL
 // Holder for incrementing the ForbidGCLoaderUse counter.
 class GCForbidLoaderUseHolder
index c85245d..1269277 100644 (file)
@@ -13,8 +13,7 @@
 // sets and gets values for that field. 
 //
 // This implementation of thread statics closely parallels the implementation for regular statics. Regular
-// statics use the DomainLocalBlock and DomainLocalModule structures to allocate space for statics each time
-// a module is loaded in an AppDomain.
+// statics use the DomainLocalModule structure to allocate space for statics.
 //
 
 // 
index d9a5afc..cfccdea 100644 (file)
@@ -652,7 +652,7 @@ Module *ZapSig::DecodeModuleFromIndex(Module *fromModule,
     {
         if (index < fromModule->GetAssemblyRefMax())
         {
-            pAssembly = fromModule->LoadAssembly(GetAppDomain(), RidToToken(index, mdtAssemblyRef))->GetAssembly();
+            pAssembly = fromModule->LoadAssembly(RidToToken(index, mdtAssemblyRef))->GetAssembly();
         }
         else
         {
index 3a3a17b..0849d71 100644 (file)
                 {
                     "name": "System.IO.Tests.StreamWriterWithBufferedStream_CloseTests.AfterCloseThrows",
                     "reason": "Readers/writers changed to not null out base stream on dispose"
+                },
+                {
+                    "name": "System.IO.Tests.CtorTests.NullEncodingThrows",
+                    "reason": "StreamReader/StreamWriter changed to accept null encoding"
                 }
             ]
         }
index d7c5f79..86637a5 100644 (file)
         <ExcludeList Include="$(XunitTestBinBase)/GC/Scenarios/Dynamo/dynamo/*">
             <Issue>17129</Issue>
         </ExcludeList>
+        <ExcludeList Include="$(XunitTestBinBase)/JIT/Performance/CodeQuality/BenchmarksGame/mandelbrot/mandelbrot-7/*">
+            <Issue>24224</Issue>
+        </ExcludeList>
     </ItemGroup>
 
     <!-- Unix arm32 specific -->
diff --git a/tests/src/Interop/NativeLibraryResolveCallback/CallbackStressTest.cs b/tests/src/Interop/NativeLibraryResolveCallback/CallbackStressTest.cs
new file mode 100644 (file)
index 0000000..bcbf9d7
--- /dev/null
@@ -0,0 +1,200 @@
+// 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.
+using System;
+using System.IO;
+using System.Reflection;
+using System.Diagnostics;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Threading;
+
+using Console = Internal.Console;
+
+[assembly: DefaultDllImportSearchPaths(DllImportSearchPath.SafeDirectories)]
+public class CallbackStressTest
+{
+    static volatile bool s_RunGC = true;
+    
+    static int s_LoopCounter = 25;
+    static int s_FinallyCalled = 0;
+    static int s_CatchCalled = 0;
+    static int s_OtherExceptionCatchCalled = 0;
+    static int s_SEHExceptionCatchCalled = 0;
+    static int s_WrongPInvokesExecuted = 0;
+    static int s_PInvokesExecuted = 0;
+    
+    public static void Collector()
+    {
+        while(s_RunGC) GC.Collect();
+    }
+
+    [MethodImpl(MethodImplOptions.NoInlining)]
+    public static void SetResolve()
+    {
+        Console.WriteLine("Setting PInvoke Resolver");
+        
+        DllImportResolver resolver =
+            (string libraryName, Assembly asm, DllImportSearchPath? dllImportSearchPath) =>
+            {
+                if (dllImportSearchPath != DllImportSearchPath.System32)
+                {
+                    Console.WriteLine($"Unexpected dllImportSearchPath: {dllImportSearchPath.ToString()}");
+                    throw new ArgumentException();
+                }
+
+                return NativeLibrary.Load("ResolveLib", asm, null);
+            };
+
+        NativeLibrary.SetDllImportResolver(
+            Assembly.GetExecutingAssembly(), 
+            resolver);
+    }
+
+    [MethodImpl(MethodImplOptions.NoInlining)]
+    public static void DoCall()
+    {
+        NativeSum(10, 10);
+        s_WrongPInvokesExecuted++;
+    }
+
+    [MethodImpl(MethodImplOptions.NoInlining)]
+    public static void DoCallTryCatch(bool shouldThrow)
+    {
+        try
+        {
+            var a = NativeSum(10, 10);
+            if (shouldThrow)
+                s_WrongPInvokesExecuted++;
+            else
+                s_PInvokesExecuted += (a == 20 ? 1 : 0);
+        }
+        catch (DllNotFoundException) { s_CatchCalled++; }
+        
+        throw new ArgumentException();
+    }
+
+    [MethodImpl(MethodImplOptions.NoInlining)]
+    public static void DoCallTryRethrowInCatch()
+    {
+        try
+        {
+            var a = NativeSum(10, 10);
+            s_WrongPInvokesExecuted++;
+        }
+        catch (DllNotFoundException) { s_CatchCalled++; throw; }
+    }
+
+    [MethodImpl(MethodImplOptions.NoInlining)]
+    public static void DoCallTryRethrowDifferentExceptionInCatch()
+    {
+        try
+        {
+            var a = NativeSum(10, 10);
+            s_WrongPInvokesExecuted++;
+        }
+        catch (DllNotFoundException) { s_CatchCalled++; throw new InvalidOperationException(); }
+    }
+
+    [MethodImpl(MethodImplOptions.NoInlining)]
+    public static void DoCallTryFinally()
+    {
+        try
+        {
+            NativeSum(10, 10);
+            s_WrongPInvokesExecuted++;
+        }
+        finally { s_FinallyCalled++; }
+    }
+    
+    [MethodImpl(MethodImplOptions.NoInlining)]
+    public static void ManualRaiseException()
+    {
+#if WINDOWS
+        try
+        {
+            RaiseException(5, 0, 0, IntPtr.Zero);
+        }
+        catch(SEHException ex) { s_SEHExceptionCatchCalled++; }
+#else
+        // TODO: test on Unix when implementing pinvoke inlining
+        s_SEHExceptionCatchCalled++;
+#endif
+    }        
+
+    public static int Main()
+    {
+        new Thread(Collector).Start();
+       
+        for(int i = 0; i < s_LoopCounter; i++)
+        {
+            try
+            {
+                NativeSum(10, 10);
+                s_WrongPInvokesExecuted++;
+            }
+            catch (DllNotFoundException) { s_CatchCalled++; }
+            
+            try { DoCall(); }
+            catch (DllNotFoundException) { s_CatchCalled++; }
+            
+            try { DoCallTryFinally(); }
+            catch (DllNotFoundException) { s_CatchCalled++; }
+            
+            try { DoCallTryCatch(true); }
+            catch (ArgumentException) { s_OtherExceptionCatchCalled++; }
+
+            try { DoCallTryRethrowInCatch(); }
+            catch (DllNotFoundException) { s_CatchCalled++; }
+
+            try { DoCallTryRethrowDifferentExceptionInCatch(); }
+            catch (InvalidOperationException) { s_OtherExceptionCatchCalled++; }
+            
+            ManualRaiseException();
+        }
+        
+        SetResolve();
+
+        for(int i = 0; i < s_LoopCounter; i++)
+        {
+            var a = NativeSum(10, 10);
+            var b = NativeSum(10, 10);
+            s_PInvokesExecuted += (a == b && a == 20)? 2 : 0;
+
+            try { DoCallTryCatch(false); }
+            catch (ArgumentException) { s_OtherExceptionCatchCalled++; }
+            
+            ManualRaiseException();
+        }
+        
+        s_RunGC = false;
+
+        if (s_FinallyCalled == s_LoopCounter && 
+            s_CatchCalled == (s_LoopCounter * 7) &&
+            s_OtherExceptionCatchCalled == (s_LoopCounter * 3) &&
+            s_WrongPInvokesExecuted == 0 &&
+            s_PInvokesExecuted == (s_LoopCounter * 3) &&
+            s_SEHExceptionCatchCalled == (s_LoopCounter * 2))
+        {
+            Console.WriteLine("PASS");
+            return 100;
+        }
+            
+        Console.WriteLine("s_FinallyCalled = " + s_FinallyCalled);
+        Console.WriteLine("s_CatchCalled = " + s_CatchCalled);
+        Console.WriteLine("s_OtherExceptionCatchCalled = " + s_OtherExceptionCatchCalled);
+        Console.WriteLine("s_SEHExceptionCatchCalled = " + s_SEHExceptionCatchCalled);
+        Console.WriteLine("s_WrongPInvokesExecuted = " + s_WrongPInvokesExecuted);
+        Console.WriteLine("s_PInvokesExecuted = " + s_PInvokesExecuted);
+        return -1;
+    }
+
+    [DllImport("NativeLib")]
+    [DefaultDllImportSearchPaths(DllImportSearchPath.System32)]
+    static extern int NativeSum(int arg1, int arg2);
+    
+#if WINDOWS
+    [DllImport("kernel32")]
+    static extern void RaiseException(uint dwExceptionCode, uint dwExceptionFlags, uint nNumberOfArguments, IntPtr lpArguments);
+#endif
+}
diff --git a/tests/src/Interop/NativeLibraryResolveCallback/CallbackStressTest.csproj b/tests/src/Interop/NativeLibraryResolveCallback/CallbackStressTest.csproj
new file mode 100644 (file)
index 0000000..aec940d
--- /dev/null
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <AssemblyName>CallbackStressTest</AssemblyName>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{F1E66554-8C8E-4141-85CF-D0CD6A0CD0B0}</ProjectGuid>
+    <OutputType>Exe</OutputType>
+    <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
+    <ReferenceSystemPrivateCoreLib>true</ReferenceSystemPrivateCoreLib>
+    <DefineConstants Condition="$(OSGroup) == 'Windows_NT'">WINDOWS</DefineConstants>
+  </PropertyGroup>
+  <!-- Default configurations to help VS understand the configurations -->
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+  </PropertyGroup>
+  <ItemGroup>
+    <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+      <Visible>False</Visible>
+    </CodeAnalysisDependentAssemblyPaths>
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="CallbackStressTest.cs" />
+  </ItemGroup>
+  <ItemGroup>
+    <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="CMakeLists.txt" />
+  </ItemGroup>
+  <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+</Project>
index c947a50..dd6a4ab 100644 (file)
@@ -24,7 +24,7 @@
     </CodeAnalysisDependentAssemblyPaths>
   </ItemGroup>
   <ItemGroup>
-    <Compile Include="*.cs" />
+    <Compile Include="CallbackTests.cs" />
   </ItemGroup>
   <ItemGroup>
     <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
index 7fa5f8d..b727f39 100644 (file)
@@ -10,6 +10,9 @@
     <OutputType>Exe</OutputType>
     <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
     <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+
+    <!-- Test currently fails under GCStress. https://github.com/dotnet/coreclr/issues/24173 -->
+    <GCStressIncompatible>true</GCStressIncompatible>
   </PropertyGroup>
   <!-- Default configurations to help VS understand the configurations -->
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
@@ -33,4 +36,4 @@
   <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
   <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
   </PropertyGroup> 
-</Project>
\ No newline at end of file
+</Project>