platform/upstream/dotnet/runtime.git
5 years agoFix `JitStressRegs=0x1` issue with `RefTypeUpperVectorSaveDef`. (dotnet/coreclr#20623)
Sergey Andreenko [Tue, 30 Oct 2018 20:38:50 +0000 (13:38 -0700)]
Fix `JitStressRegs=0x1` issue with `RefTypeUpperVectorSaveDef`. (dotnet/coreclr#20623)

* Add a repro test.

* Fix the issue.

* Add comments

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

5 years agoJIT: Fix call flag propagation for GenTreeArrElem (dotnet/coreclr#20660)
Andy Ayers [Tue, 30 Oct 2018 18:24:37 +0000 (11:24 -0700)]
JIT: Fix call flag propagation for GenTreeArrElem (dotnet/coreclr#20660)

Closes dotnet/coreclr#20651.

Also fix up some "near miss" cases for GenTreeField and GenTreeBoundsCheck,
where we get lucky and the importer currently splits trees with temps so the
currently ignored child nodes have no interesting side effects.

Revise GenTreeField a bit to pull more of the initialization work into the
constructor. Add a missing R2R field propagation for field nodes in GtClone
(evidently also never hit in practice).

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

5 years agoMerge pull request dotnet/coreclr#20641 from briansull/vso_707552
Brian Sullivan [Tue, 30 Oct 2018 17:03:16 +0000 (10:03 -0700)]
Merge pull request dotnet/coreclr#20641 from briansull/vso_707552

Fix VSO 707552

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

5 years agoAdd the execution policy when running powershell in size on disk benchmarks (dotnet...
Michelle McDaniel [Tue, 30 Oct 2018 16:51:40 +0000 (09:51 -0700)]
Add the execution policy when running powershell in size on disk benchmarks (dotnet/coreclr#20680)

Since moving to the helix queue, we have been failing because the execution policy on the vms is not set to unrestricted. To get around this, we need to explicitly pass -ExecutionPolicy Bypass.

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

5 years agoDisable failing on Windows/ARM Interop/COM tests (dotnet/coreclr#20675)
Egor Chesakov [Tue, 30 Oct 2018 15:30:15 +0000 (08:30 -0700)]
Disable failing on Windows/ARM Interop/COM tests (dotnet/coreclr#20675)

* Interop/COM/NETClients/Primitives/NETClientPrimitives
* Interop/COM/NativeClients/Primitives
* Interop/COM/NETClients/IDispatch/NETClientIDispatch
* Interop/COM/NETClients/Aggregation/NETClientAggregation

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

5 years agoCorrected Typos and grammar (dotnet/coreclr#20658)
Shreyas Jejurkar [Tue, 30 Oct 2018 15:05:58 +0000 (08:05 -0700)]
Corrected Typos and grammar (dotnet/coreclr#20658)

* Corrected some typos and grammar as per English language guidelines.

* Reverted some of the changes

* Reverted back some changes Phase 2

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

5 years agoRemove unnecessary Pack directive to fix build break (dotnet/coreclr#20681)
dotnet-maestro-bot [Tue, 30 Oct 2018 12:18:38 +0000 (05:18 -0700)]
Remove unnecessary Pack directive to fix build break (dotnet/coreclr#20681)

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

5 years agoMerge pull request dotnet/coreclr#20679 from BruceForstall/DumpTempReason
Bruce Forstall [Tue, 30 Oct 2018 06:57:11 +0000 (23:57 -0700)]
Merge pull request dotnet/coreclr#20679 from BruceForstall/DumpTempReason

Dump the "reason" for a compiler temp

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

5 years agoDump the "reason" for a compiler temp
Bruce Forstall [Mon, 29 Oct 2018 21:49:26 +0000 (14:49 -0700)]
Dump the "reason" for a compiler temp

Compiler temps are created with a "reason" that is dumped in JitDump.
Save the reason and display it in the local variable table dump.
This is useful when trying to find a particular temp and see what
code has been generated using it.

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

5 years agoJIT: streamline temp usage for returns (dotnet/coreclr#20640)
Andy Ayers [Mon, 29 Oct 2018 23:11:53 +0000 (16:11 -0700)]
JIT: streamline temp usage for returns (dotnet/coreclr#20640)

If the jit decides it needs a return spill temp, and the return value
has already been spilled to a single-def temp, re-use the existing
for the return temp rather than creating a new one.

In conjunction with dotnet/coreclr#20553 this allows late devirtualization for calls where
the object in the virtual call is the result of an inline that provides
a better type, and the objected formerly reached the call via one or more
intermediate temps.

Closes dotnet/coreclr#15873.

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

5 years agoFix VSO 707552
Brian Sullivan [Fri, 26 Oct 2018 22:07:21 +0000 (15:07 -0700)]
Fix VSO 707552
[RyuJIT][ilgen] Assertion failed 'exp->gtOper != GT_COUNT'
Use nullptr instead of NULL

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

5 years agoRemove outdated GC perf test framework (dotnet/coreclr#20673)
Sung Yoon Whang [Mon, 29 Oct 2018 22:04:56 +0000 (15:04 -0700)]
Remove outdated GC perf test framework (dotnet/coreclr#20673)

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

5 years agoSome cleanup of the System.Number class (dotnet/coreclr#20619)
Tanner Gooding [Mon, 29 Oct 2018 18:15:35 +0000 (11:15 -0700)]
Some cleanup of the System.Number class (dotnet/coreclr#20619)

* Formatting Number.Formatting.cs and Number.Parsing.cs

* Removing some duplicated parsing code by having the Parse method call TryParse

* Moving two constants from NumberBuffer to Dragon4

* Rename FloatPrecision to SinglePrecision

* Updating the casing of the NumberBuffer fields

* Updating NumberBuffer to allow taking a custom-sized digit buffer.

* Updating the various NumberBufferLength constants to be the exact needed lengths

* Fixing DoubleNumberBufferLength and SingleNumberBufferLength to account for the rounding digit.

* Fixing TryParseNumber to use the correct maxDigCount

* Ensure the TryParseSingle out result is assigned on success

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

5 years agoFix typo in linux-performance-tracing (dotnet/coreclr#20667)
Jesús Corrius [Mon, 29 Oct 2018 16:45:43 +0000 (17:45 +0100)]
Fix typo in linux-performance-tracing (dotnet/coreclr#20667)

precomppiled -> precompiled

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

5 years agoUnhelpful error when Activator.CreateInstance can't find default constructor (dotnet...
Andrew Au [Mon, 29 Oct 2018 16:09:48 +0000 (09:09 -0700)]
Unhelpful error when Activator.CreateInstance can't find default constructor  (dotnet/coreclr#20491)

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

5 years agoUpdate CoreClr, CoreSetup, IbcData, PgoData to preview1-27028-04, preview1-27029...
dotnet-maestro-bot [Mon, 29 Oct 2018 12:55:12 +0000 (05:55 -0700)]
Update CoreClr, CoreSetup, IbcData, PgoData to preview1-27028-04, preview1-27029-01, master-20181029-0053, master-20181029-0054, respectively (dotnet/coreclr#20662)

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

5 years agoUpdate CoreClr, CoreSetup, IbcData, PgoData to preview1-27028-03, preview1-27028...
dotnet-maestro-bot [Sun, 28 Oct 2018 15:46:44 +0000 (08:46 -0700)]
Update CoreClr, CoreSetup, IbcData, PgoData to preview1-27028-03, preview1-27028-01, master-20181028-0058, master-20181028-0055, respectively (dotnet/coreclr#20653)

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

5 years agoDelete redundant CoreMangLib decimal tests (dotnet/coreclr#20649)
Jan Kotas [Sat, 27 Oct 2018 17:25:09 +0000 (10:25 -0700)]
Delete redundant CoreMangLib decimal tests (dotnet/coreclr#20649)

Fixes failing test obsoleted by dotnet/coreclr#20638 and contributes to dotnet/coreclr#12782

Delete redundant CoreMangLib decimal tests  \85

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

5 years agoUpdate BuildTools, CoreClr, CoreSetup, IbcData, PgoData to preview1-03326-01, preview...
dotnet-maestro-bot [Sat, 27 Oct 2018 10:33:24 +0000 (03:33 -0700)]
Update BuildTools, CoreClr, CoreSetup, IbcData, PgoData to preview1-03326-01, preview1-27027-01, preview1-27027-01, master-20181027-0055, master-20181027-0036, respectively (dotnet/coreclr#20559)

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

5 years agoAdd IAsyncDisposable implementation to Timer (dotnet/coreclr#20646)
Stephen Toub [Sat, 27 Oct 2018 05:19:45 +0000 (22:19 -0700)]
Add IAsyncDisposable implementation to Timer (dotnet/coreclr#20646)

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

5 years agoImplement IAsyncDisposable on CancellationTokenRegistration (dotnet/coreclr#20645)
Stephen Toub [Sat, 27 Oct 2018 04:19:05 +0000 (21:19 -0700)]
Implement IAsyncDisposable on CancellationTokenRegistration (dotnet/coreclr#20645)

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

5 years agoRemove dead RESOURCE_SATELLITE_CONFIG (dotnet/coreclr#20639)
Steve MacLean [Sat, 27 Oct 2018 02:57:42 +0000 (22:57 -0400)]
Remove dead RESOURCE_SATELLITE_CONFIG (dotnet/coreclr#20639)

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

5 years agoMerge pull request dotnet/coreclr#20621 from AaronRobinsonMSFT/block_tests_WindowsNano
Aaron Robinson [Fri, 26 Oct 2018 22:28:51 +0000 (15:28 -0700)]
Merge pull request dotnet/coreclr#20621 from AaronRobinsonMSFT/block_tests_WindowsNano

Add a run time check for Windows.Nano to all COM related tests.

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

5 years agoAllow ArrayPool.Shared devirtualization (redux) (dotnet/coreclr#20637)
Ben Adams [Fri, 26 Oct 2018 21:12:13 +0000 (22:12 +0100)]
Allow ArrayPool.Shared devirtualization (redux) (dotnet/coreclr#20637)

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

5 years agoNew Decimal.Remainder implementation (dotnet/coreclr#20305)
Pent Ploompuu [Fri, 26 Oct 2018 19:04:18 +0000 (22:04 +0300)]
New Decimal.Remainder implementation (dotnet/coreclr#20305)

* New Decimal.Remainder implementation

* Update CoreFX.issues.json

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

5 years agoImplement interface dispatch to COM for ARM64 (dotnet/coreclr#20618)
David Wrighton [Fri, 26 Oct 2018 18:30:55 +0000 (11:30 -0700)]
Implement interface dispatch to COM for ARM64 (dotnet/coreclr#20618)

* Implement interface dispatch to COM for ARM64
- Implement missing stub (GenericComPlusCallStub)

* Re-enable IDispatch test for Arm64 (Fix issue dotnet/coreclr#20580 )

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

5 years agoJIT: refactor how we do late devirtualization (dotnet/coreclr#20553)
Andy Ayers [Fri, 26 Oct 2018 17:55:06 +0000 (10:55 -0700)]
JIT: refactor how we do late devirtualization (dotnet/coreclr#20553)

Change late devirtualization to run in a postorder callback during
the tree search to update GT_RET_EXPRs, instead of shoehorning it into
the preorder callback.

This allows the jit to reconsider all calls for late devirtualization,
not just calls that are parents of particular GT_RET_EXPRs. The jit will
take advantage of this in subsequent work that does more aggressive
bottup-up type sharpening.

Reconsidering all calls for late devirt instead of just a select subset
incurs around a 0.5% throughput impact.

To mitigate this, short-circult the tree walk when we no longer see a
GTF_CALL flag. This prevents us from walking through CALL and RET_EXPR
free subtrees.

To make this work we have to make sure all node types propagate flags from
their children. This required some updates to a few node constructors.

There is also an odd quirk in the preorder callback where it may overwrite
the parent node (from GT_ASG to GT_BLK or GT_NOP). If the overwrite creates
a GT_NOP, the postorder callback may see a null tree. Tolerate this for now
by checking for that case in the postorder callback.

Also take advantage of `gtRetExprVal` to tunnel through GT_RET_EXPR chains
to the final tree to avoid needing multiple overwrites when propagating
the return expression back into the IR.

With these mitigations this change has minimal throughput impact.

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

5 years agofixes to build properly on FreeBSD (dotnet/coreclr#20588)
Tomas Weinfurt [Fri, 26 Oct 2018 16:37:37 +0000 (09:37 -0700)]
fixes to build properly on FreeBSD (dotnet/coreclr#20588)

* fixes to build properly on FreeBSD

* remove ulimit from freebsd branch

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

5 years agoAdd missing include guard in header file. (dotnet/coreclr#20635)
Austin Wise [Fri, 26 Oct 2018 16:35:45 +0000 (09:35 -0700)]
Add missing include guard in header file. (dotnet/coreclr#20635)

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

5 years agoRemove some dead code related to cross-appdomain exceptions. (dotnet/coreclr#20634)
Austin Wise [Fri, 26 Oct 2018 16:35:09 +0000 (09:35 -0700)]
Remove some dead code related to cross-appdomain exceptions. (dotnet/coreclr#20634)

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

5 years agoMerge pull request dotnet/coreclr#20628 from stephentoub/asyncinterfaces
Stephen Toub [Fri, 26 Oct 2018 15:26:10 +0000 (08:26 -0700)]
Merge pull request dotnet/coreclr#20628 from stephentoub/asyncinterfaces

Add interfaces/helper types for async iterators

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

5 years agoWorking towards clean-up comments /**/ in cs (dotnet/coreclr#20609)
Rafael [Fri, 26 Oct 2018 07:34:32 +0000 (00:34 -0700)]
Working towards clean-up comments /**/ in cs (dotnet/coreclr#20609)

* Working towards cleaning comments /**/

Cleaningup /**/ style comments - Following https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/xmldoc/recommended-tags-for-documentation-comments

dotnet/coreclr#20330

* Updating tags

-Updating some <sumary> to <remarks>
-Adding missing tags

* Fixing PR comments

-Comment does not belong to the public description

* Hiding comment from public description.

* Update //***** to the prevalent // style.

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

5 years agoOptimize FormattingHelpers.CountHexDigits using Lzcnt.LeadingZeroCount (dotnet/corecl...
Egor Bogatov [Fri, 26 Oct 2018 06:07:08 +0000 (09:07 +0300)]
Optimize FormattingHelpers.CountHexDigits using Lzcnt.LeadingZeroCount (dotnet/coreclr#19006)

* Optimize CountHexDigits using Lzcnt

* shift bits instead

* use Lzcnt only on 64 bit

* Optimize Buffer.Utilities.SelectBucketIndex()

* #if HAS_INTRINSICS

* remove HAS_INTRINSICS

* remove HAS_INTRINSICS

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

5 years agoAdd ConfigureAwait extension method for IAsyncEnumerable
Stephen Toub [Fri, 26 Oct 2018 04:19:26 +0000 (21:19 -0700)]
Add ConfigureAwait extension method for IAsyncEnumerable

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

5 years agoAdd ManualResetValueTaskSourceCore
Stephen Toub [Thu, 18 Oct 2018 00:50:05 +0000 (20:50 -0400)]
Add ManualResetValueTaskSourceCore

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

5 years agoAdd AsyncIteratorMethodBuilder
Stephen Toub [Tue, 16 Oct 2018 02:00:16 +0000 (22:00 -0400)]
Add AsyncIteratorMethodBuilder

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

5 years agoAdd IAsyncEnumerable and IAsyncEnumerator
Stephen Toub [Tue, 16 Oct 2018 01:21:08 +0000 (21:21 -0400)]
Add IAsyncEnumerable and IAsyncEnumerator

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

5 years agoAdd IAsyncDisposable
Stephen Toub [Tue, 16 Oct 2018 01:18:18 +0000 (21:18 -0400)]
Add IAsyncDisposable

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

5 years agoMerge pull request dotnet/coreclr#20579 from fiigii/broadcast
Carol Eidt [Fri, 26 Oct 2018 03:02:37 +0000 (03:02 +0000)]
Merge pull request dotnet/coreclr#20579 from fiigii/broadcast

 Implement AVX2.BroadcastScalarToVector128/256

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

5 years agoMerge pull request dotnet/coreclr#20611 from BruceForstall/DisableB152292
Bruce Forstall [Fri, 26 Oct 2018 00:34:42 +0000 (17:34 -0700)]
Merge pull request dotnet/coreclr#20611 from BruceForstall/DisableB152292

Disable b152292 for arm32 also

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

5 years agoAdd a runtime check for Windows.Nano to all COM related tests.
Aaron Robinson [Fri, 26 Oct 2018 00:05:53 +0000 (17:05 -0700)]
Add a runtime check for Windows.Nano to all COM related tests.

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

5 years agoMerge pull request dotnet/coreclr#20527 from BruceForstall/FixPspSymMove
Bruce Forstall [Thu, 25 Oct 2018 23:25:41 +0000 (16:25 -0700)]
Merge pull request dotnet/coreclr#20527 from BruceForstall/FixPspSymMove

Stop attempting to move PSPSym during localloc for arm32/arm64

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

5 years agoStop attempting to move PSPSym during localloc for arm32/arm64
Bruce Forstall [Mon, 22 Oct 2018 23:13:07 +0000 (16:13 -0700)]
Stop attempting to move PSPSym during localloc for arm32/arm64

For arm64, this was creating a data corruption possibility, as the
calculations were done wrong.

In neither case was it necessary, as in the main function we always
access the PSPSym FP-relative, so when writing back the PSPSym, we
were always writing to exactly the same slot; nothing was actually
moving.

I can't recall or figure out why we were moving it in the first place,
or what might have changed.

Added a new variant of the localloc eh tests that has outgoing arguments,
to exercise the case where we need to re-establish the outgoing argument
space after the localloc.

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

5 years agoMerge pull request dotnet/coreclr#20617 from AaronRobinsonMSFT/windows_nano_detection
Aaron Robinson [Thu, 25 Oct 2018 21:47:59 +0000 (14:47 -0700)]
Merge pull request dotnet/coreclr#20617 from AaronRobinsonMSFT/windows_nano_detection

Add support for tests to detect Windows Nano at runtime.

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

5 years agoDisable b152292 for arm32 also
Bruce Forstall [Thu, 25 Oct 2018 16:40:47 +0000 (09:40 -0700)]
Disable b152292 for arm32 also

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

5 years agoAdd DumpDelegate sos command (dotnet/coreclr#20591)
Stephen Toub [Thu, 25 Oct 2018 20:01:56 +0000 (13:01 -0700)]
Add DumpDelegate sos command (dotnet/coreclr#20591)

* Add DumpDelegate sos command

Finding out what method a delegate points to today with SOS is tedious.  This PR adds a DumpDelegate command that simplifies it: give it the delegate address, and it outputs a line for each delegate that makes up the input delegate, where each line includes the target object, the method descriptor, and a friendly name.

* Address PR feedback

And fix some warnings that were showing up in CI but not locally.

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

5 years agoAdd support for tests to detect Windows Nano at runtime.
Aaron Robinson [Thu, 25 Oct 2018 20:01:40 +0000 (13:01 -0700)]
Add support for tests to detect Windows Nano at runtime.

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

5 years agoRemove debug-only file writers. (dotnet/coreclr#20612)
Brian Robbins [Thu, 25 Oct 2018 19:58:56 +0000 (12:58 -0700)]
Remove debug-only file writers. (dotnet/coreclr#20612)

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

5 years agoAdd test cases for AVX2.BroadcastScalarToVector128/256 and move Avx.Broadcast* tests...
Fei Peng [Wed, 24 Oct 2018 19:27:58 +0000 (12:27 -0700)]
Add test cases for AVX2.BroadcastScalarToVector128/256 and move Avx.Broadcast* tests to the template

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

5 years agoImplement AVX2.BroadcastScalarToVector128/256
Fei Peng [Wed, 24 Oct 2018 19:27:31 +0000 (12:27 -0700)]
Implement AVX2.BroadcastScalarToVector128/256

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

5 years agoMerge pull request dotnet/coreclr#20614 from AaronRobinsonMSFT/coreclr/20601
Aaron Robinson [Thu, 25 Oct 2018 17:36:30 +0000 (10:36 -0700)]
Merge pull request dotnet/coreclr#20614 from AaronRobinsonMSFT/coreclr/20601

Disable `IDispatch` test on Windows.Nano

Skipping CI verification since this is a non-code change and only impacts nightly runs.

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

5 years agoDisable IDispatch test on Windows.Nano
Aaron Robinson [Thu, 25 Oct 2018 17:34:26 +0000 (10:34 -0700)]
Disable IDispatch test on Windows.Nano

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

5 years agoDisable ExecuteInDefaultAppDomain test on *nix
Steve MacLean [Tue, 23 Oct 2018 17:29:16 +0000 (13:29 -0400)]
Disable ExecuteInDefaultAppDomain test on *nix

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

5 years agoExecInDefAppDom add InjectCode test
Steve MacLean [Tue, 23 Oct 2018 19:35:36 +0000 (15:35 -0400)]
ExecInDefAppDom add InjectCode test

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

5 years agoAdd test for ICLRRuntimeHost::ExecuteInDefaultAppDomain
Steve MacLean [Fri, 12 Oct 2018 19:10:06 +0000 (15:10 -0400)]
Add test for ICLRRuntimeHost::ExecuteInDefaultAppDomain

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

5 years agoAdd IID_ICLRRuntimeHost QueryInterface support
Steve MacLean [Sat, 13 Oct 2018 02:30:55 +0000 (22:30 -0400)]
Add IID_ICLRRuntimeHost QueryInterface support

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

5 years agoRestore ExecuteInDefaultAppDomain implementation
Steve MacLean [Wed, 10 Oct 2018 16:50:30 +0000 (12:50 -0400)]
Restore ExecuteInDefaultAppDomain implementation

Restore deleted ExecuteInDefaultAppDomain implentation
Enable for CoreCLR
Cleanup for CoreCLR

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

5 years agoAdd EventPipe Config File Option MultiFileSec (dotnet/coreclr#20548)
Brian Robbins [Thu, 25 Oct 2018 16:47:48 +0000 (09:47 -0700)]
Add EventPipe Config File Option MultiFileSec (dotnet/coreclr#20548)

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

5 years agoAvoid comparing capacity in StringBuilder.Equals (dotnet/coreclr#20567)
Petr Onderka [Thu, 25 Oct 2018 16:21:41 +0000 (18:21 +0200)]
Avoid comparing capacity in StringBuilder.Equals (dotnet/coreclr#20567)

* Avoid comparing capacity in StringBuilder.Equals

* Disabled corefx StringBuilder test

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

5 years agoFallback to old behavior when marshaling a non-blittable fixed buffer (dotnet/coreclr...
Jeremy Koritzinsky [Thu, 25 Oct 2018 15:40:15 +0000 (08:40 -0700)]
Fallback to old behavior when marshaling a non-blittable fixed buffer (dotnet/coreclr#20575)

* Throw an exception only when attempting to marshal nonblittable fixed buffers to/from native instead of on all marshalling operations.

* Assert in debug and checked builds when trying to marshal a fixed buffer of a non-blittable type.

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

5 years agoJIT: ensure float folding is done using float precision (dotnet/coreclr#20578)
Andy Ayers [Thu, 25 Oct 2018 15:17:49 +0000 (08:17 -0700)]
JIT: ensure float folding is done using float precision (dotnet/coreclr#20578)

Cast float folded values back to float before assigning to the double
the jit uses for storing FP literal constants.

Fixes dotnet/coreclr#20561.

No diffs on Core; exposing the original bug requires building RyuJit with
an older x86 C++ compiler that uses x87 floating point.

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

5 years agoFix comment Style (dotnet/coreclr#20604)
Thomas Schreiner [Thu, 25 Oct 2018 15:14:18 +0000 (17:14 +0200)]
Fix comment Style (dotnet/coreclr#20604)

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

5 years agoUse IThreadPoolWorkItem in ConcurrentExclusiveSchedulerPair (dotnet/coreclr#20513)
Stephen Toub [Thu, 25 Oct 2018 15:03:37 +0000 (08:03 -0700)]
Use IThreadPoolWorkItem in ConcurrentExclusiveSchedulerPair (dotnet/coreclr#20513)

ConcurrentExclusiveSchedulerPair exposes two TaskSchedulers, one for concurrent processing and one for exclusive processing, such that any tasks scheduled are executed in a corresponding fashion.  CESP does that by itself scheduling workers to an underlying scheduler, and those workers in turn process the queued tasks.  Today this always queues those workers as Tasks, but if the underlying scheduler is TaskScheduler.Default (aka the thread pool), we can avoid per-worker allocations by using the new UnsafeQueueUserWorkItem overload that takes an IThreadPoolWorkItem, and just queueing the same worker object over and over and over.

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

5 years agoJIT: emit debug info for locals for minopts/tier0 (dotnet/coreclr#20466)
Andy Ayers [Thu, 25 Oct 2018 15:02:24 +0000 (08:02 -0700)]
JIT: emit debug info for locals for minopts/tier0 (dotnet/coreclr#20466)

The jit no longer tracks locals when running at minopts. But untracked
local debug emission was tied to `cmpDebugCode. Change untracked local
debug emission to instead check if there are no tracked locals.

Fixes dotnet/coreclr#20421.

Note we could improve things further in the case where there is a mixture
of tracked and untracked locals. I have opened dotnet/coreclr#20465 for that as my first
attempts here had that ambition but ran into problems.

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

5 years agoAvoid implicit long casts in uint compares (dotnet/coreclr#20511)
Ben Adams [Thu, 25 Oct 2018 05:34:10 +0000 (06:34 +0100)]
Avoid implicit long casts in uint compares (dotnet/coreclr#20511)

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

5 years agoAvoid having DateTime.TryParse throwing (dotnet/coreclr#20587)
Tarek Mahmoud Sayed [Thu, 25 Oct 2018 05:19:17 +0000 (22:19 -0700)]
Avoid having DateTime.TryParse throwing (dotnet/coreclr#20587)

* Avoid having DateTime.TryParse throwing

There are some cases during the parsing which will require adding ticks to the DateTime object we are creating during the parsing.
DateTime.AddTicks can throw which will make DateTime.TryParse fail with throwing instead of just returning false.

The fix here is to avoid throwing in the first place and let DateTime.TryParse return false on such failures.

* Remove the invalid link

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

5 years agoAdd IsCollectible property to Assembly and necessary backing functions (dotnet/corecl...
John Salem [Thu, 25 Oct 2018 03:29:40 +0000 (20:29 -0700)]
Add IsCollectible property to Assembly and necessary backing functions (dotnet/coreclr#20574)

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

5 years agoGet the real update for Unicode 11 data (dotnet/coreclr#20589)
Tarek Mahmoud Sayed [Thu, 25 Oct 2018 03:04:43 +0000 (20:04 -0700)]
Get the real update for Unicode 11 data (dotnet/coreclr#20589)

In the PR dotnet/coreclr#20529 we have used the old existing data when we moved the file CharunicodeInfoData.cs to shared folder.
This change is to restore the actual updated file.

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

5 years agoExclude IDispatch test for Windows Arm64 (dotnet/coreclr#20584)
Andy Ayers [Thu, 25 Oct 2018 02:32:43 +0000 (19:32 -0700)]
Exclude IDispatch test for Windows Arm64 (dotnet/coreclr#20584)

Disable for now while failures are investigated. See dotnet/coreclr#20580.

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

5 years agoRemove support for nonexistent UnmanagedFunctionPointerAttribute.PreserveSig. (dotnet...
Jeremy Koritzinsky [Wed, 24 Oct 2018 22:56:33 +0000 (15:56 -0700)]
Remove support for nonexistent UnmanagedFunctionPointerAttribute.PreserveSig. (dotnet/coreclr#20396)

UnmanagedFunctionPointer doesn't have a PreserveSig attribute on framework or core, so remove the unused, confusing, and inaccurate support from the runtime.

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

5 years agoRun IBCMerge step for Linux on Windows (dotnet/coreclr#20496)
Michelle McDaniel [Wed, 24 Oct 2018 20:53:42 +0000 (13:53 -0700)]
Run IBCMerge step for Linux on Windows (dotnet/coreclr#20496)

This change does the following:

* Move the IBCOptimize step out of the Crossgen section and into the CoreLib build section of build.cmd
* Adds -ibconly which will skip building System.Private.CoreLib and only run the ibcmerge step
* Adds crossgenonly and partialngen flags to build.sh

These three changes facilitate our ability to apply IBC data to Linux assemblies on Windows and the perform the crossgen step on Linux, which will be our flow for official builds when we want to apply IBC data since IBCMerge cannot run on non-Windows platforms

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

5 years agoUpdate Unicode data to version 11 (dotnet/coreclr#20529)
Tarek Mahmoud Sayed [Wed, 24 Oct 2018 19:58:58 +0000 (12:58 -0700)]
Update Unicode data to version 11 (dotnet/coreclr#20529)

* Update Unicode data to version 11

* Move CharUnicodeInfoData.cs to the hsared folder

* Delete un-needed file

* Disable the failed test

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

5 years agoMove ILLink and SizeOnDisk testing to Helix Queue (dotnet/coreclr#20569)
Michelle McDaniel [Wed, 24 Oct 2018 17:51:34 +0000 (10:51 -0700)]
Move ILLink and SizeOnDisk testing to Helix Queue (dotnet/coreclr#20569)

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

5 years agoExpose EnableISA knobs in release build (dotnet/coreclr#20501)
Fei Peng [Wed, 24 Oct 2018 15:06:41 +0000 (08:06 -0700)]
Expose EnableISA knobs in release build (dotnet/coreclr#20501)

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

5 years agoMerge pull request dotnet/coreclr#20497 from AaronRobinsonMSFT/additional_com_tests
Aaron Robinson [Wed, 24 Oct 2018 03:22:24 +0000 (20:22 -0700)]
Merge pull request dotnet/coreclr#20497 from AaronRobinsonMSFT/additional_com_tests

Support for IDispatch

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

5 years agoDelete duplicate CoreFX tests (dotnet/coreclr#20532)
Jan Kotas [Wed, 24 Oct 2018 02:59:39 +0000 (19:59 -0700)]
Delete duplicate CoreFX tests (dotnet/coreclr#20532)

Contributes to https://github.com/dotnet/coreclr/issues/12782

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

5 years agoInitialize `StructReturnType` for `gtNewRefCOMfield`. (dotnet/coreclr#20056)
Sergey Andreenko [Wed, 24 Oct 2018 01:06:57 +0000 (18:06 -0700)]
Initialize `StructReturnType` for `gtNewRefCOMfield`. (dotnet/coreclr#20056)

The issue could be repro only on .Net Framework, because this helper is only needed for remoting, that .Net Core doesn't have.

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

5 years agoJIT: recover types from helper calls and more (dotnet/coreclr#20447)
Andy Ayers [Wed, 24 Oct 2018 00:00:11 +0000 (17:00 -0700)]
JIT: recover types from helper calls and more (dotnet/coreclr#20447)

The jit needs to recover class handles in order to devirtualize and
do other type-based optimizations. This change allows the jit to find
the type for more trees: in particular, helper calls, intrinsics, and
expanded static field accesses.

Also, annotate a few methods to control jit optimization

We don't want to optimize special methods that are used to inform crossgen
about desirable generic instantiations. `CommonlyUsedGenericInstantiations`
was already annotated but `CommonlyUsedWinRTRedirectedInterfaceStubs` wasn't.

And because `RuntimeType` is sealed calls through types are now often
devirtualized. Name lookups on types are frequent, especially on error paths.
The method `GetCachedName` looks like an attractive inline but simply expands
into a larger sequence of two other calls. So block it from being inlined.

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

5 years agoUse the same version of Xunit as in corefx (2.4.1 prerelease) (dotnet/coreclr#20506)
Egor Chesakov [Tue, 23 Oct 2018 23:27:24 +0000 (16:27 -0700)]
Use the same version of Xunit as in corefx (2.4.1 prerelease) (dotnet/coreclr#20506)

From https://xunit.github.io/releases/2.4.1-pre-4059

**xUnit.net 2.4.1 Pre-Release (build 4059)**

Core framework
* BUG: Fixed an issue with xunit.abstractions not correctly installing with older versions of Visual Studio (pre-2017).
* BUG: Fixed an issue with ByRef types with .NET Core 2.1.
* BUG: Removed an unnecessary first chance exception related to attempting to load configuration files.
* BUG: Fixed an issue where synchronous and asynchronous disposal of test classes were running in parallel. The documented behavior is that asynchronous disposal (via IAsyncLifetime) runs to completion before synchronous disposal (via IDisposable).

Console runner
* BUG: Fixed an issue with XML element order with the NUnit report.

MSBuild runner
* BUG: Fixed an issue with XML element order with the NUnit report.

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

5 years agoMerge pull request dotnet/coreclr#20537 from BruceForstall/RemoveLocAllocSP
Bruce Forstall [Tue, 23 Oct 2018 22:54:14 +0000 (15:54 -0700)]
Merge pull request dotnet/coreclr#20537 from BruceForstall/RemoveLocAllocSP

Remove the LocAllocSP slot for non-x86 platforms

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

5 years agoMerge pull request dotnet/coreclr#20552 from fiigii/retest
Carol Eidt [Tue, 23 Oct 2018 22:52:18 +0000 (22:52 +0000)]
Merge pull request dotnet/coreclr#20552 from fiigii/retest

Rewrite and re-enable some hardware intrinsic tests

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

5 years agoAdd PInvoke/Delegate tests (dotnet/coreclr#19323)
Zeng Jiang [Tue, 23 Oct 2018 21:05:57 +0000 (05:05 +0800)]
Add PInvoke/Delegate tests (dotnet/coreclr#19323)

* Add PInvoke/Delegate tests

* Initial pass to get Delegate tests building xplat and running with current infrastructure.

* Fix BOOL and NULL comparisons.

* Fix copy-paste typo

* Disable explicit offset tests off-Windows.

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

5 years agoRe-enable hardware intrinsic tests
Fei Peng [Tue, 23 Oct 2018 18:57:08 +0000 (11:57 -0700)]
Re-enable hardware intrinsic tests

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

5 years agoUpdate BuildTools, CoreClr, CoreSetup, IbcData, PgoData to preview1-03322-02, preview...
dotnet-maestro-bot [Tue, 23 Oct 2018 18:34:57 +0000 (11:34 -0700)]
Update BuildTools, CoreClr, CoreSetup, IbcData, PgoData to preview1-03322-02, preview1-27023-01, preview1-27023-01, master-20181023-0040, master-20181023-0039, respectively (master) (dotnet/coreclr#20502)

* Update BuildTools, CoreClr, CoreSetup, IbcData, PgoData to preview1-03322-02, preview1-27023-01, preview1-27023-01, master-20181023-0040, master-20181023-0039, respectively

* excluding DebugTests

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

5 years agoAdd tests for IDispatch and Aggregation
Aaron Robinson [Mon, 1 Oct 2018 21:49:40 +0000 (14:49 -0700)]
Add tests for IDispatch and Aggregation

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

5 years agoAdd support for IDispatch in CoreCLR
Aaron Robinson [Fri, 19 Oct 2018 20:03:37 +0000 (13:03 -0700)]
Add support for IDispatch in CoreCLR

Reduce some TypeInfo API cruft

Throw exception on non-Windows ABIs for value types

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

5 years agoFix System.Diagnostics.Debug.Tests assembly name
Jan Kotas [Tue, 23 Oct 2018 15:37:57 +0000 (08:37 -0700)]
Fix System.Diagnostics.Debug.Tests assembly name

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

5 years agoDisable System.Diagnostics.Tests CoreFX tests
Jan Kotas [Tue, 23 Oct 2018 12:21:04 +0000 (05:21 -0700)]
Disable System.Diagnostics.Tests CoreFX tests

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

5 years agoRemove the LocAllocSP slot for non-x86 platforms
Bruce Forstall [Tue, 23 Oct 2018 04:39:16 +0000 (21:39 -0700)]
Remove the LocAllocSP slot for non-x86 platforms

This special local variable is only needed on x86 when a function
contains localloc.

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

5 years agoadd missing methods bit (dotnet/coreclr#20528)
Andy Ayers [Mon, 22 Oct 2018 23:39:23 +0000 (16:39 -0700)]
add missing methods bit (dotnet/coreclr#20528)

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

5 years agoAes/Pclmulqdq IsSupported should depend on Ssse3 (dotnet/coreclr#20469)
Fei Peng [Mon, 22 Oct 2018 23:37:26 +0000 (16:37 -0700)]
Aes/Pclmulqdq IsSupported should depend on Ssse3 (dotnet/coreclr#20469)

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

5 years agoAdditionally Vectorize string.IndexOfAny for value lengths 2,3,4,5 (dotnet/coreclr...
Ben Adams [Mon, 22 Oct 2018 20:32:37 +0000 (21:32 +0100)]
Additionally Vectorize string.IndexOfAny for value lengths 2,3,4,5 (dotnet/coreclr#19790)

* Vectorize string.IndexOfAny

* Vectorize string.IndexOfAny [4,5]

* Feedback

* Call order preference

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

5 years agoJIT: improve simplification of IND(ADDR(x)) (dotnet/coreclr#20508)
Andy Ayers [Mon, 22 Oct 2018 20:14:57 +0000 (13:14 -0700)]
JIT: improve simplification of IND(ADDR(x)) (dotnet/coreclr#20508)

Some `IND(ADDR(x))` trees were not being optimized to `x` by morph,
particularly when `x` was the promoted pointer field of a `Span`.
Instead they were creating local fields that blocked enregistration
and lead to store-load pairs like:

```asm
       mov      bword ptr [rsp+20H], rax
       mov      rax, bword ptr [rsp+20H]
```

Add logic to `fgMorphSmpOp`'s `GT_IND` clause to recognize and simplify
these cases.

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

5 years agoAdding DebugProvider to help override Write and ShowDialog behavior (dotnet/coreclr...
Maryam Ariyan [Mon, 22 Oct 2018 18:52:34 +0000 (11:52 -0700)]
Adding DebugProvider to help override Write and ShowDialog behavior (dotnet/coreclr#20419)

* Adding DebugProvider to help override Dialog Write and ShowDialog behavior.

- New SetProvider returns previous DebugProvider while exchanging to new one
- Will keep the s_WriteCore delegates for tests until the next PR to fix indentation is merged

Related to: dotnet/corefxdotnet/coreclr#3708, dotnet/corefxdotnet/coreclr#31003

* Move ShowDialog and Write logic from Debug to DebugProvider

* disabling DebugTests

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

5 years agoRemove several Timer-related allocations from CancellationTokenSource (dotnet/coreclr...
Stephen Toub [Mon, 22 Oct 2018 18:27:05 +0000 (11:27 -0700)]
Remove several Timer-related allocations from CancellationTokenSource (dotnet/coreclr#20509)

When CancellationTokenSource creates a Timer, it passes itself as state, which then results in the Timer being rooted while it's scheduled.  As such, the Timer object itself and the TimerHolder object it creates are largely irrelevant, and since CancellationTokenSource has access, it can just create the underlying TimerQueueTimer object directly.  This means that every CTS that creates a Timer now creates two fewer objects, one of which was finalizable.

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

5 years agoDisable stale Unix_NonExistentPath_Nop corefx test (dotnet/coreclr#20512)
Stephen Toub [Mon, 22 Oct 2018 07:58:46 +0000 (00:58 -0700)]
Disable stale Unix_NonExistentPath_Nop corefx test (dotnet/coreclr#20512)

* Disable stale Unix_NonExistentPath_Nop corefx test

* Disable another test

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

5 years agoAdd MethodImplAttributes.AggressiveOptimization (dotnet/coreclr#20274)
Koundinya Veluri [Sat, 20 Oct 2018 15:51:41 +0000 (08:51 -0700)]
Add MethodImplAttributes.AggressiveOptimization (dotnet/coreclr#20274)

API review: https://github.com/dotnet/corefx/issues/32628

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

5 years agoUpdate BuildTools, CoreClr, CoreFx, CoreSetup, IbcData, PgoData to preview1-03316...
dotnet-maestro-bot [Sat, 20 Oct 2018 04:11:22 +0000 (21:11 -0700)]
Update BuildTools, CoreClr, CoreFx, CoreSetup, IbcData, PgoData to preview1-03316-04, preview1-27020-01, preview1-27018-01, preview1-27019-05, master-20181019-1034, master-20181019-1032, respectively (dotnet/coreclr#20376)

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

5 years agoLocal GC - Fix GCToOSInterface::GetPhysicalMemoryLimit (dotnet/coreclr#20495)
David Mason [Sat, 20 Oct 2018 00:41:25 +0000 (17:41 -0700)]
Local GC - Fix GCToOSInterface::GetPhysicalMemoryLimit (dotnet/coreclr#20495)

We weren't setting memStatus->dwLength so the call to GlobalMemoryStatusEx would fail and we would return 0. This caused the standalone GC to get in to a state where we wouldn't allocate more memory for the GC heap even if there was plenty available on the machine.

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

5 years agoAdd PInvoke/DateTime tests (dotnet/coreclr#19298)
Zeng Jiang [Fri, 19 Oct 2018 21:33:55 +0000 (05:33 +0800)]
Add PInvoke/DateTime tests (dotnet/coreclr#19298)

* Add PInvoke/DateTime tests

* Make DateTimeTest windows-only

* Update managed side to current infrastructure

* Link to OleAut32.

* Add missing target_link_libraries command.

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