platform/upstream/dotnet/runtime.git
7 years agoMerge pull request dotnet/corertdotnet/coreclr#3243 from dotnet/nmirror
Jan Kotas [Fri, 7 Apr 2017 06:54:36 +0000 (23:54 -0700)]
Merge pull request dotnet/corertdotnet/coreclr#3243 from dotnet/nmirror

Merge nmirror to master

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/296cf8d77f157f9ad73b00c176b0d439519084d9

7 years agoHandle unsupported varargs tests on Unix gracefully. (dotnet/coreclr#10794)
Jim Ma [Fri, 7 Apr 2017 15:33:21 +0000 (23:33 +0800)]
Handle unsupported varargs tests on Unix gracefully. (dotnet/coreclr#10794)

Some of mcc_i* tests caused segmentation faults on Unix. This commit make these tests exit by throwing a System.EntryPointNotFoundException exception instead of causing a segmentation fault.

Fix dotnet/coreclr#9530

Commit migrated from https://github.com/dotnet/coreclr/commit/a86df0d0abe3ca5a7eed1db673c4ea48cfc3c61c

7 years agoBring back DefaultDllImportSearchPathsAttribute (dotnet/coreclr#10786)
Yi Zhang (CLR) [Fri, 7 Apr 2017 14:29:10 +0000 (07:29 -0700)]
Bring back DefaultDllImportSearchPathsAttribute (dotnet/coreclr#10786)

Commit migrated from https://github.com/dotnet/coreclr/commit/6f0bd8d2b7d956cda9c0d80315ca9a853d2a4680

7 years agoAdd reporting swap file size to GlobalMemoryStatusEx on Unix (dotnet/coreclr#10700)
Jan Vorlicek [Fri, 7 Apr 2017 13:35:34 +0000 (15:35 +0200)]
Add reporting swap file size to GlobalMemoryStatusEx on Unix (dotnet/coreclr#10700)

The swap file size reporting is added using the Linux, OSX and FreeBSD
means. Also a new PAL test was added to exercise the function.

Commit migrated from https://github.com/dotnet/coreclr/commit/a2ed1fa2420f5aa385007e205e30616dd75fc881

7 years agoDelete duplicate files and fix build breaks
Jan Kotas [Fri, 7 Apr 2017 04:00:36 +0000 (21:00 -0700)]
Delete duplicate files and fix build breaks

Commit migrated from https://github.com/dotnet/coreclr/commit/e65bb61cdd856af63e4c096632dca33ec3984ef4

7 years agoMerge pull request dotnet/corertdotnet/coreclr#3226 from dotnet/nmirror
Simon Nattress [Fri, 7 Apr 2017 01:02:03 +0000 (18:02 -0700)]
Merge pull request dotnet/corertdotnet/coreclr#3226 from dotnet/nmirror

Merge nmirror to master

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/157a0aee00e8623811c3b9b1ff962a2e2ae8bb67

7 years agoCall custom parameterless constructor on structs through Activator (dotnet/coreclr...
Koundinya Veluri [Fri, 7 Apr 2017 06:51:13 +0000 (23:51 -0700)]
Call custom parameterless constructor on structs through Activator (dotnet/coreclr#10778)

Fixes dotnet/coreclr#6843
- Disabled caching struct types that have custom parameterless constructors in `ActivatorCache`
- Removed some things relevant to security, which don't apply to CoreCLR

Commit migrated from https://github.com/dotnet/coreclr/commit/b4f28d7470da18ec871ae1240a6c9df2db44da2c

7 years agoremove fedora 23 (dotnet/coreclr#10725)
Dan Moseley [Fri, 7 Apr 2017 04:28:14 +0000 (21:28 -0700)]
remove fedora 23 (dotnet/coreclr#10725)

* remove fedora 23

* Fedora rename

Commit migrated from https://github.com/dotnet/coreclr/commit/d21b39809b8421bc1acc7de670053c1d9d0ddfd4

7 years agoNS2.0 Prepare FileNotFoundException for move to shared partition. (dotnet/coreclr...
Atsushi Kanamori [Fri, 7 Apr 2017 02:33:50 +0000 (19:33 -0700)]
NS2.0 Prepare FileNotFoundException for move to shared partition. (dotnet/coreclr#10775)

* String->string - get rid of the big comment block.

* Fields into autoprops.

* FullName => ToString() to avoid MME problems on N.

* Remove SecurityException guard around FusionLog

* Split off the parts we don't want to share.

Commit migrated from https://github.com/dotnet/coreclr/commit/6da9d0114cd1679cf171befef31d28f0553b74a1

7 years agoMerge pull request dotnet/corertdotnet/coreclr#3216 from dotnet/nmirror
Michal Strehovský [Wed, 5 Apr 2017 18:25:20 +0000 (11:25 -0700)]
Merge pull request dotnet/corertdotnet/coreclr#3216 from dotnet/nmirror

Merge nmirror to master

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/5a3c891427a9899c0d774ce85a680e0dc3a0b64a

7 years agoMerge pull request dotnet/coreclr#10784 from briansull/ibc-shutdown-fix
Brian Sullivan [Fri, 7 Apr 2017 02:13:35 +0000 (19:13 -0700)]
Merge pull request dotnet/coreclr#10784 from briansull/ibc-shutdown-fix

Fix shutdown A/V issue when IBC logging with the Music Store app

Commit migrated from https://github.com/dotnet/coreclr/commit/2283331feb021e34b1bd4056eb67e66325a36943

7 years agoDevirtualizable default encoding (dotnet/coreclr#10783)
Ben Adams [Fri, 7 Apr 2017 02:05:18 +0000 (03:05 +0100)]
Devirtualizable default encoding (dotnet/coreclr#10783)

Commit migrated from https://github.com/dotnet/coreclr/commit/97daa74ccbb052878135dec2e11ddac6b0219566

7 years agodon't switch to COOP GC when logging CCW ref count (dotnet/coreclr#10756)
Yi Zhang (CLR) [Fri, 7 Apr 2017 01:36:22 +0000 (18:36 -0700)]
don't switch to COOP GC when logging CCW ref count (dotnet/coreclr#10756)

Commit migrated from https://github.com/dotnet/coreclr/commit/2e01a3a7f5bf46b210244c13a84686d7a297df33

7 years agoFix shutdown A/V issue when IBC logging with the Music Store app
Brian Sullivan [Fri, 7 Apr 2017 00:36:15 +0000 (17:36 -0700)]
Fix shutdown A/V issue when IBC logging with the Music Store app

This app continues to run managed code on other threads after the Main thread exits and enters shutdown.
We now block IBC logging during the time that we are writing out the IBC data.

Commit migrated from https://github.com/dotnet/coreclr/commit/ded541455690dbd7707ed281388bcaa314c76f9f

7 years agoUpdate ILLink build scripts
Swaroop Sridhar [Wed, 5 Apr 2017 01:38:17 +0000 (18:38 -0700)]
Update ILLink build scripts

Update ILLINK build commands to reflect current CoreBuild of ILLinker.
Also remove the line that sets DoNotEmbedDescriptors,
since it is no longer necessary.

Commit migrated from https://github.com/dotnet/coreclr/commit/459392db05a3e6adaf6355e9e16e97aeaa0bcfcb

7 years agoMerge pull request dotnet/coreclr#10768 from mskvortsov/ryujit-arm32-lea
Bruce Forstall [Thu, 6 Apr 2017 21:40:08 +0000 (14:40 -0700)]
Merge pull request dotnet/coreclr#10768 from mskvortsov/ryujit-arm32-lea

[RyuJIT/ARM32] Update genLeaInstruction

Commit migrated from https://github.com/dotnet/coreclr/commit/9c74cbac6c86f2c484c7ebd4c81a6aee6bd7cc25

7 years agoAdd views for the jitstress and illink folders (dotnet/coreclr#10773)
Matt Mitchell [Thu, 6 Apr 2017 20:54:23 +0000 (13:54 -0700)]
Add views for the jitstress and illink folders (dotnet/coreclr#10773)

Commit migrated from https://github.com/dotnet/coreclr/commit/be5db76135b0fba4461d4cf0db2ad546c1c0a095

7 years agoMake Encoding.Default return UTF8 without BOM emission (dotnet/coreclr#10747)
Tarek Mahmoud Sayed [Thu, 6 Apr 2017 19:58:17 +0000 (12:58 -0700)]
Make Encoding.Default return UTF8 without BOM emission (dotnet/coreclr#10747)

* Make Encoding.Default return UTF8 without BOM emission

* Remove SL reference in the code

* Remove the static cache

Commit migrated from https://github.com/dotnet/coreclr/commit/dd9307c8da599704271512476fc0e876cb071505

7 years agoMerge pull request dotnet/coreclr#10697 from sdmaclea/PR-FIX-RUNTEST
Bruce Forstall [Thu, 6 Apr 2017 18:29:42 +0000 (11:29 -0700)]
Merge pull request dotnet/coreclr#10697 from sdmaclea/PR-FIX-RUNTEST

Do not use declare -A

Commit migrated from https://github.com/dotnet/coreclr/commit/d4b6affc79e4fd150584d2f59cbf3082471c1dcd

7 years agoMerge pull request dotnet/coreclr#9086 from mikedn/simd-cast
Bruce Forstall [Thu, 6 Apr 2017 18:26:37 +0000 (11:26 -0700)]
Merge pull request dotnet/coreclr#9086 from mikedn/simd-cast

Add Vector.op_Explicit tests

Commit migrated from https://github.com/dotnet/coreclr/commit/a9f6ef1492a0eb604f7ff9373cb13e4ef322c659

7 years agoRevert EncodingForwarder for the sake of the Perf (dotnet/coreclr#10740)
Tarek Mahmoud Sayed [Thu, 6 Apr 2017 17:11:21 +0000 (10:11 -0700)]
Revert EncodingForwarder for the sake of the Perf (dotnet/coreclr#10740)

* Revert EncodingForwarder for the sake of the Perf

* Add missing optimization

Commit migrated from https://github.com/dotnet/coreclr/commit/64e28f24d28f2ab7c4a60fd773f5d16ce231b4aa

7 years ago[x86/Linux] PAL test in CI build (dotnet/coreclr#10688)
Hyeongseok Oh [Thu, 6 Apr 2017 16:23:13 +0000 (01:23 +0900)]
[x86/Linux] PAL test in CI build (dotnet/coreclr#10688)

* [x86/Linux] PAL test in CI build

Add PAL test in CI x86/Linux build
Change docker image: including rootfs

* Fix netci.groovy

Add PAL test's result

Commit migrated from https://github.com/dotnet/coreclr/commit/94c9d782c39b486cb8e4f1a315115ac19450ce2d

7 years ago[ARM/CI] Update image for armel Tizen CI (dotnet/coreclr#10730)
Hyung-Kyu Choi [Thu, 6 Apr 2017 16:22:53 +0000 (01:22 +0900)]
[ARM/CI] Update image for armel Tizen CI (dotnet/coreclr#10730)

Update image for armel CI to sync with Tizen rootfs

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/cd67f7ada2e2796472a0ba32d336744eceb67345

7 years agoRyuJIT/ARM32: update GT_LEA codegen
Mikhail Skvortcov [Thu, 6 Apr 2017 15:53:15 +0000 (18:53 +0300)]
RyuJIT/ARM32: update GT_LEA codegen

Commit migrated from https://github.com/dotnet/coreclr/commit/086b000d671b8a3daae911652044b8086a489084

7 years agoMerge pull request dotnet/coreclr#10742 from BruceForstall/RemoveUnusedDefine
Bruce Forstall [Thu, 6 Apr 2017 15:52:42 +0000 (08:52 -0700)]
Merge pull request dotnet/coreclr#10742 from BruceForstall/RemoveUnusedDefine

Remove unused PREDICT_REG_RER_INDIRECT_PARAM define

Commit migrated from https://github.com/dotnet/coreclr/commit/18d14356537807b03601609a39eedfa8298a48dc

7 years agoMerge pull request dotnet/coreclr#10752 from BruceForstall/FixBBFformatting
Bruce Forstall [Thu, 6 Apr 2017 15:52:24 +0000 (08:52 -0700)]
Merge pull request dotnet/coreclr#10752 from BruceForstall/FixBBFformatting

Clean up block.h formatting

Commit migrated from https://github.com/dotnet/coreclr/commit/5c4907e1698766e8f62ea99e35b15bbfe2b7c0ec

7 years agoClean up and prepare FileLoadException.cs for move to Shared Partition. (dotnet/corec...
Atsushi Kanamori [Thu, 6 Apr 2017 14:45:58 +0000 (07:45 -0700)]
Clean up and prepare FileLoadException.cs for move to Shared Partition. (dotnet/coreclr#10764)

* String => string

* Replace fields with autoprops.

* Turn Type.FullName call to Type.ToString() in ToString().

Avoids MissingMetadataExceptions on CoreRT.

Assuming metadata exists, ToString() and FullName()
still generates the same string except in the weird
case where an app subclasses FileLoadException
with a generic exception type - in which case,
the ToString() version is actually more readable.

* Get rid of useless try-catch around FusionLog calls.

FusionLog is now just a normal property and an answer
to a trivia question - it won't throw SecurityException.

* Get rid of low-value SetMessageField() middleman.

* Split off the stuff we don't want to share.

* The complementary carwash...

* Don't conditionalize FusionLog serialization.

Commit migrated from https://github.com/dotnet/coreclr/commit/82b8a644a560e4c688ba6d59ac5fb86bd24b68ad

7 years ago[x86/Linux] Clean up ZapUnwindData (dotnet/coreclr#10750)
Jonghyun Park [Thu, 6 Apr 2017 09:51:19 +0000 (18:51 +0900)]
[x86/Linux] Clean up ZapUnwindData (dotnet/coreclr#10750)

Commit migrated from https://github.com/dotnet/coreclr/commit/4abb8b63b2e51550ae3e0a8b04129deaf99bdf7e

7 years agoAdd Vector.op_Explicit tests
Mike Danes [Tue, 24 Jan 2017 16:49:16 +0000 (18:49 +0200)]
Add Vector.op_Explicit tests

Commit migrated from https://github.com/dotnet/coreclr/commit/8cea6241b9f5ea0fd082a6e84afcfd18bb72cc57

7 years ago[Local GC] Fix a bad merge (dotnet/coreclr#10748)
Sean Gillespie [Thu, 6 Apr 2017 05:20:35 +0000 (22:20 -0700)]
[Local GC] Fix a bad merge (dotnet/coreclr#10748)

Commit migrated from https://github.com/dotnet/coreclr/commit/f9d0333d8955c11a2e8f495f0a12d6384fb95541

7 years agoreplace the linear time algorithm from lclvars with the constant one. (dotnet/coreclr...
Sergey Andreenko [Thu, 6 Apr 2017 02:00:43 +0000 (19:00 -0700)]
replace the linear time algorithm from lclvars with the constant one. (dotnet/coreclr#10401)

add new block flag DOMINATED_BY_NOT_NORMAL_ENTRY

It allows to answer the question: "Is block dominated by non normal
entry" - in O(1).

Commit migrated from https://github.com/dotnet/coreclr/commit/87ae15c547eebf82185b5eb5b5315bd7b57f9f6d

7 years agogtLdftnResolvedToken is no longer necessary, because token is saved on the stack...
Sergey Andreenko [Thu, 6 Apr 2017 01:23:19 +0000 (18:23 -0700)]
gtLdftnResolvedToken is no longer necessary, because token is saved on the stack. (dotnet/coreclr#10738)

The was an error in the assert because I checked pointers that were
obvious different.
The actual values could not be different because they are created from
the same token in the same place (importer.cpp DO_LDFTN:
impMethodPointer saved resolvedToken as gtLdftnResolvedToken ,
CORINFO_RESOLVED_TOKEN* heapToken = impAllocateToken(resolvedToken);
impPushOnStack(op1, typeInfo(heapToken)); saved the token on the stack.

Commit migrated from https://github.com/dotnet/coreclr/commit/4475fd6f34bfbfd1d416d06fdea2dff8ee227150

7 years ago[x86/Linux] 16-byte aligned HelperMethodFrameRestoreState (dotnet/coreclr#10720)
Jonghyun Park [Thu, 6 Apr 2017 00:36:37 +0000 (09:36 +0900)]
[x86/Linux] 16-byte aligned HelperMethodFrameRestoreState (dotnet/coreclr#10720)

* [x86/Linux] 16-byte aligned HelperMethodFrameRestoreState

* Use STACK_ALIGN_PADDING and update comment

Commit migrated from https://github.com/dotnet/coreclr/commit/0af235e5d21ccf669cc3a3960df348d60190b5c0

7 years agoClean up block.h formatting
Bruce Forstall [Thu, 6 Apr 2017 00:09:29 +0000 (17:09 -0700)]
Clean up block.h formatting

Hide a few things from clang-format

Commit migrated from https://github.com/dotnet/coreclr/commit/e19ae8cfe9dc6c3284fd29e6fd38b3beb5dafdb5

7 years agoMerge pull request dotnet/coreclr#10724 from mikedn/small-type-xchg
Bruce Forstall [Wed, 5 Apr 2017 23:28:16 +0000 (16:28 -0700)]
Merge pull request dotnet/coreclr#10724 from mikedn/small-type-xchg

Use the correct type for interlocked instructions

Commit migrated from https://github.com/dotnet/coreclr/commit/93c57b8de68d31cc427ff604262f08282fe60e28

7 years agoMerge pull request dotnet/coreclr#10615 from brianrob/profiler
Brian Robbins [Wed, 5 Apr 2017 23:21:39 +0000 (16:21 -0700)]
Merge pull request dotnet/coreclr#10615 from brianrob/profiler

Cross-Platform Sample-Based Profiler

Commit migrated from https://github.com/dotnet/coreclr/commit/549c9960a8edcbe3930639e316616d35b22bca25

7 years agoMerge pull request dotnet/coreclr#10739 from wtgodbe/GroovyFedora
William Godbe [Wed, 5 Apr 2017 22:37:40 +0000 (15:37 -0700)]
Merge pull request dotnet/coreclr#10739 from wtgodbe/GroovyFedora

Add Fedora24 to CI

Commit migrated from https://github.com/dotnet/coreclr/commit/79aec8961a3a5c9bcaef2d61d7eb9cd95ee003e7

7 years agoRemove unused PREDICT_REG_RER_INDIRECT_PARAM define
Bruce Forstall [Wed, 5 Apr 2017 22:20:07 +0000 (15:20 -0700)]
Remove unused PREDICT_REG_RER_INDIRECT_PARAM define

Commit migrated from https://github.com/dotnet/coreclr/commit/671ce84d6a2b53f345f5aae53cbfd2506f7faba3

7 years ago[Local GC] Pull some logic using SystemDomain::System out of the GC (dotnet/coreclr...
Sean Gillespie [Wed, 5 Apr 2017 21:40:42 +0000 (14:40 -0700)]
[Local GC] Pull some logic using SystemDomain::System out of the GC (dotnet/coreclr#10670)

* [Local GC] Pull some logic using SystemDomain::System out of the GC

* Address code review feedback: add comment about this (per the GitHub discussion) and rename API to ForceFullGCToBeBlocking

Commit migrated from https://github.com/dotnet/coreclr/commit/7ba3cc8174dec2626a403f5ccd35c79a3bf6cf77

7 years agoMerge pull request dotnet/coreclr#10727 from hqueue/typo/doc_ryujit
Aditya Mandaleeka [Wed, 5 Apr 2017 21:38:39 +0000 (14:38 -0700)]
Merge pull request dotnet/coreclr#10727 from hqueue/typo/doc_ryujit

Fix class name in ryujit-overview.md

Commit migrated from https://github.com/dotnet/coreclr/commit/bbf13d7e5e0764770cc0d55d727beb73a05d55f6

7 years agoMerge pull request dotnet/coreclr#10211 from sdmaclea/PR-ARM64-CROSSGEN-DISCONTIG
Jarret Shook [Wed, 5 Apr 2017 20:28:44 +0000 (13:28 -0700)]
Merge pull request dotnet/coreclr#10211 from sdmaclea/PR-ARM64-CROSSGEN-DISCONTIG

[Arm64] Simplify trackedStackPtrsContig logic

Commit migrated from https://github.com/dotnet/coreclr/commit/603e7306747596afe61d35af39fc511e2e1f585e

7 years agoAdd Fedora24 to CI
wtgodbe [Wed, 5 Apr 2017 19:36:59 +0000 (12:36 -0700)]
Add Fedora24 to CI

Commit migrated from https://github.com/dotnet/coreclr/commit/0cbcaa6d37189b732a0595a5062b80954687e963

7 years agoFix registry name enumeration (dotnet/coreclr#10711)
Jeremy Kuhne [Wed, 5 Apr 2017 17:51:25 +0000 (10:51 -0700)]
Fix registry name enumeration (dotnet/coreclr#10711)

1. Values can be removed after we've gotten the count
2. Allocations for names were  over 32K * enum call + 32K.

Commit migrated from https://github.com/dotnet/coreclr/commit/63645d6fd105557d6ed9073ffb75a607bcdb3b00

7 years ago[Local GC] Move Weak Reference finalization out of the GC (dotnet/coreclr#10676)
Sean Gillespie [Wed, 5 Apr 2017 16:57:50 +0000 (09:57 -0700)]
[Local GC] Move Weak Reference finalization out of the GC (dotnet/coreclr#10676)

* [Local GC] Move Weak Reference finalization out of the GC

* Address two issues:
  1) Use GetGCSafeMethodTable instead of GetMethodTable, so that the
     mark bit is correctly masked off the object's method table pointer,
  2) Address code review feedback by re-inserting a missed call to
     GetCanonicalMethodTable and rename the new API to EagerFinalized to
     better illustrate its broader purpose.

* Repair the GC sample

Commit migrated from https://github.com/dotnet/coreclr/commit/be8504bd8a63962c84567990f0b84019f299166c

7 years agoMerge pull request dotnet/coreclr#10574 from JosephTremoulet/FixTestProjectPath
Joseph Tremoulet [Wed, 5 Apr 2017 16:40:27 +0000 (12:40 -0400)]
Merge pull request dotnet/coreclr#10574 from JosephTremoulet/FixTestProjectPath

Fix path to CoreCLRTestLibrary from SizeConstTest

Commit migrated from https://github.com/dotnet/coreclr/commit/854bb352a37686afe255045aa728302fdfb3bae2

7 years agoFix ThrowExceptionFromContextInternal for x86 Linux (dotnet/coreclr#10728)
Jan Vorlicek [Wed, 5 Apr 2017 15:45:55 +0000 (17:45 +0200)]
Fix ThrowExceptionFromContextInternal for x86 Linux (dotnet/coreclr#10728)

The function was missing restoring of some callee saved registers
which caused crashes in Checked build and hang in Release build.

Commit migrated from https://github.com/dotnet/coreclr/commit/557c314e9dd56bcab569c578ed445e47ae71c317

7 years ago[x86/Linux] Fix build error in nuget packaging (dotnet/coreclr#10691)
Hyeongseok Oh [Wed, 5 Apr 2017 15:15:22 +0000 (00:15 +0900)]
[x86/Linux] Fix build error in nuget packaging (dotnet/coreclr#10691)

* [x86/Linux] Fix build error in nuget packaging

Fix build error in nuget packaging
Modify condition for excluding libcoreclrtraceptprovider.so

* Update runtime.Linux.Microsoft.NETCore.Runtime.CoreCLR.props

Fix typo

Commit migrated from https://github.com/dotnet/coreclr/commit/93fd5fdf523df54945f36a1346e27dedbe1a2a4d

7 years agoMerge pull request dotnet/coreclr#10112 from pgavlin/gh10106
Pat Gavlin [Wed, 5 Apr 2017 15:14:36 +0000 (08:14 -0700)]
Merge pull request dotnet/coreclr#10112 from pgavlin/gh10106

Only build compatjit.dll when building JIT32.

Commit migrated from https://github.com/dotnet/coreclr/commit/094a58c306543adca6f71d4ca8027e64474373af

7 years agoOnly build compatjit.dll when building JIT32.
Pat Gavlin [Sat, 11 Mar 2017 01:11:24 +0000 (17:11 -0800)]
Only build compatjit.dll when building JIT32.

In order to avoid confusion, do not build and package compatjit.dll
unless we are building JIT32.

Fixes dotnet/coreclr#10106.

Commit migrated from https://github.com/dotnet/coreclr/commit/e62151a88f71edcaa336f4265b4fc534d6f56940

7 years ago[x86/Linux] add three functions for _X86_TARGET_ (dotnet/coreclr#10378)
ragmani [Wed, 5 Apr 2017 10:00:04 +0000 (19:00 +0900)]
[x86/Linux] add three functions for _X86_TARGET_ (dotnet/coreclr#10378)

* [x86/Linux] add three functions for _X86_TARGET_

There is no functions for _X86_TARGET_.
  - ZapUnwindData::GetAlignment()
  - DWORD ZapUnwindData::GetSize()
  - void ZapUnwindData::Save(ZapWriter * pZapWriter)

* [x86/Linux] remove personality routine on x86/linux.

remove creating personaly routine when assemblies is generated to ni.
add a function for getting size of UnwindDataBlob on x86/linux.

Signed-off-by: ragmani <ragmani0216@gmail.com>
* [x86/Linux] correct the unclearly fixed parts.

change Unwindinfo's size from sizeof(ULONG) to sizeof(UNWIND_INFO).
change Unwindinfo's alignment from sizeof(DWORD) to sizeof(BYTE).
remove unnecessary code.

* [x86/Linux] change alignment from sizeof(BYTE) to sizeof(DWORD).

Commit migrated from https://github.com/dotnet/coreclr/commit/c7241a9c7af7b2076d6876c0b747f6d7144ac347

7 years agoFix class name in ryujit-overview.md
Hyung-Kyu Choi [Wed, 5 Apr 2017 07:08:30 +0000 (16:08 +0900)]
Fix class name in ryujit-overview.md

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/d6741702f0a17ab4f4e492f5bdd8d9479dc1ccbb

7 years agoUse the correct type for interlocked instructions
Mike Danes [Wed, 5 Apr 2017 05:27:37 +0000 (08:27 +0300)]
Use the correct type for interlocked instructions

The interlocked operation type can, at least in theory, be TYP_VOID in the case of GT_LOCKADD. The first operand type is not relevant because it's the address of the memory location and not an indir.

The only option is to use the type of the second operand but that may be a small int type so genActualType needs to be used to get the correct type.

Commit migrated from https://github.com/dotnet/coreclr/commit/5f5e5969ff1659860a9a69616300916a481e4a3d

7 years agoMerge pull request dotnet/coreclr#10303 from hseok-oh/fix_10300
Bruce Forstall [Wed, 5 Apr 2017 05:26:22 +0000 (22:26 -0700)]
Merge pull request dotnet/coreclr#10303 from hseok-oh/fix_10300

[ARM32/RyuJIT] Fix register allocation for null check in call instruction

Commit migrated from https://github.com/dotnet/coreclr/commit/a5fef2172ad19d4c58e67c9e5bee10d247cd8929

7 years agoMerge pull request dotnet/coreclr#10637 from rahku/UrlString
Rahul Kumar [Wed, 5 Apr 2017 04:26:27 +0000 (21:26 -0700)]
Merge pull request dotnet/coreclr#10637 from rahku/UrlString

Remove file system/security/util/URLString.cs

Commit migrated from https://github.com/dotnet/coreclr/commit/e93e79b3d012bc068c84ee5f65f8e755020d8a9c

7 years agoRemove file system/security/util/URLString.cs
Rahul Kumar [Sat, 1 Apr 2017 00:11:24 +0000 (17:11 -0700)]
Remove file system/security/util/URLString.cs

Commit migrated from https://github.com/dotnet/coreclr/commit/f4450c8c2f2c0f0439c2d3085d6e619fcd5b20ae

7 years agoAdd a job for testing via IlLink for Linux
Swaroop Sridhar [Mon, 3 Apr 2017 23:10:38 +0000 (16:10 -0700)]
Add a job for testing via IlLink for Linux

Add jobs to run CoreCLR tests on Ubuntu via ILLINK

Commit migrated from https://github.com/dotnet/coreclr/commit/c3b9127f72748289cb98e45e62f3ea3a92543186

7 years agoFix invocation of ILLink in linux testing
Swaroop Sridhar [Tue, 4 Apr 2017 00:23:11 +0000 (17:23 -0700)]
Fix invocation of ILLink in linux testing

Fix the input to illink -a argument to not include the extension.
The current command line caused silent wrong code gneration
because of https://github.com/mono/linker/issues/56

Commit migrated from https://github.com/dotnet/coreclr/commit/f1dc118917525caee56629f5b60a260c1035a6aa

7 years ago[x86/Linux] 16-byte aligned ResolveWorkerAsmStub (dotnet/coreclr#10655)
Jonghyun Park [Wed, 5 Apr 2017 00:29:50 +0000 (09:29 +0900)]
[x86/Linux] 16-byte aligned ResolveWorkerAsmStub (dotnet/coreclr#10655)

Commit migrated from https://github.com/dotnet/coreclr/commit/336fea27b0d54b7e996398d10010a8fc35e0e136

7 years agoMerge pull request dotnet/coreclr#10715 from wtgodbe/alpineFix
William Godbe [Tue, 4 Apr 2017 23:42:20 +0000 (16:42 -0700)]
Merge pull request dotnet/coreclr#10715 from wtgodbe/alpineFix

Fix Alpine build break in pipeline

Commit migrated from https://github.com/dotnet/coreclr/commit/cece73d18e8497d0133c660be0814482b0ec01b9

7 years agoUpdate module not found error message (dotnet/coreclr#10692)
Jan Vorlicek [Tue, 4 Apr 2017 23:41:25 +0000 (01:41 +0200)]
Update module not found error message (dotnet/coreclr#10692)

This message can be misleading, since it says "The specified module
could not be found", but it would also report case when the module
was found, but one of the module's dependencies were not found.
Multiple people in the past were hit by that when their module was
not loaded, they were thinking that there is some problem with
the path coreclr is loading modules from or something like that and
spent non-trivial amount of time trying to figure that out.
The fact that the module could have missing dependencies is really
not obvious.

So I am updating the message to reflect that fact.

Commit migrated from https://github.com/dotnet/coreclr/commit/24f1153adfc1a83e490d8d22ee353b322aba1e33

7 years agoFix Alpine build break in pipeline
wtgodbe [Tue, 4 Apr 2017 23:24:51 +0000 (16:24 -0700)]
Fix Alpine build break in pipeline

Commit migrated from https://github.com/dotnet/coreclr/commit/1ed25909008ed985565fc9bacbad3534ddb49b87

7 years agoCoreRT: make CORINFO_HELP_READYTORUN_DELEGATE_CTOR optimization for verifiable sequen...
Sergey Andreenko [Tue, 4 Apr 2017 23:20:29 +0000 (16:20 -0700)]
CoreRT: make CORINFO_HELP_READYTORUN_DELEGATE_CTOR optimization for verifiable sequences. (dotnet/coreclr#10663)

delegate ctor optimization for CoreRT.

Commit migrated from https://github.com/dotnet/coreclr/commit/60ed6841161a3b5e5e627041bc0d4a87bb21ce22

7 years agoMerge pull request dotnet/coreclr#10190 from sdmaclea/PR-ARM64-BACKPORT-9500
Rahul Kumar [Tue, 4 Apr 2017 22:33:36 +0000 (15:33 -0700)]
Merge pull request dotnet/coreclr#10190 from sdmaclea/PR-ARM64-BACKPORT-9500

[Arm64/Windows] Backport dotnet/coreclr#9500 changes

Commit migrated from https://github.com/dotnet/coreclr/commit/7f296fec9799d0a2d5ace44eb468ecf264cc026f

7 years agoMerge pull request dotnet/coreclr#10614 from sdmaclea/PR-ARM64-GENRET-GCINFO
Jarret Shook [Tue, 4 Apr 2017 20:58:38 +0000 (13:58 -0700)]
Merge pull request dotnet/coreclr#10614 from sdmaclea/PR-ARM64-GENRET-GCINFO

[Arm64] Fix GCStress hole in genReturn

Commit migrated from https://github.com/dotnet/coreclr/commit/5619985da19d0f17a1a48558381a6d79bcc67f74

7 years agoMerge pull request dotnet/coreclr#10609 from alpencolt/ryu-arm-locallock
Bruce Forstall [Tue, 4 Apr 2017 20:20:32 +0000 (13:20 -0700)]
Merge pull request dotnet/coreclr#10609 from alpencolt/ryu-arm-locallock

[RyuJIT/ARM32] Localloc implementation in codegen

Commit migrated from https://github.com/dotnet/coreclr/commit/5887e3ac69a15089bd51674c3a943a2133d3841d

7 years agoMerge pull request dotnet/coreclr#10699 from adityamandaleeka/fix_env_empty_var_handling
Aditya Mandaleeka [Tue, 4 Apr 2017 20:10:40 +0000 (13:10 -0700)]
Merge pull request dotnet/coreclr#10699 from adityamandaleeka/fix_env_empty_var_handling

Fix handling of empty environment variables in PAL

Commit migrated from https://github.com/dotnet/coreclr/commit/3bf3915549eaa3c475f9dd899d9a6265dcde9908

7 years agoMerge pull request dotnet/coreclr#10681 from BruceForstall/LinuxArmAltjit
Bruce Forstall [Tue, 4 Apr 2017 18:09:36 +0000 (11:09 -0700)]
Merge pull request dotnet/coreclr#10681 from BruceForstall/LinuxArmAltjit

Add Linux host support for arm32/arm64 altjit

Commit migrated from https://github.com/dotnet/coreclr/commit/244dbfe0bfcb95d3c896c41a76e17bfba4f571c0

7 years agoFix handling of empty environment variables in PAL.
Aditya Mandaleeka [Tue, 4 Apr 2017 17:31:46 +0000 (10:31 -0700)]
Fix handling of empty environment variables in PAL.

Commit migrated from https://github.com/dotnet/coreclr/commit/443f2e5d907d16aba7a25d11ea418afc6ac69336

7 years agoRemoved Unused Local Random Instances (dotnet/coreclr#10696)
Rion Williams [Tue, 4 Apr 2017 17:47:54 +0000 (12:47 -0500)]
Removed Unused Local Random Instances (dotnet/coreclr#10696)

* Removed Unused Local Random Instances

Discovered two cases of a `Random` instance that weren't being used
within their respective methods and removed them.

* Retained Earlier Comment

Retained an earlier comment for consistency

Commit migrated from https://github.com/dotnet/coreclr/commit/2b8c3f3b9ea71929e719a86208fb950f18f3c82b

7 years agoUse setMachineAffinity for arm64 (dotnet/coreclr#10558)
Matt Mitchell [Tue, 4 Apr 2017 15:29:26 +0000 (08:29 -0700)]
Use setMachineAffinity for arm64 (dotnet/coreclr#10558)

Commit migrated from https://github.com/dotnet/coreclr/commit/13b43782ca7cf4447e27a86f2082fa62ef03bea5

7 years agoDo not use declare -A
Steve MacLean, Qualcomm Datacenter Technologies, Inc [Tue, 4 Apr 2017 15:02:18 +0000 (15:02 +0000)]
Do not use declare -A

This broke runtest.sh on OSX 10.12

Commit migrated from https://github.com/dotnet/coreclr/commit/c9401137f5e5a5b4ad518afb07a29e22b7781ff3

7 years ago[x86/Linux] Fix crash when GC triggered inside funclets (dotnet/coreclr#10188)
Hanjoung Lee [Tue, 4 Apr 2017 14:25:40 +0000 (23:25 +0900)]
[x86/Linux] Fix crash when GC triggered inside funclets (dotnet/coreclr#10188)

* [x86/Linux] Fix crash when GC triggered inside funclets

* [x86/Linux] Make main function not to report

Commit migrated from https://github.com/dotnet/coreclr/commit/8525460327cc2967cf30364588ce981b81ce2727

7 years agoPass crossbuild and linux-id to CMakeLists.txt using CMake arguments (dotnet/coreclr...
Hyeongseok Oh [Tue, 4 Apr 2017 12:07:09 +0000 (21:07 +0900)]
Pass crossbuild and linux-id to CMakeLists.txt using CMake arguments (dotnet/coreclr#10686)

Remove in CMakeLists.txt
1) read cross-build from environment variable
2) read linux-id from file system
Instead, pass cross-build and linux-id from gen-buildsys-clang.sh using cmake arguments

Commit migrated from https://github.com/dotnet/coreclr/commit/dfce3af2ee5967ae53c7b47135f150f59452ded3

7 years ago[x86/Linux] Correctly unwind esp frames (dotnet/coreclr#10685)
Jonghyun Park [Tue, 4 Apr 2017 08:50:02 +0000 (15:50 +0700)]
[x86/Linux] Correctly unwind esp frames (dotnet/coreclr#10685)

Commit migrated from https://github.com/dotnet/coreclr/commit/53c88123a7f6216a31318f14062fd245730c74ba

7 years agoMerge pull request dotnet/coreclr#10601 from rahku/c4996
Rahul Kumar [Tue, 4 Apr 2017 08:02:19 +0000 (01:02 -0700)]
Merge pull request dotnet/coreclr#10601 from rahku/c4996

1. Remove disable of C4996

Commit migrated from https://github.com/dotnet/coreclr/commit/ebf4927d891757b1bd7f54119de2ad60900d3232

7 years agoMerge pull request dotnet/coreclr#10682 from BruceForstall/CleanUpJitEEDefine
Bruce Forstall [Tue, 4 Apr 2017 05:32:22 +0000 (22:32 -0700)]
Merge pull request dotnet/coreclr#10682 from BruceForstall/CleanUpJitEEDefine

Remove unused code under typo define

Commit migrated from https://github.com/dotnet/coreclr/commit/f66e306a08b3f8de10d6ad26faccd53b58a56b7e

7 years agoMerge pull request dotnet/coreclr#10580 from noahfalk/fitjit_tier0_flag
Noah Falk [Tue, 4 Apr 2017 04:04:16 +0000 (21:04 -0700)]
Merge pull request dotnet/coreclr#10580 from noahfalk/fitjit_tier0_flag

Add Tier0 jit flag

Commit migrated from https://github.com/dotnet/coreclr/commit/4c1df4be63a79a4375691b1de49e890913733cec

7 years agoMove '#pragma warning(disable:21000)' to correct place (dotnet/coreclr#10455)
Matt Warren [Tue, 4 Apr 2017 01:37:48 +0000 (02:37 +0100)]
Move '#pragma warning(disable:21000)' to correct place (dotnet/coreclr#10455)

Whilst I was writing a blog post ['A Hitchhikers Guide to the CoreCLR Source Code'](http://mattwarren.org/2017/03/23/Hitchhikers-Guide-to-the-CoreCLR-Source-Code/#top-10-lists) I noticed that a `#pragma warning(disable:21000)` was mis-aligned.

I'm pretty sure that having it in the wrong place doesn't cause a problem (i.e. this doesn't actually *fix* anything), because the other methods are smaller, so I understand if you don't want to take the PR.

Commit migrated from https://github.com/dotnet/coreclr/commit/b8f4ad63fbd1c0401c49189fb1c05081d07fe6b3

7 years agoImprove Guid.ToString (dotnet/coreclr#10669)
Ben Adams [Tue, 4 Apr 2017 01:20:54 +0000 (02:20 +0100)]
Improve Guid.ToString (dotnet/coreclr#10669)

* Improve Guid.ToString

* revert HexToChar

Commit migrated from https://github.com/dotnet/coreclr/commit/9264c062d0c2da0b38544da01a4d23e18df1d62c

7 years agoMerge pull request dotnet/coreclr#10678 from briansull/contract-fix
Brian Sullivan [Tue, 4 Apr 2017 00:30:36 +0000 (17:30 -0700)]
Merge pull request dotnet/coreclr#10678 from briansull/contract-fix

Remove the SO_TOLERANT contact from CEEInfo::resolveVirtualMethodHelper

Commit migrated from https://github.com/dotnet/coreclr/commit/acb4cc678cf0f145b33bcaa11c241e7c1bc44e1c

7 years agoDebug.Assert FF (dotnet/coreclr#10652)
Dan Moseley [Tue, 4 Apr 2017 00:15:24 +0000 (17:15 -0700)]
Debug.Assert FF (dotnet/coreclr#10652)

Commit migrated from https://github.com/dotnet/coreclr/commit/d8250b52fc596cc9c13d6abbc5aa85dd1440b0d9

7 years agoFix 'this' pointer in struct methods (dotnet/coreclr#10668)
Igor Kulaychuk [Tue, 4 Apr 2017 00:10:40 +0000 (03:10 +0300)]
Fix 'this' pointer in struct methods (dotnet/coreclr#10668)

The 'this' method argument should always be a pointer.

Commit migrated from https://github.com/dotnet/coreclr/commit/4451f848e195ca554b96afddbee48b9ac5f3279e

7 years agoRemove unused code under typo define
Bruce Forstall [Mon, 3 Apr 2017 23:59:35 +0000 (16:59 -0700)]
Remove unused code under typo define

The code is under COR_JIT_EE_VER which never existed (it used to
be COR_JIT_EE_VERSION), thus the code has never been used.

Commit migrated from https://github.com/dotnet/coreclr/commit/b9fd50477279cca8badc453dde294661693a111c

7 years agoremove fedora 23 (dotnet/coreclr#10667)
Dan Moseley [Mon, 3 Apr 2017 23:43:43 +0000 (16:43 -0700)]
remove fedora 23 (dotnet/coreclr#10667)

Commit migrated from https://github.com/dotnet/coreclr/commit/425551a2c60fb20f462779a4dfa9a0aaf38c9e7b

7 years agoMerge pull request dotnet/coreclr#10629 from russellhadley/EHWriteThru-design-doc
Russell C Hadley [Mon, 3 Apr 2017 23:37:00 +0000 (16:37 -0700)]
Merge pull request dotnet/coreclr#10629 from russellhadley/EHWriteThru-design-doc

Add initial design document for EH WriteThru

Commit migrated from https://github.com/dotnet/coreclr/commit/b2d4c3e903ab3b9371d213d602c7a29b9a0b0136

7 years agoFix InternalsVisibleTo when it references an assembly with some DebuggableAttribute...
Koundinya Veluri [Mon, 3 Apr 2017 23:35:47 +0000 (16:35 -0700)]
Fix InternalsVisibleTo when it references an assembly with some DebuggableAttribute flags (dotnet/coreclr#10664)

Fixes dotnet/coreclr#3541
- Mask out the DebuggableAttribute bits from when comparing assembly spec flags for matching an InternalsVisibleTo reference to an assembly

Commit migrated from https://github.com/dotnet/coreclr/commit/cb8cfba3b61f18f81787322f0a2563d118c26b8a

7 years agoMerge pull request dotnet/coreclr#10671 from wtgodbe/Redist
William Godbe [Mon, 3 Apr 2017 23:26:02 +0000 (16:26 -0700)]
Merge pull request dotnet/coreclr#10671 from wtgodbe/Redist

Publish VC Redist DLLs as part of CoreCLR Package

Commit migrated from https://github.com/dotnet/coreclr/commit/99fd99e5f8821e4c25439bcf1997f9a026dde7bf

7 years agoRemove the SO_TOLERANT contact from CEEInfo::resolveVirtualMethodHelper
Brian Sullivan [Mon, 3 Apr 2017 23:01:23 +0000 (16:01 -0700)]
Remove the SO_TOLERANT contact from CEEInfo::resolveVirtualMethodHelper
that contract should only apply to CEEInfo::resolveVirtualMethod which uses the JIT_TO_EE_TRANSITION() transition macros.

Commit migrated from https://github.com/dotnet/coreclr/commit/b58c5b24f1a616a58f70fc026fe22a8ca0d6b438

7 years agoMerge pull request dotnet/coreclr#10672 from pgavlin/FixExceptionReference
Pat Gavlin [Mon, 3 Apr 2017 22:34:34 +0000 (15:34 -0700)]
Merge pull request dotnet/coreclr#10672 from pgavlin/FixExceptionReference

Fix a reference to System.Exception in a JIT test.

Commit migrated from https://github.com/dotnet/coreclr/commit/bb1b3bbaadc4b205455cac37a3898397fed0c04f

7 years agoAdd Linux host support for arm32/arm64 altjit
Bruce Forstall [Mon, 3 Apr 2017 21:44:27 +0000 (14:44 -0700)]
Add Linux host support for arm32/arm64 altjit

Now, on Linux, the x64 build will build an arm64-targeting
altjit. The x86 build will build an arm32-targeting JIT.
The altjit is named libprotononjit.so/dylib. It can be
used for debugging or for generating asm diffs using jit-diff.

Commit migrated from https://github.com/dotnet/coreclr/commit/c7a2eebf97893a3b7cf45e1713225805dddf8e71

7 years agoPublish VC Redist DLLs as part of CoreCLR Package
wtgodbe [Mon, 3 Apr 2017 20:29:27 +0000 (13:29 -0700)]
Publish VC Redist DLLs as part of CoreCLR Package

Commit migrated from https://github.com/dotnet/coreclr/commit/32aa2184cd26942aa01a6d44fc3eea1f80dc6600

7 years agoMerge pull request dotnet/coreclr#10326 from jashook/arm64_test_update_20_march
Jarret Shook [Mon, 3 Apr 2017 20:56:40 +0000 (13:56 -0700)]
Merge pull request dotnet/coreclr#10326 from jashook/arm64_test_update_20_march

Update the arm64 test drop - WIP

Commit migrated from https://github.com/dotnet/coreclr/commit/bd02f2e51368f96a4651e06236f4f17d6c9f3280

7 years agoFix a reference to System.Exception in a JIT test.
Pat Gavlin [Mon, 3 Apr 2017 20:53:04 +0000 (13:53 -0700)]
Fix a reference to System.Exception in a JIT test.

This bad reference was casuing a failure in the x64 pri1 R2R jobs.

Commit migrated from https://github.com/dotnet/coreclr/commit/3849a0417a1639052849939d0c3ff983bc6572a4

7 years agoBasic EventPipe functionality that supports writing sample profile events to JSON...
Brian Robbins [Fri, 24 Mar 2017 16:38:28 +0000 (09:38 -0700)]
Basic EventPipe functionality that supports writing sample profile events to JSON.  SampleProfiler that globally suspends the runtime every 1ms to walk stacks and write them to the EventPipe.

Commit migrated from https://github.com/dotnet/coreclr/commit/a387696646a1aa7413c2082a430845844e496313

7 years ago[x86/Linux] add the process of handling when entry point is funclet. (dotnet/coreclr...
ragmani [Mon, 3 Apr 2017 19:27:44 +0000 (04:27 +0900)]
[x86/Linux] add the process of handling when entry point is funclet. (dotnet/coreclr#10602)

* [x86/Linux] add the process of handling the entry point when it is funclet in case x86.

* [x86/Linux] enable only for TARGET_X86 && FEATURE_PAL.

Signed-off-by: ragmani <ragmani0216@gmail.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/079b6856bbae83e76836af1e0ef7962cfc4bda03

7 years agoUpdate the arm64 test drop
jashook [Mon, 20 Mar 2017 21:14:31 +0000 (14:14 -0700)]
Update the arm64 test drop

Commit migrated from https://github.com/dotnet/coreclr/commit/3bc9f5979912ad8cbbbcc72aa72ad7fe48a527e3

7 years ago[RyuJIT/ARM32] Localloc implementation in codegen
Alexander Soldatov [Mon, 3 Apr 2017 14:43:30 +0000 (17:43 +0300)]
[RyuJIT/ARM32] Localloc implementation in codegen

Algorithm is almost the same as for other platforms but code
is little bit refactored to improve readability.

Added test to cover almost all possible branches of codegen.
Since arrays allocation of int type is needed multiplication and overflow
checks new tests cover only byte arrays.

Commit migrated from https://github.com/dotnet/coreclr/commit/20917a1ece166167734f3ece02882e3c444da121

7 years ago[RyuJIT/ARM32] GS Cookie check implementation.
Alexander Soldatov [Mon, 3 Apr 2017 12:01:56 +0000 (15:01 +0300)]
[RyuJIT/ARM32] GS Cookie check implementation.

Implementation of GS Cookie check for RyuJIT/ARM32 almost the same as
for ARM64. So this code was moved to codegencommon with.
Also added optimization to use tmp register for emitting helper call.

Commit migrated from https://github.com/dotnet/coreclr/commit/6f40552c88ac826647b787f6b433e359aacfe574

7 years agoCut down FormatterServices (dotnet/coreclr#10653)
Dan Moseley [Mon, 3 Apr 2017 12:44:48 +0000 (05:44 -0700)]
Cut down FormatterServices (dotnet/coreclr#10653)

Commit migrated from https://github.com/dotnet/coreclr/commit/fe7a5f082ca14f5945eedc8d0d23311c0d3701a0

7 years agoFix Double.ToString performance on Linux and OSX (dotnet/coreclr#10572)
Tarek Mahmoud Sayed [Sun, 2 Apr 2017 19:18:22 +0000 (12:18 -0700)]
Fix Double.ToString performance on Linux and OSX (dotnet/coreclr#10572)

* Fix Double.ToString performance on Linux and OSX

* some feedback fixes

* Remove the implementation depending on ecvt_r

Commit migrated from https://github.com/dotnet/coreclr/commit/62849aabbad290a81349cc2a642f3bb240677c7f