platform/upstream/dotnet/runtime.git
5 years agoAdd new CoreFX exclusions.
Sergey Andreenko [Mon, 6 May 2019 16:12:07 +0000 (09:12 -0700)]
Add new CoreFX exclusions.

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

5 years agoFixes AV when accessing LoaderModule for some objects (dotnet/coreclr#24406)
Mukul Sabharwal [Mon, 6 May 2019 15:21:19 +0000 (08:21 -0700)]
Fixes AV when accessing LoaderModule for some objects (dotnet/coreclr#24406)

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

5 years agoNullable: System.Collections.Generic remainder (dotnet/coreclr#24340)
Krzysztof Wicher [Mon, 6 May 2019 13:50:18 +0000 (06:50 -0700)]
Nullable: System.Collections.Generic remainder (dotnet/coreclr#24340)

* Nullable: System.Collections.Generic remainder

* apply review feedback

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

5 years agoMove AsyncMethodBuilder.SetStateMachine to non-generic (dotnet/coreclr#24403)
Ben Adams [Sun, 5 May 2019 20:01:07 +0000 (21:01 +0100)]
Move AsyncMethodBuilder.SetStateMachine to non-generic (dotnet/coreclr#24403)

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

5 years agoReenable corefx tests (dotnet/coreclr#24157)
Steve MacLean [Sat, 4 May 2019 18:31:34 +0000 (14:31 -0400)]
Reenable corefx tests (dotnet/coreclr#24157)

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

5 years agoMinor tweaks for gcc (dotnet/coreclr#24391)
Adeel Mujahid [Sat, 4 May 2019 16:43:35 +0000 (19:43 +0300)]
Minor tweaks for gcc (dotnet/coreclr#24391)

* Fix a consistency check condition
Following error is reported by gcc 8 with debug configuration:

> error: enum constant in boolean context [-Werror=int-in-bool-context]

* Apply -Wno-register only to CXX flags
gcc 8 errors out like this:

```
[ 96%] Building C object src/ilasm/CMakeFiles/ilasm.dir/__/__/version.c.o
cc1: error: command line option -Wno-register is valid for C++/ObjC++ but not for C [-Werror]
cc1: all warnings being treated as errors
src/ilasm/CMakeFiles/ilasm.dir/build.make:254: recipe for target 'src/ilasm/CMakeFiles/ilasm.dir/__/__/version.c.o' failed
make[2]: *** [src/ilasm/CMakeFiles/ilasm.dir/__/__/version.c.o] Error 1
CMakeFiles/Makefile2:5710: recipe for target 'src/ilasm/CMakeFiles/ilasm.dir/all' failed
make[1]: *** [src/ilasm/CMakeFiles/ilasm.dir/all] Error 2
```

* Remove extra parantheses from variable declaration
gcc 8 reports:

> error: unnecessary parentheses in declaration of m_HashedModules [-Werror=parentheses]

* Use macro instead of const in C
gcc throws:

> error: variably modified collatorsPerOption at file scope
     UCollator* collatorsPerOption[CompareOptionsMask + 1];

* Cast to uintptr_t before (32-bit) DWORD
gcc error was:

> error: cast from LPCWSTR {aka const char16_t*} to DWORD {aka unsigned int} loses precision [-fpermissive]

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

5 years agoMerge pull request dotnet/coreclr#24392 from dotnet/revert-24363-GitHub_23199
Sergey Andreenko [Sat, 4 May 2019 09:08:38 +0000 (02:08 -0700)]
Merge pull request dotnet/coreclr#24392 from dotnet/revert-24363-GitHub_23199

Revert "Fix GCStress for multireg returns. "

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

5 years agoRevert "Fix GCStress for multireg returns. "
Sergey Andreenko [Sat, 4 May 2019 09:02:07 +0000 (02:02 -0700)]
Revert "Fix GCStress for multireg returns. "

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

5 years agoFix incorrect tier reported by SOS (dotnet/coreclr#24374)
Koundinya Veluri [Sat, 4 May 2019 05:35:03 +0000 (22:35 -0700)]
Fix incorrect tier reported by SOS (dotnet/coreclr#24374)

Fix incorrect tier reported by SOS

- The tier of the initial code version was being assumed to be 0
- Whether call counting is enabled for a method needed to be available to the DAC
- Some small renames / cleanup to simplify code

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

5 years agoFix CoreRT build breaks
Jan Kotas [Thu, 2 May 2019 20:07:24 +0000 (13:07 -0700)]
Fix CoreRT build breaks

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

5 years agoRe-enable EventSourceTrace test (dotnet/coreclr#24365)
Sung Yoon Whang [Sat, 4 May 2019 01:05:57 +0000 (18:05 -0700)]
Re-enable EventSourceTrace test (dotnet/coreclr#24365)

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

5 years agoUse our local-built instances of tools from Microsoft.DotNet.BuildTools.CoreClr inste...
Jeremy Koritzinsky [Sat, 4 May 2019 00:56:20 +0000 (17:56 -0700)]
Use our local-built instances of tools from Microsoft.DotNet.BuildTools.CoreClr instead of using the package. (dotnet/coreclr#24347)

* Use our local-built instances of tools from Microsoft.DotNet.BuildTools.CoreClr instead of using the package.

* Fix const-correctness in InjectResource.

* Build cross-arch native components before building native components for target arch.

* Build InjectResource and GenClrDebugResource for the host arch when cross-building and import the targets into the cross-build.

* install(EXPORT) in the directory where the target is created

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

5 years agoFix EventPipe initialization order
Andrew Au [Fri, 3 May 2019 22:44:06 +0000 (15:44 -0700)]
Fix EventPipe initialization order

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

5 years agoEnable CoreFX test filtering for CoreCLR PRs (dotnet/coreclr#24259)
David Mason [Fri, 3 May 2019 23:52:46 +0000 (16:52 -0700)]
Enable CoreFX test filtering for CoreCLR PRs (dotnet/coreclr#24259)

This change enables CoreFX tests for CoreCLR.

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

5 years agoDisable remaining Jenkins default-PR-triggered jobs
Russ Keldorph [Fri, 3 May 2019 16:46:28 +0000 (09:46 -0700)]
Disable remaining Jenkins default-PR-triggered jobs

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

5 years agoChange our DateTime marshalling tests to be culture-independent. (dotnet/coreclr...
Jeremy Koritzinsky [Fri, 3 May 2019 23:25:55 +0000 (16:25 -0700)]
Change our DateTime marshalling tests to be culture-independent. (dotnet/coreclr#24362)

Fixes dotnet/coreclr#24089

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

5 years agoMerge pull request dotnet/coreclr#24315 from dotnet/darc-master-c4cf8915-b4aa-4756...
William Godbe [Fri, 3 May 2019 21:53:24 +0000 (14:53 -0700)]
Merge pull request dotnet/coreclr#24315 from dotnet/darc-master-c4cf8915-b4aa-4756-a614-aa01a76fd5cb

[master] Update dependencies from dnceng/internal/dotnet-optimization

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

5 years agoNew options --sb / --isb for binary signature dump (dotnet/coreclr#24375)
Tomáš Rylek [Fri, 3 May 2019 21:15:25 +0000 (23:15 +0200)]
New options --sb / --isb for binary signature dump (dotnet/coreclr#24375)

Based on JanV's suggestion I have added two new options to R2RDump:

"--sb" (SignatureBinary) appends the binary signature representation
at the end of the parsed textual signature;

"--isb" (InlineSignatureBinary) inlines the signature bytes into
the parsed textual signature and makes it (somewhat) easy to correlate
the binary bytes with individual parts of the signature.

Thanks

Tomas

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

5 years agoMerge pull request dotnet/coreclr#24343 from briansull/add-hva-tests
Brian Sullivan [Fri, 3 May 2019 13:56:16 +0000 (06:56 -0700)]
Merge pull request dotnet/coreclr#24343 from briansull/add-hva-tests

Add two additional HVA tests:

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

5 years agoImplement String.IsAscii in shared CoreLib and use it for [Is]Normalize[d] for all...
Filip Navara [Fri, 3 May 2019 13:37:19 +0000 (15:37 +0200)]
Implement String.IsAscii in shared CoreLib and use it for [Is]Normalize[d] for all runtimes (dotnet/coreclr#24373)

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

5 years agoMerge pull request dotnet/coreclr#24363 from sandreenko/GitHub_23199
Sergey Andreenko [Fri, 3 May 2019 07:59:56 +0000 (00:59 -0700)]
Merge pull request dotnet/coreclr#24363 from sandreenko/GitHub_23199

Fix GCStress for multireg returns.

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

5 years agoUpdate the comment.
Sergey Andreenko [Fri, 3 May 2019 07:58:16 +0000 (00:58 -0700)]
Update the comment.

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

5 years agoVector.CopyTo / TryCopyTo should be readonly methods (dotnet/coreclr#24359)
Levi Broderick [Fri, 3 May 2019 06:09:56 +0000 (23:09 -0700)]
Vector.CopyTo / TryCopyTo should be readonly methods (dotnet/coreclr#24359)

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

5 years agoSystem.GC.AllocateUninitializedArray (dotnet/coreclr#24096)
Vladimir Sadov [Fri, 3 May 2019 05:16:31 +0000 (22:16 -0700)]
System.GC.AllocateUninitializedArray (dotnet/coreclr#24096)

* Do not expand to allocation_quantum in SOH when GC_ALLOC_ZEROING_OPTIONAL

* short-circuit short arrays to use `new T[size]`

* Clean syncblock of large-aligned objects on ARM32

* specialize single-dimensional path  AllocateSzArray

* Unit tests

* Some PR feedback. Made AllocateUninitializedArray not be trimmed away.

* PR feedback on gchelpers
- replaced use of multiple bool parameters with flags enum
- merged some methods with nearly identical implementation
- switched callers to use AllocateSzArray vs. AllocateArrayEx where appropriate.

* PR feedback. Removed X86 specific array/string allocation helpers.

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

5 years agoMerge pull request dotnet/coreclr#24339 from briansull/linux-creation-time
Brian Sullivan [Fri, 3 May 2019 01:07:46 +0000 (18:07 -0700)]
Merge pull request dotnet/coreclr#24339 from briansull/linux-creation-time

Fix the PAL implemention of GetProcessTimes  to write the creation time

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

5 years agoChanges from code review
Brian Sullivan [Fri, 3 May 2019 00:14:34 +0000 (17:14 -0700)]
Changes from code review

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

5 years agoMake sure we check the second buffer's creation date before we return
Andrew Au [Thu, 2 May 2019 18:06:52 +0000 (11:06 -0700)]
Make sure we check the second buffer's creation date before we return

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

5 years agoMake sure the thread running EventPipe::Disable is registered with the thread store...
Andrew Au [Thu, 2 May 2019 20:32:48 +0000 (13:32 -0700)]
Make sure the thread running EventPipe::Disable is registered with the thread store so that rundown events can be collected

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

5 years agoFix DoGcStress for multireg return with GC pointers.
Sergey Andreenko [Thu, 2 May 2019 22:45:08 +0000 (15:45 -0700)]
Fix DoGcStress for multireg return with GC pointers.

Note: we are overprotecting registers here, for example, we always protect 2 registers even if only one is returned. GCStress infrastructure should be able to tolerate extra registers. We have had such examples before (for example when returned a struct without pointers we protected the first reg anyway).

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

5 years agoIn the PAL GetProcessTimes implement lpCreationTime using the current time returned...
Brian Sullivan [Wed, 1 May 2019 17:45:39 +0000 (10:45 -0700)]
In the PAL GetProcessTimes implement lpCreationTime using the current time returned by gettimeofday
This allows IBC profile data to record a meaningful time of when the training scenario was run.
Made EPOCH_DIFF a defined constant
Change calcTime to be an unsigned 64-bit integer
Change constants to units of 100NS instead of NS to avoid division and integer overflows.
Use the defined constants SECS_TO_100NS and USECS_TO_100NS when performing time calculations
Don't add a space after the Assembly arg when argc is zero

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

5 years agoAdd a repro test.
Sergey Andreenko [Thu, 2 May 2019 22:05:40 +0000 (15:05 -0700)]
Add a repro test.

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

5 years agoWhen QuickJit is enabled, disable it for methods that contain loops by default (dotne...
Koundinya Veluri [Thu, 2 May 2019 20:48:13 +0000 (13:48 -0700)]
When QuickJit is enabled, disable it for methods that contain loops by default (dotnet/coreclr#24252)

When QuickJit is enabled, disable it for methods that contain loops by default

Fixes https://github.com/dotnet/coreclr/issues/19751 by default when QuickJit is enabled
- Added config variable TC_QuickJitForLoops. When disabled (the default), the JIT identifies loops and explicit tail calls and switches to tier 1 JIT.
- This would prevent the possibility of spending too long in QuickJit code, but may decrease startup time a bit when QuickJit is enabled
- Removed TC_StartupTier_OptimizeCode, as now that there is TC_QuickJit, I didn't see a good use for it
- Removed references to "StartupTier" in config variables because we had previously decided not to call it that.
- When QuickJit is disabled, avoid creating native code slots for methods in non-R2R'ed modules, as tiering would be disabled for those anyway
- Marked TC_QuickJit config var as external

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

5 years agoAdd Series/CounterType to CounterPayload and IncrementingCounterPayload (dotnet/corec...
Sung Yoon Whang [Thu, 2 May 2019 19:34:39 +0000 (12:34 -0700)]
Add Series/CounterType to CounterPayload and IncrementingCounterPayload (dotnet/coreclr#24349)

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

5 years agoMerge pull request dotnet/coreclr#24332 from janvorli/fix-module-override
Jan Vorlicek [Thu, 2 May 2019 19:16:25 +0000 (21:16 +0200)]
Merge pull request dotnet/coreclr#24332 from janvorli/fix-module-override

Fix module override effect on method instantiating signature

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

5 years agoAdd using System.Diagnostics on some files
Krzysztof Wicher [Wed, 1 May 2019 20:29:33 +0000 (13:29 -0700)]
Add using System.Diagnostics on some files

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

5 years agoDelete stale compilation constants from AsyncIteratorMethodBuilder (dotnet/coreclr...
Stephen Toub [Wed, 1 May 2019 17:52:38 +0000 (13:52 -0400)]
Delete stale compilation constants from AsyncIteratorMethodBuilder (dotnet/coreclr#37331)

I accidentally left these MICROSOFT_BCL_ASYNCINTERFACES_PACKAGE references in as part of some recent churn.  This compilation constant isn't set anywhere.

And the CORERT ifdef is no longer needed now that we've consolidated the code to shared.

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

5 years agoAdd ManualResetValueTaskSourceCore / AsyncIterateMethodBuilder to Microsoft.Bcl.Async...
Stephen Toub [Wed, 1 May 2019 15:57:35 +0000 (11:57 -0400)]
Add ManualResetValueTaskSourceCore / AsyncIterateMethodBuilder to Microsoft.Bcl.AsyncInterfaces (dotnet/coreclr#37320)

* Add ManualResetValueTaskSourceCore / AsyncIterateMethodBuilder to Microsoft.Bcl.AsyncInterfaces

These two types needed modifications to target .NET Standard 2.0 and are the necessary pieces to enable the compiler to compile async iterators.

- Copied ManualResetValueTaskSourceCore.cs from coreclr and tweaked it.  I opted to do this rather than ifdef because the changes are not localized and I didn't want to significantly perturb the primary implementation.
- Added a few ifdefs to the shared AsyncIteratorMethodBuilder.  It already had ifdefs, so I just added to it.
- Added a test project, and included the existing ManualResetValueTaskSourceCore tests.  I had to disable two of the tests because of some of the optimization differences.
- Augmented those tests to validate that the compiler is able to successfully generate iterators and await foreach them.

* Address PR feedback

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

5 years agoAdding more coverage for the AES hwintrinsic tests. (dotnet/coreclr#24335)
Tanner Gooding [Thu, 2 May 2019 18:15:49 +0000 (11:15 -0700)]
Adding more coverage for the AES hwintrinsic tests. (dotnet/coreclr#24335)

* Updating the AES tests to cover all current scenarios

* Regenerating the AES HWIntrinsic tests from the updated templates.

* Fixing a couple of typos in the Aes*OpTest.templates

* Modifying CodeGen::inst_RV_TT_IV to no longer assert when memIndir is nullptr

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

5 years agoRe-enable all com crossgen testing (dotnet/coreclr#24348)
David Wrighton [Thu, 2 May 2019 17:53:59 +0000 (10:53 -0700)]
Re-enable all com crossgen testing (dotnet/coreclr#24348)

- COM testing with crossgen was disabled due to lack of manifest support in crossgen

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

5 years agoUpdate CoreClr to preview6-27702-71 (dotnet/coreclr#24353)
dotnet-maestro-bot [Thu, 2 May 2019 17:41:32 +0000 (10:41 -0700)]
Update CoreClr to preview6-27702-71 (dotnet/coreclr#24353)

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

5 years agoImplement GC.RegisterMemoryLoadChangeNotification (dotnet/coreclr#24202)
Ludovic Henry [Thu, 2 May 2019 14:39:19 +0000 (07:39 -0700)]
Implement GC.RegisterMemoryLoadChangeNotification (dotnet/coreclr#24202)

* Implement GC.RegisterMemoryLoadChangeNotification

This allows users to register a callback to be called whenever the
memory load is between a low and high thresholds. The idea is to allow
them to tweak their memory usage based on the available memory.

It is only internal for now because we are not confident on the shape of
the API and if it's the best we can provide users. This needs to go
through a few iterations with first party users like ASP.NET or corefx.

WIP for https://github.com/dotnet/coreclr/issues/18619

* fixup! Implement GC.RegisterMemoryLoadChangeNotification

* fixup! Implement GC.RegisterMemoryLoadChangeNotification

* fixup! Implement GC.RegisterMemoryLoadChangeNotification

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

5 years agoBug fix in R2RDump signature decoder w.r.t. large version bubbles (dotnet/coreclr...
Tomáš Rylek [Thu, 2 May 2019 13:23:08 +0000 (15:23 +0200)]
Bug fix in R2RDump signature decoder w.r.t. large version bubbles (dotnet/coreclr#24352)

JanV discovered a complex signature where the generic type argument
got decoded in an incorrect module context by R2RDump. Investigating
the issue I found out that the problem was caused by my slight
misunderstanding - all module override indices within a signature
are relative to the global signature context module, not to the current
context module that may change during descent into the signature tree.

Thanks

Tomas

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

5 years agoMerge pull request dotnet/coreclr#24322 from am11/libunwind-format-specifier
Jan Vorlicek [Thu, 2 May 2019 09:12:10 +0000 (11:12 +0200)]
Merge pull request dotnet/coreclr#24322 from am11/libunwind-format-specifier

Unify Wformat suppression for libunwind

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

5 years agoAdd threading-related runtime counters (dotnet/coreclr#24304)
Sung Yoon Whang [Thu, 2 May 2019 06:47:04 +0000 (23:47 -0700)]
Add threading-related runtime counters (dotnet/coreclr#24304)

* Add threadpool/contention counters

* fix build error

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

5 years agoAdjust some terms (dotnet/coreclr#24351)
Dan Moseley [Thu, 2 May 2019 05:49:50 +0000 (22:49 -0700)]
Adjust some terms (dotnet/coreclr#24351)

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

5 years agoUnify Wformat suppression for libunwind
Adeel [Thu, 2 May 2019 04:56:20 +0000 (04:56 +0000)]
Unify Wformat suppression for libunwind

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

5 years agoNullable: Interop and src/System remainder (dotnet/coreclr#24328)
Krzysztof Wicher [Thu, 2 May 2019 04:21:29 +0000 (21:21 -0700)]
Nullable: Interop and src/System remainder (dotnet/coreclr#24328)

* Nullable: Interop and src/System remainder

* apply feedback

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

5 years agoNullable: System.Collections remainder (non-generic) (dotnet/coreclr#24326)
Krzysztof Wicher [Thu, 2 May 2019 04:20:50 +0000 (21:20 -0700)]
Nullable: System.Collections remainder (non-generic) (dotnet/coreclr#24326)

* Nullable: System.Collections remainder (non-generic)

* apply feedback

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

5 years agoUpdate CoreClr to preview6-27701-72 (dotnet/coreclr#24329)
dotnet-maestro-bot [Thu, 2 May 2019 04:20:28 +0000 (21:20 -0700)]
Update CoreClr to preview6-27701-72 (dotnet/coreclr#24329)

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

5 years agoAdded overloads to Path.Join (dotnet/coreclr#24307)
Blake Hensley [Thu, 2 May 2019 04:07:07 +0000 (21:07 -0700)]
Added overloads to Path.Join (dotnet/coreclr#24307)

* Added overloads to Path.Join

* Refactor Path.Join and Path.Combine to use ValueStringBuilder

* Use proper defined const for empty string

* Fix Windows-specific const

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

5 years agoAddressing code review feedbacks
Andrew Au [Thu, 2 May 2019 01:31:14 +0000 (18:31 -0700)]
Addressing code review feedbacks

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

5 years agoSimplifying Pop() logic
Andrew Au [Thu, 2 May 2019 01:21:48 +0000 (18:21 -0700)]
Simplifying Pop() logic

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

5 years agoRemove the RundownThread filter
Andrew Au [Wed, 1 May 2019 00:12:12 +0000 (17:12 -0700)]
Remove the RundownThread filter

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

5 years agoAvoid nested spin lock in WriteAllBuffersToFile and GetNextEvent
Andrew Au [Mon, 29 Apr 2019 20:50:58 +0000 (13:50 -0700)]
Avoid nested spin lock in WriteAllBuffersToFile and GetNextEvent

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

5 years agoPulling in Noah's fix in event_pipe_lock_fix branch
Sung Yoon Whang [Wed, 24 Apr 2019 22:09:00 +0000 (15:09 -0700)]
Pulling in Noah's fix in event_pipe_lock_fix branch

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

5 years agoUpdate issues.targets and reduce test execution time. (dotnet/coreclr#24345)
Fadi Hanna [Thu, 2 May 2019 00:49:28 +0000 (17:49 -0700)]
Update issues.targets and reduce test execution time. (dotnet/coreclr#24345)

* Update issues.targets and reduce test execution time.

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

5 years agoWhen large pages are enabled, only reserve/commit 1x seg size for LOH (dotnet/coreclr...
Andy Hanson [Wed, 1 May 2019 23:36:57 +0000 (16:36 -0700)]
When large pages are enabled, only reserve/commit 1x seg size for LOH (dotnet/coreclr#24320)

When large pages are enabled, we must commit everything we reserve.
Previously we reserved 2x the segment size for LOH. This is a problem
with large pages where we must commit everything we reserve.

Thanks to https://github.com/dotnet/coreclr/pull/24081 this does not
cause performance regression with large pages; but without large pages
we were seeing regressions when the loh_seg_size was reduced. So this
change will only take effect when large pages are enabled.

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

5 years agoCopy all win32 resources (dotnet/coreclr#24308)
David Wrighton [Wed, 1 May 2019 22:29:34 +0000 (15:29 -0700)]
Copy all win32 resources (dotnet/coreclr#24308)

- Add crossgen test to verify file version is preserved
- Add support for general win32 resource copying to ReadyToRun
  - Copy all resources

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

5 years agoMove the new ConfigureAwait/WithCancellation extension methods to a new type (dotnet...
Stephen Toub [Wed, 1 May 2019 20:54:40 +0000 (16:54 -0400)]
Move the new ConfigureAwait/WithCancellation extension methods to a new type (dotnet/coreclr#24331)

We decided after all to put these on a different type, TaskAsyncEnumerableExtensions.  This commit adds the new type.  We can delete the methods in the old location once corefx consumes an updated build and switches over to using the new ones.

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

5 years agoAdd two additional HVA tests:
Brian Sullivan [Wed, 1 May 2019 20:51:32 +0000 (13:51 -0700)]
Add two additional HVA tests:

VectorMgdMgdStatic.cs  - Tests where we are passing and using a HVA that is stored in a static
VectorMgdMgdArray.cs   - Tests where we are passing and using a HVA that is stored in an array

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

5 years agoDisable CallbackStressTest everywhere.
Russ Keldorph [Wed, 1 May 2019 12:41:00 +0000 (05:41 -0700)]
Disable CallbackStressTest everywhere.

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

5 years agoUpdating lookupNamedIntrinsic to no longer assert for an unexpected hwintrinsic metho...
Tanner Gooding [Wed, 1 May 2019 02:00:44 +0000 (19:00 -0700)]
Updating lookupNamedIntrinsic to no longer assert for an unexpected hwintrinsic method. (dotnet/coreclr#24327)

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

5 years agoFix module override effect on method instantiating signature
Jan Vorlicek [Wed, 1 May 2019 01:22:03 +0000 (03:22 +0200)]
Fix module override effect on method instantiating signature

When a module override is placed on a fixup blob top level, it also
affects types in the method instantiating signature. This can cause
tokens in the signature to be resolved in a wrong module.

This change fixes it by adding module zapsig elements before each
argument of the method's instantiating signature.

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

5 years agoMerge pull request dotnet/coreclr#24258 from dotnet/NullableFeature
Santiago Fernandez Madero [Tue, 30 Apr 2019 22:01:45 +0000 (15:01 -0700)]
Merge pull request dotnet/coreclr#24258 from dotnet/NullableFeature

Merge nullable feature into master

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

5 years agoChanging comments/names that refers to file switching to flushing instead
Andrew Au [Tue, 30 Apr 2019 18:31:29 +0000 (11:31 -0700)]
Changing comments/names that refers to file switching to flushing instead

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

5 years agoSupport for larger version bubbles in R2RDump (dotnet/coreclr#24277)
Tomáš Rylek [Tue, 30 Apr 2019 21:16:46 +0000 (23:16 +0200)]
Support for larger version bubbles in R2RDump (dotnet/coreclr#24277)

After JanV fixed basically all test failures related to larger
version bubbles originally implemented by Andon, it's high time
to fix R2RDump for its support as a prerequisite to enabling
larger version bubbles in CPAOT. This change implements this
support via the following particular changes:

1) In DumpOptions, I added a list of explicit assembly references,
another list of reference paths that are used for resolving
assembly references, a cache for repeated assembly lookups and
a new method FindAssembly for file resolution of a given simple
assembly name.

2) I have moved ECMA metadata-related logic from R2RReader to
its new base class EcmaMetadataReader. This class can represent
both R2R and MSIL binaries and adds the logic for reference
assembly lookup.

3) Large version bubble R2R PE exe's contain a special R2R header
table READYTORUN_SECTION_MANIFEST_METADATA that contains ECMA
metadata with a list of extra AssemblyRef's on top of those stored
in the original MSIL. I have added support for parsing this table
to the R2RReader constructor.

4) I have modified R2RSignature to be based off the new
EcmaMetadataReader instead of R2RReader which cannot represent
arbitrary reference assemblies. I have patched the two places
dealing with module overrides to use the new logic to temporarily
switch to a "remote module" SignatureDecoder for the purpose
of parsing an external entity.

5) I have removed temporary hacks Andon put in place to keep
R2RDump alive in some cases with larger version bubbles without
proper support for parsing module overrides.

6) I have added logic for dumping the contents of the manifest
metadata along with the standard AssemblyRef table to the
header dump as I fought with recalculation of the indices
when debugging larger version bubble code for quite some time.

7) As an extra half-forgotten bit from the past I added dumping
of unboxing and instantiation stubs.

I have noticed that the MSIL AssemblyRef count was off by one.
I have also found out that XML output has bitrotten over time.
This additional delta fixes both issues. [That forced me to
add a bunch of empty ctors even though in practice we don't
actually serialize anything into the dumper, we only use
the XML serializer to emit the XML output file.

Thanks

Tomas

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

5 years agoCompute sizeof array instead of pointer (dotnet/coreclr#24288)
Adeel Mujahid [Tue, 30 Apr 2019 19:35:34 +0000 (22:35 +0300)]
Compute sizeof array instead of pointer (dotnet/coreclr#24288)

* Compute sizeof array instead of pointer

* Consolidate element count in dumpStack

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

5 years agoMake block optimized ClearWithoutReferences fully shared (dotnet/coreclr#24312)
Marek Safar [Tue, 30 Apr 2019 18:45:50 +0000 (20:45 +0200)]
Make block optimized ClearWithoutReferences fully shared (dotnet/coreclr#24312)

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

5 years agoUpdate BuildTools, CoreClr to preview4-03930-01, preview6-27630-77, respectively...
dotnet-maestro-bot [Tue, 30 Apr 2019 18:39:13 +0000 (11:39 -0700)]
Update BuildTools, CoreClr to preview4-03930-01, preview6-27630-77, respectively (dotnet/coreclr#24316)

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

5 years agoRemove FreeLibrary call to unload CoreCLR (dotnet/coreclr#24317)
Next Turn [Tue, 30 Apr 2019 18:38:18 +0000 (02:38 +0800)]
Remove FreeLibrary call to unload CoreCLR (dotnet/coreclr#24317)

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

5 years agoMerge master into NullableFeature
Buyaa Namnan [Tue, 30 Apr 2019 17:37:21 +0000 (10:37 -0700)]
Merge master into NullableFeature

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

5 years agoFix test failures
Buyaa Namnan [Mon, 29 Apr 2019 04:43:09 +0000 (21:43 -0700)]
Fix test failures

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

5 years agofix build errors after merge
Krzysztof Wicher [Thu, 25 Apr 2019 23:50:53 +0000 (16:50 -0700)]
fix build errors after merge

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

5 years agoDisable CallbackStressTest against dotnet/coreclr#24305
Russ Keldorph [Mon, 29 Apr 2019 23:33:48 +0000 (16:33 -0700)]
Disable CallbackStressTest against dotnet/coreclr#24305

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

5 years agoAdd more asserts for the EventPipeBufferManager consumers
Andrew Au [Tue, 30 Apr 2019 06:23:22 +0000 (23:23 -0700)]
Add more asserts for the EventPipeBufferManager consumers

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

5 years agoUpdating System.Numerics.Vector<T> to use the readonly members feature. (dotnet/corec...
Tanner Gooding [Tue, 30 Apr 2019 10:42:07 +0000 (03:42 -0700)]
Updating System.Numerics.Vector<T> to use the readonly members feature. (dotnet/coreclr#23827)

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

5 years agoAdd more span-based Vector<T> ctors and CopyTo methods (dotnet/coreclr#23333)
Levi Broderick [Tue, 30 Apr 2019 04:37:58 +0000 (21:37 -0700)]
Add more span-based Vector<T> ctors and CopyTo methods (dotnet/coreclr#23333)

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

5 years agoMove DefaultBinder.CanConvert.cs to shared (dotnet/coreclr#23931)
Egor Bogatov [Tue, 30 Apr 2019 02:21:04 +0000 (05:21 +0300)]
Move DefaultBinder.CanConvert.cs to shared (dotnet/coreclr#23931)

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

5 years agoMove NativeLibrary to the shared partition (dotnet/coreclr#24143)
Michal Strehovský [Tue, 30 Apr 2019 02:16:10 +0000 (04:16 +0200)]
Move NativeLibrary to the shared partition (dotnet/coreclr#24143)

I'm taking the LibraryNameVariation helper from System.Runtime.Loader for the ride as well because it's a general purpose probing logic that is useful in a managed implementation of NativeLibrary.

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

5 years agoUpdate CoreClr to preview6-27629-72
dotnet-maestro-bot [Mon, 29 Apr 2019 21:37:20 +0000 (14:37 -0700)]
Update CoreClr to preview6-27629-72

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

5 years agoFix GetObjectReferences API when caller doesn't zero the param (dotnet/coreclr#24299)
Mukul Sabharwal [Tue, 30 Apr 2019 00:42:13 +0000 (17:42 -0700)]
Fix GetObjectReferences API when caller doesn't zero the param (dotnet/coreclr#24299)

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

5 years agoImprove pref of `Array.IndexOf()` for certain `T`. (dotnet/coreclr#24293)
dschinde [Tue, 30 Apr 2019 00:38:49 +0000 (19:38 -0500)]
Improve pref of `Array.IndexOf()` for certain `T`. (dotnet/coreclr#24293)

Applies changes to `Array.IndexOf()` and `Array.LastIndexOf()` similar
to the changes made in dotnet/coreclr#20855, so that types other than `byte` and
`char` can use use the fast vectorized path.

Also allows 32-bit and 64-bit types for which
`RuntimeHelpers.IsBitwiseEquatable<T>()` returns `true` to use the
faster implementation of `IndexOf` and `LastIndexOf` from
`MemoryExtensions`.

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

5 years agoWorkaround memset alignment sensitivity (dotnet/coreclr#24302)
Jan Kotas [Tue, 30 Apr 2019 00:38:04 +0000 (17:38 -0700)]
Workaround memset alignment sensitivity (dotnet/coreclr#24302)

* Workaround memset alignment sensitivity

memset is up to 2x slower on misaligned block on some types of hardware. The problem is uneven performance of "rep stosb"
used to implement the memset in some cases. The exact matrix on when it is slower and by how much is very complex.

This change workarounds the issue by aligning the memory block before it is passed to memset and filling in the potential misaligned
part manually. This workaround will regress performance by a few percent (<10%) in some cases, but we will gain up to 2x improvement
in other cases.

Fixes dotnet/coreclr#24300

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

5 years agoResolves an assert around Sse41.ConvertToVector128Int* and Avx2.ConvertToVector256Int...
Tanner Gooding [Mon, 29 Apr 2019 21:39:19 +0000 (14:39 -0700)]
Resolves an assert around Sse41.ConvertToVector128Int* and Avx2.ConvertToVector256Int* (dotnet/coreclr#24289)

* Adding tests for the overloads of Sse41.ConvertToVector128Int* and Avx2.ConvertToVector256Int* that take a pointer

* Fixing the handling of Sse41.ConvertToVector128* and Avx2.ConvertToVector256*

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

5 years agoMerge pull request dotnet/coreclr#24283 from briansull/ibc-linux-new
Brian Sullivan [Mon, 29 Apr 2019 21:15:31 +0000 (14:15 -0700)]
Merge pull request dotnet/coreclr#24283 from briansull/ibc-linux-new

Updated fixes for IBC profile data on Linux

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

5 years agoImprove Precision to 10 microseconds in timespan (dotnet/coreclr#24279)
Anirudh Agnihotry [Mon, 29 Apr 2019 20:56:48 +0000 (13:56 -0700)]
Improve Precision to 10 microseconds in timespan (dotnet/coreclr#24279)

* Increasing precision properly and leaving the rounding of to casting operator

* disabling corefx tests in coreclr and addressing feedback

* correcting test project name

* Fix json

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

5 years agoFix Satellite Assembly loading (dotnet/coreclr#24191)
Steve MacLean [Mon, 29 Apr 2019 19:37:28 +0000 (15:37 -0400)]
Fix Satellite Assembly loading (dotnet/coreclr#24191)

* Fix Satellite Assembly loading

When loading satellite assemblies, we should probe next to the parent
assembly and load into the same AssemblyLoadContext as the parent
assembly.

Disable fallback probing for satellite assemblies.

Add AssemblyLoadContext.Resolving handler to probe for satellite
assemblies next to parent

Fixes dotnet/coreclr#20979

* Call ResolveSatelliteAssembly from native

Only call ResolveSatelliteAssembly from native when
resolving a satellite assembly

* PR Feedback

Minimize string creation
Remove unnecessary if null checks
Eliminate corner cases by only allowing one case insensitive matching directory.

* ResolveSatelliteAssembly should ...

ResolveSatelliteAssembly should always be called on the ALC which loaded parentAssembly

Simplify code.
Add Debug.Assert

* Remove case insensitive culture search

* PR Feedback

* Fix parentAssembly logic

* Fixes from initial testing

* Add probe for lower case culture name

* PR feedback

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

5 years agoMerge pull request dotnet/coreclr#24282 from erozenfeld/Fix24253
Eugene Rozenfeld [Mon, 29 Apr 2019 19:09:07 +0000 (12:09 -0700)]
Merge pull request dotnet/coreclr#24282 from erozenfeld/Fix24253

 Fix for a jit liveness bug.

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

5 years agoRemoved method ReleaseManagedCommandLine()
Brian Sullivan [Mon, 29 Apr 2019 16:43:03 +0000 (09:43 -0700)]
Removed method ReleaseManagedCommandLine()
jkotas - We are intentionally not doing any cleanup that is just releasing memory.
We depend on the OS to take care of releasing the memory.

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

5 years agoRestore IBCMerge using an authenticated service connection (dotnet/coreclr#24284)
Jeremy Koritzinsky [Mon, 29 Apr 2019 16:27:10 +0000 (09:27 -0700)]
Restore IBCMerge using an authenticated service connection (dotnet/coreclr#24284)

* Add separate build steps to do the IBCMerge restore.

* Attempt 1 to get config picked up.

* Attempt 2 getting ibcmerge restore working.

* Fix invalid MSBuild syntax.

* Fix getting IBC package version.

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

5 years agoFix running JitBench on Linux (dotnet/coreclr#24248)
Ludovic Henry [Mon, 29 Apr 2019 14:45:43 +0000 (07:45 -0700)]
Fix running JitBench on Linux (dotnet/coreclr#24248)

* Fix running JitBench on Linux

* Bump to head of aspnet/JitBench:rel/2.0.0

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

5 years agoAdd missing check for UTF-16 low surrogate char at start of buffer (dotnet/coreclr...
Levi Broderick [Sat, 27 Apr 2019 21:21:08 +0000 (14:21 -0700)]
Add missing check for UTF-16 low surrogate char at start of buffer (dotnet/coreclr#24286)

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

5 years agoMerge pull request dotnet/coreclr#24261 from sandreenko/fixRegressionCoreFXx86
Sergey Andreenko [Sat, 27 Apr 2019 20:01:09 +0000 (13:01 -0700)]
Merge pull request dotnet/coreclr#24261 from sandreenko/fixRegressionCoreFXx86

Fix optAssertionProp_Update.

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

5 years agoNullable: Comparers, Dictionary and Friends (dotnet/coreclr#23971)
Santiago Fernandez Madero [Thu, 25 Apr 2019 23:12:35 +0000 (16:12 -0700)]
Nullable: Comparers, Dictionary and Friends (dotnet/coreclr#23971)

* Nullable: Comparers, Dictionary and Friends

* Add object constraint to Dictionary

* Fix warning from new compiler and annotating dictionary

* PR Feedback

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

5 years agoNullable for Type class (dotnet/coreclr#23489)
buyaa-n [Thu, 25 Apr 2019 23:08:26 +0000 (16:08 -0700)]
Nullable for Type class (dotnet/coreclr#23489)

System.Type, System.Reflection nullability

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

5 years agoNullable: System.Diagnostics.Tracing (dotnet/coreclr#24070)
Krzysztof Wicher [Fri, 19 Apr 2019 13:15:52 +0000 (06:15 -0700)]
Nullable: System.Diagnostics.Tracing (dotnet/coreclr#24070)

* Nullable: System.Diagnostics.Tracing

* apply feedback

* fix one more comment

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

5 years agoFix CoreLib build breaks
Jan Kotas [Sat, 27 Apr 2019 03:52:48 +0000 (20:52 -0700)]
Fix CoreLib build breaks

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

5 years agoAdd System.Resources.Extensions (dotnet/corefxdotnet/coreclr#36906)
Eric StJohn [Fri, 26 Apr 2019 05:05:19 +0000 (22:05 -0700)]
Add System.Resources.Extensions (dotnet/corefxdotnet/coreclr#36906)

* Add System.Resources.Binary.Reader|Writer

* Fix ResourceWriter tests

* Test fixes and PR feedback

* More test fixes

* Add packages for System.Resources.Binary.*

* Suppress duplicate types in System.Resources.Binary.*

* Test refactoring and adding RuntimeResourceSet

It turns out me must have our own ResourceSet since the CoreLib resource set doesn't
expose a constructor that takes an IResourceReader.

I've shared the code since it does a bit of non-trivial caching.

* Don't use auto-property initializers for platfrom sensitive test data

For some reason I thought these lazy-initialized the properties but they don't.

As a result we were hitting the platform sensitive code even when we never
called the getter.  Switch to an expression instead.

* Only use Drawing converters on Windows

* Fix test failures

* Don't leak System.Private.CoreLib into resources

* Make sure RuntimeResourceSet doesn't call ResourceReader(IResourceReader)

* WIP

* Rename types in System.Resources.Extensions

Leave RuntimeResourceSet internal as it doesn't need to be public.

* Update packages

* Respond to API review feedback

Remove abstraction for ResourceReader/Writer: just reuse the source.

Remove non-essential members.

* Clean up

* Further cleanup

* Further cleanup

* Review feedback

* Ensure we have stable type names in Resources.Extensions

We don't want to use the runtime type identity when doing type checks or writing
types as this may change.  Instead, check-in hard-coded strings that match the
type identity.

Add a test case to ensure the resources we generate match what we
test the reader against in the resource manager case (also to track any
change to the binary format).

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

5 years agoSwitch to non-Int Azure pool providers
Russ Keldorph [Fri, 26 Apr 2019 13:36:31 +0000 (06:36 -0700)]
Switch to non-Int Azure pool providers

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

5 years agoTypos (dotnet/coreclr#24280)
John Doe [Sat, 27 Apr 2019 02:45:22 +0000 (19:45 -0700)]
Typos (dotnet/coreclr#24280)

* thier -> their

* exeption -> exception

* Estbalisher -> Establisher

* neeed -> need

* neeed -> need

* neeeded -> needed

* neeeded -> needed

* facilitiate -> facilitate

* extremly -> extremely

* extry -> extra

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