diff --git a/src/mscorlib/System.Private.CoreLib.csproj b/src/mscorlib/System.Private.CoreLib.csproj
index da3bdee03d06..6f0b2c0c7670 100644
--- a/src/mscorlib/System.Private.CoreLib.csproj
+++ b/src/mscorlib/System.Private.CoreLib.csproj
@@ -345,7 +345,6 @@
-
@@ -475,10 +474,7 @@
-
-
-
@@ -543,7 +539,6 @@
-
@@ -662,17 +657,11 @@
-
-
-
-
-
-
@@ -690,9 +679,7 @@
-
-
diff --git a/src/mscorlib/shared/System.Private.CoreLib.Shared.projitems b/src/mscorlib/shared/System.Private.CoreLib.Shared.projitems
index 6c5b63172471..9b78005e12bb 100644
--- a/src/mscorlib/shared/System.Private.CoreLib.Shared.projitems
+++ b/src/mscorlib/shared/System.Private.CoreLib.Shared.projitems
@@ -112,9 +112,12 @@
+
+
+
@@ -137,6 +140,7 @@
+
@@ -170,6 +174,7 @@
+
@@ -493,6 +498,10 @@
+
+
+
+
@@ -537,7 +546,13 @@
+
+
+
+
+
+
diff --git a/src/mscorlib/src/System/Diagnostics/Debug.Unix.cs b/src/mscorlib/shared/System/Diagnostics/Debug.Unix.cs
similarity index 100%
rename from src/mscorlib/src/System/Diagnostics/Debug.Unix.cs
rename to src/mscorlib/shared/System/Diagnostics/Debug.Unix.cs
diff --git a/src/mscorlib/src/System/Globalization/CalendarData.Unix.cs b/src/mscorlib/shared/System/Globalization/CalendarData.Unix.cs
similarity index 100%
rename from src/mscorlib/src/System/Globalization/CalendarData.Unix.cs
rename to src/mscorlib/shared/System/Globalization/CalendarData.Unix.cs
diff --git a/src/mscorlib/src/System/Globalization/CultureData.Unix.cs b/src/mscorlib/shared/System/Globalization/CultureData.Unix.cs
similarity index 100%
rename from src/mscorlib/src/System/Globalization/CultureData.Unix.cs
rename to src/mscorlib/shared/System/Globalization/CultureData.Unix.cs
diff --git a/src/mscorlib/src/System/Globalization/HijriCalendar.Unix.cs b/src/mscorlib/shared/System/Globalization/HijriCalendar.Unix.cs
similarity index 100%
rename from src/mscorlib/src/System/Globalization/HijriCalendar.Unix.cs
rename to src/mscorlib/shared/System/Globalization/HijriCalendar.Unix.cs
diff --git a/src/mscorlib/src/System/Globalization/HijriCalendar.Win32.cs b/src/mscorlib/shared/System/Globalization/HijriCalendar.Win32.cs
similarity index 100%
rename from src/mscorlib/src/System/Globalization/HijriCalendar.Win32.cs
rename to src/mscorlib/shared/System/Globalization/HijriCalendar.Win32.cs
diff --git a/src/mscorlib/src/System/Globalization/HijriCalendar.WinRT.cs b/src/mscorlib/shared/System/Globalization/HijriCalendar.WinRT.cs
similarity index 100%
rename from src/mscorlib/src/System/Globalization/HijriCalendar.WinRT.cs
rename to src/mscorlib/shared/System/Globalization/HijriCalendar.WinRT.cs
diff --git a/src/mscorlib/src/System/Globalization/IdnMapping.Unix.cs b/src/mscorlib/shared/System/Globalization/IdnMapping.Unix.cs
similarity index 100%
rename from src/mscorlib/src/System/Globalization/IdnMapping.Unix.cs
rename to src/mscorlib/shared/System/Globalization/IdnMapping.Unix.cs
diff --git a/src/mscorlib/src/System/Globalization/JapaneseCalendar.Unix.cs b/src/mscorlib/shared/System/Globalization/JapaneseCalendar.Unix.cs
similarity index 100%
rename from src/mscorlib/src/System/Globalization/JapaneseCalendar.Unix.cs
rename to src/mscorlib/shared/System/Globalization/JapaneseCalendar.Unix.cs
diff --git a/src/mscorlib/src/System/Globalization/JapaneseCalendar.Win32.cs b/src/mscorlib/shared/System/Globalization/JapaneseCalendar.Win32.cs
similarity index 100%
rename from src/mscorlib/src/System/Globalization/JapaneseCalendar.Win32.cs
rename to src/mscorlib/shared/System/Globalization/JapaneseCalendar.Win32.cs
diff --git a/src/mscorlib/src/System/Globalization/JapaneseCalendar.WinRT.cs b/src/mscorlib/shared/System/Globalization/JapaneseCalendar.WinRT.cs
similarity index 100%
rename from src/mscorlib/src/System/Globalization/JapaneseCalendar.WinRT.cs
rename to src/mscorlib/shared/System/Globalization/JapaneseCalendar.WinRT.cs
diff --git a/src/mscorlib/src/System/Globalization/NumberFormatInfo.cs b/src/mscorlib/shared/System/Globalization/NumberFormatInfo.cs
similarity index 100%
rename from src/mscorlib/src/System/Globalization/NumberFormatInfo.cs
rename to src/mscorlib/shared/System/Globalization/NumberFormatInfo.cs
diff --git a/src/mscorlib/src/System/Globalization/SortKey.cs b/src/mscorlib/shared/System/Globalization/SortKey.cs
similarity index 92%
rename from src/mscorlib/src/System/Globalization/SortKey.cs
rename to src/mscorlib/shared/System/Globalization/SortKey.cs
index 0930965e5d8f..c6c51a00adba 100644
--- a/src/mscorlib/src/System/Globalization/SortKey.cs
+++ b/src/mscorlib/shared/System/Globalization/SortKey.cs
@@ -11,14 +11,14 @@
//
////////////////////////////////////////////////////////////////////////////
+using System;
+using System.Runtime.CompilerServices;
+using System.Runtime.Serialization;
+using System.Diagnostics;
+using System.Diagnostics.Contracts;
+
namespace System.Globalization
{
- using System;
- using System.Runtime.CompilerServices;
- using System.Runtime.Serialization;
- using System.Diagnostics;
- using System.Diagnostics.Contracts;
-
[Serializable]
public partial class SortKey
{
@@ -30,8 +30,7 @@ public partial class SortKey
internal string _localeName; // locale identifier
[OptionalField(VersionAdded = 1)] // LCID field so serialization is Whidbey compatible though we don't officially support it
- internal int _win32LCID;
- // Whidbey serialization
+ internal int _win32LCID;
internal CompareOptions _options; // options
internal string _string; // original string
@@ -45,8 +44,8 @@ internal SortKey(String localeName, String str, CompareOptions options, byte[] k
{
_keyData = keyData;
_localeName = localeName;
- _options = options;
- _string = str;
+ _options = options;
+ _string = str;
}
[OnSerializing]
@@ -84,7 +83,7 @@ public virtual String OriginalString
return (_string);
}
}
-
+
////////////////////////////////////////////////////////////////////////
//
// GetKeyData
@@ -100,7 +99,7 @@ public virtual byte[] KeyData
return (byte[])(_keyData.Clone());
}
}
-
+
////////////////////////////////////////////////////////////////////////
//
// Compare
@@ -112,14 +111,15 @@ public virtual byte[] KeyData
////////////////////////////////////////////////////////////////////////
public static int Compare(SortKey sortkey1, SortKey sortkey2)
{
- if (sortkey1==null || sortkey2==null)
+ if (sortkey1 == null || sortkey2 == null)
{
throw new ArgumentNullException((sortkey1 == null ? nameof(sortkey1) : nameof(sortkey2)));
}
Contract.EndContractBlock();
+
byte[] key1Data = sortkey1._keyData;
byte[] key2Data = sortkey2._keyData;
-
+
Debug.Assert(key1Data != null, "key1Data != null");
Debug.Assert(key2Data != null, "key2Data != null");
@@ -138,13 +138,13 @@ public static int Compare(SortKey sortkey1, SortKey sortkey2)
int compLen = (key1Data.Length < key2Data.Length) ? key1Data.Length : key2Data.Length;
- for (int i=0; ikey2Data[i])
+ if (key1Data[i] > key2Data[i])
{
return (1);
}
- if (key1Data[i]