Sergey Andreenko [Wed, 8 May 2019 16:19:11 +0000 (09:19 -0700)]
Merge pull request dotnet/coreclr#24447 from sandreenko/addGCStressExtraJobs
Add GCStress extra jobs.
Commit migrated from https://github.com/dotnet/coreclr/commit/
b9c38dcd2758a0fde04976024353865c6dbdf7f8
Andrew Au [Wed, 8 May 2019 00:23:42 +0000 (17:23 -0700)]
Handle the case when the SamplingProfiler thread is terminated prematurely
Commit migrated from https://github.com/dotnet/coreclr/commit/
624d9b8efb1267ba8c3ed5d82a4ee48ad04e42b2
Mike McLaughlin [Wed, 8 May 2019 07:46:51 +0000 (00:46 -0700)]
Add generate crash dump command to diagnostics server (dotnet/coreclr#24460)
Add the DiagnosticProtocolHelper class to deserialize and dispatch
the new GenerateCoreDump command.
Refactor the PAL createdump launch on unhandled exception code to
used by a new PAL_GenerateCoreDump method that doesn't depend on
the complus dump environment variables.
Changed the "full" createdump not to include the uncommitted pages and
removed the "add module metadata" workaround for SOS clrstack !UNKNOWN
problem now that is fixed in SOS (crashinfo.cpp).
Commit migrated from https://github.com/dotnet/coreclr/commit/
794f2f89399026246562181bc999a5027fb6583d
Sergey Andreenko [Wed, 8 May 2019 04:22:55 +0000 (21:22 -0700)]
Merge pull request dotnet/coreclr#24463 from sandreenko/ExcludeMethodImpl
Exclude MethodImplOptionsTests.
Commit migrated from https://github.com/dotnet/coreclr/commit/
653e25ec4780cfb7132dcb55bda20dbcc9c2a027
Sergey Andreenko [Wed, 8 May 2019 01:09:27 +0000 (18:09 -0700)]
Exclude MethodImplOptionsTests.
Exclude the test because the fix is postponed.
Commit migrated from https://github.com/dotnet/coreclr/commit/
7f976a692bdaf4994e44f1befe6884626922958e
Bruce Forstall [Tue, 7 May 2019 23:23:34 +0000 (16:23 -0700)]
Merge pull request dotnet/coreclr#24444 from BruceForstall/FixGenerateLayoutArgPassing
Fix build.cmd passing of args to runtest.cmd
Commit migrated from https://github.com/dotnet/coreclr/commit/
2e32f3b92f3a17b5821673babaa6883deb5ab209
Tarek Mahmoud Sayed [Tue, 7 May 2019 22:35:46 +0000 (15:35 -0700)]
Make Idn.GetAscii compatible with Windows (dotnet/coreclr#24443)
GetAscii on Windows ignore if the uri has hyphens in the third and fourth places. We relaxing this on Linux too for the sake of the consistent behavior. This issue was causing some problems with the http stack.
Commit migrated from https://github.com/dotnet/coreclr/commit/
8b6a69e71d36c26e378460c4e586593efe0b13da
Tanner Gooding [Tue, 7 May 2019 20:18:16 +0000 (13:18 -0700)]
Fixing up time.cpp in the PAL (dotnet/coreclr#24428)
* Fixing up time.cpp in the PAL
* Fixing GetTickCount64 in the PAL to continue using CLOCK_MONOTONIC_COARSE where available
* Reverting QueryPerformanceFrequency in the PAL to return tccSecondsToNanoSeconds for CLOCK_MONOTONIC
* Removing two unused variables from GetTickCount64 in the PAL
* Updating the PAL to error if neither mach_absolute_time nor clock_gettime(CLOCK_MONOTONIC) are supported.
* Fixing the PAL configure.cmake to link rt where applicable
Commit migrated from https://github.com/dotnet/coreclr/commit/
bd7f8e7435b8cba0cca3a198f15fdc2e4764c2fc
Sergey Andreenko [Tue, 7 May 2019 19:11:23 +0000 (12:11 -0700)]
Fix typo.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1829a41efee22f720a3bb8264a8d42bd4cb61f88
Bruce Forstall [Tue, 7 May 2019 18:06:28 +0000 (11:06 -0700)]
Fix build.cmd passing of args to runtest.cmd
If you use the `generatelayout` argument to build.cmd, it passes
all "unprocessed" arguments directly on to msbuild. To accomplish
the same this with runtest.cmd, you must use the "msbuildargs"
argument, or else the arg will be treated as a `CORE_ROOT` argument.
(This seems like a bad design, but that's a separate issue.)
E.g., I always pass `/consoleloggerparameters:ForceNoAlign`, and want
that passed on to runtest.cmd. (This should also be the default, but
once again, that's a separate issue.)
Commit migrated from https://github.com/dotnet/coreclr/commit/
935d2fa6e6e785412678c5b389e69d6cdec4c275
Sergey Andreenko [Tue, 7 May 2019 17:55:51 +0000 (10:55 -0700)]
Add GCStress extra jobs.
Contributes to dotnet/coreclr#24358.
Commit migrated from https://github.com/dotnet/coreclr/commit/
40499c93b71a10de9b40f281e23758cc5291cebf
Sergey Andreenko [Tue, 7 May 2019 17:35:29 +0000 (10:35 -0700)]
Merge pull request dotnet/coreclr#23587 from BrianBohe/brbohe/moving_variableLiveRange
Moving VariableLiveRanges classes outside Compiler class
Commit migrated from https://github.com/dotnet/coreclr/commit/
941c86758560720f03cdf5b562273095ca845678
Sergey Andreenko [Tue, 7 May 2019 04:49:20 +0000 (21:49 -0700)]
Merge pull request dotnet/coreclr#24421 from sandreenko/AddZapDisableTailCallStresss
Add ZapDisable and TailCallStress ADO testing.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c2e71fd5e711ca150e238741015a1a0229606793
Mukul Sabharwal [Tue, 7 May 2019 03:53:14 +0000 (20:53 -0700)]
Add option to only notify profiler of LOH allocations (dotnet/coreclr#24291)
Commit migrated from https://github.com/dotnet/coreclr/commit/
633b20c3de5a030dd4629d6fa35c516f8560d816
Anirudh Agnihotry [Tue, 7 May 2019 03:31:35 +0000 (20:31 -0700)]
making DiagnosticCounter internal (dotnet/coreclr#24427)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e05a7fde46e9acb76dc5b45831b43c4b02e453f3
Sergey Andreenko [Mon, 6 May 2019 23:39:22 +0000 (16:39 -0700)]
Merge pull request dotnet/coreclr#24415 from sandreenko/corefxAddExclsusions
Add new CoreFX exclusions.
Commit migrated from https://github.com/dotnet/coreclr/commit/
0da5a908c71ad9f4a03dd14db98747d47fa95490
Jeremy Koritzinsky [Mon, 6 May 2019 23:09:28 +0000 (16:09 -0700)]
Move the Formatting jobs over to AzDO (dotnet/coreclr#24367)
* First stab at running the format jobs in AzDO.
* Add display names for formatting jobs.
* Try to use a python version in the path
* Try to fix bootstrap download.
* Use imported paths. Output python major version.
* Clean up imports.
* Fix imports.
* Try just using urlretrieve again
* Cleanup
* Add back killing spurious dotnet processes.
* Try leaving all shutdown/kill work to AzDO.
* PR Feedback.
Commit migrated from https://github.com/dotnet/coreclr/commit/
8f658ab9246796fc0a60f10f042513156575e230
Brian Bohe [Mon, 6 May 2019 23:01:39 +0000 (20:01 -0300)]
Leaving Scope Info as variable location tracking default system again
Signed-off-by: Brian Bohe <brianbohe@gmail.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
5f5316507337a0c044f3e7c8f45a8fef201a7cc6
Fadi Hanna [Mon, 6 May 2019 23:00:05 +0000 (16:00 -0700)]
Replace E_FAIL with E_NOTIMPL for an unsupported R2R encoding (Future work) (dotnet/coreclr#24386)
Commit migrated from https://github.com/dotnet/coreclr/commit/
91c9d8633dec79178a38a7be5dcf1caebda49fd0
Andrew Au [Mon, 6 May 2019 19:04:13 +0000 (12:04 -0700)]
Launch DiagnosticServer after EEStartup
Commit migrated from https://github.com/dotnet/coreclr/commit/
0604a6e996f8cce5d3fb43b2a3e80cef0bf5dc4a
Tomáš Rylek [Mon, 6 May 2019 21:38:45 +0000 (23:38 +0200)]
Improve R2RDump resiliency towards invalid tokens (dotnet/coreclr#24379)
This change adds a bunch of try blocks that make R2RDump survive
partially corrupted input.
Thanks
Tomas
Commit migrated from https://github.com/dotnet/coreclr/commit/
5a56dde8b02f846df4eb148310a6f8dc51fe2110
Jeremy Koritzinsky [Mon, 6 May 2019 20:45:52 +0000 (13:45 -0700)]
Handle E_NOTIMPL return from CoInitializeEx. (dotnet/coreclr#24387)
* Handle E_NOTIMPL return from CoInitializeEx.
* Remove unneeded STA attributes.
Commit migrated from https://github.com/dotnet/coreclr/commit/
796776c2c340947fd092ccb9ddab579c41c0fd77
Sergey Andreenko [Mon, 6 May 2019 19:29:33 +0000 (12:29 -0700)]
Add zapdisable and tailcallstress testing.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e1675ea520aaa5bc83ca73a84e1da497630dd692
Sergey Andreenko [Mon, 6 May 2019 19:29:18 +0000 (12:29 -0700)]
Rename ADO group outerloop-jitminopts-jitstress1-jitstress2 to outerloop-jitstress.
Allows us to add more scenarios there.
Commit migrated from https://github.com/dotnet/coreclr/commit/
4f3ad48f799b4b79acea6f8e1824e63a9acf5687
Aaron Robinson [Mon, 6 May 2019 17:19:49 +0000 (10:19 -0700)]
Port all managed product binaries to use SDK style projects (dotnet/coreclr#24285)
Convert managed product binary to use SDK project system.
- Uses Arcade for versions strings
- Overrides Arcade defined output paths - should change in the future
Commit migrated from https://github.com/dotnet/coreclr/commit/
099177b0899156a4e8a352083a273805240c0ccd
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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