Path normalization performance improvements
authorJan Kotas <jkotas@microsoft.com>
Wed, 4 Jan 2017 14:31:17 +0000 (06:31 -0800)
committerJan Kotas <jkotas@microsoft.com>
Wed, 4 Jan 2017 15:19:59 +0000 (07:19 -0800)
commitf45570af2a4585a801a0d1883d20a0359956db5d
tree363580d767d4360b2a7c8b16ea0f476fe1b95147
parentdd69c726b54b07940cd3e45fd65bdd1c6378ded2
Path normalization performance improvements

- Use const variant of path separators in the Path implementation
- Add fast paths for common cases to hot parsing routines
- Avoid redundant caches for MaxPath on Unix

Commit migrated from https://github.com/dotnet/coreclr/commit/d682dd337ccdc71e29a762d9bda8bf2cca93c122
src/coreclr/src/mscorlib/corefx/System/IO/Path.Unix.cs
src/coreclr/src/mscorlib/corefx/System/IO/Path.Windows.cs
src/coreclr/src/mscorlib/corefx/System/IO/Path.cs
src/coreclr/src/mscorlib/corefx/System/IO/PathHelper.Windows.cs
src/coreclr/src/mscorlib/corefx/System/IO/PathInternal.Unix.cs
src/coreclr/src/mscorlib/corefx/System/IO/PathInternal.Windows.StringBuffer.cs
src/coreclr/src/mscorlib/corefx/System/IO/PathInternal.Windows.cs
src/coreclr/src/mscorlib/corefx/System/Runtime/InteropServices/StringBuffer.cs
src/coreclr/src/mscorlib/src/System/Threading/Mutex.cs