Switch over to shared Interop.Globalization.cs on Windows (dotnet/coreclr#3528)
- Match CoreCLR refactoring done for invariant culture
- Use actual unsafe types in the interop signatures instead of opaque IntPtr
- Use Unsafe.As to get a pointer to stack allocated structure instead of allocating GCHandles
- Remove use of NativeCallable for enumeration to make the same code work on both CoreRT and CoreCLR. (I have kelp the NativeCallable annotations commented out so that we can switch back to them once C# gets the intrinsics to make it possible.)
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
8026a02a3abb3f83f666e5eac8a6ddce20c70e77